.icon{width:16px;height:16px;stroke-width:2;stroke:currentColor;fill:none;stroke-linecap:round;stroke-linejoin:round;display:inline-block;vertical-align:middle;flex-shrink:0}.icon-lg{width:20px;height:20px}:root{--bg: #0c0e12;--surface: #14171f;--surface-subtle: #191d27;--surface-active: #222735;--border: #232836;--border-focus: #38bdf8;--text: #f1f5f9;--text-muted: #94a3b8;--text-subtle: #64748b;--emerald: #10b981;--emerald-subtle: rgba(16, 185, 129, .1);--emerald-border: rgba(16, 185, 129, .25);--rose: #f43f5e;--rose-subtle: rgba(244, 63, 94, .1);--rose-border: rgba(244, 63, 94, .25);--sky: #0284c7;--sky-light: #38bdf8;--sky-subtle: rgba(2, 132, 199, .12);--amber: #f59e0b;--amber-subtle: rgba(245, 158, 11, .12);--amber-border: rgba(245, 158, 11, .3);--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}[data-astro-cid-j7pv25f6],[data-astro-cid-j7pv25f6]:before,[data-astro-cid-j7pv25f6]:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--text);font-family:var(--font-sans);min-height:100vh;display:flex;flex-direction:column;line-height:1.5;-webkit-font-smoothing:antialiased}[data-astro-cid-j7pv25f6]:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.icon[data-astro-cid-j7pv25f6]{width:16px;height:16px;stroke-width:2;stroke:currentColor;fill:none;stroke-linecap:round;stroke-linejoin:round;display:inline-block;vertical-align:middle;flex-shrink:0}.icon-lg[data-astro-cid-j7pv25f6]{width:20px;height:20px}header[data-astro-cid-j7pv25f6]{background-color:var(--surface);border-bottom:1px solid var(--border);padding:.75rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.header-left[data-astro-cid-j7pv25f6]{display:flex;align-items:center;gap:.75rem}.device-badge[data-astro-cid-j7pv25f6]{display:flex;align-items:center;gap:.5rem}.device-icon[data-astro-cid-j7pv25f6]{width:32px;height:32px;border-radius:6px;background:var(--surface-subtle);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--sky-light)}.device-titles[data-astro-cid-j7pv25f6] h1[data-astro-cid-j7pv25f6]{font-size:.95rem;font-weight:600;color:var(--text);letter-spacing:-.01em}.device-titles[data-astro-cid-j7pv25f6] p[data-astro-cid-j7pv25f6]{font-size:.75rem;color:var(--text-muted)}.header-right[data-astro-cid-j7pv25f6]{display:flex;align-items:center;gap:.75rem}.connection-status[data-astro-cid-j7pv25f6]{display:inline-flex;align-items:center;gap:.45rem;font-size:.8rem;font-weight:500;color:var(--text-muted);padding:.35rem .65rem;border-radius:6px;background-color:var(--surface-subtle);border:1px solid var(--border)}.connection-dot[data-astro-cid-j7pv25f6]{width:7px;height:7px;border-radius:50%;background-color:var(--rose);transition:background-color .2s ease}.connection-dot[data-astro-cid-j7pv25f6].online{background-color:var(--emerald)}main[data-astro-cid-j7pv25f6]{flex:1;max-width:1100px;width:100%;margin:0 auto;padding:1.5rem 1.25rem;display:flex;flex-direction:column;gap:1.25rem}.offline-alert[data-astro-cid-j7pv25f6]{display:none;background-color:var(--amber-subtle);border:1px solid var(--amber-border);border-radius:8px;padding:.75rem 1rem;font-size:.85rem;color:#fde68a;align-items:center;justify-content:space-between;gap:1rem}.offline-alert[data-astro-cid-j7pv25f6].visible{display:flex}.btn-retry[data-astro-cid-j7pv25f6]{background-color:#f59e0b33;border:1px solid var(--amber-border);color:#fde68a;padding:.35rem .75rem;border-radius:6px;font-size:.78rem;font-weight:500;cursor:pointer;min-height:34px}.btn-retry[data-astro-cid-j7pv25f6]:hover{background-color:#f59e0b4d}.control-grid[data-astro-cid-j7pv25f6]{display:grid;grid-template-columns:1.2fr .8fr;gap:1.25rem}.section-card[data-astro-cid-j7pv25f6]{background-color:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.card-top[data-astro-cid-j7pv25f6]{padding:.875rem 1.25rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:.5rem}.card-top[data-astro-cid-j7pv25f6] h2[data-astro-cid-j7pv25f6]{font-size:.85rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.card-body[data-astro-cid-j7pv25f6]{padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem}.schematic-box[data-astro-cid-j7pv25f6]{background-color:#080a0e;border:1px solid var(--border);border-radius:6px;padding:1rem;display:flex;flex-direction:column;align-items:center;position:relative}.gate-state-pill[data-astro-cid-j7pv25f6]{position:absolute;top:.75rem;left:.75rem;display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .6rem;border-radius:4px;font-size:.75rem;font-family:var(--font-mono);font-weight:600;background-color:var(--surface-subtle);border:1px solid var(--border);color:var(--text-muted)}.gate-state-pill[data-astro-cid-j7pv25f6].OPEN{background-color:var(--emerald-subtle);border-color:var(--emerald-border);color:var(--emerald)}.gate-state-pill[data-astro-cid-j7pv25f6].CLOSED{background-color:var(--rose-subtle);border-color:var(--rose-border);color:var(--rose)}.schematic-svg[data-astro-cid-j7pv25f6]{width:100%;max-width:420px;height:200px}.control-actions-wrap[data-astro-cid-j7pv25f6]{display:flex;flex-direction:column;gap:.75rem}.segmented-control[data-astro-cid-j7pv25f6]{display:grid;grid-template-columns:1fr 1fr;background-color:#080a0e;padding:4px;border-radius:8px;border:1px solid var(--border);gap:4px}.btn-segment[data-astro-cid-j7pv25f6]{min-height:52px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-muted);font-family:var(--font-sans);font-size:.95rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;transition:all .18s ease;user-select:none}.btn-segment[data-astro-cid-j7pv25f6]:disabled{opacity:.4;cursor:not-allowed}.btn-segment[data-astro-cid-j7pv25f6].active-open{background-color:#064e3b;color:#ecfdf5;border-color:#059669}.btn-segment[data-astro-cid-j7pv25f6].active-close{background-color:#4c1d24;color:#fff1f2;border-color:#be123c}.btn-segment[data-astro-cid-j7pv25f6]:hover:not(:disabled):not(.active-open):not(.active-close){background-color:var(--surface-subtle);color:var(--text)}.telemetry-row[data-astro-cid-j7pv25f6]{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.telemetry-item[data-astro-cid-j7pv25f6]{background-color:var(--surface-subtle);border:1px solid var(--border);border-radius:6px;padding:.75rem;display:flex;flex-direction:column;gap:.2rem}.telemetry-label[data-astro-cid-j7pv25f6]{font-size:.72rem;color:var(--text-subtle);text-transform:uppercase;letter-spacing:.03em}.telemetry-value[data-astro-cid-j7pv25f6]{font-family:var(--font-mono);font-size:1.05rem;font-weight:600;color:var(--text)}.hardware-list[data-astro-cid-j7pv25f6]{display:flex;flex-direction:column;gap:.75rem}.hardware-row[data-astro-cid-j7pv25f6]{display:flex;align-items:center;justify-content:space-between;font-size:.82rem;padding-bottom:.6rem;border-bottom:1px solid var(--border)}.hardware-row[data-astro-cid-j7pv25f6]:last-child{border-bottom:none;padding-bottom:0}.hardware-row[data-astro-cid-j7pv25f6] span[data-astro-cid-j7pv25f6]:first-child{color:var(--text-muted)}.hardware-row[data-astro-cid-j7pv25f6] span[data-astro-cid-j7pv25f6]:last-child{font-family:var(--font-mono);color:var(--text)}.btn-reconnect[data-astro-cid-j7pv25f6]{min-height:44px;width:100%;background-color:var(--surface-subtle);border:1px solid var(--border);color:var(--text);border-radius:6px;font-family:var(--font-mono);font-size:.78rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:background-color .15s ease}.btn-reconnect[data-astro-cid-j7pv25f6]:hover:not(:disabled){background-color:var(--surface-active);border-color:var(--border-focus)}.table-wrapper[data-astro-cid-j7pv25f6]{overflow-x:auto;max-height:320px}table[data-astro-cid-j7pv25f6]{width:100%;border-collapse:collapse;text-align:left;font-size:.82rem}th[data-astro-cid-j7pv25f6]{background-color:#0e1117;color:var(--text-subtle);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;padding:.65rem 1rem;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}td[data-astro-cid-j7pv25f6]{padding:.65rem 1rem;border-bottom:1px solid var(--border);font-family:var(--font-mono);color:var(--text-muted)}tr[data-astro-cid-j7pv25f6]:hover td[data-astro-cid-j7pv25f6]{background-color:#ffffff04;color:var(--text)}.badge-origin[data-astro-cid-j7pv25f6]{display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:4px;font-size:.7rem;font-weight:600}.origin-web[data-astro-cid-j7pv25f6]{background-color:var(--sky-subtle);color:var(--sky-light)}.origin-physical[data-astro-cid-j7pv25f6]{background-color:var(--amber-subtle);color:var(--amber)}.origin-system[data-astro-cid-j7pv25f6]{background-color:var(--surface-subtle);color:var(--text-muted)}.status-cell[data-astro-cid-j7pv25f6]{display:inline-flex;align-items:center;gap:.35rem;font-weight:500}.status-cell[data-astro-cid-j7pv25f6].success{color:var(--emerald)}.status-cell[data-astro-cid-j7pv25f6].error{color:var(--rose)}#toast[data-astro-cid-j7pv25f6]{position:fixed;bottom:1.5rem;right:1.5rem;max-width:400px;width:calc(100% - 3rem);background-color:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 32px #00000073;padding:.875rem 1rem;display:flex;align-items:flex-start;gap:.75rem;transform:translateY(140%);opacity:0;pointer-events:none;transition:transform .22s cubic-bezier(.16,1,.3,1),opacity .22s ease;z-index:1000}#toast[data-astro-cid-j7pv25f6].active{transform:translateY(0);opacity:1;pointer-events:auto}#toast[data-astro-cid-j7pv25f6].success{border-color:var(--emerald-border)}#toast[data-astro-cid-j7pv25f6].success .toast-status-icon[data-astro-cid-j7pv25f6]{color:var(--emerald)}#toast[data-astro-cid-j7pv25f6].error{border-color:var(--rose-border)}#toast[data-astro-cid-j7pv25f6].error .toast-status-icon[data-astro-cid-j7pv25f6]{color:var(--rose)}#toast[data-astro-cid-j7pv25f6].info{border-color:#38bdf84d}#toast[data-astro-cid-j7pv25f6].info .toast-status-icon[data-astro-cid-j7pv25f6]{color:var(--sky-light)}.toast-status-icon[data-astro-cid-j7pv25f6]{margin-top:2px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-body[data-astro-cid-j7pv25f6]{flex:1;display:flex;flex-direction:column;gap:.2rem}.toast-title[data-astro-cid-j7pv25f6]{font-size:.85rem;font-weight:600;color:var(--text);line-height:1.25}.toast-desc[data-astro-cid-j7pv25f6]{font-size:.78rem;color:var(--text-muted);line-height:1.35}.toast-close[data-astro-cid-j7pv25f6]{background:none;border:none;color:var(--text-subtle);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;margin-left:.25rem}.toast-close[data-astro-cid-j7pv25f6]:hover{color:var(--text);background-color:var(--surface-active)}footer[data-astro-cid-j7pv25f6]{border-top:1px solid var(--border);padding:.75rem 1.25rem;font-size:.75rem;color:var(--text-subtle);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:auto}@media (max-width: 840px){.control-grid[data-astro-cid-j7pv25f6]{grid-template-columns:1fr}}@media (max-width: 600px){header[data-astro-cid-j7pv25f6]{padding:.75rem 1rem}main[data-astro-cid-j7pv25f6]{padding:1rem}.telemetry-row[data-astro-cid-j7pv25f6],.segmented-control[data-astro-cid-j7pv25f6]{grid-template-columns:1fr}}
