:root{color-scheme:light;--bg:#f4f7fb;--panel:#fff;--line:#e5eaf2;--muted:#8290a6;--text:#26354d;--blue:#3876ed;--jade:#249b84;--red:#e16d7c}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:13px "Segoe UI","Microsoft YaHei","PingFang SC",system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#fff;color:#53647d;border:1px solid #dfe6f0;border-radius:7px;padding:10px 14px;transition:background .15s,border-color .15s}button:hover{color:#2a65d8;border-color:#a8c2f5;background:#f4f8ff}button:disabled{opacity:.45;cursor:not-allowed}button svg{width:17px;height:17px;flex-shrink:0}button:focus-visible,a:focus-visible{outline:3px solid #9cbbfa;outline-offset:3px}.primary{background:var(--blue);color:white;border-color:var(--blue);box-shadow:0 3px 8px #3876ed1a}.primary:hover{background:#2c65d2;color:white;border-color:#2c65d2}.full{width:100%}.text-button{padding:3px 0;color:var(--blue);background:none;border:0;font-size:11px}.icon-button{padding:6px;border:0;background:transparent}input,select{color:var(--text);background:#fff;border:1px solid #dfe6f0;border-radius:6px;padding:10px 11px;min-width:0;outline:none}input:focus,select:focus{border-color:#77a2f8;box-shadow:0 0 0 3px #3876ed0c}input[type=range]{accent-color:var(--blue);padding:0}label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#65758d;margin-bottom:18px}h1,h2,h3,p{margin-top:0}h2{font-size:14px;font-weight:650;margin-bottom:12px}h3{font-size:12px;margin-top:23px}.hidden{display:none!important}.muted,.footnote{color:var(--muted)}.footnote{font-size:10px;line-height:1.9;margin:13px 0 0}.error{font-size:11px;color:#cb5366;line-height:1.7;overflow-wrap:anywhere}.error:empty{display:none}.notice{color:#9a712c;background:#fff7e8;padding:12px;border-radius:7px;line-height:1.9}.eyebrow{font-size:9px;font-weight:600;letter-spacing:1.7px;color:#8796ad}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#203b65;flex-shrink:0;font-size:27px;font-weight:750;letter-spacing:1px;line-height:1}.brand img{height:39px;width:39px}.brand span{display:block;font-size:8px;letter-spacing:2px;font-weight:500;margin-top:7px;color:#7e92b0}.brand-note{margin:21px 0 0 5px;color:#a0aec1;font-size:10px;letter-spacing:1px}
.app-shell{min-height:100vh;display:grid;grid-template-columns:208px minmax(0,1fr)}aside{position:fixed;left:0;top:0;bottom:0;width:208px;padding:31px 21px 20px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:6}.nav-label{display:flex;align-items:center;justify-content:space-between;color:#a0acc0;font-size:10px;margin:44px 8px 15px}.nav-label span{font-size:7px;letter-spacing:1px;color:#b9c4d3}nav{display:flex;flex-direction:column;gap:8px}nav button{justify-content:flex-start;gap:12px;width:100%;padding:13px 14px;font-size:12px;color:#77859b;border-color:transparent;background:none;white-space:nowrap}nav button svg{width:18px;height:18px}nav button.active{background:#edf4ff;color:#3974de;font-weight:600}nav button.active i{height:5px;width:5px;border-radius:50%;background:#4b85ed;margin-left:auto}.sidebar-note{margin-top:auto;background:linear-gradient(130deg,#f5f9ff,#f1f6ff);border:1px solid #eaf0f9;border-radius:10px;padding:16px 14px;color:#536d97}.sidebar-note strong{font-size:11px;font-weight:600;margin-left:7px}.sidebar-note p{font-size:10px;line-height:2;color:#8e9fb8;margin:12px 0 16px}.sidebar-version{font-size:7px;color:#a0b2cd;letter-spacing:1.4px}.aside-bottom{display:flex;align-items:center;justify-content:center;gap:6px;font-size:9px;color:#aab7ca;margin-top:20px}.aside-bottom svg{width:13px;height:13px}.app-shell main{grid-column:2;width:100%;min-width:0;max-width:1920px;margin:auto;padding:0 31px}header{height:70px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:12px}.breadcrumb{font-size:11px;color:#97a4b8;white-space:nowrap}.breadcrumb span{margin:0 10px;color:#bac4d2}.breadcrumb b{font-weight:500;color:#64758f}.account{display:flex;align-items:center;gap:10px;color:#687b96;font-size:10px}.account time{font-variant-numeric:tabular-nums;font-size:10px;color:#8c9ab1}.header-divider{height:16px;width:1px;background:#dce4ee;margin:0 5px}.avatar{height:28px;width:28px;border-radius:50%;background:#e8f0ff;color:#4a7bda;display:grid;place-items:center;font-weight:650}.page-heading{display:flex;align-items:center;justify-content:space-between;padding:26px 0 22px;gap:15px}.page-heading .eyebrow{font-size:8px;margin-bottom:9px;color:#8c9eb8}.page-heading h1{font-size:25px;font-weight:650;color:#22334d;letter-spacing:.5px;margin:0 0 9px}.page-heading p:last-child{font-size:11px;color:#94a1b5;margin:0}.connection{display:flex;align-items:center;gap:7px;border:1px solid #dceae6;background:#f4faf7;color:#5e9583;font-size:10px;border-radius:20px;padding:8px 12px;white-space:nowrap}.small-dot{display:inline-block;height:6px;width:6px;border-radius:50%;background:#3caf92;flex-shrink:0;box-shadow:0 0 0 3px #3caf920b}.small-dot.offline{background:#a7b1c1;box-shadow:none}.demo-banner{margin-top:16px;background:#fff2d9;border:1px solid #f2dbac;color:#9d762f;padding:10px 14px;border-radius:8px;font-size:12px}.device-bar{display:flex;align-items:center;gap:12px;background:white;border:1px solid var(--line);border-radius:9px;padding:11px 16px;margin-bottom:18px}.device-label{display:flex;gap:12px;align-items:center;min-width:0}.device-label>svg{width:19px;height:19px;color:#6b8fcb;flex-shrink:0}.device-bar label{margin:0;font-size:10px;white-space:nowrap;color:#8594aa}.device-bar select{font-size:11px;padding:7px 10px;max-width:330px;color:#435876;background:#f9fbfe;border-color:#eaf0f6}.device-bar .muted{font-size:10px}.device-bar small{font-size:9px;color:#a0adc1;margin-left:auto;white-space:nowrap}.status{display:inline-flex;align-items:center;white-space:nowrap;font-size:9px;color:#3e9b7d;background:#edf8f3;border:1px solid #e4f2ea;border-radius:4px;padding:4px 7px}.status.offline{color:#8997ac;background:#f3f5f8;border-color:#e9edf3}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:18px}.metric{position:relative;border:1px solid var(--line);border-radius:10px;padding:17px 20px 16px;background:#fff;overflow:hidden}.metric-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#7d8da7}.metric-icon{width:30px;height:30px;display:grid;place-items:center;background:#eef4ff;color:#548bed;border-radius:8px}.metric-icon svg{width:17px;height:17px}.metric strong{display:block;font-size:33px;color:#2a3f61;font-weight:600;letter-spacing:-.9px;line-height:1.2;margin:6px 0 7px;font-variant-numeric:tabular-nums}.metric small{display:block;font-size:9px;color:#a1adc0}.metric-accent{height:30px;width:3px;position:absolute;left:0;top:48px;background:#79a8fa;border-radius:0 3px 3px 0}.metric.rose .metric-icon{background:#fff0f3;color:#df7e91}.metric.rose .metric-accent{background:#e9a2b0}.metric.teal .metric-icon{background:#eaf8f7;color:#4aafa2}.metric.teal .metric-accent{background:#78c2b9}.metric.amber .metric-icon{background:#fff7e9;color:#cfab62}.metric.amber .metric-accent{background:#e8c78f}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:18px}.visual-column,.device-column{display:flex;flex-direction:column;gap:18px;min-width:0}.panel{background:white;border:1px solid var(--line);border-radius:10px;padding:18px;min-width:0;box-shadow:0 3px 16px #263f6804}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:15px;min-width:0}.panel-head h2{margin:0;white-space:nowrap}.panel-head p{margin:5px 0 0;font-size:9px;color:#a0adc0}.panel-title{display:flex;align-items:center;gap:9px;min-width:0}.section-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:7px;background:#f1f5fc;color:#799ac8;flex-shrink:0}.section-icon svg{height:16px;width:16px}.segmented{display:flex;gap:2px;border:1px solid #e6ebf3;padding:3px;border-radius:6px;background:#f8fafe}.segmented button{padding:5px 9px;font-size:9px;background:transparent;border:0;border-radius:4px;color:#8b9cb5;white-space:nowrap}.segmented button.selected{background:white;color:#3f79db;box-shadow:0 1px 5px #1b3b6520}.canvas-wrap{height:330px;position:relative;border:1px solid #132b48;border-radius:7px;background:radial-gradient(ellipse at 50% 45%,#15263c,#0b1423);overflow:hidden}.canvas-wrap canvas,.plan-wrap canvas{width:100%;height:100%;display:block;touch-action:none}.canvas-empty{position:absolute;top:46%;width:100%;text-align:center;font-size:11px;color:#758aa4;pointer-events:none;padding:0 20px}.plot-caption{position:absolute;bottom:14px;left:16px;display:flex;align-items:center;gap:7px;font-size:9px;color:#a1b1c8;pointer-events:none}.plot-caption .small-dot{height:4px;width:4px;background:#6aa1ed}.plot-caption>span:last-child{margin-left:10px;color:#5a728f}.plot-badge{position:absolute;right:13px;top:12px;border:1px solid #4b668b42;background:#3954771c;color:#7d95b4;font-size:8px;padding:5px 8px;border-radius:4px;letter-spacing:.5px;pointer-events:none}.cloud-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;color:#97a5ba;font-size:9px}.cloud-footer label{display:flex;flex-direction:row;align-items:center;gap:7px;font-size:9px;margin:0}.cloud-footer select{padding:3px 6px;font-size:9px;border-color:#e7edf5}.tag{font-size:8px;background:#f7f9fc;border:1px solid #e7edf4;color:#92a2ba;border-radius:4px;padding:4px 6px;white-space:nowrap}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.detail-grid>.panel{padding:16px}.detail-grid .panel-head h2{font-size:12px}.detail-grid .section-icon{width:24px;height:24px}.detail-grid .section-icon svg{height:14px;width:14px}.plan-wrap{height:220px;position:relative;background:#f7faff;border:1px solid #edf2f8;border-radius:6px;overflow:hidden}.plan-legend{display:flex;align-items:center;gap:13px;font-size:8px;color:#96a6bd;margin-top:11px}.plan-legend span{display:flex;gap:5px;align-items:center}.plan-legend span:last-child{margin-left:auto}.legend-area{width:8px;height:8px;background:#edf3ff;border:1px dashed #89aef0}.legend-track{width:12px;height:2px;background:#75a0e4}.health-summary{display:flex;gap:14px;justify-content:space-between;margin:16px 0}.health-summary>div{display:flex;gap:5px;align-items:baseline;font-size:9px;color:#9aabc0;white-space:nowrap}.health-summary strong{font-size:21px;font-weight:600;letter-spacing:-.5px;color:#496587}.health-summary small{font-size:7px}.heart-dot,.breath-dot{height:5px;width:5px;border-radius:50%;display:inline-block;align-self:center;flex-shrink:0}.heart-dot{background:#e29aa8}.breath-dot{background:#6fa9ed}#trend{width:100%;height:120px;display:block}.health-panel .table-wrap{margin-top:6px}.health-panel table{font-size:9px}.health-panel th{font-size:8px}.health-panel th,.health-panel td{padding:8px 5px}.safety-summary{display:flex;align-items:center;gap:12px;background:#f4faf7;border:1px solid #e7f3ec;border-radius:7px;padding:14px 11px;margin-bottom:6px}.safety-symbol{color:#60b193;flex-shrink:0}.safety-symbol svg{width:29px;height:29px}.safety-summary strong{font-size:11px;font-weight:600;color:#4f947d}.safety-summary p{margin:4px 0 0;font-size:8px;color:#a0b9ad}.safety-summary.alert{background:#fff4f5;border-color:#f6dce1}.safety-summary.alert strong,.safety-summary.alert .safety-symbol{color:#d36d7e}.safety-summary.waiting{background:#f7f9fc;border-color:#e9edf4}.safety-summary.waiting strong,.safety-summary.waiting .safety-symbol{color:#91a0b8}.state-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eff3f8;font-size:10px}.state-row span{color:#8b9bb1}.state-row b{font-weight:500;color:#5d8f81}.state-row b.alert{color:var(--red)}.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.control-grid button{font-size:10px;padding:10px 4px;color:#5e82bd;background:#f9fbff;border-color:#e0eafa}.control-grid button[data-command=vital]{color:white;background:var(--blue);border-color:var(--blue)}.control-grid button:last-child{grid-column:span 2}.control-grid button svg{width:14px;height:14px}.danger-soft{color:#c8838b!important;background:#fff9fa!important;border-color:#f1e4e7!important}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid #edf1f7;margin-top:13px;padding-top:12px}.quick-actions button{border:0;justify-content:space-between;padding:0;font-size:10px;color:#8698b3;background:none}.quick-actions button span{color:#b1c0d4}.event-panel{flex:1;min-height:180px}.event-panel>.footnote{border-top:1px solid #eef2f8;padding-top:10px}.event-panel #alertsList>.muted{padding:18px 0;text-align:center;color:#aab6c8;font-size:10px}.alert-item{display:flex;align-items:center;gap:9px;padding:11px 0;border-bottom:1px solid #eef2f7}.alert-item p{font-size:10px;margin:0 0 4px}.alert-item small{font-size:8px;color:#a3afc0}.alert-item button{margin-left:auto;padding:5px 7px;font-size:9px}.alert-marker{height:24px;width:24px;display:grid;place-items:center;border-radius:6px;background:#fff0f3;color:#d48a98;flex-shrink:0}
.table-wrap{overflow:auto;margin-top:15px}table{border-collapse:collapse;width:100%;font-size:11px;white-space:nowrap}th{color:#8e9fb8;text-align:left;font-size:10px;font-weight:500;background:#fafcff;border-bottom:1px solid #eaf0f7;padding:11px 12px}td{padding:12px;border-bottom:1px solid #eef3f9;color:#667e9f}tbody tr:hover{background:#fbfcff}.table-empty{color:#a5b3c8;font-size:11px;padding:22px 10px;text-align:center}.inline-form{display:flex;align-items:end;flex-wrap:wrap;gap:15px}.inline-form label{margin-bottom:0}.inline-form input[type=file]{width:255px;padding:8px}.file-label{font-size:11px}.replay-panel{margin-top:18px}.replay-panel>label{margin-top:22px}.manage-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.key-result{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9;color:#4877bd;background:#f2f7ff;padding:15px;border:1px solid #e2ebfa;border-radius:7px;font-size:11px}fieldset{border:1px solid #e4ebf5;border-radius:7px;margin:0 0 20px;padding:12px}legend{color:#8ca1bd;font-size:11px}#grantChoices label{flex-direction:row;gap:8px;align-items:center;margin:8px 0}#grantChoices input{width:auto}footer{display:flex;justify-content:space-between;gap:16px;padding:23px 0;font-size:8px;color:#a7b3c5;letter-spacing:.2px}footer i{font-style:normal;margin:0 9px;color:#bfc9d6}.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);max-width:90vw;background:#fff;border:1px solid #cfe1f8;color:#567cae;box-shadow:0 8px 40px #345a8b20;padding:14px 22px;border-radius:9px;font-size:12px;z-index:20}.toast.bad{background:#fff7f8;color:#b85669;border-color:#f1d4db}.empty{text-align:center;padding:70px 20px}.empty p{color:#99a8be;font-size:12px}
.login-shell{min-height:100vh;display:grid;grid-template-columns:53% 47%;background:white}.login-intro{position:relative;padding:48px 11%;overflow:hidden;background:linear-gradient(140deg,#f0f6ff 0%,#eaf2ff 55%,#f0f8ff 100%);border-right:1px solid #e7eef8}.login-intro>.eyebrow{margin:82px 0 18px;color:#90a7c9;font-size:8px}.login-intro h1{font-size:44px;line-height:1.5;font-weight:600;letter-spacing:2px;color:#31537f;margin:0 0 18px}.intro-copy{font-size:12px;color:#90a5c2;line-height:2.2}.intro-bottom{position:absolute;bottom:34px;left:11%;right:11%;display:flex;gap:25px;font-size:10px;color:#839bbb}.intro-bottom span:before{content:'';width:4px;height:4px;border-radius:50%;display:inline-block;background:#92b2e6;margin:0 8px 2px 0}.login-radar{position:relative;width:300px;height:300px;margin:10px 0 -10px auto;transform:perspective(700px) rotateX(48deg) rotateZ(-15deg);border-radius:50%;background:radial-gradient(circle,#d6e6ff88,#deebfc26 67%,transparent 68%)}.radar-grid{position:absolute;inset:0;border-radius:50%;background:linear-gradient(90deg,transparent 49.7%,#9bb9e755 50%,transparent 50.3%),linear-gradient(transparent 49.7%,#9bb9e755 50%,transparent 50.3%)}.radar-ring{position:absolute;border:1px solid #a4bfe355;border-radius:50%;inset:0}.r2{inset:45px}.r3{inset:95px}.radar-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 50deg,transparent 0deg,#6398f028 75deg,transparent 76deg);border-right:1px solid #74a2ec80}.blip{position:absolute;height:6px;width:6px;border-radius:50%;background:#78a1df;box-shadow:0 0 0 6px #79a6ed1a,0 0 18px #4b8ee770}.b1{left:28%;top:28%}.b2{left:67%;top:38%}.b3{left:40%;top:74%;background:#67b6ad}.radar-origin{position:absolute;left:calc(50% - 4px);top:calc(50% - 4px);height:8px;width:8px;background:#fff;border:2px solid #7ca6e4;border-radius:50%}.login-form-wrap{display:flex;flex-direction:column;justify-content:center;padding:55px 17%;position:relative}.login-form-wrap form{width:100%;max-width:370px;margin:auto}.welcome-icon{height:46px;width:46px;display:inline-grid;place-items:center;border:1px solid #dee9fb;border-radius:12px;color:#709ade;background:#f2f7ff;margin-bottom:27px}.welcome-icon svg{height:28px;width:28px}.login-form-wrap .eyebrow{font-size:8px;color:#a0b1cb;margin-bottom:12px}.login-form-wrap h2{font-size:24px;font-weight:600;color:#354c70;margin-bottom:13px}.login-form-wrap form>.muted{font-size:11px;line-height:1.8;margin-bottom:34px;color:#a0aec2}.login-form-wrap label{font-size:11px;color:#7185a3;gap:10px;margin-bottom:22px}.login-form-wrap input{height:45px;font-size:12px;background:#fcfdff}.login-form-wrap input::placeholder{color:#bcc6d6}.login-form-wrap .primary{height:45px;font-size:12px;justify-content:space-between;padding:0 16px;margin-top:5px}.login-security{display:flex;align-items:center;justify-content:center;gap:6px;color:#b1bfd1;font-size:9px;margin:24px 0}.login-security svg{height:13px;width:13px}.login-copyright{position:absolute;bottom:32px;left:0;right:0;text-align:center;color:#c0cad9;font-size:8px;letter-spacing:1px}
@media(min-width:1600px){.app-shell main{padding:0 42px}.workspace-grid{grid-template-columns:minmax(0,1fr) 300px}.canvas-wrap{height:390px}.plan-wrap{height:240px}.panel{padding:21px}.detail-grid>.panel{padding:20px}.health-summary strong{font-size:26px}#trend{height:138px}}
@media(max-width:1250px){.app-shell{grid-template-columns:178px minmax(0,1fr)}aside{width:178px;padding:28px 16px}.brand{font-size:25px}.brand img{height:34px;width:34px}.brand span{font-size:7px}.brand-note{font-size:9px}.nav-label span{display:none}.app-shell main{padding:0 22px}.workspace-grid{grid-template-columns:minmax(0,1fr) 248px;gap:14px}.detail-grid{gap:14px}.visual-column,.device-column{gap:14px}.panel{padding:15px}.detail-grid>.panel{padding:12px}.detail-grid .panel-head{flex-wrap:wrap}.metric{padding:15px 16px}.metric-grid{gap:12px}.canvas-wrap{height:315px}.health-summary{gap:5px}.health-summary>div{flex-wrap:wrap}.health-summary strong{font-size:19px}.device-bar small{font-size:8px}.plan-wrap{height:208px}.account time{display:none}}
@media(max-width:1100px){.app-shell{grid-template-columns:76px minmax(0,1fr)}aside{width:76px;padding:25px 12px;align-items:center}.brand{gap:0}.brand img{width:34px;height:34px}aside .brand div,.brand-note,.nav-label,.sidebar-note,.aside-bottom,nav button span,nav button i{display:none}nav{margin-top:45px;width:100%}nav button{padding:13px;justify-content:center}nav button svg{width:21px;height:21px}.workspace-grid{grid-template-columns:minmax(0,1fr) 250px}.device-bar{flex-wrap:wrap}.device-bar small{margin-left:0}.metric strong{font-size:30px}}
@media(max-width:900px){.workspace-grid{grid-template-columns:minmax(0,1fr)}.device-column{display:grid;grid-template-columns:1fr 1fr;gap:16px}.event-panel{grid-column:span 2}.detail-grid .panel-head{flex-wrap:nowrap}.detail-grid>.panel{padding:17px}.panel{padding:18px}.canvas-wrap{height:340px}.plan-wrap{height:230px}.health-summary strong{font-size:23px}.health-summary>div{flex-wrap:nowrap}.device-bar small{margin-left:auto}.manage-grid{grid-template-columns:1fr}.page-heading{padding:24px 0}.page-heading h1{font-size:24px}.metric-grid{gap:10px}.metric{padding:13px}.metric strong{font-size:29px}.metric small{font-size:8px}.login-form-wrap{padding:45px 12%}.login-intro{padding:40px 9%}.login-intro h1{font-size:36px}.login-radar{width:240px;height:240px}.intro-bottom{gap:12px;font-size:9px}}
@media(max-width:620px){.app-shell{display:block;padding-top:65px}aside{width:100%;height:65px;bottom:auto;flex-direction:row;padding:12px 17px;border-right:0;border-bottom:1px solid var(--line)}aside .brand img{width:32px;height:32px}nav{margin:0 0 0 auto;width:auto;flex-direction:row;gap:6px}nav button{width:auto;padding:10px}nav button svg{width:18px;height:18px}nav button span{display:block;font-size:10px}nav button{gap:6px}.app-shell main{padding:0 16px}header{height:55px}.account{gap:6px;font-size:9px}.account .avatar,.header-divider{display:none}.account #userName{max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumb{font-size:9px}.breadcrumb b,.breadcrumb span{display:none}.page-heading{align-items:flex-start;padding:24px 0 20px}.page-heading h1{font-size:21px}.page-heading .eyebrow{font-size:7px}.page-heading p:last-child{font-size:9px}.connection{font-size:8px;padding:7px;margin-top:20px}.device-bar{padding:11px;gap:8px}.device-label{width:100%;gap:9px}.device-label select{flex:1;max-width:none;min-width:0;font-size:10px}.device-bar small{font-size:8px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.metric{padding:14px 16px}.metric-top{font-size:11px}.metric strong{font-size:32px}.metric small{font-size:8px}.detail-grid{grid-template-columns:minmax(0,1fr)}.canvas-wrap{height:290px}.panel{padding:14px}.panel-head h2{font-size:12px}.panel-head p{font-size:8px}.section-icon{width:24px;height:24px}.section-icon svg{width:14px;height:14px}.segmented button{padding:5px 7px;font-size:8px}.cloud-footer{flex-wrap:wrap}.plot-caption{font-size:8px;gap:5px;left:12px}.plot-badge{font-size:7px}.plan-wrap{height:245px}.health-summary{justify-content:space-around;margin:18px 0}.health-summary strong{font-size:26px}#trend{height:130px}.device-column{gap:12px}.device-column .panel-title{gap:6px}.device-column .section-icon{display:none}.device-column .tag{font-size:7px}.control-grid{gap:6px}.control-grid button{font-size:9px}.control-grid button svg{display:none}.safety-summary{padding:11px 8px;gap:7px}.safety-symbol svg{width:23px;height:23px}.safety-summary strong{font-size:10px}.safety-summary p{font-size:7px}.quick-actions{gap:7px}.quick-actions button{font-size:9px}.state-row{font-size:9px}.footnote{font-size:9px}footer{font-size:7px;flex-wrap:wrap;gap:8px}.inline-form{align-items:stretch}.inline-form label{width:100%}.inline-form input[type=file]{width:100%}.inline-form button{font-size:11px}.form-grid{gap:0 12px}.form-grid label{font-size:10px}.form-grid input{width:100%}.login-shell{display:block}.login-intro{padding:28px 9%;min-height:265px}.login-intro>.eyebrow{margin:35px 0 14px}.login-intro h1{font-size:31px;line-height:1.5;position:relative;z-index:1}.login-intro .intro-copy,.intro-bottom{display:none}.login-radar{position:absolute;right:-20px;bottom:-20px;width:230px;height:230px;opacity:.8}.login-form-wrap{min-height:520px;padding:38px 9% 75px}.login-form-wrap form{max-width:400px}.login-form-wrap .welcome-icon{display:none}.login-form-wrap h2{font-size:22px}.login-form-wrap form>.muted{margin-bottom:25px}.login-copyright{bottom:25px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.replay-banner{display:flex;align-items:center;gap:15px;padding:12px 16px;margin-bottom:18px;border:1px solid #eadbb9;background:#fff9ec;border-radius:8px;color:#a18b5a;font-size:11px}.replay-banner strong{font-weight:500;white-space:nowrap}.replay-banner input{min-width:90px;flex:1}.replay-banner button{font-size:10px;white-space:nowrap;padding:7px 12px;background:#fffcf6;border-color:#e8dcc1;color:#a18b5a}@media(max-width:650px){.replay-banner{flex-wrap:wrap}.replay-banner input{width:100%;order:2;flex-basis:100%}.replay-banner strong{flex:1}}

/* High contrast spatial workspace */
.canvas-wrap{height:380px;background:#edf3fc;border-color:#d2deee}.canvas-empty{color:#6e85a4;font-size:12px}.plot-caption{color:#56759e;font-size:10px}.plot-caption>span:last-child{color:#7a90af}.plot-badge{color:#587da8;background:#ffffffcf;border-color:#d4e0f0;font-size:9px}.cloud-zoom{position:absolute;right:13px;bottom:11px;display:flex;align-items:center;gap:3px;padding:3px;background:#ffffffed;border:1px solid #d9e4f3;border-radius:7px;box-shadow:0 2px 8px #3159880b}.cloud-zoom button{border:0;padding:3px 7px;font-size:13px;min-width:25px;color:#557ca8;background:none}.cloud-zoom button:last-child{border-left:1px solid #e0e8f1;border-radius:0;font-size:10px;margin-left:2px;padding-left:9px}.cloud-zoom span{font-size:10px;color:#7b94b4;min-width:35px;text-align:center}.cloud-footer{font-size:10px;flex-wrap:wrap}.plan-panel .panel-head{margin-bottom:13px}.target-total{font-size:11px;color:#427cc2;background:#edf5ff;border:1px solid #d8e8fa;border-radius:5px;padding:5px 8px;white-space:nowrap}.bed-status-card{display:flex;align-items:center;gap:12px;border:1px solid #d9e4f0;border-radius:10px;padding:13px;margin-bottom:13px;background:#f5f8fc;color:#7f94b1}.bed-state-orb{width:48px;height:48px;border-radius:50%;background:#dfe8f4;color:#6d87a8;display:grid;place-items:center;box-shadow:0 0 0 5px #e6edf544;flex-shrink:0}.bed-state-orb svg{height:29px;width:29px}.bed-status-card small{display:block;font-size:10px;letter-spacing:.5px;margin-bottom:3px}.bed-status-card strong{display:block;font-size:24px;line-height:1.2;letter-spacing:1px}.bed-status-card>span:last-child{margin-left:auto;text-align:right;max-width:80px;font-size:10px;line-height:1.8}.bed-status-card[data-state=in]{background:#eef9f4;border-color:#d1eadd;color:#318b6c}.bed-status-card[data-state=in] .bed-state-orb{color:white;background:linear-gradient(145deg,#56b68f,#369b77);box-shadow:0 0 0 5px #54b58e14}.bed-status-card[data-state=out]{background:#fff5f5;border-color:#f1dadc;color:#b85c68}.bed-status-card[data-state=out] .bed-state-orb{color:white;background:linear-gradient(145deg,#e3a0a8,#cc7685);box-shadow:0 0 0 5px #d98c9814}.plan-wrap{height:280px;background:#fff;border:1px solid #e2eaf4;border-radius:8px}.plan-wrap .canvas-empty{top:65%;font-size:11px;color:#8b9db4}.plan-legend{font-size:9px;color:#768da9;gap:11px;flex-wrap:wrap}.legend-target{height:7px;width:7px;border-radius:50%;background:#2b78c9;box-shadow:0 0 0 3px #2b78c91c}.legend-track{background:#75a1d4}.legend-area{background:#e3f1ea;border-color:#69ab90}.detail-grid .panel-head p{font-size:10px}.panel-head h2{color:#29415f}.state-row{font-size:11px}.metric small{font-size:10px}@media(min-width:1600px){.canvas-wrap{height:440px}.plan-wrap{height:310px}}@media(max-width:1250px){.canvas-wrap{height:350px}.bed-status-card{padding:10px;gap:10px}.bed-state-orb{width:42px;height:42px}.bed-status-card strong{font-size:22px}.bed-status-card>span:last-child{font-size:9px;max-width:61px}}@media(max-width:620px){.canvas-wrap{height:310px}.plan-wrap{height:300px}.plot-caption{font-size:9px;bottom:17px}.plot-caption>span:last-child{display:none}.cloud-zoom button{padding:3px 5px}.cloud-zoom{right:8px}.bed-status-card{padding:14px;gap:14px}.bed-status-card strong{font-size:27px}.bed-state-orb{height:50px;width:50px}.bed-status-card>span:last-child{max-width:80px;font-size:10px}.target-total{font-size:10px}}

.height-legend{display:flex;gap:18px;flex-wrap:wrap;margin:12px 0 2px;color:#7085a2;font-size:10px}.height-legend span{display:inline-flex;gap:6px;align-items:center}.height-legend i{width:7px;height:7px;border-radius:50%}.height-low{background:#13966e}.height-mid{background:#bd8914}.height-high{background:#dc5668}#cloud{touch-action:none}@media(max-width:620px){.height-legend{gap:12px;font-size:9px}}
