/* Floor TV (#tv) in 39 Sanford Saturday — high contrast (Sahil, 2026-09-25): pure white and pure black, heavy black rules,
   solid Bulldog Red #BA0C2F for the active item (the operation running now) and the header rule, the Dawg Walk status colours at full strength.
   Colours only (Q33): every size, type size, weight, radius and box size stays as in the pre-skin TV; heavier rules are drawn with inset
   box-shadows on top of the existing border widths, so no box grows.
   Scoped to TV mode only: js/daily.js puts body.tv + #dailyRoot.dy-tv on the page for #tv, so the normal Daily page keeps the app skin.
   The TV's own ◐ button flips data-theme; dark = the Sanford dark tokens (pure black ground, white text and rules). */
body.tv #dailyRoot.dy-tv{
  --ink:#000000; --ink2:#1f1f1f; --ink3:#3d3d3d; --rule:#9e9e9e; --rule2:#9e9e9e;
  --paper:#ffffff; --paper2:#ffffff; --bg:#ffffff; --bg2:#ffffff; --hover:#f2f2f2; --field:#ffffff;
  --indigo:#000000; --indigo-d:#000000; --indigo-l:#e8e8e6; --indigo-xl:#f4f4f3; --on-accent:#ffffff;
  --green:#286e3c; --green-l:#e2eee5; --amber:#e8a317; --amber-l:#fcefd1; --red:#e42313; --red-l:#fde3e0;
  --purple:#8e6897; --purple-l:#efe8f1; --grey:#caced3; --grey-l:#ffffff; --dark:#000000;
  --ot:#e42313; --ot-l:rgba(228,35,19,.10); --sh:none;
  --sf-red:#ba0c2f; --sf-line:#000000; --sf-on:#ffffff; --sf-stripe:#dcdcdc;
  background:var(--bg); color:var(--ink);
}
[data-theme=dark] body.tv #dailyRoot.dy-tv{
  --ink:#ffffff; --ink2:#e8e8e8; --ink3:#c4c4c4; --rule:#4a4a4a; --rule2:#4a4a4a;
  --paper:#0b0b0b; --paper2:#0b0b0b; --bg:#000000; --bg2:#0b0b0b; --hover:#161616; --field:#0b0b0b;
  --indigo:#ffffff; --indigo-d:#ffffff; --indigo-l:#2a2a2a; --indigo-xl:#161616; --on-accent:#000000;
  --green:#3cc57a; --green-l:#0f2e1c; --amber:#ffb23f; --amber-l:#33250b; --red:#ff4a3d; --red-l:#3a0f0c;
  --purple:#b191b8; --purple-l:#2a1f2d; --grey:#4a4a4a; --grey-l:#0b0b0b; --dark:#ffffff;
  --ot:#ff4a3d; --ot-l:rgba(255,74,61,.16);
  --sf-line:#ffffff; --sf-on:#000000; --sf-stripe:#2a2a2a;
}
body.tv{background:#ffffff} [data-theme=dark] body.tv{background:#000000}

/* header: the solid Bulldog Red mark and a red rule under the clock bar (2px border + 3px inset = 5px, header height unchanged) */
body.tv #dailyRoot.dy-tv .dy-tvhead{border-bottom-color:var(--sf-red);box-shadow:inset 0 -3px 0 var(--sf-red)}
body.tv #dailyRoot.dy-tv .dy-mark{background:var(--sf-red);color:#fff}
body.tv #dailyRoot.dy-tv .dy-tvtitle,body.tv #dailyRoot.dy-tv .dy-tvdate,body.tv #dailyRoot.dy-tv .dy-clock{color:var(--ink)}
body.tv #dailyRoot.dy-tv .dy-shiftbar{background:var(--paper);outline:3px solid var(--sf-line);outline-offset:-3px}   /* inset outline, drawn over the fill: bar and fill stay 24px tall */
body.tv #dailyRoot.dy-tv .dy-shiftbar .reg{background:var(--indigo-l)}
body.tv #dailyRoot.dy-tv .dy-shiftbar .fill{opacity:1}
body.tv #dailyRoot.dy-tv .dy-shiftbar .now{background:var(--sf-red)}
body.tv #dailyRoot.dy-tv .dy-shiftlbl{color:var(--ink)}
body.tv #dailyRoot.dy-tv .dy-tvbtns button{border-color:var(--sf-line);background:var(--paper);color:var(--ink)}

/* announcements: info solid black, warning / urgent the full-strength status colours */
body.tv #dailyRoot.dy-tv .dy-ann{background:var(--sf-line);color:var(--sf-on);box-shadow:inset 14px 0 0 var(--sf-red)}
body.tv #dailyRoot.dy-tv .dy-ann.sev-warn{background:var(--amber);color:#000;box-shadow:none}
body.tv #dailyRoot.dy-tv .dy-ann.sev-urgent{background:var(--red);color:#fff;box-shadow:none}

/* cards, sections and rail blocks: flat, heavy black rules (the TV's 2px border + a 1px inset = 3px, same box size) */
body.tv #dailyRoot.dy-tv .dy-card,body.tv #dailyRoot.dy-tv .dy-rblk{background:var(--paper);border-color:var(--sf-line);box-shadow:inset 0 0 0 1px var(--sf-line)}
body.tv #dailyRoot.dy-tv .dy-chead{border-bottom-color:var(--sf-line);box-shadow:inset 0 -1px 0 var(--sf-line)}
body.tv #dailyRoot.dy-tv .dy-sech b,body.tv #dailyRoot.dy-tv .dy-secn{color:var(--ink)} body.tv #dailyRoot.dy-tv .dy-secarea{color:var(--ink2)}
body.tv #dailyRoot.dy-tv .dy-av{background:var(--sf-line);color:var(--sf-on)}
body.tv #dailyRoot.dy-tv .dy-nm{color:var(--ink)}
body.tv #dailyRoot.dy-tv .dy-hrs,body.tv #dailyRoot.dy-tv .dy-qty,body.tv #dailyRoot.dy-tv .dy-offchip,body.tv #dailyRoot.dy-tv .dy-outtag{background:var(--paper);color:var(--ink);box-shadow:inset 0 0 0 2px var(--sf-line)}
body.tv #dailyRoot.dy-tv .dy-with{border-color:var(--sf-line);color:var(--ink);box-shadow:inset 0 0 0 1px var(--sf-line)}
body.tv #dailyRoot.dy-tv .dy-hrs.bad{background:var(--red);color:#fff;box-shadow:none}
body.tv #dailyRoot.dy-tv .dy-time b{color:var(--ink)} body.tv #dailyRoot.dy-tv .dy-time small{color:var(--ink2)}
body.tv #dailyRoot.dy-tv .dy-opn{color:var(--ink)} body.tv #dailyRoot.dy-tv .dy-op,body.tv #dailyRoot.dy-tv .dy-cell{color:var(--ink2)}
body.tv #dailyRoot.dy-tv .dy-dot{box-shadow:0 0 0 2px var(--paper),0 0 0 3px var(--sf-line)}
body.tv #dailyRoot.dy-tv .dy-pn{background:var(--sf-line);color:var(--sf-on)}
body.tv #dailyRoot.dy-tv .dy-late{color:var(--red);border-color:var(--red);background:var(--paper);box-shadow:inset 0 0 0 1px var(--red)}
body.tv #dailyRoot.dy-tv .dy-ottag{background:var(--ot);color:#fff}
/* the active item: the operation running now gets a solid Bulldog Red bar and tag */
body.tv #dailyRoot.dy-tv .dy-line.run{background:color-mix(in srgb,var(--sf-red) 9%,var(--paper));box-shadow:inset 10px 0 0 var(--sf-red)}
body.tv #dailyRoot.dy-tv .dy-st.run{background:var(--sf-red);color:#fff}
body.tv #dailyRoot.dy-tv .dy-st.done{background:var(--green);color:#fff}
body.tv #dailyRoot.dy-tv .dy-alldone{color:var(--green)}
body.tv #dailyRoot.dy-tv .dy-line.offline{background:repeating-linear-gradient(135deg,var(--sf-stripe) 0 8px,transparent 8px 16px)}
body.tv #dailyRoot.dy-tv .dy-lunch{color:var(--ink2)}
body.tv #dailyRoot.dy-tv .dy-help{background:var(--purple);color:#fff}
body.tv #dailyRoot.dy-tv .dy-card.off{background:var(--paper);border-color:var(--ink3);box-shadow:none}
body.tv #dailyRoot.dy-tv .dy-card.off .dy-nm,body.tv #dailyRoot.dy-tv .dy-offwhy{color:var(--ink2)}
body.tv #dailyRoot.dy-tv .dy-empty{border-color:var(--sf-line);background:var(--paper);color:var(--ink2)}

/* rail: Out today / Nothing assigned in black, Work waiting in the full-strength warning colour */
body.tv #dailyRoot.dy-tv .dy-rblk{border-top-color:var(--sf-line)}
body.tv #dailyRoot.dy-tv .dy-rblk.wait{border-top-color:var(--amber)}
body.tv #dailyRoot.dy-tv .dy-rh b{color:var(--ink)} body.tv #dailyRoot.dy-tv .dy-rsub{color:var(--ink2)}
body.tv #dailyRoot.dy-tv .dy-rn{background:var(--sf-line);color:var(--sf-on)}
body.tv #dailyRoot.dy-tv .dy-out .dy-av{background:var(--grey);color:var(--dark)}
body.tv #dailyRoot.dy-tv .dy-out.part .dy-outtag{background:var(--amber);color:#000;box-shadow:none}
body.tv #dailyRoot.dy-tv .dy-outwarn{color:var(--red)!important}
body.tv #dailyRoot.dy-tv .dy-igh{color:var(--ink)} body.tv #dailyRoot.dy-tv .dy-ignum{color:var(--ink2)}
body.tv #dailyRoot.dy-tv .dy-pchip{background:var(--paper);border-color:var(--sf-line);color:var(--ink);box-shadow:inset 0 0 0 1px var(--sf-line)}
body.tv #dailyRoot.dy-tv .dy-pchip .dy-av{background:var(--sf-line);color:var(--sf-on)}
body.tv #dailyRoot.dy-tv .dy-pchip small{color:color-mix(in srgb,var(--amber) 45%,var(--ink))}
body.tv #dailyRoot.dy-tv .dy-wi span{color:var(--ink2)} body.tv #dailyRoot.dy-tv .dy-wi em{color:var(--ink)}
body.tv #dailyRoot.dy-tv .dy-rnone,body.tv #dailyRoot.dy-tv .dy-wmore,body.tv #dailyRoot.dy-tv .dy-idle{color:var(--ink2)}
