:root{color-scheme:light;--bg: #f6f7f9;--panel: #ffffff;--panel-strong: #ffffff;--line: #e5e8ec;--line-strong: #cfd6dd;--text: #1c2126;--muted: #5f6b76;--faint: #9aa5b1;--focus: #1570ef;--cyan: #1570ef;--green: #17a06a;--amber: #e5a000;--red: #de3b40;--shadow: 0 1px 2px rgba(16, 24, 40, .05), 0 2px 8px rgba(16, 24, 40, .06);--sidebar-w: 248px;--sidebar-w-collapsed: 68px}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--text);font-family:IBM Plex Sans,Aptos,Segoe UI,sans-serif;background:var(--bg)}button,input{font:inherit}button{border:1px solid var(--line-strong);border-radius:6px;padding:.65rem .85rem;color:var(--text);background:linear-gradient(180deg,#fffffff5,#e8f7f9e6);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease,border-color .12s ease}button:hover:not(:disabled){border-color:var(--focus)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.45}:where(button,a,[role=columnheader]):focus-visible,:where(input,select,textarea):focus-visible{outline:2px solid var(--focus);outline-offset:2px}input[type=range]:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:999px}.app-shell{width:min(1360px,calc(100vw - 48px));min-height:100vh;margin:0 auto;padding:24px 0 32px}.video-stage,.telemetry-panel,.va-panel,.affect-panel,.annotation-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow)}.eyeline,.panel-kicker{margin:0 0 4px;color:var(--muted);font-family:Cascadia Mono,Consolas,monospace;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}h1,h2{margin:0;letter-spacing:0}h1{font-size:clamp(1.35rem,2vw,2.1rem);font-weight:680}h2{font-size:clamp(1rem,1.2vw,1.3rem);font-weight:640}.status-pill{display:flex;align-items:center;gap:7px;min-height:34px;padding:0 10px;border:1px solid rgba(17,98,124,.1);border-radius:999px;color:var(--muted);background:#ffffffc2;font-size:.74rem}.status-pill strong{color:var(--text);font-family:Cascadia Mono,Consolas,monospace;font-size:.72rem}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--faint)}.status-pill.ok .status-dot{background:var(--green);box-shadow:0 0 14px var(--green)}.status-pill.warn .status-dot{background:var(--amber);box-shadow:0 0 14px var(--amber)}.status-pill.bad .status-dot{background:var(--red);box-shadow:0 0 14px var(--red)}.status-pill[data-emphasis=primary]{border-width:1.5px;border-color:var(--text);background:#fff}.status-pill[data-emphasis=primary] .status-dot{width:9px;height:9px;animation:pulse-dot 1.6s ease-in-out infinite}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.25);opacity:.7}}.monitor-grid{display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,28vw,420px);gap:18px;margin-top:18px}.monitor-main-column{display:grid;align-content:start;gap:18px;min-width:0}.right-rail{display:grid;align-content:start;align-self:start;gap:18px;min-height:0}.video-stage,.telemetry-panel,.va-panel,.affect-panel,.annotation-card{min-height:0;border-radius:12px}.video-stage{padding:18px}.stage-toolbar,.panel-heading,.stage-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-toggle{display:flex;align-items:center;gap:10px;min-width:0;border:0;padding:0;color:inherit;background:transparent;box-shadow:none;text-align:left;cursor:pointer}.panel-toggle:hover:not(:disabled){border-color:transparent}.panel-toggle:active:not(:disabled){transform:none}.panel-heading-text{display:grid;min-width:0}.panel-chevron{flex:0 0 auto;width:0;height:0;border-top:4.5px solid transparent;border-bottom:4.5px solid transparent;border-left:6px solid var(--muted);transition:transform .16s ease}.panel-toggle[aria-expanded=true] .panel-chevron{transform:rotate(90deg)}.face-indicator,.source-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:.42rem .7rem;color:var(--muted);font-family:Cascadia Mono,Consolas,monospace;font-size:.72rem;text-transform:uppercase}.face-indicator span{width:8px;height:8px;border-radius:50%;background:var(--faint)}.face-indicator.ok span{background:var(--green)}.video-frame{position:relative;aspect-ratio:16 / 9;margin-top:14px;overflow:hidden;border:1px solid rgba(7,143,195,.22);border-radius:8px;background:#000}.video-frame video,.overlay-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.overlay-canvas{pointer-events:none}.mirror{transform:scaleX(-1)}.scanline{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,transparent 0,rgba(116,242,191,.08) 50%,transparent 100%);mix-blend-mode:screen;animation:sweep 3.8s linear infinite}@keyframes sweep{0%{transform:translateY(-105%)}to{transform:translateY(105%)}}.calibration-control{position:absolute;top:10px;right:10px;z-index:4;display:grid;justify-items:end;gap:4px;max-width:min(220px,calc(100% - 20px))}.calibration-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:92px;min-height:28px;padding:.32rem .62rem;border:1px solid rgba(255,255,255,.3);border-radius:999px;color:#fffffff5;background:transparent;text-shadow:0 1px 3px rgba(0,0,0,.6);font-size:.76rem}.calibration-button:hover:not(:disabled){border-color:#fff9;background:#ffffff14}.calibration-button:disabled{cursor:default;opacity:.85}.calibration-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--faint)}.calibration-control[data-state=active] .calibration-dot{background:var(--green);box-shadow:0 0 10px #0aa376c2}.calibration-control[data-state=calibrating] .calibration-dot{background:var(--amber);box-shadow:0 0 10px #d88504c2;animation:pulse-dot 1.2s ease-in-out infinite}.calibration-control[data-state=error] .calibration-dot{background:var(--red);box-shadow:0 0 10px #cf2f3fc2}.calibration-note{max-width:min(240px,calc(100vw - 40px));padding:5px 9px;border-radius:8px;color:#fff;background:#08181e99;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:.68rem;line-height:1.35;text-align:right}.calibration-note--warn{color:#ffe0a3}.calibration-note--bad{color:#ffc4cb}.empty-state{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;gap:8px;padding:24px;text-align:center;color:var(--muted);background:#000000b8}.empty-state strong{color:var(--red)}.stage-footer{flex-wrap:wrap;margin-top:12px;color:var(--muted);font-family:Cascadia Mono,Consolas,monospace;font-size:.76rem}.telemetry-panel{padding:18px}.va-panel{padding:20px;overflow:hidden;background:var(--panel)}.affect-panel{padding:18px;overflow:hidden;border-color:#0aa37633;background:linear-gradient(135deg,#fffffff0,#f0fcf8e6),#fff}.pain-chip-warming{color:#7a5708;background:#d8850414}.pain-chip-pain{color:var(--red);border-color:#cf2f3f38;background:#cf2f3f14}.pain-chip-clear{color:var(--green);border-color:#0aa37633;background:#0aa37614}.pain-readout{display:grid;gap:4px;margin-top:12px;border:1px solid rgba(10,163,118,.16);border-radius:8px;padding:12px;background:#effaf7d1}.pain-readout span,.emotion-readout-head span{color:var(--muted);font-size:.68rem;text-transform:uppercase}.pain-readout strong{color:var(--green);font-family:Cascadia Mono,Consolas,monospace;font-size:clamp(1.7rem,4vw,2.45rem);line-height:1}.pain-readout small{color:var(--muted);font-family:Cascadia Mono,Consolas,monospace;font-size:.72rem}.affect-note{margin:10px 0 0;border:1px solid rgba(216,133,4,.18);border-radius:8px;padding:8px 10px;color:#74520a;background:#fff8e5b8;font-size:.76rem;line-height:1.4}.affect-note-warn{border-color:#cf2f3f2e;color:var(--red);background:#fff4f6b8}.emotion-readout{display:grid;gap:10px;margin-top:12px}.emotion-readout-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.emotion-readout-head strong{color:var(--text);font-size:.92rem}.emotion-bars{display:grid;gap:7px}.emotion-empty{color:var(--muted);font-size:.78rem;font-style:italic}.emotion-bar-row{display:grid;grid-template-columns:82px minmax(0,1fr) 42px;align-items:center;gap:8px;color:var(--muted);font-size:.74rem}.emotion-bar-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emotion-bar-row strong{color:var(--text);font-family:Cascadia Mono,Consolas,monospace;font-size:.72rem;text-align:right}.emotion-bar-track{height:8px;overflow:hidden;border-radius:999px;background:#2462771f}.emotion-bar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cyan),var(--green))}.va-heading{margin:0;color:var(--text);font-size:1.05rem;font-weight:680}.va-content{display:grid;grid-template-columns:minmax(170px,1fr) minmax(180px,.85fr);gap:14px;align-items:center;margin-top:12px}.va-metrics-column{display:grid;align-content:center;gap:10px;min-width:0}.va-radar{position:relative;width:100%;max-width:250px;aspect-ratio:1 / 1;justify-self:center}.va-radar canvas{display:block;width:100%!important;height:100%!important}.va-score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.va-score-grid div{border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--bg)}.va-score-grid span,.va-axis-list span{display:block;color:var(--muted);font-size:.68rem;text-transform:uppercase}.va-score-grid strong{display:block;color:var(--text);font-size:1rem;line-height:1.2}.va-score-grid small{color:var(--text);font-family:Cascadia Mono,Consolas,monospace}.va-axis-list{display:grid;grid-template-columns:1fr;gap:8px;margin-top:0}.va-axis-list div{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:var(--bg)}.va-axis-list strong{color:var(--text);font-family:Cascadia Mono,Consolas,monospace;font-size:.84rem}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.summary-grid div{border:1px solid rgba(36,98,119,.1);border-radius:8px;padding:10px;background:#eff9fad1}.summary-grid span{display:block;color:var(--muted);font-size:.68rem;text-transform:uppercase}.summary-grid strong{color:var(--green);font-family:Cascadia Mono,Consolas,monospace;font-size:1.25rem}.au-list{display:grid;gap:8px}.au-row{display:grid;grid-template-columns:minmax(118px,.9fr) minmax(92px,1fr) 42px;align-items:center;gap:9px;min-height:42px;border:1px solid rgba(36,98,119,.1);border-radius:7px;padding:8px;background:#ffffffc7}.au-meta{min-width:0}.au-code{display:block;color:var(--cyan);font-family:Cascadia Mono,Consolas,monospace;font-size:.8rem}.au-name{display:block;overflow:hidden;color:var(--muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.au-meter{height:8px;overflow:hidden;border-radius:999px;background:#2b61711f}.au-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--cyan));transition:width .18s ease-out}.au-value{color:var(--text);font-family:Cascadia Mono,Consolas,monospace;font-size:.86rem;text-align:right}.error-line{margin:12px 2px 0;color:var(--red);font-family:Cascadia Mono,Consolas,monospace;font-size:.78rem}.annotation-card{margin-top:0;border:1px solid rgba(207,47,63,.22);border-radius:10px;padding:18px;background:linear-gradient(135deg,#ffffffeb,#fff6f7eb),#fff}.annotation-heading{margin-bottom:8px}.annotation-actions{display:grid;grid-template-columns:1fr;gap:8px}.label-select{width:100%;border:1px solid rgba(207,47,63,.3);border-radius:8px;padding:.64rem .72rem;color:var(--red);background:#cf2f3f0f;font-family:Cascadia Mono,Consolas,monospace;font-size:.78rem;cursor:pointer;outline:none}.label-select:focus-visible{box-shadow:0 0 0 2px #cf2f3f4d}.label-select:disabled{opacity:.5;cursor:not-allowed}.pain-mark-button{width:100%;border-color:#cf2f3f5c;color:#fff;background:linear-gradient(180deg,#e34a5a,#bd2536);box-shadow:0 12px 24px #cf2f3f38;white-space:nowrap}.pain-mark-button:hover:not(:disabled){border-color:#cf2f3f99;box-shadow:0 16px 32px #cf2f3f52}.pain-mark-button:active:not(:disabled){transform:translateY(1px) scale(.98);box-shadow:0 6px 14px #cf2f3f47}.annotation-stop-button{width:100%;border-color:#dc781466;color:#fff;background:linear-gradient(180deg,#e08830,#c06a10);box-shadow:0 12px 24px #dc781438;white-space:nowrap;animation:stop-pulse 1.6s ease-in-out infinite}.annotation-stop-button:hover:not(:disabled){border-color:#dc781499;box-shadow:0 16px 32px #dc781452}.annotation-stop-button:active:not(:disabled){transform:translateY(1px) scale(.98);box-shadow:0 6px 14px #dc781447}@keyframes stop-pulse{0%,to{box-shadow:0 12px 24px #dc781438}50%{box-shadow:0 12px 24px #dc781470}}.record-status{display:grid;gap:4px;margin-top:10px;border:1px solid rgba(220,120,20,.28);border-radius:8px;padding:8px 10px;background:#fff8e5cc}.record-status span{color:#8a5a08;font-family:Cascadia Mono,Consolas,monospace;font-size:.82rem;font-weight:650}.record-status small{color:var(--red);font-size:.74rem;line-height:1.4}.annotation-records{display:grid;gap:8px;margin-top:12px;border:1px solid rgba(207,47,63,.14);border-radius:8px;padding:10px;background:#ffffffa8}.annotation-records-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.annotation-records-title{color:var(--text);font-weight:650}.annotation-records-link{display:inline-flex;align-items:center;min-height:32px;border:0;padding:4px 8px;color:var(--cyan);background:transparent;font-size:.78rem;cursor:pointer}.annotation-records-link:hover{color:var(--text)}.annotation-list{display:grid;gap:6px;margin:0;padding:0;list-style:none;color:var(--muted);font-size:.74rem}.annotation-record-item{display:flex;justify-content:space-between;gap:8px;border:1px solid rgba(207,47,63,.12);border-radius:6px;padding:7px 8px;background:#ffffffb3}.annotation-list strong{color:var(--red);font-family:Cascadia Mono,Consolas,monospace}.annotation-empty{padding:6px 2px;color:var(--muted);font-style:italic}.records-page{margin-top:14px}.records-heading,.records-panel{border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.records-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px}.records-heading-actions{display:flex;align-items:center;gap:8px}.records-export-all{border-color:#328c505c;color:#fff;background:linear-gradient(180deg,#3a9e5c,#2a7a42);font-size:.78rem;white-space:nowrap}.records-export-all:hover:not(:disabled){box-shadow:0 8px 20px #328c5047}.records-export-all:disabled{opacity:.45;cursor:not-allowed}.records-export-button{display:inline-flex;align-items:center;min-height:32px;border:1px solid rgba(50,140,80,.3);border-radius:6px;padding:.3rem .7rem;color:#226b39;background:#328c5014;font-size:.74rem;cursor:pointer}.records-export-button:hover{background:#328c5029}.records-panel{margin-top:14px;padding:16px}.records-empty{display:grid;gap:4px;min-height:160px;place-content:center;text-align:center;color:var(--muted)}.records-empty strong{color:var(--text)}.records-table{display:grid;gap:8px}.records-row{display:grid;grid-template-columns:.8fr .6fr .6fr .7fr minmax(150px,1.1fr) minmax(150px,auto);gap:10px;align-items:center;border:1px solid rgba(36,98,119,.1);border-radius:8px;padding:10px 12px;background:#ffffffb8;color:var(--muted);font-size:.82rem}.records-row-head{color:var(--text);background:#e8f7f9e6;font-weight:650}.records-row strong{color:var(--red);font-family:Cascadia Mono,Consolas,monospace}.records-cell{display:inline-flex;align-items:center;min-width:0}.records-cell[data-label=Export]{justify-content:flex-end}.records-sort{display:inline-flex;align-items:center;justify-content:flex-start;border:0;padding:4px 0;color:inherit;background:transparent;font:inherit;font-weight:650;text-align:left;cursor:pointer}.records-sort:hover{color:var(--cyan);border-color:transparent}.records-sort.active{color:var(--cyan)}.records-id-copy{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:32px;border:1px solid rgba(36,98,119,.18);border-radius:6px;padding:4px 10px;background:#ffffffd9;font-size:.78rem;cursor:pointer}.records-id-copy code{overflow:hidden;color:var(--text);font-family:Cascadia Mono,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.records-id-copy span{color:var(--muted);font-size:.7rem;letter-spacing:.04em;text-transform:uppercase}.records-id-copy:hover{border-color:var(--cyan)}.records-empty-cta{margin-top:12px;border-color:#078fc366;color:var(--cyan);background:#078fc314}.records-actions{display:inline-flex;gap:8px;justify-content:flex-end}.records-action-button{min-height:32px;border:1px solid rgba(36,98,119,.22);border-radius:6px;padding:.3rem .7rem;color:var(--cyan);background:#078fc314;font-size:.74rem;cursor:pointer}.records-action-button:hover:not(:disabled){border-color:var(--cyan);background:#078fc324}.records-action-danger{color:var(--red);border-color:#cf2f3f47;background:#cf2f3f14}.records-action-danger:hover:not(:disabled){border-color:var(--red);background:#cf2f3f24}.video-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:24px;background:#08181e9e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:toast-in .16s ease-out}.video-modal-card{display:grid;gap:12px;width:min(760px,94vw);border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--panel-strong);box-shadow:var(--shadow)}.video-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.video-modal-close{border:0;padding:0 8px;color:var(--muted);background:transparent;font-size:1.4rem;line-height:1;cursor:pointer}.video-modal-close:hover{color:var(--text);border-color:transparent}.video-modal-player{display:block;max-width:100%;max-height:70vh;margin:0 auto;object-fit:contain;border-radius:8px;background:#000}.video-modal-fallback{display:grid;gap:10px;justify-items:start;border:1px solid var(--line);border-radius:8px;padding:16px;color:var(--muted);background:#eff9fad1}.video-modal-fallback strong{color:var(--text)}.video-modal-fallback a{text-decoration:none}.settings-page{margin-top:0}.settings-heading,.settings-panel{border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.settings-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px}.settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-top:18px}.settings-panel{display:grid;align-content:start;gap:14px;padding:20px}.settings-panel-wide{grid-column:1 / -1}.settings-section-title h3{margin:0;font-size:1.05rem}.setting-row{display:grid;grid-template-columns:minmax(180px,.9fr) 84px minmax(220px,1.15fr);align-items:center;gap:14px;min-height:82px;border:1px solid rgba(36,98,119,.1);border-radius:8px;padding:12px;background:#ffffffb8}.setting-row span,.setting-toggle strong{display:block;color:var(--text);font-weight:650}.setting-row p,.setting-toggle small{display:block;margin:4px 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}.setting-row>strong{color:var(--green);font-family:Cascadia Mono,Consolas,monospace;font-size:1.05rem;text-align:right;white-space:nowrap}.setting-control{display:grid;grid-template-columns:minmax(130px,1fr) 82px;gap:10px;align-items:center}.setting-control input[type=range]{width:100%;accent-color:var(--green)}.setting-control input[type=number],.setting-control select{width:100%;border:1px solid var(--line-strong);border-radius:6px;padding:.55rem .6rem;color:var(--text);background:#fff}.setting-control select{grid-column:1 / -1}.setting-toggle{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;border:1px solid rgba(36,98,119,.1);border-radius:8px;padding:13px 12px;background:#ffffffb8}.setting-toggle input{margin-top:3px;accent-color:var(--green)}.settings-helper{max-width:760px;margin:0;color:var(--muted);font-size:.86rem;line-height:1.55}.settings-actions{display:flex;flex-wrap:wrap;gap:10px}.toast-region{position:fixed;right:18px;bottom:18px;z-index:50;display:grid;gap:8px;pointer-events:none}.toast{display:inline-flex;align-items:center;gap:10px;min-width:240px;max-width:380px;padding:10px 14px;border:1px solid var(--line-strong);border-radius:999px;background:#fffffff5;box-shadow:0 18px 38px #2f65772e;color:var(--text);font-size:.84rem;pointer-events:auto;animation:toast-in .22s ease-out}.toast-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green)}.toast-warn .toast-dot{background:var(--amber);box-shadow:0 0 10px var(--amber)}.toast-bad .toast-dot{background:var(--red);box-shadow:0 0 10px var(--red)}.toast-message{flex:1 1 auto}.toast-close{border:0;padding:0 6px;color:var(--muted);background:transparent;font-size:1.05rem;line-height:1;cursor:pointer}.toast-close:hover{color:var(--text);border-color:transparent}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1025px){.right-rail{position:sticky;top:14px}}@media(min-width:1280px){.au-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.toast,.pain-mark-button,.calibration-dot,button{animation:none;transition:none}.status-pill[data-emphasis=primary] .status-dot{animation:none}}@media(max-width:1024px){.monitor-grid,.settings-grid{grid-template-columns:1fr}}@media(max-width:720px){.app-shell{width:min(100vw - 20px,1360px);padding-top:10px}.stage-toolbar,.panel-heading,.annotation-heading,.records-heading,.settings-heading,.stage-footer{align-items:flex-start;flex-direction:column}.summary-grid,.va-content,.va-axis-list,.setting-row{grid-template-columns:1fr}.setting-row>strong{text-align:left}.setting-control{grid-template-columns:1fr 76px}.au-row{grid-template-columns:1fr 1fr 38px}.records-row{grid-template-columns:1fr;gap:6px}.records-row-head{display:none}.records-cell{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px}.records-cell:before{content:attr(data-label);color:var(--muted);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}.toast-region{right:12px;left:12px;bottom:12px;justify-items:stretch}.toast{min-width:0;max-width:100%}}.channel-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-top:14px}.channel-bar .channel-selector{margin-top:0}.channel-name-editor{display:inline-flex;align-items:center;gap:8px}.channel-name-eyebrow{color:var(--muted);font-size:.66rem;text-transform:uppercase;letter-spacing:.08em}.channel-name-current{color:var(--text);font-size:.86rem;font-weight:650}.channel-name-input{min-width:160px;padding:6px 10px;border:1px solid var(--cyan);border-radius:8px;background:var(--panel);color:var(--text);font-size:.85rem}.channel-rename-btn{padding:6px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font-size:.78rem;cursor:pointer;transition:border-color .15s,color .15s}.channel-rename-btn:hover{border-color:var(--cyan)}.channel-rename-btn.ghost{color:var(--muted)}.channel-selector{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.channel-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--muted);font-size:.82rem;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.channel-chip:hover{color:var(--text)}.channel-chip.active{border-color:var(--cyan);color:var(--text);background:#078fc31a}.channel-chip-dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.channel-chip-dot[data-kind=local]{background:var(--green)}.channel-chip-dot[data-kind=remote]{background:var(--amber)}.overview-page{margin-top:0}.overview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.overview-count{color:var(--muted);font-family:Cascadia Mono,Consolas,monospace;font-size:.82rem}.overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.channel-tile{display:flex;flex-direction:column;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:var(--shadow);cursor:pointer;text-align:left;transition:border-color .15s,transform .15s}.channel-tile:hover{transform:translateY(-2px)}.channel-tile.active{border-color:var(--cyan);box-shadow:0 0 0 2px #078fc359,var(--shadow)}.channel-tile-frame{position:relative;aspect-ratio:4 / 3;background:#000;overflow:hidden}.channel-tile-canvas,.channel-tile-img{width:100%;height:100%;object-fit:cover;display:block}.focus-frame-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.overview-empty,.focus-empty{margin-top:24px;padding:40px 16px;border:1px dashed var(--line);border-radius:10px;text-align:center;color:var(--muted);background:var(--panel)}.camera-baseline-row{display:flex;align-items:center;gap:10px;margin-top:10px}.camera-baseline-state{color:var(--muted);font-family:Cascadia Mono,Consolas,monospace;font-size:.78rem}.records-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px}.records-page-indicator{color:var(--muted);font-size:.82rem}.records-pagination .records-action-button:disabled{opacity:.5;cursor:not-allowed}.channel-tile-placeholder{display:grid;place-items:center;width:100%;height:100%;color:#ffffffb3;font-family:Cascadia Mono,Consolas,monospace;font-size:.8rem;letter-spacing:.08em;background:repeating-linear-gradient(135deg,#ffffff0a 0,#ffffff0a 12px,#ffffff14 12px,#ffffff14 24px),linear-gradient(160deg,#16323b,#0c1f25)}.channel-tile-status{position:absolute;top:8px;left:8px;padding:2px 8px;border-radius:999px;font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:#fff;background:#08181e99}.channel-tile-status[data-status=live]{background:#0aa376d9}.channel-tile-active-badge{position:absolute;top:8px;right:8px;padding:2px 8px;border-radius:999px;font-size:.66rem;color:#fff;background:#078fc3e6}.channel-tile-meta{display:grid;gap:6px;padding:10px 12px 12px}.channel-tile-meta strong{color:var(--text);font-size:.92rem}.channel-tile-metrics{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-family:Cascadia Mono,Consolas,monospace;font-size:.72rem}.channel-tile-metrics span[data-tone=pain]{color:var(--red)}.remote-frame-placeholder{display:grid;place-items:center;align-content:center;gap:6px;width:100%;height:100%;padding:16px;text-align:center;color:#ffffffd1;background:repeating-linear-gradient(135deg,#ffffff0a 0,#ffffff0a 14px,#ffffff14 14px,#ffffff14 28px),linear-gradient(160deg,#16323b,#0c1f25)}.remote-frame-placeholder strong{font-size:1.05rem;color:#fff}.remote-frame-placeholder span{font-family:Cascadia Mono,Consolas,monospace;font-size:.78rem;letter-spacing:.04em}.login-shell{display:grid;place-items:center;min-height:100vh;padding:24px}.login-card{display:grid;gap:10px;width:min(380px,92vw);padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--panel-strong);box-shadow:var(--shadow)}.login-card h1{margin:0;font-size:1.4rem;color:var(--text)}.login-help{margin:0 0 6px;color:var(--muted);font-size:.85rem}.login-input-wrap{position:relative;display:flex}.login-input{flex:1;width:100%;padding:10px 42px 10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font-size:.95rem}.login-input:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}.login-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.login-eye:hover{color:var(--text)}.login-eye:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}.login-error{margin:0;color:var(--red);font-size:.82rem}.login-button{margin-top:4px;padding:10px 14px;border:0;border-radius:8px;background:var(--cyan);color:#fff;font-size:.92rem;cursor:pointer}.login-button:disabled{opacity:.55;cursor:not-allowed}.login-demo-button{padding:8px 14px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);font-size:.84rem;cursor:pointer}.login-demo-button:hover{border-color:var(--amber);color:var(--amber)}.login-demo-corner{position:fixed;right:18px;bottom:18px;z-index:5;background:var(--panel);box-shadow:var(--shadow)}.logout-button{margin-left:auto;align-self:center;padding:6px 14px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);font-size:.8rem;cursor:pointer;transition:border-color .15s,color .15s}.logout-button:hover{border-color:var(--red);color:var(--red)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app-layout{display:flex;align-items:stretch;min-height:100vh}.main-area{flex:1 1 auto;min-width:0;padding:40px clamp(48px,4.5vw,88px) 52px}.main-area>.overview-page,.main-area>.detail-page,.main-area>.event-page,.main-area>.settings-page{width:100%;max-width:1680px;margin-inline:auto}.page-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 18px;min-height:46px;margin-bottom:18px}.page-header h1{font-size:clamp(1.25rem,1.8vw,1.6rem);font-weight:700}.page-header-lead{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px}.page-subtitle{margin:0;color:var(--muted);font-size:.95rem}.sidebar{position:sticky;top:0;z-index:20;display:flex;flex-direction:column;flex:0 0 var(--sidebar-w);width:var(--sidebar-w);height:100vh;border-right:1px solid var(--line);background:var(--panel);transition:width .16s ease,flex-basis .16s ease}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px 14px 14px 18px;border-bottom:1px solid var(--line)}.sidebar-brand strong{display:block;font-size:1.02rem;white-space:nowrap}.sidebar-collapse{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;border-radius:8px;color:var(--muted);background:transparent}.sidebar-collapse:hover:not(:disabled){color:var(--text);background:var(--bg);border-color:transparent}.sidebar-nav{display:grid;align-content:start;gap:4px;padding:14px 10px;overflow-y:auto;flex:1 1 auto}.sidebar-item{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;border:0;border-radius:8px;padding:8px 12px;color:var(--muted);background:transparent;box-shadow:none;text-align:left;cursor:pointer}.sidebar-item:hover:not(:disabled){color:var(--text);background:var(--bg);border-color:transparent}.sidebar-item:active:not(:disabled){transform:none}.sidebar-item.active{color:var(--text);background:#eef1f5;font-weight:650}.sidebar-item svg{flex:0 0 auto}.sidebar-item-text{display:grid;min-width:0;line-height:1.25}.sidebar-item-label{font-size:.92rem;white-space:nowrap}.sidebar-item-zh{color:var(--faint);font-size:.68rem;white-space:nowrap}.sidebar-foot{display:grid;gap:10px;padding:12px 14px 16px;border-top:1px solid var(--line)}.sidebar-conn{display:flex;align-items:center;gap:8px;min-width:0;color:var(--muted);font-family:Cascadia Mono,Consolas,monospace;font-size:.72rem}.sidebar-conn-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--faint)}.sidebar-conn-dot[data-state=ok]{background:var(--green);box-shadow:0 0 8px #17a06a99}.sidebar-conn-dot[data-state=warn]{background:var(--amber)}.sidebar-conn-dot[data-state=bad]{background:var(--red)}.sidebar-conn-dot[data-state=mock]{background:var(--amber)}.sidebar-user{display:flex;align-items:center;gap:10px;min-width:0}.sidebar-avatar{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;color:var(--muted);background:var(--bg);border:1px solid var(--line)}.sidebar-user-name{flex:1 1 auto;overflow:hidden;font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}.sidebar-logout{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;border-radius:8px;color:var(--muted);background:transparent}.sidebar-logout:hover:not(:disabled){color:var(--red);background:#de3b4014;border-color:transparent}.sidebar-collapsed{flex-basis:var(--sidebar-w-collapsed);width:var(--sidebar-w-collapsed)}.sidebar-collapsed .sidebar-brand,.sidebar-collapsed .sidebar-item-text,.sidebar-collapsed .sidebar-user-name,.sidebar-collapsed .sidebar-conn-text{display:none}.sidebar-collapsed .sidebar-head{justify-content:center;padding-left:10px;padding-right:10px}.sidebar-collapsed .sidebar-item{justify-content:center;padding:8px}.sidebar-collapsed .sidebar-conn,.sidebar-collapsed .sidebar-user{justify-content:center}.sidebar-collapsed .sidebar-user{flex-direction:column;gap:6px}.panel{border:1px solid var(--line);border-radius:12px;padding:20px;background:var(--panel);box-shadow:var(--shadow)}.panel-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 14px;margin-bottom:12px}.panel-head h2{font-size:1.05rem;font-weight:680}.panel-note{color:var(--faint);font-size:.76rem}.panel-title-icon{display:inline-flex;align-items:center;gap:10px;color:var(--muted)}.panel-title-icon h2{color:var(--text)}.status-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px}.status-legend-item{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.88rem}.status-legend-dot{width:11px;height:11px;border-radius:50%;background:var(--faint)}.status-legend-item[data-state=pain] .status-legend-dot{background:var(--red)}.status-legend-item[data-state=abnormal] .status-legend-dot{background:var(--amber)}.status-legend-item[data-state=ok] .status-legend-dot{background:var(--green)}.status-legend-item[data-state=offline] .status-legend-dot{background:var(--faint)}.overview-page,.detail-page,.event-page,.settings-page{min-width:0}.overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(420px,100%),1fr));gap:20px}.bed-card{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:var(--shadow);cursor:pointer;text-align:left;transition:border-color .15s,transform .15s,box-shadow .15s}.bed-card:hover:not(:disabled){transform:translateY(-2px);border-color:var(--line-strong)}.bed-card:active:not(:disabled){transform:none}.bed-card[data-state=pain]{border-color:#de3b408c;box-shadow:0 0 0 1px #de3b4040,var(--shadow)}.bed-card[data-state=abnormal]{border-color:#e5a0008c}.bed-card[data-state=offline]{opacity:.8}.bed-card.active{box-shadow:0 0 0 2px #1570ef59,var(--shadow)}.bed-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.bed-card-label{font-size:1.15rem;font-weight:700}.bed-card-dot{width:13px;height:13px;border-radius:50%;background:var(--faint)}.bed-card-dot[data-state=pain]{background:var(--red);box-shadow:0 0 10px #de3b40b3;animation:pulse-dot 1.4s ease-in-out infinite}.bed-card-dot[data-state=abnormal]{background:var(--amber)}.bed-card-dot[data-state=ok]{background:var(--green)}.bed-card-dot[data-state=offline]{background:var(--faint)}.bed-card-frame{position:relative;aspect-ratio:16 / 9;overflow:hidden;border-radius:8px;background:#10181d}.bed-card-media{width:100%;height:100%;object-fit:cover;display:block}.bed-card-placeholder{display:grid;place-items:center;width:100%;height:100%;color:#ffffffa8;font-family:Cascadia Mono,Consolas,monospace;font-size:.8rem;letter-spacing:.08em;background:repeating-linear-gradient(135deg,#ffffff0a 0,#ffffff0a 12px,#ffffff12 12px,#ffffff12 24px),linear-gradient(160deg,#1b262d,#10181d)}.bed-card-metrics{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 18px;color:var(--muted);font-size:.88rem}.bed-card-metric strong{color:var(--text);font-family:Cascadia Mono,Consolas,monospace;font-size:1rem}.bed-card-metric[data-tone=pain],.bed-card-metric[data-tone=pain] strong{color:var(--red)}.bed-card-metric[data-tone=warn],.bed-card-metric[data-tone=warn] strong{color:var(--amber)}.bed-switcher{position:relative;display:inline-flex;align-items:center}.bed-switcher select{min-width:110px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line-strong);border-radius:8px;padding:.5rem 2.1rem .5rem .85rem;color:var(--text);background:var(--panel);font-size:1rem;font-weight:650;cursor:pointer}.bed-switcher svg{position:absolute;right:9px;pointer-events:none;color:var(--muted);width:16px;height:16px}.confirm-pain-button{border:1px solid transparent;border-radius:8px;padding:.62rem 1.2rem;color:#fff;background:var(--red);font-weight:650;white-space:nowrap;box-shadow:0 2px 8px #de3b4059}.confirm-pain-button:hover:not(:disabled){background:#c92f34;border-color:transparent}.confirm-pain-button.recording{background:#a8272c;animation:stop-pulse-red 1.6s ease-in-out infinite}@keyframes stop-pulse-red{0%,to{box-shadow:0 2px 8px #de3b4059}50%{box-shadow:0 2px 18px #de3b40a6}}.detail-grid{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(560px,1.28fr);align-items:stretch;gap:18px;margin-bottom:18px}.detail-video-panel{align-self:stretch}.detail-video-panel .video-frame{margin-top:0;border-color:var(--line)}.detail-rail{display:grid;align-self:stretch;min-width:0}.detail-radar-metrics{display:grid;grid-template-columns:minmax(0,1fr) clamp(180px,22%,240px);align-items:stretch;gap:18px;min-width:0;min-height:100%;height:100%}.detail-radar-metrics .va-panel{min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);padding:28px 32px}.detail-radar-metrics .va-content{grid-template-columns:330px minmax(220px,260px);justify-content:space-evenly;gap:0;align-self:center;margin-top:14px}.detail-radar-metrics .va-radar{max-width:330px;height:330px}.detail-radar-metrics .va-axis-list{margin-top:0}.detail-radar-metrics .va-metrics-column{max-width:260px}.detail-radar-metrics .va-score-grid div,.detail-radar-metrics .va-axis-list div{padding-inline:9px}.detail-scores{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:18px;min-width:0;min-height:0}.detail-score{display:grid;grid-template-rows:auto minmax(0,1fr);align-content:stretch;justify-items:start;gap:10px;min-height:0;border:1px solid var(--line);border-radius:12px;padding:28px 30px;background:var(--panel);box-shadow:var(--shadow)}.detail-score span{color:var(--muted);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.detail-score strong{align-self:center;justify-self:center;color:var(--text);font-family:Cascadia Mono,Consolas,monospace;font-size:clamp(2rem,3.3vw,3rem);line-height:1.05}.detail-score strong[data-tone=pain]{color:var(--red)}.detail-score small{color:var(--faint);font-size:.7rem}.detail-baseline{display:inline-flex;align-items:center;gap:8px}.detail-baseline button{min-height:30px;padding:.25rem .7rem;font-size:.76rem}.detail-trend-panel,.detail-au-panel{margin-bottom:18px}.detail-au-panel{padding:28px}.segmented{display:inline-flex;border:1px solid var(--line-strong);border-radius:8px;overflow:hidden}.segmented button{min-height:36px;border:0;border-radius:0;padding:.4rem 1rem;color:var(--muted);background:var(--panel);font-size:.84rem;box-shadow:none}.segmented button+button{border-left:1px solid var(--line)}.segmented button:active:not(:disabled){transform:none}.segmented button.active{color:var(--text);background:#eef1f5;font-weight:650}.trend-chart,.au-chart{position:relative;display:block;width:100%;height:clamp(170px,24vw,260px)}.au-chart{height:clamp(260px,32vw,380px)}.trend-chart canvas,.au-chart canvas{display:block}.chart-empty{display:grid;place-content:center;min-height:150px;border:1px dashed var(--line-strong);border-radius:8px;padding:16px;color:var(--muted);background:var(--bg);font-size:.86rem;text-align:center}.event-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.event-sort-control{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--faint);font-size:.78rem;white-space:nowrap}.event-sort-control select{min-width:116px;border:0;outline:none;background:transparent;color:var(--text);font:inherit;font-weight:650}.event-counts{display:flex;align-items:center;gap:14px;font-size:.9rem}.event-counts span[data-tone=pending]{color:var(--amber);font-weight:650}.event-counts span[data-tone=done]{color:var(--muted)}.event-refresh{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:.3rem .8rem;font-size:.8rem}.event-refresh svg{width:15px;height:15px}.event-refresh-icon{justify-content:center;width:36px;min-height:36px;padding:0}.event-refresh-icon svg{width:17px;height:17px}.event-panel{padding:6px 16px 16px}.event-table{display:grid}.event-row{display:grid;grid-template-columns:minmax(110px,.9fr) minmax(170px,1.3fr) minmax(150px,1.1fr) minmax(110px,.9fr) minmax(140px,auto);gap:10px;align-items:center;min-height:58px;padding:10px 6px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.88rem}.event-row-head{min-height:46px;color:var(--faint);font-size:.78rem;letter-spacing:.05em}.event-row[data-review=pending]{background:#e5a0000b}.event-cell{display:inline-flex;align-items:center;gap:10px;min-width:0}.event-cell strong{color:var(--text);font-size:.95rem}.event-type{color:var(--text)}.event-chip{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:3px 10px;font-size:.72rem;white-space:nowrap}.event-chip svg{width:13px;height:13px}.event-chip[data-tone=pending]{color:#8a6100;background:#e5a00024}.event-chip[data-tone=confirmed]{color:#116649;background:#17a06a21}.event-chip[data-tone=dismissed]{color:var(--muted);background:#eceff3}.event-actions,.event-actions-head{justify-content:flex-end;text-align:right}.event-actions{gap:6px}.event-action{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid transparent;border-radius:8px;color:var(--muted);background:transparent;box-shadow:none}.event-action:hover:not(:disabled){color:var(--text);background:var(--bg);border-color:var(--line)}.event-action svg{width:17px;height:17px}.event-action-confirm:hover:not(:disabled){color:var(--green);background:#17a06a1a}.event-action-dismiss:hover:not(:disabled){color:var(--red);background:#de3b4014}.event-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:14px}.video-modal-actions{display:flex;justify-content:flex-end}.settings-grid-v2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-card{align-content:start}.settings-status-strip{display:flex;flex-wrap:wrap;gap:8px}.settings-bed-list{display:grid;gap:8px}.settings-bed-row{display:grid;grid-template-columns:minmax(90px,auto) minmax(0,1fr);align-items:center;gap:12px}.settings-bed-row code{color:var(--muted);font-family:Cascadia Mono,Consolas,monospace;font-size:.8rem}.settings-bed-row input{border:1px solid var(--line-strong);border-radius:8px;padding:.5rem .7rem;color:var(--text);background:var(--panel)}.settings-conn-list{display:grid;gap:12px;margin:0}.settings-conn-list div{display:grid;gap:3px}.settings-conn-list dt{color:var(--faint);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.settings-conn-list dd{margin:0;color:var(--muted);font-size:.85rem;line-height:1.5}.settings-conn-list code{color:var(--text);font-family:Cascadia Mono,Consolas,monospace;font-size:.8rem}@media(max-width:1240px){.detail-grid{grid-template-columns:1fr}}@media(max-width:1024px){.settings-grid-v2{grid-template-columns:1fr}}@media(max-width:900px){.app-layout{flex-direction:column}.sidebar,.sidebar-collapsed{position:static;flex:0 0 auto;width:100%;height:auto;border-right:0;border-bottom:1px solid var(--line)}.sidebar-head{padding:12px 16px;border-bottom:0}.sidebar-collapse{display:none}.sidebar-nav{display:flex;flex-wrap:wrap;gap:4px;padding:0 10px 10px;overflow:visible}.sidebar-item{width:auto;min-height:40px}.sidebar-item-zh,.sidebar-collapsed .sidebar-brand{display:none}.sidebar-collapsed .sidebar-item-text,.sidebar-collapsed .sidebar-user-name,.sidebar-collapsed .sidebar-conn-text{display:grid}.sidebar-foot{flex-direction:row;display:flex;align-items:center;justify-content:space-between;padding:10px 16px}.main-area{padding:22px 20px 30px}}@media(max-width:720px){.event-row{grid-template-columns:1fr;gap:6px;padding:12px 6px}.event-row-head{display:none}.event-cell{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px}.event-cell:before{content:attr(data-label);color:var(--faint);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}.event-actions{display:flex;justify-content:flex-start}.event-actions:before{display:none}.detail-radar-metrics,.detail-radar-metrics .va-content{grid-template-columns:1fr}.detail-radar-metrics{gap:12px}.detail-radar-metrics .va-panel{padding:22px}.detail-scores{grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(112px,1fr));gap:12px}.detail-score{padding:22px}}.overview-layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(280px,24vw,350px);gap:18px;align-items:start}.overview-main{min-width:0}.alert-rail{position:sticky;top:22px;display:grid;align-content:start;gap:12px;max-height:calc(100vh - 44px);overflow-y:auto}.alert-rail .panel-head{margin-bottom:0}.alert-rail-empty{margin:0;border:1px dashed var(--line-strong);border-radius:8px;padding:14px;color:var(--muted);background:var(--bg);font-size:.82rem;line-height:1.5;text-align:center}.alert-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;border:1px solid var(--line-strong);border-radius:8px;padding:.25rem .7rem;color:var(--muted);background:var(--panel);font-size:.78rem;box-shadow:none}.alert-action svg{width:15px;height:15px}.alert-action:hover:not(:disabled){color:var(--text);border-color:var(--line-strong);background:var(--bg)}.alert-rail-clear{min-height:28px;font-size:.72rem}.alert-rail-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.alert-rail-list li{display:flex;align-items:stretch;gap:8px}.alert-rail-card{display:grid;gap:3px;flex:1 1 auto;min-width:0;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--bg);box-shadow:none;text-align:left;cursor:default}button.alert-rail-card{cursor:pointer}button.alert-rail-card:hover:not(:disabled){border-color:var(--line-strong);background:#eef1f5}button.alert-rail-card:active:not(:disabled){transform:none}.alert-rail-list li[data-state=ongoing] .alert-rail-card{border-color:#de3b4073;background:#de3b400d}.alert-rail-item-head{display:flex;align-items:center;gap:8px;min-width:0}.alert-rail-item-head strong{color:var(--text);font-size:.88rem}.alert-rail-ongoing{border-radius:999px;padding:1px 8px;color:var(--red);background:#de3b401f;font-size:.68rem}.alert-rail-times{color:var(--muted);font-size:.76rem;font-variant-numeric:tabular-nums;line-height:1.45}.alert-rail-view{flex:0 0 auto;align-self:center;width:34px;padding:0}.settings-threshold-row{display:grid;grid-template-columns:minmax(0,1fr) 64px;align-items:center;gap:14px}.settings-threshold-row input[type=range]{width:100%;accent-color:var(--red)}.settings-threshold-row strong{color:var(--text);font-family:Cascadia Mono,Consolas,monospace;font-size:1.05rem;text-align:right}@media(max-width:1100px){.overview-layout{grid-template-columns:1fr}.alert-rail{position:static;max-height:none;overflow-y:visible}}
