:root{color:#e8edf5;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#0b1018;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,select{font:inherit}button{cursor:pointer}#root{width:100%;min-height:100vh}.shell{min-height:100vh;display:flex}.sidebar{background:#0d141e;border-right:1px solid #222c3b;flex-direction:column;flex-shrink:0;width:246px;min-height:100vh;padding:28px 18px;display:flex}.brand{align-items:center;gap:12px;margin:0 0 54px 7px;display:flex}.brand-mark{color:#a6d0ff;background:#233d5c;border:1px solid #3c628c;border-radius:9px;place-items:center;width:37px;height:37px;font-weight:800;display:grid}.brand-name{letter-spacing:-.4px;font-size:16px;font-weight:700}.brand-subtitle{color:#8494aa;letter-spacing:1px;margin-top:4px;font-size:8px}.side-label{color:#687991;letter-spacing:1.4px;margin:20px 11px 14px;font-size:10px;font-weight:700}.nav-item{color:#8d9aaf;border-radius:8px;margin-bottom:5px;padding:13px 12px;font-size:13px}.nav-active{color:#b6d8ff;background:#172c42;font-weight:600}.side-detail{color:#c5d0df;margin:0 11px 12px;font-size:12px}.muted{color:#74849a}.sidebar-bottom{border-top:1px solid #263141;margin-top:auto;padding-top:22px}.dot{background:#49c69b;border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.dot.amber{background:#e6b35e}.workspace{width:100%;min-width:0;max-width:1740px;margin:0 auto;padding:38px 48px 24px}.topbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;display:flex}.eyebrow{color:#74a6de;letter-spacing:2px;margin-bottom:12px;font-size:10px;font-weight:700}h1{letter-spacing:-.8px;margin:0;font-size:29px;line-height:1.2}.subtext{color:#8897ad;font-size:12px;line-height:1.6}.status-badge{color:#79d7ab;letter-spacing:.7px;background:#142e27;border:1px solid #275342;border-radius:6px;flex-shrink:0;padding:10px 13px;font-size:10px;font-weight:700}.control-panel{background:#111b28;border:1px solid #263446;border-radius:12px;flex-wrap:wrap;align-items:end;gap:20px;margin-bottom:22px;padding:20px;display:flex}.control-group{flex-direction:column;flex:1;gap:8px;min-width:180px;display:flex}.control-group label{color:#a5b3c5;font-size:11px;font-weight:600}.control-group select{color:#edf2f9;background:#0c1420;border:1px solid #36465a;border-radius:7px;outline:none;width:100%;padding:11px 12px}.control-group select:focus{border-color:#6aa9ed}.control-note{color:#9aabc0;padding:10px;font-size:11px}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.kpi{background:#121c29;border:1px solid #273648;border-radius:12px;padding:19px 20px}.kpi-label{color:#90a1b9;letter-spacing:.9px;font-size:10px;font-weight:700}.kpi-value{font-variant-numeric:tabular-nums;margin:13px 0 8px;font-size:29px;font-weight:650}.kpi-foot{color:#708198;font-size:11px;line-height:1.5}.alert-color{color:#ff8294}.chart-panel,.alerts-panel{background:#111a27;border:1px solid #253446;border-radius:12px;margin-bottom:18px;padding:22px 24px 18px}.panel-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.panel-heading h2{margin:0;font-size:15px;font-weight:650}.panel-heading p{color:#8494aa;margin:7px 0 0;font-size:11px}.chart-legend{color:#8ebbef;font-size:11px}.chart-wrap{width:100%;min-width:0;height:295px}.alert-count{color:#ff9aaa;font-size:12px;font-weight:600}.alerts-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.alert-row{background:#181f2d;border:1px solid #33394b;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:12px;display:flex}.alert-index{color:#ff91a0}.alert-score{color:#a8b6c9;font-variant-numeric:tabular-nums}.footer-row{justify-content:space-between;align-items:center;gap:18px;margin:22px 0 30px;display:flex}.pager{gap:10px;display:flex}.pager button{color:#d6e6fa;background:#1b2c42;border:1px solid #34516f;border-radius:7px;padding:10px 16px;font-size:12px}.pager button:hover:not(:disabled){background:#27415e}.pager button:disabled{opacity:.35;cursor:not-allowed}.empty-state,.error{color:#b4c3d7;border:1px solid #34475d;border-radius:10px;margin-bottom:20px;padding:24px}.error{color:#ff9aaa;border-color:#70414e}.footer-note{color:#65758b;border-top:1px solid #243042;padding-top:18px;font-size:11px}@media (width<=1050px){.sidebar{width:190px}.workspace{padding:28px 24px}.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.shell{display:block}.sidebar{width:100%;min-height:auto;padding:16px}.brand{margin-bottom:12px}.sidebar .side-label,.sidebar .nav-item,.sidebar .side-detail,.sidebar-bottom{display:none}.workspace{padding:24px 14px}.topbar,.footer-row{flex-direction:column;align-items:flex-start}.status-badge{align-self:flex-start}.kpi-grid{gap:8px}.kpi{padding:14px}.kpi-value{font-size:23px}.chart-panel,.alerts-panel{padding:16px 12px}.chart-wrap{height:260px}.alerts-list{grid-template-columns:1fr}}.playback-panel{background:#111b28;border:1px solid #263446;border-radius:12px;margin-bottom:22px;padding:22px 24px}.playback-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.playback-header h2{margin:0 0 6px;font-size:15px}.playback-header p{margin:0}.playback-position{color:#7cb8f5;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.playback-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.playback-actions button,.playback-actions select{color:#d6e6fa;background:#1b2c42;border:1px solid #34516f;border-radius:7px;padding:9px 16px;font-size:12px}.playback-actions button:hover{background:#294665}.playback-actions label{color:#90a1b9;margin-left:12px;font-size:12px}.playback-slider{accent-color:#60a5fa;cursor:pointer;width:100%;height:6px;margin:8px 0 14px;display:block}.playback-progress{color:#8291a6;font-variant-numeric:tabular-nums;justify-content:space-between;font-size:11px;display:flex}@media (width<=700px){.playback-panel{padding:16px}.playback-header{flex-direction:column;align-items:flex-start}}.nav-button{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;display:block}.nav-button:hover{color:#d9eaff;background:#1c3148}.nav-button.nav-active{color:#b6d8ff;background:#172c42}.analytics-page{flex-direction:column;gap:20px;display:flex}.analytics-page .control-panel{margin-bottom:0}.analytics-card{background:#111a27;border:1px solid #263446;border-radius:12px;padding:24px}.analytics-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:28px;display:grid}.analytics-metric{background:#162232;border:1px solid #2a394c;border-radius:10px;padding:20px}.analytics-bars{flex-direction:column;gap:22px;display:flex}.analytics-bar-label{color:#cbd7e7;justify-content:space-between;margin-bottom:8px;font-size:12px;display:flex}.analytics-bar-track{background:#243246;border-radius:6px;height:10px;overflow:hidden}.analytics-bar-fill{background:#60a5fa;border-radius:6px;height:100%}.analytics-table-wrap{width:100%;overflow-x:auto}.analytics-table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%;font-size:12px}.analytics-table th{color:#90a1b9;text-transform:uppercase;letter-spacing:.7px;border-bottom:1px solid #324054;padding:15px 12px;font-size:10px}.analytics-table td{font-variant-numeric:tabular-nums;border-bottom:1px solid #263446;padding:16px 12px}.analytics-table tbody tr:hover{background:#192638}.analytics-disclaimer{color:#8291a6;font-size:11px;line-height:1.7}@media (width<=700px){.analytics-metrics{grid-template-columns:1fr}.analytics-card{padding:16px}}.detector-control{flex-direction:column;gap:8px;min-width:220px;display:flex}.detector-control label{color:#aebbd0;font-size:12px;font-weight:600}.detector-control select{color:#edf3ff;width:100%;font:inherit;cursor:pointer;background:#111c2f;border:1px solid #2a3b55;border-radius:8px;padding:11px 14px}.detector-control select:focus{outline-offset:2px;outline:2px solid #5d91ff}.detector-description{color:#8393aa;font-size:11px}
