/* Studio TV display: sized by the screen (vw/vh), readable from across the floor. */
:root{--ink:#15100D;--soot:#221A16;--ash:#3A2E28;--rule:rgba(239,228,210,.14);--bone:#EFE4D2;--dust:#A89583;--brand:#D9311E;--copper:#F08F5E;--sage:#A3B48C;
  --f-display:"Barlow Condensed","Arial Narrow",Arial,sans-serif;--f-body:"Libre Franklin","Helvetica Neue",Arial,sans-serif;--u:min(1vw,1.78vh)}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--ink);color:var(--bone);font-family:var(--f-body);overflow:hidden;cursor:none;display:flex;flex-direction:column}
body.pointer{cursor:default}
.top{display:flex;align-items:center;gap:calc(var(--u)*2.4);padding:calc(var(--u)*1.4) calc(var(--u)*2.4);border-bottom:1px solid var(--rule)}
.logo{height:calc(var(--u)*3.6);width:auto}
.title{display:flex;flex-direction:column;line-height:1.1}
.title span{font-family:var(--f-display);font-weight:600;text-transform:uppercase;letter-spacing:.24em;font-size:calc(var(--u)*1.1);color:var(--copper)}
.title b{font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:calc(var(--u)*2.4)}
.counts{flex:1;display:flex;justify-content:center;gap:calc(var(--u)*1.2)}
.cnt{border:1px solid var(--rule);background:var(--soot);padding:calc(var(--u)*.6) calc(var(--u)*1.4);min-width:calc(var(--u)*11);text-align:center}
.cnt b{display:block;font-family:var(--f-display);font-weight:700;font-size:calc(var(--u)*3);line-height:1}
.cnt span{font-family:var(--f-display);font-weight:600;text-transform:uppercase;letter-spacing:.16em;font-size:calc(var(--u)*.95);color:var(--dust)}
.cnt.in b{color:var(--copper)} .cnt.done b{color:var(--sage)}
.clock{text-align:right;font-family:var(--f-display);font-weight:700;line-height:1}
.clock b{font-size:calc(var(--u)*4.4)} .clock small{font-size:calc(var(--u)*1.6);margin-left:.2em;color:var(--dust)}
.cols{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1.25fr;gap:calc(var(--u)*1.6);padding:calc(var(--u)*1.4) calc(var(--u)*2.4) calc(var(--u)*1.6)}
.col{min-height:0;display:flex;flex-direction:column;border:1px solid var(--rule);background:rgba(34,26,22,.55)}
.col h2{margin:0;padding:calc(var(--u)*.9) calc(var(--u)*1.4);font-family:var(--f-display);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:calc(var(--u)*2.4);border-bottom:2px solid var(--brand);display:flex;align-items:baseline;gap:.4em}
.col h2 i{font-style:normal;color:var(--dust);font-size:.7em}
.scroll{flex:1;min-height:0;overflow:hidden;padding:0 calc(var(--u)*1.4) calc(var(--u)*1)}
.grp{margin-top:calc(var(--u)*1.2)}
.grp h3{margin:0 0 calc(var(--u)*.5);font-family:var(--f-display);font-weight:600;text-transform:uppercase;letter-spacing:.2em;font-size:calc(var(--u)*1.15);color:var(--dust);display:flex;gap:.6em}
.grp h3 b{color:var(--bone)}
.row{display:grid;grid-template-columns:calc(var(--u)*6.4) 1fr auto;gap:calc(var(--u)*1.2);align-items:center;padding:calc(var(--u)*.75) calc(var(--u)*.9);border-left:4px solid var(--ash);background:var(--soot);margin-bottom:calc(var(--u)*.5)}
.row.in_studio{border-left-color:var(--copper)} .row.completed{border-left-color:var(--sage)} .row.out{opacity:.62}
.row.overdue{border-left-color:var(--brand);background:linear-gradient(90deg,rgba(217,49,30,.18),var(--soot) 40%)}
.t{font-family:var(--f-display);font-weight:700;font-size:calc(var(--u)*1.9);line-height:1}
.t small{display:block;font-weight:600;font-size:calc(var(--u)*.9);color:var(--dust);letter-spacing:.06em;margin-top:.3em;text-transform:uppercase}
.v b{font-weight:600;font-size:calc(var(--u)*1.5)}
.plate{display:inline-block;margin-left:.6em;padding:.05em .45em;background:var(--bone);color:var(--ink);font-family:var(--f-display);font-weight:700;letter-spacing:.08em;font-size:calc(var(--u)*1.05);vertical-align:.12em}
.v p{margin:.2em 0 0;color:var(--dust);font-size:calc(var(--u)*1.12)}
.v p b{color:var(--bone);font-weight:500;font-size:inherit}
.s{text-align:right}
.pill{display:inline-block;font-family:var(--f-display);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:calc(var(--u)*1.05);padding:.25em .7em;border:1px solid currentColor;white-space:nowrap}
.pill.expected{color:var(--dust)} .pill.in_studio{color:var(--copper)} .pill.completed{color:var(--sage)} .pill.out{color:var(--bone)}
.s small{display:block;margin-top:.35em;color:var(--dust);font-size:calc(var(--u)*1.02)}
.due{display:block;margin-top:.35em;font-family:var(--f-display);font-weight:700;font-size:calc(var(--u)*1.3);letter-spacing:.03em}
.due.late{color:#ff6a55}
.bar{height:4px;background:var(--ash);margin-top:.5em;width:calc(var(--u)*10);margin-left:auto}
.bar i{display:block;height:100%;background:var(--copper)}
.none{color:var(--dust);font-size:calc(var(--u)*1.3);padding:calc(var(--u)*2) 0}
.msg{position:fixed;inset:0;display:grid;place-items:center;background:var(--ink);font-size:calc(var(--u)*2);text-align:center;padding:10vw}
.fs{position:fixed;right:12px;bottom:12px;opacity:0;transition:opacity .3s;background:var(--soot);color:var(--bone);border:1px solid var(--rule);padding:8px 14px;font:inherit;cursor:pointer}
body.pointer .fs{opacity:1}
.stale .clock b{color:var(--brand)}
.msg[hidden]{display:none}
