/* REQ-UI-003: cinematic command view, all data remains source-driven. */
:root{--bg:#020914;--panel:rgba(6,22,40,.88);--panel-strong:rgba(7,27,46,.96);--line:rgba(75,157,202,.19);--text:#e6f5ff;--muted:#7694ac}
body{background:radial-gradient(ellipse at 50% 27%,#102c436b,transparent 50%),linear-gradient(150deg,#020812,#051421 48%,#020912);min-width:1100px}
.wallboard-shell{height:100vh;min-height:720px;padding:14px 24px 10px;max-width:2880px;margin:auto}
.wallboard-header{height:76px;flex:none;grid-template-columns:250px minmax(0,1fr) 350px}.title-lockup{gap:18px}.title-lockup h1{font-size:clamp(21px,1.55vw,32px);font-weight:650;letter-spacing:.13em}.title-lockup p{font-size:8px;color:#64b4d2;letter-spacing:.26em}.title-rule{width:clamp(35px,5vw,130px)}.brand-lockup b{font-size:15px}.brand-lockup small{font-size:7px}.header-status{gap:8px}.clock strong{font-size:21px}.clock small{font-size:9px}
.wallboard-header:after{left:24%;right:24%;box-shadow:0 0 24px #3ed5ff66}.scope-bar{flex:none;min-height:36px;font-size:10px;gap:20px}.scope-item strong{color:#bfdbe9}.wallboard-main{display:flex;flex-direction:column;flex:1;min-height:0;padding:12px 0}.kpi-strip{flex:none;gap:12px;margin-bottom:12px}.kpi-card{min-height:82px;padding:11px 17px;background:linear-gradient(115deg,rgba(15,46,66,.75),rgba(5,20,35,.93));border-color:#5da3c82b;border-radius:4px;box-shadow:inset 0 1px #a2eaff09,0 8px 30px #0002}.kpi-card strong{font-size:28px;letter-spacing:.03em}.kpi-card small{font-size:10px}.kpi-card em{font-size:9px}.kpi-orbit{border-style:dashed;position:relative}.kpi-orbit:after{content:"";position:absolute;inset:-5px;border:1px solid rgba(var(--accent-rgb),.12);border-radius:50%;border-top-color:var(--accent);animation:command-rotate 14s linear infinite}.kpi-card:after{animation:command-breathe 6s ease-in-out infinite}
.data-panel{min-height:0;border-radius:4px;background:linear-gradient(145deg,#0b2434eb,#051321f2);box-shadow:inset 0 1px #b3e7ff08,0 8px 25px #0002}.data-panel:before,.data-panel:after{width:19px;height:19px;border-color:#55c5ef80}.panel-title{height:38px}.panel-title h2{font-size:14px;letter-spacing:.05em}.panel-title span{font-size:7px;color:#4a9bb6;letter-spacing:.18em}.panel-title>b{font-size:9px}.panel-empty{font-size:10px;color:#6d8d9d;min-height:30px}.wallboard-footer{flex:none;font-size:8px;min-height:22px;opacity:.8}
.dashboard-grid{flex:1;min-height:0;grid-template-rows:minmax(0,1.4fr) minmax(0,1fr);gap:12px}.topology-panel{background:radial-gradient(ellipse at center,#19485d44,transparent 65%),linear-gradient(145deg,#071b2bf2,#03111df5)}.topology-stage{height:calc(100% - 58px);min-height:0;margin:0}.topology-stage:before{display:none}.topology-stage svg{min-height:0}.topology-footer{height:20px;font-size:8px}.command-scene{height:100%;min-height:0;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 47%,#2d9bb013,transparent 62%)}.scene-caption{height:36px;padding:10px 14px 0;display:flex;align-items:baseline;justify-content:space-between;gap:12px;position:absolute;inset:0 0 auto;z-index:2;pointer-events:none}.scene-caption span{color:#aad6e6;font-size:11px;letter-spacing:.12em}.scene-caption small{color:#567f96;font-size:9px}.command-scene-svg{display:block;width:100%;height:100%;overflow:visible}.scene-grid{fill:none;stroke:#4ea9bb16;stroke-width:1}.scene-grid path{stroke-dasharray:4 7}.scene-orbit{fill:none;stroke:#40dddf3b;stroke-width:1;transform-origin:center;transform-box:fill-box;animation:command-rotate 32s linear infinite}.scene-orbit.reverse{animation-direction:reverse;animation-duration:48s;stroke:#53a5ed44}.orbit-ticks{stroke-dasharray:1 9;stroke-width:5}.orbit-dashes{stroke-dasharray:26 13;stroke-width:2}.scene-platform{fill:#38bcca0c;stroke:#51d9dd4d;stroke-width:1}.scene-platform.inner{fill:#217b9414;stroke:#4ac8da22}.scene-wire{fill:none;stroke:#3c80953b;stroke-width:1}.scene-flow{fill:none;stroke:#6fe3ea;stroke-width:1.7;stroke-linecap:round;stroke-dasharray:9 170;animation:command-flow 4s linear infinite;filter:drop-shadow(0 0 4px #44cadc80)}.scene-core{animation:command-float 6s ease-in-out infinite;filter:drop-shadow(0 10px 18px #35b4cd33)}.core-roof{fill:#17546d;stroke:#6ccee5;stroke-width:1.2}.core-left{fill:#0b263c;stroke:#3396b4;stroke-width:1.2}.core-right{fill:#103a50;stroke:#55b7cc;stroke-width:1.2}.core-slot{fill:none;stroke:#5faecb;stroke-width:2}.core-light{fill:#66f5d1;filter:drop-shadow(0 0 5px #4ce6c5)}.scene-core-value{fill:#e5fbff;font:600 27px ui-monospace,monospace;letter-spacing:2px}.scene-core-name{fill:#97bfce;font:13px -apple-system,sans-serif;letter-spacing:2px}.scene-core-note{fill:#4c7d93;font:9px -apple-system,sans-serif;letter-spacing:1px}
.scene-node{--tone:#6f96a9;animation:command-reveal .7s ease both;animation-delay:var(--node-delay)}.scene-node.good{--tone:#56e0cf}.scene-node.warn{--tone:#eab970}.scene-node.bad{--tone:#d58289}.scene-node rect{fill:#071b2eeb;stroke:#39728b80;stroke-width:1}.scene-node.good rect{stroke:#4dada86b;fill:#082b37eb}.node-accent{stroke:var(--tone);stroke-width:2.5;fill:none}.node-status{fill:var(--tone)}.node-name{fill:#85a6b9;font:14px -apple-system,sans-serif;letter-spacing:.4px}.node-value{fill:#dceef7;font:600 22px ui-monospace,-apple-system,sans-serif}.node-note{fill:#527a90;font:11px -apple-system,sans-serif}.scene-node.good .node-value{fill:#c4f5ef}.scene-node.muted{opacity:.57}.motion-control{min-height:29px;border:1px solid #458b9f40;background:#0c273a;color:#8dbacb;font-size:9px;border-radius:5px;padding:5px 7px;cursor:pointer;white-space:nowrap}.motion-control[aria-pressed="false"]{opacity:.6}
.ambient-a{animation:command-drift 28s ease-in-out infinite alternate}.ambient-b{animation:command-drift 32s ease-in-out infinite alternate-reverse}.scanline{opacity:.25;animation-duration:20s}.health-ring:after,.facility-health-ring:after{content:"";position:absolute;inset:-7px;border:1px dashed #44d5bb4d;border-left:2px solid #78f7ce88;border-radius:50%;animation:command-rotate 28s linear infinite;pointer-events:none}.trend-line{stroke-dasharray:1200;animation:command-line 1.5s ease-out both}.event-item,.sensor-device,.gateway-row{animation:command-reveal .5s ease both}.asset-row u,.workorder-row u{transition:width .8s ease}
.facility-dashboard-grid{flex:1;min-height:0;grid-template-columns:3fr 6fr 3fr;grid-template-rows:minmax(0,1fr) minmax(0,.8fr) minmax(0,.68fr);gap:12px}.environment-panel{grid-column:1;grid-row:1}.facility-scene-panel{grid-column:2;grid-row:1 / 3;display:flex;flex-direction:column;padding:12px;background:radial-gradient(ellipse at center,#184e6266,transparent 68%),linear-gradient(145deg,#061d2ef5,#04121ef5)}.facility-scene-panel .command-scene{flex:1}.facility-health-panel{grid-column:3;grid-row:1}.facility-alarm-panel{grid-column:1;grid-row:2}.gateway-panel{grid-column:3;grid-row:2}.power-panel{grid-column:1;grid-row:3}.cooling-panel{grid-column:3;grid-row:3}.sensor-matrix-panel{grid-column:2;grid-row:3}.facility-main{min-height:0}.facility-title h1{letter-spacing:.1em}.facility-kpis .kpi-card{min-height:82px}.environment-hero{grid-template-columns:1fr 1fr;gap:7px;margin:10px 0 0}.climate-card{min-height:76px;padding:10px 12px}.climate-card strong{font-size:29px;margin:6px 0}.climate-card small{font-size:8px}.binary-safety-grid{grid-column:1/-1;min-height:55px}.binary-safety-grid>div{padding:6px 4px}.zone-strip{display:none}.facility-health-content{grid-template-columns:105px 1fr;gap:12px;min-height:133px}.facility-health-ring{width:94px;height:94px}.facility-health-ring strong{font-size:22px}.facility-health-ring:before{inset:8px}.facility-health-legend{gap:6px}.facility-health-legend div{padding-bottom:4px}.facility-health-legend span{font-size:9px}.type-tally{max-height:26px;overflow:auto}.facility-event-list{min-height:0;max-height:calc(100% - 75px);overflow:auto}.facility-alarm-summary{margin:7px 0}.gateway-list,.equipment-list,.sensor-matrix{max-height:calc(100% - 45px);overflow:auto}.gateway-row{padding:10px}.gateway-row strong{font-size:10px}.gateway-row small{font-size:9px}.sensor-matrix{grid-template-columns:repeat(3,minmax(0,1fr));padding-top:8px}.sensor-device{padding:10px}.sensor-device strong{font-size:10px}.sensor-device p{font-size:9px}.sensor-device footer{font-size:8px;gap:7px}.equipment-head strong{font-size:10px}.equipment-metrics b{font-size:12px}.facility-scene-panel .panel-title{flex:none}.facility-scene-panel .panel-title>b{color:#65bfb4}.facility-grid-bg{animation:command-grid 40s linear infinite}
@keyframes command-rotate{to{transform:rotate(360deg)}}@keyframes command-flow{to{stroke-dashoffset:-358}}@keyframes command-float{50%{transform:translateY(-6px)}}@keyframes command-breathe{50%{opacity:.35;transform:scale(1.12)}}@keyframes command-drift{to{transform:translate(12vw,6vh)}}@keyframes command-reveal{from{opacity:0;filter:blur(2px)}to{filter:blur(0)}}@keyframes command-line{from{stroke-dashoffset:1200}to{stroke-dashoffset:0}}@keyframes command-grid{to{background-position:0 72px,72px 0}}
body[data-board-motion="off"] *,body[data-board-motion="off"] *:before,body[data-board-motion="off"] *:after{animation:none!important;transition:none!important}.scene-paused *, .scene-paused *:before,.scene-paused *:after{animation-play-state:paused!important}
@media(max-width:1500px){.wallboard-shell{padding:10px 16px 8px}.wallboard-header{grid-template-columns:200px minmax(0,1fr) 315px;height:68px}.title-lockup h1{font-size:21px}.title-rule{width:35px}.brand-lockup b{font-size:13px}.brand-lockup small{font-size:6px}.title-lockup p{font-size:7px}.kpi-card{padding:9px 11px;gap:10px;min-height:76px}.kpi-card strong{font-size:25px}.kpi-orbit{width:31px;height:31px;flex-basis:31px}.kpi-card small{font-size:9px}.kpi-card em{max-width:110px;font-size:8px}.scope-bar{gap:14px;min-height:32px}.dashboard-grid,.facility-dashboard-grid{gap:10px}.facility-kpis .kpi-card{min-height:76px}.facility-health-content{grid-template-columns:80px 1fr;gap:9px;min-height:100px}.facility-health-ring{width:74px;height:74px}.facility-health-ring strong{font-size:18px}.facility-health-ring span{font-size:8px}.health-content{padding-top:12px}.scene-caption span{font-size:10px}.scene-caption small{font-size:8px}.climate-card{padding:8px;min-height:64px}.climate-card strong{font-size:24px}.binary-safety-grid{min-height:48px}.scene-core-note{font-size:10px}.sensor-matrix{grid-template-columns:repeat(2,minmax(0,1fr))}.wallboard-footer{font-size:7px}}
@media(max-width:1180px){.wallboard-shell{height:auto;min-height:100vh}.wallboard-main{min-height:0}.dashboard-grid{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:320px 240px 240px}.topology-panel{grid-column:span 4}.data-panel{min-height:0}.facility-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:420px 250px 220px 180px}.facility-scene-panel{grid-column:1/-1;grid-row:1}.environment-panel{grid-column:1;grid-row:2}.facility-health-panel{grid-column:2;grid-row:2}.facility-alarm-panel{grid-column:1;grid-row:3}.gateway-panel{grid-column:2;grid-row:3}.power-panel{grid-column:1;grid-row:4}.cooling-panel{grid-column:2;grid-row:4}.sensor-matrix-panel{grid-column:1/-1;grid-row:5;min-height:150px}.kpi-strip{grid-template-columns:repeat(3,1fr)}}

.header-status{gap:6px}.live-state{white-space:nowrap;flex-shrink:0}.facility-scene-panel .scene-caption span{display:none}.facility-scene-panel .scene-caption{justify-content:flex-end}
@media(max-width:1500px){.wallboard-header{grid-template-columns:200px minmax(0,1fr) 340px}.clock{min-width:96px}.header-status .icon-control{width:30px;height:30px;flex:none}.climate-card small,.binary-safety-grid small{display:none}.climate-card strong{margin:4px 0}.environment-hero{gap:5px;margin-top:6px}.binary-safety-grid{min-height:42px}.binary-safety-grid>div{min-height:42px;padding:4px;gap:2px}.binary-safety-grid strong{font-size:11px;line-height:1.1}.binary-safety-grid span{font-size:8px;line-height:1}.binary-safety-grid i{width:6px;height:6px}.sensor-device{padding:7px 8px}.sensor-device p{display:none}.sensor-device footer{margin-top:3px;font-size:7px;gap:4px;flex-wrap:wrap}.sensor-matrix{padding-top:6px}}

.scene-core.standby .core-light{fill:#608297;filter:none}
/* Same scoped response deadlines as the business inbox, with no dialogs. */
.board-response-strip{display:grid;grid-template-columns:210px 1fr 1fr;gap:24px;margin:14px 0 0;padding:17px 22px;border:1px solid #244a675e;border-radius:10px;background:linear-gradient(110deg,#0b263bcc,#07182be6);color:#b8cedf}.board-response-strip h3{font-size:12px;font-weight:500;color:#8aa9bd;margin:0 0 9px}.board-response-counts{display:flex;flex-direction:column;gap:6px;font-size:11px}.board-response-counts small{font:9px monospace;letter-spacing:2px;color:#4ba1be}.board-response-counts>strong{font-size:17px;color:#d9f0fa}.board-response-counts b{color:#67d8e8}.board-response-row{font-size:10px;display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid #24425840}.board-response-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:54%}.board-response-row b{color:#d9b36b;font-weight:500}.board-response-row time{font-size:9px;white-space:nowrap;color:#86b5cc}.board-response-strip .is-overdue,.board-response-strip .is-overdue time{color:#ff8c85}.board-response-clear,.board-response-missing{font-size:11px;color:#718ba0;padding:8px 0}@media(max-width:1100px){.board-response-strip{grid-template-columns:170px 1fr;gap:16px}.board-response-strip>div:last-child{grid-column:2}.board-response-counts{grid-row:span 2}}@media(max-width:650px){.board-response-strip{grid-template-columns:1fr}.board-response-strip>div:last-child{grid-column:auto}}
@media(max-height:850px) and (min-width:1181px){.facility-alarm-panel .panel-title{height:25px}.facility-alarm-panel .panel-title h2{font-size:12px}.facility-alarm-summary{display:flex;justify-content:space-between;margin:0 0 3px;gap:4px}.facility-alarm-summary span{padding:0;background:none;font-size:7px}.facility-event-list{height:calc(100% - 42px);min-height:34px;max-height:none;overflow:auto}.facility-event-list .event-item{padding:3px 0}.facility-event-list .event-item strong{font-size:8px}.facility-event-list .event-item small{font-size:7px}}

.board-response-strip{grid-template-columns:minmax(230px,.9fr) 1fr 1fr;align-items:start;min-height:105px}.board-next-deadline{display:flex;flex-direction:column;gap:9px;min-height:44px}.board-next-deadline strong{font:500 13px/1.5 ui-monospace,monospace;color:#99e5f0}.board-next-deadline span{font-size:11px;color:#8faabe;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-deadline-anchor{display:block;color:#617f96;font-size:10px;margin-top:9px}.sensor-reading-values{display:flex;flex-wrap:wrap;gap:7px 14px;font-size:11px;color:#91afc5}.sensor-reading-values b{color:#d6eef9;font-weight:500}.sensor-device.alarm b,.sensor-device.alarm header>span{color:#ff8a82}.sensor-device.disabled{opacity:.55}
.board-response-strip{min-height:0;padding:12px 18px;gap:22px}.board-response-strip h3{font-size:11px;margin-bottom:7px}.board-response-counts>strong{font-size:15px}.board-next-deadline{min-height:33px;gap:6px}.board-next-deadline strong{font-size:12px}.board-deadline-anchor{font-size:9px;margin-top:6px}
@media(min-width:1181px){.facility-shell{min-height:820px}.facility-dashboard-grid{grid-template-rows:minmax(160px,1fr) minmax(108px,.8fr) minmax(120px,.75fr)}.sensor-matrix{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none;align-content:start}.sensor-device header{gap:6px;flex-wrap:wrap}.sensor-reading-values{font-size:10px;gap:4px 10px}.facility-health-content{min-height:78px}.type-tally{font-size:9px;line-height:1.5}}
