:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#141416;--field-ink:#141416;--field-ink-soft:#141416ad;--field-mist:#f5f5f6;--panel-milk:#fbfbfc;--line-fog:#d9d9df;--line-strong:#1414161f;--route-teal:#c13d3e;--route-teal-soft:#c13d3e1a;--signal-copper:#c13d3e;--signal-copper-deep:#962f31;--alert-amber:#c98b2c;--hazard-brick:#8a2b2d;--film-slate:#17191d;--console-panel:#101216;--console-panel-top:#1a1d23;--console-edge:#fbfbfc14;--shadow-ambient:none;--shadow-stage:none;background:#f5f5f6;font-family:Segoe UI,system-ui,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%}body{min-height:100vh;color:var(--field-ink);background:#f5f5f6;margin:0}button,input,select,textarea,video{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}table{border-collapse:collapse}.gate-shell,.workspace-shell{min-height:100vh}.gate-shell{place-items:center;padding:2rem;display:grid}.gate-card{background:var(--panel-milk);width:min(34rem,100%);box-shadow:var(--shadow-stage);border:1px solid var(--line-strong);border-radius:12px;gap:1rem;padding:2rem;display:grid}.gate-card h1,.gate-card h2,.workspace-header h2,.detail-header h3{margin:0;font-weight:600;line-height:1.08}.gate-card h1{font-size:2rem}.gate-card h2{font-size:1.4rem}.gate-card p{color:var(--field-ink-soft);margin:0}.gate-brand{align-items:center;gap:1.1rem;display:flex}.gate-brand-mark{flex-shrink:0;width:auto;max-width:min(15rem,100%);height:5rem;display:block}.gate-brand-copy{gap:0;display:grid}.gate-login-form{gap:.85rem;display:grid}.gate-login-field{gap:.4rem;display:grid}.gate-login-field span{text-transform:uppercase;letter-spacing:.08em;color:var(--field-ink-soft);font-size:.74rem}.gate-confirmation{background:linear-gradient(#4864520a 0%,#48645217 100%);border:1px solid #4864522e;border-radius:10px;gap:.35rem;padding:.9rem 1rem;display:grid}.gate-confirmation strong{letter-spacing:.08em;text-transform:uppercase;color:#cfc;font-size:.76rem}.gate-confirmation p{color:var(--field-ink)}.eyebrow,.summary-card span,.sidebar-panel span,.video-stage-note,.player-meta-row span,.surface-header-row span,.control-card span,.search-field span,.history-form-grid span,.vehicle-cell span{text-transform:uppercase;letter-spacing:.08em;color:var(--field-ink-soft);font-size:.74rem}.workspace-shell{padding:0;display:block}.workspace-topbar{z-index:10;border-bottom:1px solid var(--line-fog);background:#fbfbfcf5;justify-content:flex-start;align-items:center;gap:1rem;padding:.9rem 1.25rem;display:flex;position:sticky;top:0}.topbar-brand{align-items:center;gap:.5rem;min-width:0;display:flex}.topbar-brand-mark{flex-shrink:0;width:auto;max-width:min(10.5rem,100%);height:2.45rem;display:block}.topbar-nav{flex-wrap:wrap;gap:.4rem;display:flex}.topbar-session{align-items:center;gap:.75rem;margin-left:auto;display:flex}.topbar-logout-button{white-space:nowrap}.topbar-nav-button,.pill-button,.column-button,.primary-button,.ghost-button,.danger-button,.profile-option,.channel-pill,.toast-close,.fleet-open-button{border:1px solid #0000;border-radius:8px}.topbar-nav-button{color:var(--field-ink-soft);background:0 0;padding:.65rem .9rem;font-weight:600}.topbar-nav-button.is-active{color:var(--route-teal);background:#c13d3e14;border-color:#c13d3e2e}.fleet-panel,.detail-panel,.placeholder-surface,.summary-card,.control-card,.history-results-card,.history-player-card,.placeholder-card,.player-card-surface{background:var(--panel-milk);border:1px solid var(--line-strong);box-shadow:var(--shadow-ambient)}.fleet-panel,.detail-panel,.placeholder-surface,.history-results-card,.history-player-card,.control-card,.player-card-surface,.summary-card,.placeholder-card{border-radius:10px}.brand-copy,.workspace-header p,.detail-header p,.surface-note,.summary-card p,.placeholder-card p,.empty-panel p,.history-result-main span,.video-stage-note,.player-meta-row strong,.gate-card p,.sidebar-panel p{color:var(--field-ink-soft)}.brand-copy,.workspace-header p,.detail-header p,.surface-note,.empty-panel p,.placeholder-card p,.sidebar-panel p,.video-stage-note{margin:0}.topbar-nav-button:hover,.pill-button:hover,.column-button:hover,.ghost-button:hover,.profile-option:hover,.channel-pill:hover,.fleet-open-button:hover{transform:translateY(-1px)}.pill-button.is-active{background:var(--route-teal);color:var(--panel-milk)}.topbar-nav-button:focus-visible,.pill-button:focus-visible,.column-button:focus-visible,.primary-button:focus-visible,.ghost-button:focus-visible,.danger-button:focus-visible,.profile-option:focus-visible,.channel-pill:focus-visible,.fleet-open-button:focus-visible,.toast-close:focus-visible{border-color:#c13d3e3d;outline:none;box-shadow:0 0 0 3px #c13d3e24}.workspace-main{align-content:start;gap:1.1rem;padding:1rem 1.25rem 1.25rem;display:grid}.workspace-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.workspace-header h2{font-size:1.75rem}.history-inline-banner{background:#c13d3e0f;border:1px solid #c13d3e2e;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.95rem 1rem;display:flex}.history-inline-banner p{color:var(--field-ink-soft);margin:.35rem 0 0}.history-recovery-actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.live-inline-banner{background:linear-gradient(#14141608 0%,#c13d3e0d 100%);border:1px solid #c13d3e2e;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.live-inline-banner p{color:var(--field-ink-soft);margin:.35rem 0 0}.live-recovery-actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.compact-header{margin-bottom:0}.fleet-header{border-bottom:1px solid var(--line-fog);padding-bottom:.9rem}.fleet-summary-strip{border:1px solid var(--line-fog);border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid;overflow:hidden}.fleet-layout{grid-template-columns:1fr;align-items:start;gap:1rem;display:grid}.fleet-panel,.detail-panel,.placeholder-surface{padding:1.2rem}.fleet-panel{gap:1rem;display:grid}.fleet-panel-flat{border-top:1px solid var(--line-fog)}.fleet-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;display:flex}.search-field{gap:.4rem;min-width:min(100%,24rem);display:grid}.search-field input,.gate-login-field input,.history-form-grid input,.history-form-grid select{border:1px solid var(--line-strong);background:var(--field-mist);width:100%;color:var(--field-ink);border-radius:14px;padding:.85rem 1rem;transition:border-color .18s cubic-bezier(.22,1,.36,1),box-shadow .18s cubic-bezier(.22,1,.36,1),background .18s cubic-bezier(.22,1,.36,1)}.search-field input:focus-visible,.gate-login-field input:focus-visible,.history-form-grid input:focus-visible,.history-form-grid select:focus-visible{border-color:var(--route-teal);background:var(--panel-milk);outline:none;box-shadow:0 0 0 3px #c13d3e24}.filter-group,.profile-options,.action-row,.detail-badges,.player-meta-row,.history-result-meta,.placeholder-grid{flex-wrap:wrap;gap:.6rem;display:flex}.pill-button,.ghost-button,.danger-button,.primary-button,.fleet-open-button{padding:.75rem 1rem;font-weight:600}.primary-button{background:var(--signal-copper);color:var(--panel-milk);border-color:var(--signal-copper)}.gate-login-form .primary-button{justify-content:center;width:100%}.primary-button:hover{background:var(--signal-copper-deep)}.ghost-button,.fleet-open-button{color:var(--field-ink);background:0 0;border-color:#1f2a281f}.danger-button{background:var(--hazard-brick);color:var(--panel-milk);border-color:var(--hazard-brick)}.column-button{color:var(--field-ink-soft);background:0 0;padding:0;font-weight:600}.fleet-table-wrap{border:1px solid var(--line-fog);border-radius:10px;overflow:auto}.fleet-table{width:100%;min-width:860px}.fleet-table th,.fleet-table td{vertical-align:middle;text-align:left;border-bottom:1px solid #1f2a2814;padding:.8rem .9rem}.fleet-table tbody tr{background:#ffffffa3}.fleet-table tbody tr.fleet-row.is-online{background:#4864521a}.fleet-table tbody tr.fleet-row.is-offline{background:#c13d3e14}.fleet-table tbody tr:hover{background:#c13d3e08}.fleet-table tbody tr.fleet-row.is-online:hover{background:#48645229}.fleet-table tbody tr.fleet-row.is-offline:hover{background:#c13d3e21}.fleet-table tbody tr.is-selected{background:#c13d3e0f}.fleet-table tbody tr.fleet-row.is-online.is-selected{background:#4864522e}.fleet-table tbody tr.fleet-row.is-offline.is-selected{background:#c13d3e29}.row-action-group{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;display:flex}.vehicle-cell{gap:.1rem;display:grid}.vehicle-cell strong{font-size:.97rem}.mono-cell,.vehicle-cell span,.player-meta-row strong,.history-result-main span{font-family:IBM Plex Mono,Consolas,monospace}.event-badges{flex-wrap:wrap;gap:.35rem;display:flex}.detail-panel{gap:1rem;display:grid}.detail-panel-inline{border-top:1px solid var(--line-fog)}.detail-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.detail-identity-block{gap:.2rem;display:grid}.detail-header h3{font-size:1.55rem}.detail-device-code{margin:0;font-family:IBM Plex Mono,Consolas,monospace}.detail-header-inline{align-items:flex-start}.detail-header-actions,.detail-primary-actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.detail-header-actions{flex-direction:column;align-items:flex-end}.live-shell-panel{align-content:start}.live-shell-header{border-bottom:1px solid var(--line-fog);padding-bottom:.8rem}.detail-summary-grid{border:1px solid var(--line-fog);border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid;overflow:hidden}.summary-card{border:0;border-right:1px solid var(--line-fog);border-radius:0;gap:.25rem;padding:.95rem 1rem;display:grid}.summary-card:last-child{border-right:0}.summary-card strong,.surface-header-row strong,.control-card strong,.player-card-header strong,.history-result-main strong,.placeholder-card strong{font-size:1rem}.detail-surface{gap:1rem;display:grid}.detail-surface-live{gap:.9rem}.control-card,.history-results-card,.history-player-card,.placeholder-card,.player-card-surface{border-radius:10px;padding:1rem}.control-card{gap:1rem;display:grid}.live-control-strip{border:0;border-top:1px solid var(--line-fog);border-bottom:1px solid var(--line-fog);box-shadow:none;background:linear-gradient(#14141605 0%,#0000 72%);border-radius:0;gap:.9rem;padding:1.1rem 0 1.15rem}.live-control-strip .action-row{border-top:1px solid var(--line-strong);justify-content:flex-start;padding-top:.9rem}.control-card-header,.surface-header-row,.player-card-header,.history-result-row,.player-meta-row,.history-result-main,.history-form-grid{gap:.8rem;display:flex}.control-card-header,.surface-header-row,.player-card-header,.history-result-row{justify-content:space-between;align-items:center}.channel-pills{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:.7rem;display:grid}.channel-pill,.profile-option{color:var(--field-ink);text-align:left;background:#14141605;border-color:#1414161a;gap:.25rem;padding:.9rem 1rem;display:grid}.channel-pill.is-selected,.profile-option.is-selected{background:#c13d3e0f;border-color:#c13d3e38;box-shadow:inset 0 0 0 1px #c13d3e24}.channel-pill.is-active{background:#1414160f;border-color:#1414162e}.channel-pill strong,.profile-option strong{letter-spacing:.03em;font-family:IBM Plex Mono,Consolas,monospace;font-size:.92rem}.channel-pill span,.profile-option span,.profile-option p{color:var(--field-ink-soft);margin:0}.profile-row{gap:.8rem;display:grid}.profile-row p{color:var(--field-ink-soft);margin:.3rem 0 0}.player-grid{gap:.9rem;display:grid}.live-player-grid{border-top:1px solid var(--line-fog);gap:0}.player-grid.is-mosaic{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.player-card-surface{gap:.85rem;display:grid}.live-player-strip{box-shadow:none;background:0 0;border:0;border-radius:0;padding:1rem 0 0}.live-player-strip+.live-player-strip{border-top:1px solid var(--line-fog);margin-top:1rem;padding-top:1rem}.live-player-grid.is-mosaic{border-top:0;gap:1rem}.live-player-grid.is-mosaic .live-player-strip{border-top:1px solid var(--line-fog);padding:.95rem 0 0}.live-player-grid.is-mosaic .live-player-strip+.live-player-strip{margin-top:0}.player-card-header span,.history-result-main span,.surface-header-row span,.control-card-header span{color:var(--field-ink-soft)}.live-control-strip .control-card-header span,.live-control-strip .profile-row span,.live-player-strip .player-card-header span,.live-player-strip .player-meta-row span,.video-stage-note{letter-spacing:.08em;text-transform:uppercase;font-family:IBM Plex Mono,Consolas,monospace;font-size:.72rem}.video-stage{gap:.65rem;display:grid}.detail-surface-live .video-stage-frame{border:1px solid var(--console-edge);border-radius:6px}.video-stage-frame{isolation:isolate;border:1px solid var(--console-edge);background:linear-gradient(180deg, var(--console-panel-top) 0%, var(--console-panel) 100%);border-radius:8px;width:100%;min-height:260px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fbfbfc05,inset 0 -72px 96px #0a0b0e6b}.video-stage-frame.has-resolution{justify-self:center;min-height:0}.video-stage-frame:before{content:"";pointer-events:none;background:linear-gradient(#fbfbfc0d 0%,#0000 18% 74%,#0a0b0e47 100%),linear-gradient(90deg,#fbfbfc05 0%,#0000 16% 84%,#fbfbfc05 100%);position:absolute;inset:0}.video-stage.is-compact .video-stage-frame{min-height:220px}.video-stage-frame video{width:100%;height:100%;min-height:inherit;background:0 0;display:block}.video-stage-overlay{text-align:center;color:var(--panel-milk);background:linear-gradient(#0a0b0e1f 0%,#0a0b0e94 72%,#0a0b0ee6 100%);place-content:center;gap:.4rem;padding:1.2rem;display:grid;position:absolute;inset:0}.player-meta-row{justify-content:space-between}.live-player-strip .player-meta-row,.live-player-strip .action-row{border-top:1px solid var(--line-strong);padding-top:.85rem}.live-player-strip .action-row{justify-content:flex-start}.live-control-strip .ghost-button,.live-player-strip .ghost-button,.live-player-strip .danger-button{background:#14141605}.live-control-strip .ghost-button,.live-player-strip .ghost-button{border-color:#1414161f}.live-player-strip .danger-button{border-color:#c13d3e2e}.player-meta-row div{gap:.2rem;display:grid}.live-empty-panel{border-top-style:solid;border-top-width:1px;border-top-color:var(--line-fog)}.history-surface{grid-template-columns:1fr;align-items:start}.history-section-header{align-items:flex-start}.history-form-grid{flex-wrap:wrap;align-items:end}.history-form-grid label{gap:.35rem;min-width:180px;display:grid}.history-results-card,.history-player-card{gap:.9rem;display:grid}.history-results-list{gap:.7rem;display:grid}.history-result-row{background:0 0;border:1px solid #1f2a281f;border-radius:8px;padding:.85rem .9rem}.history-result-row.is-selected{background:#c13d3e0f;border-color:#c13d3e2e}.history-result-main{flex-direction:column;align-items:flex-start}.empty-panel{text-align:center;background:#1f2a2806;border:1px dashed #1f2a281f;border-radius:8px;place-items:center;gap:.5rem;min-height:160px;padding:1.2rem;display:grid}.compact-empty{min-height:140px}.detail-empty-panel{min-height:320px}.placeholder-surface{gap:1rem;display:grid}.admin-surface{align-content:start}.admin-summary-grid,.admin-layout{gap:1rem;display:grid}.admin-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-layout{grid-template-columns:1fr;align-items:start}.admin-card-wide{grid-column:1/-1}.admin-kv-list,.admin-protocol-list,.admin-device-list{gap:.75rem;display:grid}.admin-kv-row,.admin-device-row{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.admin-kv-row{border-bottom:1px solid #1f2a2814;padding-bottom:.7rem}.admin-kv-row:last-child{border-bottom:0;padding-bottom:0}.admin-device-row{background:0 0;border:1px solid #1f2a280f;border-radius:8px;padding:.9rem 1rem}.admin-device-main{gap:.12rem;display:grid}.admin-device-main span{color:var(--field-ink-soft);font-family:IBM Plex Mono,Consolas,monospace}.admin-device-meta{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.placeholder-grid{grid-template-columns:1fr;display:grid}.placeholder-card{gap:.5rem;display:grid}.status-badge{min-height:30px;color:var(--field-ink-soft);letter-spacing:.06em;text-transform:uppercase;background:#14141608;border:1px solid #1414161a;border-radius:6px;justify-content:center;align-items:center;padding:.35rem .7rem;font-size:.74rem;font-weight:700;display:inline-flex}.tone-live{color:var(--signal-copper-deep);background:#c13d3e14;border-color:#c13d3e33}.tone-ready{color:var(--field-ink);background:#1414160a;border-color:#1414161f}.tone-muted{color:var(--field-ink-soft);background:0 0;border-color:#14141614}.tone-offline,.tone-danger{color:var(--hazard-brick);background:#c13d3e1a;border-color:#c13d3e2e}.toast-stack{z-index:20;gap:.8rem;width:min(392px,100vw - 2rem);display:grid;position:fixed;bottom:1rem;right:1rem}.toast{background:linear-gradient(#fbfbfcfa 0%,#f5f5f6f5 100%);border:1px solid #14141614;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.8rem;padding:1rem 1rem 1rem 1.05rem;display:grid;box-shadow:0 18px 42px #1414161f}.toast>div{min-width:0}.toast p,.toast strong{margin:0}.toast strong{color:var(--field-ink)}.toast p{color:var(--field-ink-soft);margin-top:.35rem}.toast-info{border-color:#1414161f}.toast-success{background:linear-gradient(#fbf7f0fa 0%,#c13d3e1a 100%);border-color:#c13d3e33}.toast-success strong{color:var(--signal-copper-deep)}.toast-warning{background:linear-gradient(#fbf7f0fa 0%,#c98b2c24 100%);border-color:#c98b2c42}.toast-warning strong{color:#7b5418}.toast-error{background:linear-gradient(#fbf7f0fa 0%,#8a2b2d1f 100%);border-color:#8a2b2d38}.toast-error strong{color:var(--hazard-brick)}.toast-close{width:2rem;height:2rem;color:var(--field-ink);background:#1f2a280a;border:1px solid #14141614;border-radius:999px;flex-shrink:0;transition:background .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.22,1,.36,1)}.toast-close:hover{background:#1f2a281a}@media (width<=1260px){.detail-summary-grid,.admin-summary-grid,.placeholder-grid{grid-template-columns:1fr}}@media (width<=980px){.workspace-topbar,.topbar-brand,.topbar-session,.workspace-header,.detail-header,.detail-header-actions{flex-direction:column;align-items:stretch}.topbar-brand{gap:.5rem}.topbar-session{margin-left:0}.detail-header-actions{place-items:flex-start start}.admin-card-wide{grid-column:auto}}@media (width<=720px){.workspace-shell,.gate-shell{padding:1rem}.gate-card{padding:1.6rem}.gate-brand-mark{height:4.25rem}.workspace-topbar{margin:-1rem -1rem 0;padding:.85rem 1rem}.workspace-main{padding:1rem 0 0}.fleet-toolbar,.history-form-grid,.action-row,.player-meta-row,.admin-kv-row,.admin-device-row,.control-card-header,.surface-header-row,.history-result-row,.history-result-meta{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.filter-group,.topbar-nav,.topbar-session,.detail-primary-actions,.profile-options,.detail-badges,.admin-device-meta{width:100%}.topbar-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar-brand-mark{height:2.2rem}.live-player-grid,.live-player-grid.is-mosaic{gap:.8rem}.live-player-grid.is-mosaic .live-player-strip,.live-player-strip,.live-player-strip+.live-player-strip{border-top:1px solid var(--line-fog);margin-top:0;padding-top:.85rem}.admin-device-meta{justify-content:flex-start}.pill-button,.topbar-nav-button,.primary-button,.ghost-button,.danger-button,.fleet-open-button{width:100%}.fleet-summary-strip,.detail-summary-grid,.admin-summary-grid{grid-template-columns:1fr}.summary-card{border-right:0;border-bottom:1px solid var(--line-fog)}.summary-card:last-child{border-bottom:0}.fleet-table{min-width:760px}.video-stage-frame{min-height:220px}}
