:root{--bg-deep: #080a0f;--bg-canvas: #0b0e14;--card-bg: linear-gradient(145deg, rgba(255, 255, 255, .045) 0%, rgba(255, 255, 255, .015) 100%);--card-sub: rgba(255, 255, 255, .035);--card-border: rgba(255, 255, 255, .075);--card-bevel: inset 0 1px 0 0 rgba(255, 255, 255, .09);--card-shadow: 0 10px 30px -4px rgba(0, 0, 0, .45);--text-primary: #ffffff;--text-secondary: #94a3b8;--text-muted: #64748b;--cyan: #38bdf8;--cyan-glow: rgba(56, 189, 248, .35);--green: #10b981;--green-glow: rgba(16, 185, 129, .35);--amber: #f59e0b;--amber-glow: rgba(245, 158, 11, .35);--red: #ef4444;--red-glow: rgba(239, 68, 68, .35);--copper: #c26532;--energy-regen: #59ebd1;--energy-charge: #ffc747;--energy-ev: #73d9ff;--energy-engine: #ff9e38;--energy-coast: rgba(255, 255, 255, .75);--energy-brake: #ff5252;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--motion-river-duration: .38s;--motion-ease: cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{height:100%;height:100dvh;background:var(--bg-deep);touch-action:manipulation;color:var(--text-primary);overflow:hidden;user-select:none;-webkit-user-select:none}#app{display:flex;flex-direction:column;height:100%;max-width:600px;margin:0 auto;position:relative;background:var(--bg-canvas);background-image:radial-gradient(ellipse 90% 45% at 50% -5%,rgba(30,58,138,.18) 0%,transparent 70%)}@keyframes dotPing{0%{transform:scale(1);opacity:1}35%{transform:scale(1.75);opacity:1;box-shadow:0 0 12px currentColor}to{transform:scale(1);opacity:.85}}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.tab-content{display:none;flex-direction:column;gap:.85rem;width:100%}.tab-content.active{display:flex}.card{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow),var(--card-bevel);border-radius:18px;padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.65rem;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);position:relative;overflow:hidden;transition:transform .18s cubic-bezier(.2,.8,.2,1),border-color .18s ease;-webkit-touch-callout:none}.card>*{position:relative;z-index:1}.card-header{display:flex;justify-content:space-between;align-items:center}.card-title{font-size:.68rem;font-weight:700;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase}.badge{font-size:.62rem;font-weight:700;padding:.2rem .52rem;border-radius:6px;letter-spacing:.03em;display:inline-flex;align-items:center;gap:.25rem}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}.lab-meters{display:grid;gap:.45rem;margin:.6rem 0 .9rem}.lab-meter-head,.lab-meter-ends{display:flex;justify-content:space-between;gap:.5rem}.lab-meter-head span,.lab-meter-ends span{font-size:10px;letter-spacing:.04em;color:var(--text-secondary)}.lab-meter-head b{font-size:14px;font-variant-numeric:tabular-nums}.lab-meter-track{position:relative;height:12px;margin:.3rem 0;border-radius:999px;background:#ffffff14}.lab-meter-zero{position:absolute;left:50%;top:0;width:2px;height:12px;margin-left:-1px;background:#ffffff47}.lab-meter-dot{position:absolute;top:1px;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:#22d3ee}.car-stats{position:absolute;z-index:4;top:8px;left:8px;margin:0;font:11px/1.35 ui-monospace,SFMono-Regular,monospace;color:#9fd4ee;pointer-events:none;white-space:pre}.btn.on{border-color:#22d3ee;color:#22d3ee}.sub-stat{display:flex;flex-direction:column;gap:.25rem;background:var(--card-sub);border:1px solid rgba(255,255,255,.04);border-radius:13px;padding:.65rem .85rem}.sub-lbl{font-size:.62rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.sub-val{font-size:1.12rem;font-weight:800;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.sub-val small{font-size:.72rem;font-weight:600;color:var(--text-secondary);margin-left:2px}.sub-val.warn{color:var(--amber)}.stage-map .leaflet-tile-pane{filter:brightness(.68) invert(1) contrast(2.4) hue-rotate(200deg) saturate(.6)}@keyframes radarPulse{0%{transform:scale(.6);opacity:.9}to{transform:scale(2.5);opacity:0}}.ctl-btn-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem}.terminal-logs{background:#06080d;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:.75rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.68rem;line-height:1.45;color:#38bdf8;max-height:180px;overflow-y:auto;white-space:pre-wrap}.cmd-input-row{display:flex;gap:.45rem}.cmd-input{flex:1;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:.55rem .75rem;color:#fff;font-size:.75rem;outline:none}.modal-backdrop{position:fixed;inset:0;background:#000000bf;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);z-index:100;display:flex;align-items:flex-end;justify-content:center;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-backdrop.hidden{display:none}.modal-card{width:100%;max-width:560px;max-height:88vh;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#0f131d;border-top-left-radius:26px;border-top-right-radius:26px;border:1px solid rgba(255,255,255,.09);padding:1rem 1.25rem;padding-bottom:max(2rem,calc(var(--safe-bottom) + 1.2rem));box-shadow:0 -10px 40px #000000b3;animation:slideUp .28s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem}.modal-header h3{font-size:.95rem;font-weight:800;color:#fff;letter-spacing:.02em}.btn-close{background:#ffffff14;border:none;color:#fff9;width:28px;height:28px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn{padding:.62rem 1.1rem;border-radius:12px;font-size:.75rem;font-weight:700;letter-spacing:.03em;border:none;cursor:pointer;transition:all .15s ease}.btn-primary{background:#38bdf8;color:#080d1a;font-weight:800}.btn-secondary{background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.09)}.btn-warning{background:#f59e0b38;color:#fbbf24;border:1px solid rgba(245,158,11,.4)}.btn-danger{background:#ef444438;color:#f87171;border:1px solid rgba(239,68,68,.4)}.btn-full{width:100%}.btn-xs{padding:.22rem .55rem;font-size:.65rem;font-weight:700;border-radius:8px;border:none;cursor:pointer}.form-group{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.lang-row{display:flex;gap:.5rem}.lang-row .btn{flex:1}.lang-row .btn.on{border-color:#9fd4ee;color:#fff}.form-label{font-size:.62rem;font-weight:700;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase}.form-input{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:11px;padding:.6rem .8rem;color:#fff;font-size:.8rem;outline:none}.form-input:focus{border-color:var(--cyan)}.form-help{font-size:.65rem;color:var(--text-muted)}.setting-toggle-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.toggle-title{font-size:.78rem;font-weight:700;color:#fff}.toggle-desc{font-size:.65rem;color:var(--text-muted)}.toggle-switch{width:42px;height:24px;accent-color:var(--cyan)}.modal-actions-row{display:flex;gap:.65rem;margin-top:1rem}.modal-actions-row .btn{flex:1}.mt-1{margin-top:.45rem}.mt-2{margin-top:.75rem}.settings-section-divider{height:1px;background:#ffffff14;margin:1.1rem 0 .85rem}.btn-refresh-pwa{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1rem;background:#38bdf814;border:1px solid rgba(56,189,248,.28);border-radius:12px;color:#38bdf8;font-family:inherit;font-weight:600;font-size:.82rem;cursor:pointer;transition:all .15s ease}.motion-options-list{display:flex;flex-direction:column;gap:.45rem;margin-top:.35rem}.motion-option-btn{display:flex;align-items:center;justify-content:space-between;padding:.6rem .85rem;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:var(--text-primary);cursor:pointer;text-align:left;transition:all .15s ease}.motion-option-btn:hover{background:#ffffff14;border-color:#ffffff29}.motion-option-btn.is-active{background:#38bdf81f;border-color:#38bdf873}.motion-opt-text{display:flex;flex-direction:column;gap:.15rem}.motion-opt-title{font-size:13.5px;font-weight:700;color:#f1f5f9}.motion-opt-desc{font-size:11.5px;color:var(--text-muted)}.motion-check{font-size:14px;font-weight:800;color:#38bdf8;margin-left:.5rem}.btn-refresh-pwa:hover:not(:disabled){background:#38bdf829;border-color:#38bdf880;color:#e0f2fe}.btn-refresh-pwa:disabled{opacity:.6;cursor:wait}.spinner-small{width:14px;height:14px;border:2px solid rgba(56,189,248,.25);border-top-color:#38bdf8;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.text-green{color:var(--green)}.text-cyan{color:var(--cyan)}.text-amber{color:var(--amber)}@media (max-width: 380px){.pills-row .pill:nth-child(2){display:none}.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}.closures-grid{grid-template-columns:1fr}.speed-digital{font-size:3.8rem}}@media (min-width: 640px){#app{border-left:1px solid rgba(255,255,255,.06);border-right:1px solid rgba(255,255,255,.06)}}.stage{--stage-sheet-h: 44%;position:relative;flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg-deep)}.stage-car{position:absolute;inset:0 0 var(--stage-sheet-h) 0;z-index:1}.stage-car canvas{width:100%;height:100%;display:block;touch-action:none}.stage-top-bar{position:absolute;z-index:4;top:max(.5rem,var(--safe-top));left:.8rem;right:.8rem;display:flex;align-items:center;justify-content:space-between;height:28px;pointer-events:none}.stage-top-bar>*{pointer-events:auto}.stage-top-left{display:flex;align-items:center;height:100%}.stage-top{display:flex;align-items:center;gap:.5rem;height:100%}.stage-text{display:inline-flex;align-items:center;background:transparent;color:var(--text-secondary);border:0;font-family:inherit;font-size:13px;font-weight:500;padding:0 .25rem;height:28px;line-height:28px;cursor:pointer;transition:color .15s ease;box-sizing:border-box}.stage-text[hidden],#stage-fuel[hidden]{display:none!important}.stage-text:hover{color:var(--text-primary)}.stage-cmds-wrap{position:relative;display:inline-flex}.stage-cmds-btn{font-weight:600}.stage-cmds-menu{position:absolute;top:calc(100% + .35rem);right:0;z-index:50;min-width:130px;background:#0b111ef2;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:.3rem;box-shadow:0 10px 28px #000000b3}.stage-cmds-menu[hidden]{display:none!important}.stage-cmds-list{display:flex;flex-direction:column;gap:.2rem}.stage-cmd-item{display:flex;align-items:center;width:100%;padding:.45rem .75rem;background:transparent;border:0;border-radius:8px;color:#e2e8f0;font-family:inherit;font-size:13px;font-weight:600;text-align:left;cursor:pointer;transition:background .12s ease,color .12s ease}.stage-cmd-item:hover:not(:disabled){background:#38bdf826;color:#38bdf8}.stage-cmd-item:active:not(:disabled){background:#38bdf840}.stage-cmd-item:disabled{opacity:.35;cursor:not-allowed}.stage-link{display:inline-flex;align-items:center;gap:.38rem;margin:0;padding:0 .25rem;height:28px;line-height:28px;border:0;background:transparent;font-family:inherit;font-size:13px;font-weight:500;color:#ffffffa6;cursor:pointer;box-sizing:border-box;transition:color .15s ease}.stage-link:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0;display:inline-block;margin-top:.5px}.stage-link[data-tone=wifi]{color:#4ade80}.stage-link[data-tone=offline]{color:#f97316}.stage-link[data-tone=replay]{color:#fac338}.stage-ways{display:flex;gap:.75rem}.stage-hud{position:absolute;z-index:3;left:1rem;right:1rem;top:max(2.4rem,calc(var(--safe-top) + 1.8rem));pointer-events:none}.stage-tach{display:flex;flex-direction:column;gap:.35rem;width:100%;padding:0;border-radius:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;box-shadow:none;box-sizing:border-box;margin-bottom:1.25rem}.stage-tach[hidden]{display:none!important}.stage-tach-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.15rem}.stage-tach-badge{display:inline-flex;align-items:center;gap:.38rem;padding:.18rem .55rem;border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;transition:all .2s ease}.tach-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.stage-tach-badge.is-ev{background:#38bdf81f;border:1px solid rgba(56,189,248,.28);color:#38bdf8}.stage-tach-badge.is-ev .tach-dot{background:#38bdf8;box-shadow:0 0 6px #38bdf8}.stage-tach-badge.is-engine{background:#f973161f;border:1px solid rgba(249,115,22,.32);color:#fb923c}.stage-tach-badge.is-engine .tach-dot{background:#fb923c;box-shadow:0 0 6px #fb923c}.stage-tach-badge.is-regen{background:#59ebd11f;border:1px solid rgba(89,235,209,.28);color:#59ebd1}.stage-tach-badge.is-regen .tach-dot{background:#59ebd1;box-shadow:0 0 6px #59ebd1}.stage-tach-readout{display:flex;align-items:baseline;gap:.25rem;margin-left:auto}.tach-rpm-num{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:16px;font-weight:800;color:#f8fafc;font-variant-numeric:tabular-nums;letter-spacing:-.01em;text-shadow:0 1px 4px rgba(0,0,0,.7)}.tach-rpm-unit{font-size:10px;font-weight:700;color:#ffffff8c;letter-spacing:.05em;text-shadow:0 1px 4px rgba(0,0,0,.7)}.stage-tach-meter{position:relative;width:100%}.stage-tach-track{position:relative;width:100%;height:6px;border-radius:999px;background:#ffffff1f;box-shadow:inset 0 1px 2px #00000059;overflow:visible}.stage-tach-fill{height:100%;width:0%;border-radius:999px;background:#fb923c;box-shadow:0 0 8px #fb923c66;transition:width var(--motion-river-duration, .38s) var(--motion-ease, cubic-bezier(.4, 0, .2, 1))}.stage-tach-fill.is-ev-soc{background:#38bdf8;box-shadow:0 0 8px #38bdf873}.stage-tach-fill.is-redline{background:#f43f5e;box-shadow:0 0 10px #f43f5eb3}.stage-tach-peak{position:absolute;top:-1px;width:2px;height:calc(100% + 2px);background:#fffffff2;box-shadow:0 0 6px #ffffffd9;border-radius:1px;pointer-events:none;opacity:0;transition:left .1s linear,opacity .25s ease}.stage-status-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin:0;pointer-events:none;flex-wrap:wrap;width:100%}.stage-status-row>*{pointer-events:auto}.stage-sentence{display:inline-flex;align-items:center;gap:.4rem;padding:.28rem .7rem;border-radius:9999px;background:#0a0f1ae0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.14);box-shadow:0 4px 16px #00000080;font-size:11.5px;font-weight:600;color:#fffffff2;letter-spacing:-.01em;margin:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 480px){.stage-sentence{font-size:10.5px;padding:.24rem .55rem}}.stage-sentence[hidden],.stage-bus[hidden],.stage-ghost[hidden]{display:none!important}.stage-bus{display:inline-flex;align-items:center;margin-left:auto;padding:.28rem .65rem;border-radius:9999px;background:#0a0f1ae0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.14);box-shadow:0 2px 8px #0006;font-size:11.5px;font-weight:600;color:#ffffffb3;white-space:nowrap;flex-shrink:0}.stage-bus[data-tone=live],.stage-bus[data-tone=charge]{color:#ffc747}.stage-bus[data-tone=regen]{color:#59ebd1}.stage-bus[data-tone=ev]{color:#38bdf8}.stage-bus[data-tone=engine]{color:#ff9e38}.stage-bus[data-tone=coast]{color:#ffffffb3}.stage-bus[hidden]{display:none!important}.stage-radio{display:inline-flex;margin:0;padding:.12rem .42rem;border-radius:999px;background:#f9731626;color:#f97316;font-size:9px;font-weight:700;letter-spacing:.08em}.stage-radio[hidden]{display:none!important}.stage-ghost{margin:.35rem 0 0;font-size:11px;font-weight:700;letter-spacing:.08em;color:#80adeb}.stage-mood{margin:.35rem 0 0;font-size:11px;font-weight:700;letter-spacing:.08em}.stage-therm{position:absolute;right:.55rem;bottom:3.25rem;z-index:5;margin:0;display:inline-flex;gap:.45rem;align-items:center;padding:.28rem .72rem;border-radius:999px;background:#080c14d1;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.12);font-family:inherit;font-size:13px;font-weight:700;letter-spacing:.03em;font-variant-numeric:tabular-nums;color:#94a3b8;pointer-events:none;user-select:none;-webkit-user-select:none}.stage-status-hud{position:absolute;left:.55rem;bottom:3.25rem;z-index:5;margin:0;display:inline-flex;gap:.45rem;align-items:center;pointer-events:none;user-select:none;-webkit-user-select:none}.stage-status-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .65rem;border-radius:999px;background:#080c14d1;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(56,189,248,.45);font-family:ui-monospace,SF Mono,monospace;font-size:11.5px;font-weight:800;color:#38bdf8;letter-spacing:.04em;transition:opacity .2s ease,transform .2s ease}.stage-status-chip svg{display:inline-block;vertical-align:middle}.stage-status-chip.alert{border-color:#f59e0bbf;color:#f59e0b;background:#181008e0}.stage-status-chip.ghost{border-color:#94a3b859;color:#94a3b8}.stage-status-chip.mood{font-weight:700}.stage-therm-item{display:inline-flex;align-items:baseline;gap:.28rem}.stage-therm-item .therm-lbl{color:#94a3b8;font-weight:700;font-size:11.5px;letter-spacing:.04em}.stage-therm-item .therm-val{font-family:ui-monospace,SF Mono,monospace;font-size:13.5px;font-weight:700}.stage-therm-item .therm-val.optimal{color:#34d399}.stage-therm-item .therm-val.cold{color:#38bdf8}.stage-therm-item .therm-val.warm{color:#fb923c}.stage-therm-item .therm-val.warn{color:#fbbf24;font-weight:800}.stage-therm-item .therm-val.bad{color:#f43f5e;font-weight:800}.stage-therm-item .therm-val.neutral{color:#cbd5e1}.stage-therm-sep{color:#ffffff52;font-size:11px}.stage-error{margin-top:.6rem;padding:.75rem .85rem;border:1px solid rgba(240,193,74,.45);border-radius:12px;background:#0c0e14eb}.stage-error p{margin:.3rem 0;font-size:13px}#stage-error{color:#f0c14a}.stage-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.stage-tag{font-size:12px;color:var(--text-primary);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:.15rem .5rem}.stage-tag.warn{color:#f0c14a;border-color:#f0c14a80}.stage-river{margin:.2rem 0 .5rem;display:flex;flex-direction:column;gap:.85rem;font-size:13px;color:var(--text-secondary)}.stage-flow{display:flex;flex-direction:column;gap:.35rem;width:100%}.stage-river-head{display:flex;align-items:baseline;justify-content:space-between;gap:.45rem;line-height:1.3;margin-bottom:.15rem;width:100%}.stage-river-badge-wrap{display:flex;align-items:baseline;gap:.45rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.stage-river-coach{font-size:11.5px;font-weight:600;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage-river-readout{display:flex;align-items:baseline;gap:.25rem;margin-left:auto;flex-shrink:0}.stage-river-num{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:16px;font-weight:800;color:#f8fafc;font-variant-numeric:tabular-nums;letter-spacing:-.01em;text-shadow:0 1px 4px rgba(0,0,0,.7);transition:color .25s ease}.stage-river-unit{font-size:10px;font-weight:700;color:#ffffff8c;letter-spacing:.05em;text-shadow:0 1px 4px rgba(0,0,0,.7)}.stage-river-track{position:relative;width:100%;height:6px;border-radius:999px;background:#ffffff1f;box-shadow:inset 0 1px 2px #00000059}.stage-river-track:after{content:"";position:absolute;left:50%;top:-2px;width:2px;height:calc(100% + 4px);background:#ffffff73;transform:translate(-1px)}.stage-river-fill{position:absolute;top:0;height:100%;border-radius:99px;background:#9fd4ee;transition:width var(--motion-river-duration, .38s) var(--motion-ease, cubic-bezier(.4, 0, .2, 1)),left var(--motion-river-duration, .38s) var(--motion-ease, cubic-bezier(.4, 0, .2, 1)),background .25s ease,box-shadow .25s ease}.stage-power-wrap{position:relative;height:100px;margin-top:.4rem}#stage-power{width:100%;height:100%;display:block}.stage-power-window{position:absolute;left:0;top:-14px;font-size:9px;font-weight:700;color:#8b93a1;letter-spacing:.04em}#stage-harvest{position:absolute;inset:0;pointer-events:none}#stage-harvest span{position:absolute;color:#59ebd1;font-weight:800;font-size:12px;white-space:nowrap;text-shadow:0 0 6px rgba(89,235,209,.35)}#stage-harvest span.soft{font-size:10px;font-weight:600;opacity:.8}#stage-harvest span.faded{opacity:.52}.stage-river-detail{font-size:11.5px;font-weight:600;color:#ffffff7a;font-variant-numeric:tabular-nums;white-space:nowrap}.stage-river-detail:not(:empty):before{content:"·";margin-right:.45rem;color:#ffffff59;font-weight:700}.stage-river-ends{display:flex;justify-content:space-between;font-size:9px;font-weight:800;letter-spacing:.04em}.stage-river-ends span{color:#ffffff47}.stage-river-ends span.hot{color:#ffffffeb}#stage-river-in.hot[data-sign=regen]{color:#59ebd1}#stage-river-in.hot[data-sign=charge]{color:#eab308}#stage-river-drive.hot{color:#ff9e38}#stage-pedal-brake.hot{color:#ff5252}#stage-pedal-accel.hot{color:#38bdf8}.stage-pedal{display:flex;flex-direction:column;gap:.35rem;width:100%;margin-top:0}.stage-pedal-head{display:flex;align-items:baseline;gap:.45rem;margin-bottom:.15rem}#stage-pedal-title{font-size:10px;font-weight:800;letter-spacing:.06em;color:#8b93a1}#stage-pedal-label{margin-left:auto;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:16px;font-weight:800;color:#f8fafc;font-variant-numeric:tabular-nums;letter-spacing:-.01em;text-shadow:0 1px 4px rgba(0,0,0,.7)}#stage-pedal-sw{font-size:9px;font-weight:800;color:#ff5252;background:#ff525229;border-radius:99px;padding:2px 6px}.stage-river-fill[data-sign=brake]{background:linear-gradient(90deg,#ff4d4d,#b91c1c);box-shadow:0 0 8px #ff4d4d73}.stage-river-fill[data-sign=regen]{background:linear-gradient(90deg,#59ebd1,#0d9488);box-shadow:0 0 8px #59ebd173}.stage-river-fill[data-sign=charge]{background:linear-gradient(90deg,#fde047,#d97706);box-shadow:0 0 8px #eab30873}.stage-river-fill[data-sign=ev]{background:linear-gradient(90deg,#0284c7,#38bdf8);box-shadow:0 0 8px #38bdf873}.stage-river-fill[data-sign=engine]{background:linear-gradient(90deg,#ea580c,#fb923c);box-shadow:0 0 8px #fb923c73}.stage-river-fill[data-sign=drive]{background:linear-gradient(90deg,#ea580c,#ff9e38);box-shadow:0 0 8px #ff9e3873}.stage-river-fill[data-sign=coast]{background:#ffffff73}.stage-sheet{position:absolute;z-index:5;left:0;right:0;bottom:0;height:var(--stage-sheet-h);max-height:var(--stage-sheet-h);overflow-y:auto;overflow-x:hidden;padding:.5rem max(.95rem,env(safe-area-inset-right,0px)) max(.25rem,calc(var(--safe-bottom) - 22px)) max(.95rem,env(safe-area-inset-left,0px));background:#080a0ff0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:.35rem}.stage-parked-hero{position:relative;width:100%;margin-bottom:.25rem;flex:1 1 auto;min-height:170px;display:flex;flex-direction:column}.stage-parked-hero[hidden]{display:none!important}.stage-parked-map-wrap{position:relative;width:100%;flex:1 1 auto;min-height:170px;height:100%;border-radius:14px;overflow:hidden;background:#090d16;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 20px #00000073}.stage-parked-map-wrap .stage-map{position:absolute;inset:0;width:100%;height:100%;z-index:1}.stage-map-hud{position:absolute;inset:0;z-index:5;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:.6rem .75rem}.stage-map-hud>*{pointer-events:auto}.stage-map-actions{display:flex;align-items:center;gap:.45rem;justify-content:flex-end}.stage-map-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .65rem;border-radius:9999px;background:#0a0f1ae0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.14);box-shadow:0 2px 8px #0006;font-family:inherit;font-size:11.5px;font-weight:600;color:#38bdf8;cursor:pointer;transition:all .15s ease}.stage-map-btn:hover{background:#1e293bf2;border-color:#38bdf866;color:#7dd3fc}.stage-map-btn[hidden]{display:none!important}.stage-map-btn-icon{width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.stage-map-btn-icon svg{width:14px;height:14px;display:block}.stage-sheet-footer{margin-top:auto;padding-top:.2rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;flex-shrink:0}.stage-sheet-actions{margin-left:auto;display:inline-flex;align-items:center;gap:.75rem}.stage-frames{display:flex;flex-wrap:wrap;gap:.4rem}.stage-frames button{background:transparent;color:var(--text-primary);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:.35rem .7rem;font-size:13px}.stage-map-controls{position:absolute;bottom:calc(var(--stage-sheet-h) + .45rem);left:0;right:0;z-index:10;display:flex;padding:0;pointer-events:none}.stage-layers{display:flex;flex-wrap:nowrap;align-items:center;gap:.32rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;pointer-events:auto;width:100%;padding:.18rem .85rem;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;border-radius:0;box-shadow:none;box-sizing:border-box;opacity:.55;transition:opacity .25s ease}.stage-layers:hover,.stage-layers:focus-within,.stage-layers:active,.stage-layers:has(button[data-alert]){opacity:1}.stage-layers::-webkit-scrollbar{display:none}.stage-layers button{position:relative;flex-shrink:0;height:22px;line-height:20px;padding:0 .52rem;border-radius:999px;background:#0c101a73;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.07);color:#94a3b88c;font-family:inherit;font-size:10.5px;font-weight:500;letter-spacing:.01em;cursor:pointer;transition:all .15s ease;user-select:none;-webkit-user-select:none;white-space:nowrap}.stage-layers button:hover{background:#ffffff14;color:#f1f5f9;border-color:#fff3}.stage-layers button.on{background:#ffffff14;border-color:#ffffff2e;color:#e2e8f0;box-shadow:none}.stage-layers button.on:hover{background:#ffffff24;border-color:#ffffff4d;color:#fff}.stage-layers button[data-alert]{opacity:1!important;background:#f59e0b2e;border-color:#f59e0b8c;color:#fbbf24;font-weight:700;box-shadow:0 0 10px #f59e0b47}.stage-layers button[data-alert]:hover{background:#f59e0b42;border-color:#f59e0bcc;color:#fef08a;box-shadow:0 0 14px #f59e0b73}.stage-layers button[data-alert=critical]{background:#ef444438;border-color:#ef4444a6;color:#f87171;font-weight:700;box-shadow:0 0 12px #ef444461}.stage-layers button[data-alert=critical]:hover{background:#ef444452;border-color:#ef4444e6;color:#fecaca;box-shadow:0 0 16px #ef44448c}.stage-layers button[data-alert]:after{content:"";position:absolute;top:-2px;right:-2px;width:7px;height:7px;border-radius:50%;background:#f59e0b;box-shadow:0 0 6px #f59e0b}.stage-layers button[data-alert=critical]:after{background:#ef4444;box-shadow:0 0 8px #ef4444}.stage-frames button.on{border-color:#9fd4ee;color:#9fd4ee}.stage-volts{display:grid;grid-template-columns:1fr auto;gap:.35rem .6rem;align-items:center;margin-bottom:.2rem;flex-shrink:0}.stage-volts[hidden]{display:none!important}.stage-volts button{background:transparent;color:#ffc747;border:0;padding:0;font-size:15px;font-variant-numeric:tabular-nums;text-align:left}.stage-volts button.mid{color:#ff9e38}.stage-volts button.low{color:#ff7347}.stage-volts button.warn{color:#f59e0b}.stage-volts button.bad{color:#ef4444}#stage-volts-window{border:1px solid color-mix(in srgb,currentColor 40%,transparent);border-radius:999px;padding:.2rem .55rem;font-size:11px}.stage-volts-plot{grid-column:1 / -1;position:relative;height:72px;touch-action:none}.stage-volts-plot[hidden]{display:none!important}#stage-volts-line{width:100%;height:100%;display:block}.stage-volts-bound{position:absolute;left:6px;top:4px;font-size:9px;font-weight:700;color:#ffffff61;pointer-events:none}.stage-volts-bound.low{top:auto;bottom:4px}.stage-volts button.stage-volts-callout{position:absolute;z-index:2;transform:translate(-50%,-50%);margin:0;padding:.28rem .5rem;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#000000c7;color:#fff;font-size:12px;font-weight:800;line-height:1.25;text-align:center;white-space:nowrap}.stage-volts-callout small{display:block;font-size:9px;font-weight:700;color:#ffffffb3}.stage-remote{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 .35rem;color:#e8c07a;font-size:12px;letter-spacing:.04em;text-transform:uppercase}.stage-remote b{font-size:28px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:0;text-transform:none}.stage-remote[hidden]{display:none!important}.stage-tip{position:absolute;z-index:6;max-width:280px;padding:.6rem .7rem;border-radius:10px;background:#171717f5;border:1px solid rgba(127,212,255,.45);box-shadow:0 8px 24px #0006;pointer-events:auto}.stage-tip[hidden]{display:none!important}.stage-tip header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.3rem}.stage-tip b{font-size:13px;font-weight:650}.stage-tip header span{font-size:9px;font-weight:700;letter-spacing:.06em;color:#7fd4ff;border:1px solid rgba(127,212,255,.6);border-radius:99px;padding:.05rem .35rem}.stage-tip header span.off{color:#ffffff73;border-color:#fff3}.stage-tip p{margin:0;font-size:12px;color:#ffffffbf}.stage-tip .attn{margin-top:.35rem;font-weight:650}.stage-tip .attn.warn{color:#f59e0b}.stage-tip .attn.bad{color:#ef4444}.stage-note{min-height:1.1em;color:var(--text-secondary);font-size:12px;margin:.2rem 0;flex-shrink:0}.stage-note:empty{display:none;min-height:0;margin:0}.stage-lab{position:absolute;z-index:30;inset:0;overflow-y:auto;overflow-x:hidden;background:#080a0f;padding:0;-webkit-overflow-scrolling:touch}.stage-lab[hidden],.stage-map[hidden],.stage-car[hidden],.stage-river[hidden]{display:none!important}.index-panel-header{position:sticky;top:0;z-index:25;display:flex;align-items:center;justify-content:space-between;padding:max(.85rem,calc(var(--safe-top) + .45rem)) 1.25rem .85rem;background:#080c14e0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 4px 20px #00000059}.index-panel-title{display:flex;align-items:center;gap:.55rem}.index-panel-icon{font-size:1.15rem;line-height:1}.index-panel-title h2{font-size:15px;font-weight:700;color:#f8fafc;margin:0;letter-spacing:-.01em}.index-close-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .85rem;border-radius:999px;background:#ffffff14;border:1px solid rgba(255,255,255,.14);color:#f1f5f9;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;user-select:none;-webkit-user-select:none}.index-close-btn:hover{background:#ffffff29;border-color:#ffffff40;color:#38bdf8}.index-body{display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem 1.25rem calc(2.5rem + var(--safe-bottom));max-width:680px;margin:0 auto;box-sizing:border-box;width:100%}.index-section{background:#0d1321bf;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:1.15rem;box-shadow:0 4px 24px #00000059;display:flex;flex-direction:column;gap:.9rem}.index-section-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.45rem;border-bottom:1px solid rgba(255,255,255,.07)}.index-section-header h2{font-size:14.5px;font-weight:700;color:#f8fafc;letter-spacing:.01em;margin:0;display:flex;align-items:center;gap:.45rem}.index-health{width:100%;height:120px;display:block;margin:.4rem 0 .6rem}.index-row{font-size:13.5px;padding:.35rem 0;display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;color:#cbd5e1}.index-event{align-items:flex-start;flex-wrap:nowrap;gap:.65rem}.index-event-icon{width:16px;height:16px;margin-top:2px;flex:none;color:#7fd4ff}.index-event-icon[data-level=warning]{color:#f59e0b}.index-event-icon[data-level=critical]{color:#ef4444}.index-event b{display:block;font-weight:650;color:#f1f5f9}.index-event-body,.index-event-time{display:block;color:var(--text-secondary);font-size:12px}.index-event-time{color:var(--text-muted);font-size:11px}.index-form-card{display:flex;flex-direction:column;gap:1.1rem}.index-subcard{display:flex;flex-direction:column;gap:.75rem;background:#ffffff06;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:.95rem}.index-subcard-title{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;margin:0}.index-toggle-list{display:flex;flex-direction:column;gap:.55rem}.index-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:.85rem;padding:.55rem .75rem;border-radius:8px;background:#ffffff05;border:1px solid rgba(255,255,255,.04);cursor:pointer;transition:all .14s ease}.index-toggle-row:hover{background:#ffffff0d;border-color:#ffffff17}.index-toggle-meta{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1}.index-toggle-label{font-size:13px;font-weight:600;color:#f1f5f9}.index-toggle-desc{font-size:11.5px;color:#8b949e;line-height:1.35}.index-checkbox{width:18px;height:18px;accent-color:#38bdf8;cursor:pointer;border-radius:4px;flex-shrink:0}.index-sensor-list{display:flex;flex-direction:column;gap:.65rem}.index-sensor-item{display:flex;flex-direction:column;gap:.6rem;padding:.75rem .85rem;border-radius:10px;background:#ffffff06;border:1px solid rgba(255,255,255,.06);transition:all .15s ease}.index-sensor-item:hover{border-color:#ffffff1f;background:#ffffff09}.index-sensor-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.index-sensor-title-wrap{display:flex;align-items:center;gap:.55rem;cursor:pointer;min-width:0}.index-sensor-name{font-size:13.5px;font-weight:700;color:#f1f5f9}.index-sensor-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.index-select{appearance:none;-webkit-appearance:none;background:#161b22d9;border:1px solid rgba(255,255,255,.14);color:#e2e8f0;font-size:11.5px;font-weight:600;padding:.28rem 1.4rem .28rem .65rem;border-radius:6px;cursor:pointer;outline:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5'%3E%3Cpath fill='%2394a3b8' d='M0 0l4 5 4-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .45rem center;transition:border-color .15s ease}.index-select:hover,.index-select:focus{border-color:#38bdf8;color:#fff}.index-select.full{width:100%}.index-play-btn{padding:.25rem .65rem;border-radius:6px;background:#38bdf81f;border:1px solid rgba(56,189,248,.3);color:#38bdf8;font-size:11px;font-weight:700;cursor:pointer;transition:all .15s ease;white-space:nowrap}.index-play-btn:hover{background:#38bdf838;border-color:#38bdf8;color:#fff}.index-sensor-meta{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;padding-top:.45rem;border-top:1px solid rgba(255,255,255,.05)}.index-meta-chip{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;background:#ffffff09;padding:.22rem .55rem;border-radius:6px;border:1px solid rgba(255,255,255,.08);font-size:11px;font-weight:600;color:#cbd5e1}.index-meta-input{display:inline-flex;align-items:center;gap:.35rem;background:#ffffff09;padding:.22rem .55rem;border-radius:6px;border:1px solid rgba(255,255,255,.08);font-size:11px;font-weight:600;color:#94a3b8}.index-meta-input input{width:42px;background:#0000004d;border:1px solid rgba(255,255,255,.14);border-radius:4px;color:#f1f5f9;font-family:ui-monospace,SF Mono,monospace;font-size:11.5px;font-weight:700;text-align:center;padding:1px 3px}.index-group-stack{display:flex;flex-direction:column;gap:.75rem}.index-group-box{display:flex;flex-direction:column;gap:.55rem;padding:.8rem .9rem;border-radius:10px;background:#ffffff06;border:1px solid rgba(255,255,255,.06)}.index-group-head{display:flex;align-items:center;gap:.45rem}.index-group-head span{font-size:1rem}.index-group-head h4{font-size:12px;font-weight:700;color:#cbd5e1;margin:0;letter-spacing:.02em}.index-cell-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:.55rem}.index-cell{display:flex;flex-direction:column;gap:.25rem;background:#00000059;border:1px solid rgba(255,255,255,.07);border-radius:8px;padding:.45rem .6rem;transition:border-color .15s ease}.index-cell:focus-within{border-color:#38bdf8;box-shadow:0 0 8px #38bdf833}.index-cell-label{font-size:10px;font-weight:700;color:#8b949e;letter-spacing:.03em;text-transform:uppercase}.index-cell-input-wrap{display:flex;align-items:baseline;gap:.3rem}.index-cell-input{width:100%;min-width:0;background:transparent;border:none;outline:none;font-family:ui-monospace,SF Mono,monospace;font-size:13.5px;font-weight:800;color:#38bdf8;padding:0}.index-cell-unit{font-size:10.5px;font-weight:600;color:#64748b;flex-shrink:0}.index-toggle-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.55rem}.index-toggle-item{display:flex;align-items:center;gap:.65rem;padding:.55rem .75rem;border-radius:8px;background:#ffffff05;border:1px solid rgba(255,255,255,.05);cursor:pointer;transition:all .14s ease}.index-toggle-item:hover{background:#ffffff0b;border-color:#ffffff17}.index-controls-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.75rem;margin-top:.4rem}.index-control-group{display:flex;flex-direction:column;gap:.3rem}.index-field-label{font-size:10.5px;font-weight:700;color:#8b949e;letter-spacing:.03em;text-transform:uppercase}.index-input-styled{background:#161b22d9;border:1px solid rgba(255,255,255,.14);border-radius:6px;color:#f1f5f9;font-family:ui-monospace,SF Mono,monospace;font-size:13px;font-weight:700;padding:.32rem .55rem;outline:none;transition:border-color .15s ease}.index-input-styled:hover,.index-input-styled:focus{border-color:#38bdf8;box-shadow:0 0 8px #38bdf833}.index-subtoggles-row{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;padding-top:.45rem;border-top:1px solid rgba(255,255,255,.05)}.index-toggle-chip{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;background:#ffffff09;padding:.3rem .65rem;border-radius:6px;border:1px solid rgba(255,255,255,.08);font-size:12px;font-weight:600;color:#cbd5e1}.index-step-wrap{margin-left:auto}.index-test-actions{display:flex;gap:.65rem;flex-wrap:wrap}.index-action-btn{padding:.42rem .95rem;border-radius:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.14);color:#f1f5f9;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.index-action-btn:hover{background:#38bdf826;border-color:#38bdf866;color:#38bdf8}.index-form{display:flex;flex-direction:column;gap:.6rem;margin-top:.4rem}.index-form input,.index-form select{background:#161b22d9;color:var(--text-primary);border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:.35rem .55rem;font-size:13px}.index-check{display:flex;gap:.5rem;align-items:center;font-size:13px;color:var(--text-secondary)}.stage-scenario-select[hidden]{display:none!important}.stage-scenario-select{appearance:none;-webkit-appearance:none;background:#161b22d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(88,166,255,.35);color:#79c0ff;font-family:inherit;font-size:11px;font-weight:600;letter-spacing:.02em;padding:.22rem 1.4rem .22rem .55rem;border-radius:6px;cursor:pointer;outline:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5'%3E%3Cpath fill='%2379c0ff' d='M0 0l4 5 4-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .45rem center;transition:all .15s ease;max-width:145px;text-overflow:ellipsis;white-space:nowrap}.stage-scenario-select:hover,.stage-scenario-select:focus{background-color:#212a3af2;border-color:#58a6ff;box-shadow:0 0 8px #58a6ff40}.stage-scenario-select optgroup{background:#0d1117;color:#8b949e;font-weight:700}.stage-scenario-select option{background:#161b22;color:#e6edf3;font-size:12px;padding:4px}.scenario-btn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.5rem}.btn-scenario{display:flex;align-items:center;gap:.6rem;padding:.55rem .7rem;text-align:left;border-radius:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:var(--text-primary);cursor:pointer;transition:all .15s ease}.btn-scenario:hover{background:#58a6ff1a;border-color:#58a6ff59}.btn-scenario.active{background:#58a6ff2e;border-color:#58a6ff;box-shadow:0 0 10px #58a6ff33}.scenario-btn-icon{font-size:1.35rem;flex-shrink:0}.scenario-btn-text{display:flex;flex-direction:column;gap:.12rem;min-width:0}.scenario-btn-text b{font-size:.8rem;font-weight:600;color:#e6edf3}.scenario-btn-text small{font-size:.68rem;color:#8b949e;line-height:1.25}.stage-cam-toggle{position:relative;z-index:5;display:inline-flex;align-items:center;gap:.35rem;height:28px;line-height:28px;box-sizing:border-box;padding:0 .35rem;border-radius:6px;background:transparent;border:0;color:var(--text-secondary, #94a3b8);font-family:inherit;font-size:13px;font-weight:500;letter-spacing:.01em;cursor:pointer;transition:color .15s ease,opacity .15s ease,background .15s ease;user-select:none;-webkit-user-select:none}.stage-cam-toggle:hover{background:#ffffff0f;color:var(--text-primary, #f1f5f9)}.stage-cam-toggle.is-chase{border:0;background:transparent;color:#38bdf8;box-shadow:none}.stage-cam-toggle.is-chase:hover{background:#38bdf814;color:#7dd3fc}.stage-cam-toggle.is-orbit{border:0;background:transparent;color:#c084fc;box-shadow:none}.stage-cam-toggle.is-orbit:hover{background:#a855f714;color:#d8b4fe}.stage-cam-toggle.is-free,.stage-cam-toggle.is-stationary{border:0;background:transparent;color:#94a3b8;box-shadow:none}.stage-cam-toggle.is-free:hover,.stage-cam-toggle.is-stationary:hover{background:#ffffff0f;color:var(--text-primary, #f1f5f9)}@media (max-width: 640px){.stage-cam-toggle{height:28px;padding:0 .25rem;font-size:12px}.stage-cam-toggle .cam-toggle-label{display:inline-block;font-size:12px}}.toast-container{position:fixed;top:0;left:0;right:0;width:100%;z-index:2500;display:flex;flex-direction:column;gap:1px;pointer-events:none}.toast-card{pointer-events:auto;position:relative;display:flex;align-items:center;gap:12px;width:100%;box-sizing:border-box;padding:12px max(48px,calc(env(safe-area-inset-right,0px) + 44px)) 12px max(16px,calc(env(safe-area-inset-left,0px) + 16px));border-radius:0;background:#0e121bf5;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border:none;border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 8px 32px #000000b3;overflow:hidden;opacity:0;transform:translateY(-100%);transition:opacity .25s cubic-bezier(.16,1,.3,1),transform .25s cubic-bezier(.16,1,.3,1);touch-action:none}.toast-card:first-child{padding-top:max(14px,calc(var(--safe-top) + 10px))}.toast-card.toast-visible{opacity:1;transform:translateY(0)}.toast-card.toast-exit{opacity:0;transform:translateY(-100%)}.toast-indicator{position:absolute;left:0;top:0;bottom:0;width:3.5px}.toast-icon-wrapper{flex-shrink:0;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#ffffff0d}.toast-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.toast-title{font-size:13px;font-weight:700;color:#fff;letter-spacing:.01em}.toast-text{font-size:12.5px;color:#cbd5e1;line-height:1.35;word-break:break-word}.toast-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.toast-action-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.18);color:#fff;font-size:11.5px;font-weight:600;padding:5px 10px;border-radius:7px;cursor:pointer;white-space:nowrap;transition:all .15s ease}.toast-action-btn:hover{background:#fff3;border-color:#ffffff4d}.toast-close{position:absolute;top:10px;right:max(14px,calc(env(safe-area-inset-right,0px) + 14px));background:transparent!important;border:none!important;box-shadow:none!important;color:#ffffff73;width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;transition:color .15s ease,opacity .15s ease}.toast-card:first-child .toast-close{top:max(14px,calc(var(--safe-top) + 10px))}.toast-close:hover,.toast-close:active{background:transparent!important;border:none!important;color:#fff;opacity:1}.toast-progress{position:absolute;bottom:0;left:0;right:0;height:2.5px;background:#ffffff14}.toast-progress-bar{height:100%;width:100%}.toast-success{border-bottom-color:#10b98173;box-shadow:0 8px 32px #000000b3,0 2px 16px #10b9812e}.toast-success .toast-indicator,.toast-success .toast-progress-bar{background:var(--green)}.toast-success .toast-icon-wrapper{color:var(--green);background:#10b9811f}.toast-error{border-bottom-color:#ef44448c;box-shadow:0 8px 32px #000000b3,0 2px 16px #ef444438}.toast-error .toast-indicator,.toast-error .toast-progress-bar{background:var(--red)}.toast-error .toast-icon-wrapper{color:var(--red);background:#ef444424}.toast-warning{border-bottom-color:#f59e0b80;box-shadow:0 8px 32px #000000b3,0 2px 16px #f59e0b2e}.toast-warning .toast-indicator,.toast-warning .toast-progress-bar{background:var(--amber)}.toast-warning .toast-icon-wrapper{color:var(--amber);background:#f59e0b24}.toast-info{border-bottom-color:#38bdf873;box-shadow:0 8px 32px #000000b3,0 2px 16px #38bdf82e}.toast-info .toast-indicator,.toast-info .toast-progress-bar{background:var(--cyan)}.toast-info .toast-icon-wrapper{color:var(--cyan);background:#38bdf81f}.offline-diagnostic-card{border-radius:12px;padding:.85rem 1rem;margin-bottom:1rem;font-size:.82rem;line-height:1.45}.offline-diagnostic-card.insecure{background:#ef444417;border:1px solid rgba(239,68,68,.35);color:#fca5a5}.offline-diagnostic-card.insecure strong{color:#ef4444}.offline-diagnostic-card.secure{background:#22c55e14;border:1px solid rgba(34,197,94,.25);color:#86efac}.offline-diagnostic-card.secure strong{color:#22c55e}.offline-diagnostic-card .diag-header{display:flex;align-items:center;gap:.45rem;font-weight:700;margin-bottom:.35rem}.offline-diagnostic-card .diag-body{opacity:.92}.index-link-table{width:100%;border-collapse:collapse;font-size:12.5px;color:#cbd5e1;margin:.3rem 0 .5rem;font-variant-numeric:tabular-nums}.index-link-table th,.index-link-table td{padding:.25rem .3rem;text-align:right;border-bottom:1px solid rgba(255,255,255,.06)}.index-link-table th:first-child,.index-link-table td:first-child{text-align:left}.index-link-table th{color:#94a3b8;font-weight:600}.index-link-table td[data-bad="1"]{color:#f59e0b;font-weight:600}.slide-confirm{display:flex;flex-direction:column;gap:.4rem;min-width:220px;padding:.35rem}.slide-confirm-title{font-size:.8rem;font-weight:700;color:var(--cyan, #38bdf8)}.slide-confirm-track{position:relative;height:44px;border-radius:22px;background:#00000073;border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;overflow:hidden;user-select:none;-webkit-user-select:none}.slide-confirm-hint{font-size:.72rem;font-weight:700;letter-spacing:.04em;color:var(--text-secondary, #94a3b8);pointer-events:none}.slide-confirm-thumb{position:absolute;left:4px;top:3px;width:36px;height:36px;border-radius:50%;background:var(--cyan, #38bdf8);color:#080a0f;font-size:1.4rem;font-weight:900;line-height:36px;text-align:center;cursor:grab;touch-action:none;box-shadow:0 0 12px #38bdf880}.slide-confirm-cancel{background:transparent;border:0;color:var(--text-secondary, #94a3b8);font-size:.75rem;padding:.3rem;cursor:pointer}
