/* A complete 16:9 signage canvas: schedule, organization, announcements, weather. */
body.locker-demo .demo-copy{padding:1.7rem 0 1.4rem;align-items:center}
body.locker-demo .demo-copy h1{font-size:clamp(2rem,3.2vw,3rem);line-height:1.05}
body.locker-demo .demo-copy p:last-child{margin:.5rem 0 0;font-size:1rem}
body.locker-demo .device-bar{display:none}
body.locker-demo .device{border-radius:8px;border-color:#2b3c4d}
.screen.locker-screen{display:block;container-type:inline-size;min-height:0;aspect-ratio:16/9;background:#0b1320}
.screen.locker-screen:before{display:none}
.locker-board{--locker-line:#2c384a;box-sizing:border-box;width:100%;height:56.25cqw;display:grid;grid-template-rows:6.7cqw minmax(0,1fr) 5.4cqw 2.65cqw;background:#0b1320;color:#f4f7fc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1cqw;font-variant-numeric:tabular-nums}
.locker-heading{padding:1.25cqw 1.6cqw;display:flex;align-items:center;justify-content:space-between;gap:1cqw;border-bottom:1px solid var(--locker-line)}
.locker-eyebrow{display:block;margin-bottom:.35cqw;font-size:.65cqw;font-weight:700;letter-spacing:.14em;color:#a8b5c8}
.locker-heading h2{display:flex;align-items:center;gap:1.4cqw;margin:0;font-size:2.35cqw;line-height:1.15;letter-spacing:-.04em}
.locker-heading h2 span{padding:.35cqw .6cqw;border:1px solid #43516b;border-radius:.3cqw;color:#ced9ea;font-size:.78cqw;font-weight:600;letter-spacing:0}
.locker-heading-clock{text-align:right;display:grid;gap:.25cqw;flex-shrink:0}
.locker-heading-clock time{font-size:2.1cqw;font-weight:700;letter-spacing:-.03em}
.locker-heading-clock>span{font-size:.65cqw;color:#a8b5c8}
.locker-main{display:grid;grid-template-columns:minmax(0,1fr) 22%;gap:1.1cqw;padding:1cqw 1.2cqw 1.1cqw;min-height:0}
.locker-schedule{min-width:0;min-height:0}
.locker-table{border-collapse:separate;border-spacing:0 .55cqw;width:100%;height:100%;table-layout:fixed;margin-top:-.35cqw}
.locker-time-col{width:16%}.locker-team-col{width:32%}.locker-room-col{width:10%}
.locker-table th{height:2.2cqw;color:#99a9c0;font-size:.74cqw;font-weight:750;letter-spacing:.08em;text-transform:uppercase;text-align:left;padding:0 1cqw .3cqw}
.locker-table th.locker-room-heading{text-align:center;padding-left:0;padding-right:0;font-size:.65cqw}
.locker-table td{padding:.65cqw 1cqw;vertical-align:middle;background:#172335;border-top:1px solid #243348;border-bottom:1px solid #243348}
.locker-table td:first-child{border-left:.3cqw solid transparent;border-radius:.5cqw 0 0 .5cqw}
.locker-table td:last-child{border-radius:0 .5cqw .5cqw 0;padding-right:.85cqw}
.locker-table tr.locker-current td{background:#1e2e3e;border-color:#3b5963}
.locker-table tr.locker-current td:first-child{border-left-color:#69e4c3}
.locker-table tr.locker-past td{background:#121e2e}
.locker-time strong{display:block;font-size:1.45cqw;line-height:1.2;font-weight:750}
.locker-time>span{display:block;font-size:.86cqw;color:#a4b4c9;margin-top:.25cqw}
.locker-time em{display:inline-block;font-style:normal;margin-top:.35cqw;color:#8de9cc;font-size:.58cqw;font-weight:750;text-transform:uppercase;letter-spacing:.07em}
.locker-team strong{display:block;font-size:1.48cqw;font-weight:750;line-height:1.2;letter-spacing:-.025em;overflow-wrap:anywhere}
.locker-team small{display:block;font-size:.83cqw;color:#b4c1d4;margin-top:.25cqw}
.locker-category{display:block;font-size:.62cqw;font-weight:800;line-height:1;color:#e1acbf;letter-spacing:.08em;margin-bottom:.35cqw}
.locker-table td.locker-assignment{padding:.55cqw .4cqw;text-align:center;position:relative}
.locker-room{display:inline-grid;place-items:center;width:3.4cqw;height:3.5cqw;font-weight:800;font-size:2.25cqw;line-height:1;color:#fff;background:#93304c;border:1px solid #b44867;border-radius:.45cqw}
.locker-current .locker-room{background:#a32b51;border-color:#cf4d76}
.locker-unassigned{font-size:1.6cqw;color:#77859b}
.locker-training strong{color:#acb8cc;font-size:1.25cqw;font-weight:550}
.locker-training .locker-category{color:#8e9fb7}
.locker-room.room-updated{background:#b9f2dc;border-color:#b9f2dc;color:#113d34;animation:locker-update .65s ease-out both}
.locker-room-change{position:absolute;bottom:.35cqw;left:0;right:0;font-size:.6cqw;font-weight:800;color:#a4efd4}
.locker-sidebar{display:grid;grid-template-rows:1.1fr 1fr 1.12fr;gap:.7cqw;min-height:0}
.locker-identity{border-radius:.5cqw;padding:1.15cqw 1.3cqw;background:#f3f5f7;color:#0f2e3e;display:flex;flex-direction:column;justify-content:center}
.locker-identity>span{font-size:.58cqw;letter-spacing:.16em;font-weight:800;color:#546574}
.locker-identity>strong{display:block;margin-top:.7cqw;font-size:2.55cqw;font-weight:800;line-height:1;letter-spacing:-.06em}
.locker-identity>strong span{display:block;font-size:1.5cqw;letter-spacing:-.03em;margin-top:.25cqw}
.locker-identity-rule{width:2.7cqw;height:.22cqw;background:#a72c50;margin:.9cqw 0 .55cqw}
.locker-identity p{margin:0;font-size:.76cqw;line-height:1.5;color:#526572}
.locker-promo{padding:1.1cqw 1.3cqw;background:#83213f;border:1px solid #a33a5b;border-radius:.5cqw;display:flex;flex-direction:column;justify-content:center}
.locker-promo>span{color:#f5bed0;font-weight:800;font-size:.54cqw;letter-spacing:.07em}
.locker-promo>strong{font-size:2.35cqw;line-height:.98;letter-spacing:-.04em;margin:.6cqw 0}
.locker-promo>p{margin:0;color:#fff;font-weight:650;font-size:.8cqw}
.locker-promo>small{margin-top:.35cqw;color:#efbed0;font-size:.62cqw}
.locker-promo-partner{background:#e8c89e;border-color:#e8c89e;color:#332515}
.locker-promo-partner>span,.locker-promo-partner>p,.locker-promo-partner>small{color:#624323}
.locker-weather{padding:1cqw 1.3cqw;background:#132236;border:1px solid #283a50;border-radius:.5cqw}
.locker-weather-label{font-size:.57cqw;letter-spacing:.06em;color:#e6eefb;font-weight:700}
.locker-weather-label>span{display:block;margin-top:.2cqw;font-size:.5cqw;color:#a2b1c7;font-weight:500}
.locker-weather-now{display:flex;align-items:center;gap:.8cqw;margin:.75cqw 0 1cqw}
.locker-weather-now svg{width:3.3cqw;height:2.5cqw;color:#7bdded}
.locker-weather-now>strong{font-size:2.8cqw;line-height:1;letter-spacing:-.06em}
.locker-weather-now>span{font-size:.75cqw;color:#afc1d8}
.locker-forecast{display:flex;justify-content:space-between;border-top:1px solid #344358;padding-top:.6cqw}
.locker-forecast>div{display:grid;justify-items:center;gap:.35cqw}
.locker-forecast span{color:#b4c4d9;font-size:.65cqw}.locker-forecast svg{width:1.7cqw;height:1.25cqw;color:#7bdded}.locker-forecast b{font-size:.76cqw;font-weight:600}
.locker-notice{display:flex;align-items:center;justify-content:space-between;gap:1.5cqw;padding:.8cqw 1.6cqw;background:#192f45;border-top:1px solid #32465e}
.locker-notice>div{min-width:0}.locker-notice span{display:block;font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.67cqw;color:#94cfde;margin-bottom:.35cqw}
.locker-notice strong{display:block;font-size:1.02cqw;line-height:1.35;font-weight:500;color:#ecf1f8}
.locker-notice>b{font-size:1.1cqw;white-space:nowrap;font-weight:650;color:#a7c4da}
.locker-notice-update{background:#183f38;border-color:#397367}.locker-notice-update span,.locker-notice-update>b{color:#acf0d7}
.locker-footer{display:flex;align-items:center;justify-content:space-between;border:0;margin:0;padding:0 1.6cqw;background:#070e19;color:#a6b3c8;font-size:.6cqw}
.locker-footer>span:last-child{display:flex;align-items:center;gap:.5cqw}.locker-footer b{font-size:1cqw;letter-spacing:-.045em;color:#fff}
.locker-demo-note{margin:.75rem 0 0;color:#acb9b2;font-size:.8rem;line-height:1.5}
.locker-zoom{display:flex;justify-content:flex-end;margin-bottom:.65rem}.locker-zoom button{font:inherit;font-weight:650;font-size:.85rem;padding:.55rem .85rem;border:1px solid #476158;border-radius:4px;color:#edf7f1;background:#10211c;cursor:pointer}
.locker-zoom button:hover{border-color:#68f7d2}.locker-zoom[hidden],.locker-demo-note[hidden]{display:none}
.stage.is-expanded{position:fixed;inset:0;z-index:100;background:#050a11;display:flex;flex-direction:column;justify-content:center;padding:1rem;overflow:auto}
.stage.is-expanded .device{width:min(100%,calc((100dvh - 160px)*16/9));margin:auto auto 0;flex-shrink:0}
.stage.is-expanded .stage-meta{width:100%;max-width:1100px;margin:auto auto 0;flex-shrink:0}.stage.is-expanded .progress{flex-shrink:0}
.stage.is-expanded .locker-demo-note{margin-bottom:auto}.stage:fullscreen{background:#050a11}
.stage:fullscreen .device{width:min(100%,calc((100dvh - 160px)*16/9))}
@keyframes locker-update{from{box-shadow:0 0 0 .45cqw #b9f2dc55}to{box-shadow:0 0 0 0 #b9f2dc00}}
@media(max-width:760px){body.locker-demo main{width:94vw}body.locker-demo .demo-copy{padding:1.25rem 0;gap:1rem;align-items:stretch}body.locker-demo .demo-copy h1{font-size:2rem}body.locker-demo .demo-copy p:last-child{font-size:.9rem}.locker-demo .stage-meta{gap:.65rem;flex-wrap:wrap}.locker-demo .stage-meta>div:first-child{flex:1 1 160px}.locker-demo .stage-meta strong{font-size:.9rem}.locker-demo .controls{flex-shrink:0}.locker-demo .controls button{height:44px}.locker-demo-note{font-size:.8rem}.locker-demo .product-strip{margin:1.5rem 0 2rem}.stage.is-expanded{padding:.75rem}.stage.is-expanded .device{width:100%}}
@media(prefers-reduced-motion:reduce){.locker-room.room-updated{animation:none}}
