  :root{
    --bg:#1C2426; --panel:#28322E; --panel2:#222B27; --line:#3B4842;
    --ink:#EDF3EE; --muted:#9FAEA4; --faint:#6E7C74;
    --nav-bg:#222B2C; --head-top:#303A35; --head-bot:rgba(28,36,38,.82); --track:#313B35;
    --rb:#39C173; --wr:#4DA3FF; --qb:#FF6B7A; --te:#FFA23E; --k:#B79CFF; --def:#8FA3AD;
    --now:#FF5630; --steal:#F5C542; --value:#37D9C6;
    --steal-ink:var(--steal); --go-ink:var(--rb);
    --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
    --sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
    /* condensed broadcast face — the scoreboard countdown + page titles.
       Used with restraint; body + data stay sans/mono. */
    --display:"Avenir Next Condensed","Saira Condensed","Oswald",var(--sans);
  }
  /* Daytime draft board. A warm off-white base so cards (pure white) float,
     with the gold/green accents darkened just enough to stay readable on light. */
  :root[data-theme="light"]{
    --bg:#F2F5EF; --panel:#FFFFFF; --panel2:#EAEEE5; --line:#DBE1D6;
    --ink:#1B2320; --muted:#5C6860; --faint:#8B978D;
    --nav-bg:#FFFFFF; --head-top:#FFFFFF; --head-bot:rgba(242,245,239,.82); --track:#E2E7DD;
    --steal-ink:#956700; --go-ink:#1E8A50;
  }
  /* Playbook — deep tactical navy with a faint chalk grid and cyan hairline accents. */
  :root[data-theme="blueprint"]{
    --bg:#0A1826; --panel:#0F2438; --panel2:#0C1D2E; --line:#1E3B58;
    --ink:#DCEBF7; --muted:#7FA6C4; --faint:#4E7391;
    --nav-bg:#0C2033; --head-top:#123049; --head-bot:rgba(10,24,38,.85); --track:#1A3A57;
    --steal-ink:#5CC8FF; --go-ink:#5CE0B0;
  }
  :root[data-theme="blueprint"] body{
    background:
      repeating-linear-gradient(0deg,rgba(92,200,255,.05) 0 1px,transparent 1px 28px),
      repeating-linear-gradient(90deg,rgba(92,200,255,.05) 0 1px,transparent 1px 28px),
      var(--bg);
  }
  html{color-scheme:dark light}
  *{box-sizing:border-box}
  html,body{margin:0}
  body{
    background:
      radial-gradient(1200px 600px at 78% -10%, rgba(57,193,115,.06), transparent 60%),
      var(--bg);
    color:var(--ink); font-family:var(--sans);
    font-size:15px; line-height:1.35; -webkit-font-smoothing:antialiased;
  }
  .wrap{max-width:1400px;margin:0 auto;padding:0 18px 40px}

  /* ---- scoreboard header ---- */
  [hidden]{display:none!important}   /* beat display:grid/flex rules so view toggles actually hide */
  header.board-head{
    position:sticky;top:46px;z-index:20;margin:0 -18px 18px;padding:14px 18px 16px;
    background:linear-gradient(180deg,var(--head-top),var(--head-bot));
    border-bottom:1px solid var(--line); backdrop-filter:blur(6px);
    display:flex;align-items:center;gap:26px;flex-wrap:wrap;
  }
  .brand .eyebrow{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}
  .brand h1{font-family:var(--display);font-size:26px;letter-spacing:.005em;margin:0;font-weight:700}
  .score{display:flex;gap:22px;margin-left:auto;align-items:center;flex-wrap:wrap}
  .stat{display:flex;flex-direction:column;gap:3px}
  .stat .lbl{font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--faint)}
  .stat .val{font-family:var(--mono);font-size:19px;font-weight:600;letter-spacing:-.01em}
  .stat.turn .val{font-family:var(--display);color:var(--steal-ink);font-size:40px;line-height:.85;font-weight:700;letter-spacing:0}
  .stat.turn .val small{font-size:12px;color:var(--muted);font-weight:500;letter-spacing:.04em}
  .sync{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}
  .dot{width:8px;height:8px;border-radius:50%;background:var(--faint);box-shadow:0 0 0 0 rgba(57,193,115,.5)}
  .dot.live{background:var(--rb);animation:pulse 2.4s infinite}
  @keyframes pulse{0%{box-shadow:0 0 0 0 rgba(57,193,115,.45)}70%{box-shadow:0 0 0 7px rgba(57,193,115,0)}100%{box-shadow:0 0 0 0 rgba(57,193,115,0)}}
  /* On-the-clock alert state */
  .clock-banner{display:none}
  .board-head.onclock .clock-banner,.board-head.getready .clock-banner,.board-head.complete .clock-banner{
    display:flex;align-items:center;justify-content:center;gap:11px;
    flex-basis:100%;order:-1;margin:-14px -18px 6px;padding:11px 18px;
    font-family:var(--mono);font-weight:800;font-size:14px;letter-spacing:.2em;text-transform:uppercase}
  .board-head.complete .clock-banner{
    color:var(--rb);background:linear-gradient(90deg,rgba(57,193,115,.07),rgba(57,193,115,.2),rgba(57,193,115,.07));
    border-bottom:1px solid rgba(57,193,115,.4)}
  .board-head.complete .cb-dot{animation:none}
  .done{padding:6px 4px 10px;display:flex;flex-direction:column;gap:12px}
  .done-grp .done-h{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;
    color:var(--faint);margin:0 0 5px;display:flex;justify-content:space-between}
  .done-row{display:flex;align-items:center;gap:8px;padding:4px 0}
  .done-row .rd{font-family:var(--mono);font-size:10.5px;color:var(--faint);min-width:26px}
  .done-row .nm{font-size:13px;font-weight:600}
  .board-head.onclock .clock-banner{
    color:#fff;background:linear-gradient(90deg,rgba(255,86,48,.12),rgba(255,86,48,.34),rgba(255,86,48,.12));
    border-bottom:1px solid rgba(255,86,48,.55);box-shadow:inset 0 0 44px -12px rgba(255,86,48,.7);
    animation:clockflash 1.15s ease-in-out infinite}
  .board-head.getready .clock-banner{
    color:var(--steal);background:linear-gradient(90deg,rgba(245,197,66,.08),rgba(245,197,66,.2),rgba(245,197,66,.08));
    border-bottom:1px solid rgba(245,197,66,.4)}
  .cb-dot{width:9px;height:9px;border-radius:50%;background:currentColor;
    box-shadow:0 0 11px 2px currentColor;animation:pulse2 1s infinite}
  .board-head.onclock{border-bottom-color:rgba(255,86,48,.55);box-shadow:0 8px 34px -16px rgba(255,86,48,.9)}
  .board-head.onclock .stat.turn .val{color:var(--now);font-size:48px;animation:pulse2 1s infinite}
  @keyframes clockflash{50%{box-shadow:inset 0 0 60px -8px rgba(255,86,48,.95)}}

  /* ---- layout ---- */
  .grid{display:grid;grid-template-columns:1fr 344px;gap:18px;align-items:start}
  @media(max-width:920px){.grid{grid-template-columns:1fr}}

  .card{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}
  .card > h2{
    font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);
    margin:0;padding:13px 16px;border-bottom:1px solid var(--line);font-weight:700;
    display:flex;justify-content:space-between;align-items:center;
  }
  .card > h2 .count{font-family:var(--mono);color:var(--faint);letter-spacing:0}

  /* ---- board table ---- */
  table{width:100%;border-collapse:collapse}
  thead th{
    background:var(--panel2);
    font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--faint);
    font-weight:600;text-align:right;padding:8px 10px;border-bottom:1px solid var(--line);
  }
  thead th.l{text-align:left}
  tbody tr{border-bottom:1px solid rgba(34,48,42,.55)}
  tbody tr:hover{background:rgba(57,193,115,.04)}
  tbody tr.gone{opacity:.32;filter:grayscale(.6)}
  td{padding:9px 10px;text-align:right;font-family:var(--mono);font-size:14px;font-variant-numeric:tabular-nums}
  td.rk{color:var(--faint);width:34px}
  td.player{text-align:left;font-family:var(--sans);width:100%}
  .pname{font-weight:600;letter-spacing:-.005em}
  .pmeta{display:flex;gap:8px;align-items:center;margin-top:2px}
  .pos{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.02em;
       padding:1px 6px;border-radius:4px;color:#06110B}
  .pos.RB{background:var(--rb)} .pos.WR{background:var(--wr)} .pos.QB{background:var(--qb)}
  .pos.TE{background:var(--te)} .pos.K{background:var(--k)} .pos.DEF{background:var(--def)}
  .tm{font-size:11px;color:var(--muted);font-family:var(--mono);letter-spacing:.02em}
  .tier{font-size:10px;color:var(--faint);font-family:var(--mono)}
  td.room{color:var(--muted)}
  td.bk{color:var(--muted);font-variant-numeric:tabular-nums;padding-left:6px;padding-right:6px;text-align:right}
  td.bk .miss{color:var(--faint)}
  td.erik{color:var(--steal-ink);font-weight:600}             /* expert (Erik) tier — gold */
  td.erik[title]:not([title="Not in Erik’s ranks"]){cursor:help;text-decoration:underline dotted rgba(245,197,66,.5)}
  .spread{display:inline-block;white-space:nowrap;font-family:var(--mono);font-size:10.5px;
        font-weight:700;padding:2px 7px;border-radius:5px;letter-spacing:0;font-variant-numeric:tabular-nums}
  .spread.agree{color:#04140f;background:var(--value)}
  .spread.mixed{color:#1c1503;background:var(--te)}
  .spread.split{color:#fff;background:#b0201a}
  .spread.solo{color:var(--faint);background:var(--panel2);border:1px solid var(--line);font-weight:500}
  .edge{display:inline-block;font-family:var(--mono);font-size:10.5px;font-weight:700;
        color:var(--steal-ink);background:rgba(245,197,66,.12);border:1px solid rgba(245,197,66,.4);
        border-radius:5px;padding:0 5px;margin-left:6px}
  .inj{display:inline-block;font-family:var(--mono);font-size:9.5px;font-weight:800;letter-spacing:.03em;
        padding:0 4px;border-radius:4px;margin-left:6px;vertical-align:middle}
  .inj.warn{color:#1c1503;background:var(--te)}
  .inj.bad{color:#fff;background:#b0201a}

  /* ---- needs tracker ---- */
  .needs{padding:12px 14px;display:flex;flex-wrap:wrap;gap:8px}
  .slot{display:flex;align-items:center;gap:6px;background:var(--panel2);border:1px solid var(--line);
        border-radius:8px;padding:6px 9px}
  .slot .s-lbl{font-family:var(--mono);font-size:11px;font-weight:700}
  .pips{display:flex;gap:3px}
  .pip{width:7px;height:7px;border-radius:2px;background:var(--faint)}
  .pip.on{background:var(--rb)}

  /* ---- recommendation cards ---- */
  .recs{padding:12px;display:flex;flex-direction:column;gap:10px}
  .rec{background:var(--panel2);border:1px solid var(--line);border-radius:11px;padding:11px 12px;position:relative}
  .rec.NOW{border-color:rgba(255,86,48,.5)}
  .rec.STEAL{border-color:rgba(245,197,66,.55);box-shadow:0 0 22px -12px rgba(245,197,66,.6)}
  .rec-top{display:flex;align-items:center;gap:8px;margin-bottom:6px}
  .flag{font-family:var(--mono);font-size:9.5px;font-weight:800;letter-spacing:.1em;
        text-transform:uppercase;padding:2px 7px;border-radius:5px}
  .flag.NOW{background:var(--now);color:#170300}
  .flag.NOW::after{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;
        background:#170300;margin-left:5px;vertical-align:middle;animation:pulse2 1.4s infinite}
  @keyframes pulse2{50%{opacity:.25}}
  .flag.STEAL{background:var(--steal);color:#1c1503}
  .flag.VALUE{background:var(--value);color:#04140f}
  .flag.WAIT{background:#26332c;color:var(--muted)}
  .rec.RUN{border-color:rgba(255,138,61,.55);box-shadow:0 0 22px -12px rgba(255,138,61,.6)}
  .flag.RUN{background:#ff8a3d;color:#1c0d02}
  .flag.RUN::after{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;
        background:#1c0d02;margin-left:5px;vertical-align:middle;animation:pulse2 1.4s infinite}
  .rec.DEPTH{border-color:rgba(47,127,143,.5)}
  .flag.DEPTH{background:#2f7f8f;color:#eafcff}
  /* Positional-value bars */
  .pv{padding:12px 14px 14px;display:flex;flex-direction:column;gap:11px}
  .pv-row{display:flex;align-items:center;gap:11px}
  .pv-body{flex:1;min-width:0}
  .pv-bar{height:11px;border-radius:6px;background:var(--panel2);
          border:1px solid var(--line);overflow:hidden}
  .pv-fill{height:100%;border-radius:6px;transition:width .55s cubic-bezier(.2,.8,.2,1)}
  .pv-cap{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-top:5px}
  .pv-best{font-size:12.5px;font-weight:600;color:var(--ink);white-space:nowrap;
           overflow:hidden;text-overflow:ellipsis}
  .pv-sub{font-family:var(--mono);font-size:10.5px;color:var(--faint);white-space:nowrap}
  .pv-row.lead .pv-best{color:var(--steal-ink)}
  .pv-lead-tag{font-family:var(--mono);font-size:9px;font-weight:800;letter-spacing:.12em;
           color:var(--steal-ink);margin-left:6px}
  .pv-scale{display:flex;justify-content:space-between;font-family:var(--mono);
            font-size:9px;letter-spacing:.16em;color:var(--faint);text-transform:uppercase;
            padding:0 14px;margin-top:-2px}
  .rec .rname{font-weight:700;font-size:15px}
  .rec .reason{color:var(--muted);font-size:12px;margin-top:5px;line-height:1.4}
  /* Two-pick lookahead: what passing costs you AT THIS POSITION by your next turn.
     Hidden under 5 pts (waiting is effectively free); amber past 15 (a real cliff). */
  .rec .waitcost{margin-top:6px;font-family:var(--mono);font-size:11px;
    letter-spacing:.02em;color:var(--faint)}
  .rec .waitcost b{color:var(--muted);font-weight:600}
  .rec .waitcost.hot{color:var(--steal)}
  .rec .waitcost.hot b{color:var(--steal)}
  /* slide gauge: value rank -> where the room lets them fall */
  .gauge{margin-top:9px}
  .gauge .track{position:relative;height:6px;border-radius:3px;background:var(--track);overflow:hidden}
  .gauge .fill{position:absolute;top:0;bottom:0;background:linear-gradient(90deg,var(--steal),rgba(245,197,66,.25))}
  .gauge .ends{display:flex;justify-content:space-between;font-family:var(--mono);font-size:9.5px;color:var(--faint);margin-top:3px}
  .gauge .ends b{color:var(--steal);font-weight:700}
  .empty{color:var(--faint);font-size:12px;padding:14px;text-align:center;font-style:italic}
  /* ---- view toggle + next-up columns ---- */
  .hctl{display:flex;gap:6px;align-items:center}
  .vtoggle{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
    color:var(--muted);background:var(--panel2);border:1px solid var(--line);border-radius:6px;padding:4px 9px;cursor:pointer}
  .vtoggle.on{color:#06110B;background:var(--rb);border-color:var(--rb)}
  .vtoggle:focus-visible{outline:2px solid var(--wr);outline-offset:2px}
  .nextup{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(196px,1fr);gap:12px;padding:12px;overflow-x:auto}
  .col{background:var(--panel2);border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;min-width:0}
  .col-h{display:flex;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid var(--line)}
  .col-h .need{margin-left:auto;font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
  .nu{padding:8px 10px;border-bottom:1px solid rgba(34,48,42,.5)}
  .nu:last-child{border-bottom:none}
  .nu.top{background:rgba(57,193,115,.06)}
  .nu-top{display:flex;align-items:baseline;gap:6px}
  .nu .prk{font-family:var(--mono);font-size:11px;font-weight:700;color:var(--faint);min-width:30px}
  .nu .nm{font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .nu .sub{display:flex;flex-wrap:wrap;gap:4px 9px;margin-top:4px;font-family:var(--mono);font-size:10.5px;color:var(--muted)}
  .nu .sub .g{color:var(--faint)}
  /* My Team view */
  .myteam{padding:12px}
  .mt-summary{display:flex;gap:20px;flex-wrap:wrap;align-items:center;padding:11px 14px;margin-bottom:12px;
    background:var(--panel2);border:1px solid var(--line);border-radius:11px}
  .mt-stat{display:flex;flex-direction:column;gap:2px}
  .mt-stat .k{font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--faint)}
  .mt-stat .v{font-family:var(--mono);font-size:18px;font-weight:700}
  .mt-stat .v.warn{color:var(--now)}
  .mt-warns{margin-left:auto;font-size:11.5px;color:var(--now);font-family:var(--mono);letter-spacing:.02em}
  .mt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
  .mt-grp{background:var(--panel2);border:1px solid var(--line);border-radius:10px;overflow:hidden}
  .mt-grp .gh{display:flex;justify-content:space-between;padding:8px 11px;border-bottom:1px solid var(--line);
    font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
  .mt-grp .gh.short{color:var(--now)}
  .mt-row{display:flex;align-items:baseline;gap:8px;padding:6px 11px;border-bottom:1px solid rgba(34,48,42,.5)}
  .mt-row:last-child{border-bottom:none}
  .mt-row.empty-row{color:var(--faint);font-family:var(--mono);font-size:11px}
  .mt-row .rd{font-family:var(--mono);font-size:10px;color:var(--faint);min-width:26px}
  .mt-row .nm{font-weight:600;font-size:13px}
  .mt-row .vr{margin-left:auto;font-family:var(--mono);font-size:10px;color:var(--faint);white-space:nowrap}
  .refresh{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--muted);
    background:var(--panel2);border:1px solid var(--line);border-radius:7px;padding:6px 10px;
    cursor:pointer;transition:color .15s,border-color .15s}
  .refresh:hover{color:var(--ink);border-color:var(--rb)}
  .refresh.spin{color:var(--rb);border-color:var(--rb)}
  .refresh .ri{display:inline-block}
  .refresh.spin .ri{animation:spin .6s linear}
  @keyframes spin{to{transform:rotate(360deg)}}
  @media(prefers-reduced-motion:reduce){*{animation:none!important}}
  /* --- multi-page shell --- */
  .topnav{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:2px;
    padding:0 18px;height:46px;background:var(--nav-bg);border-bottom:1px solid var(--line)}
  .topnav .tn-brand{font-weight:800;letter-spacing:.02em;margin-right:16px;font-size:14px;color:var(--ink);
    text-decoration:none}
  .topnav .tn-link{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;
    color:var(--muted);text-decoration:none;padding:8px 12px;border-radius:7px}
  .topnav .tn-link:hover{color:var(--ink);background:rgba(127,140,130,.16)}
  .topnav .tn-link.active{color:var(--ink);background:rgba(57,193,115,.16)}
  /* theme toggle — pinned to the right of the nav */
  .topnav .tn-theme{margin-left:auto;display:flex;align-items:center;justify-content:center;
    width:30px;height:30px;font-size:14px;line-height:1;cursor:pointer;
    background:none;border:1px solid var(--line);border-radius:7px;color:var(--muted)}
  .topnav .tn-theme:hover{color:var(--ink);border-color:var(--muted)}
  .topnav .tn-theme:focus-visible{outline:2px solid var(--wr);outline-offset:2px}
  .page{max-width:1180px;margin:0 auto;padding:22px 18px 60px}
  .page-head{margin-bottom:18px}
  .page-head .eyebrow{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}
  .page-head h1{font-family:var(--display);font-size:28px;letter-spacing:.005em;margin:2px 0 0;font-weight:700}
  .placeholder{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:38px 28px;text-align:center}
  .placeholder .soon{display:inline-block;margin-bottom:14px;font-family:var(--mono);font-size:10px;
    letter-spacing:.16em;text-transform:uppercase;color:var(--steal-ink);border:1px solid rgba(245,197,66,.4);
    border-radius:20px;padding:4px 12px}
  .placeholder h2{font-size:17px;color:var(--ink);margin:0 0 10px;border:none;padding:0;letter-spacing:0;text-transform:none}
  .placeholder p{font-size:13.5px;line-height:1.65;max-width:540px;margin:0 auto;color:var(--muted)}
  .mt-next{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:15px 18px;margin-bottom:16px}
  .mt-next h2{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 6px;border:none;padding:0}
  .mt-next .soon{font-size:13px;color:var(--faint)}
  /* Coach panel */
  .card.coach{border-color:rgba(245,197,66,.28)}
  .card.coach.live{border-color:rgba(245,197,66,.6);box-shadow:0 0 26px -14px rgba(245,197,66,.7)}
  .coach-body{padding:12px 14px}
  .coach-read{font-size:13px;line-height:1.6;color:var(--ink)}
  .coach-read b{color:var(--steal-ink)}
  .coach-idle{font-size:12.5px;color:var(--muted);line-height:1.5}
  .coach-ask{display:flex;gap:6px;margin-top:12px}
  .coach-ask input{flex:1;min-width:0;background:var(--panel2);border:1px solid var(--line);
    border-radius:8px;padding:8px 10px;color:var(--ink);font-size:12.5px;font-family:inherit}
  .coach-ask input:focus{outline:none;border-color:var(--steal)}
  .coach-ask button{background:var(--steal);color:#1c1503;border:none;border-radius:8px;
    padding:0 12px;font-weight:700;font-size:12px;cursor:pointer}
  .coach-answer{margin-top:9px;padding:9px 11px;background:var(--panel2);border:1px solid var(--line);
    border-radius:9px;font-size:12.5px;line-height:1.55;color:var(--ink)}
  .coach-teach{margin-top:8px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;
    text-transform:uppercase;color:var(--faint);background:none;border:none;cursor:pointer;padding:0}
  .coach-teach:hover{color:var(--muted)}

  /* === hierarchy + mobile-priority pass ============================ */
  /* "Make The Pick" is the product's whole purpose — give it primary
     weight and pull it up the rail (just under the coach read) instead
     of leaving it dead last below the fold. */
  .grid aside > .card{order:5}
  .grid aside > .card.coach{order:1}
  .grid aside > .card.pick{order:2}
  .card.pick{border-color:rgba(57,193,115,.5);box-shadow:0 0 30px -16px rgba(57,193,115,.8)}
  .card.pick > h2{color:var(--go-ink);background:rgba(57,193,115,.09);border-bottom-color:rgba(57,193,115,.32)}

  /* Quiet the four raw book-rank columns: the Books spread pill already
     summarizes their (dis)agreement, so they don't need equal ink.
     Faint on desktop, dropped entirely on phones to stop the clip. */
  td.bkcol{color:var(--faint);font-size:12px}
  thead th.bkcol{color:var(--faint);opacity:.75}
  @media(max-width:720px){ .bkcol{display:none} }

  /* Draft day happens on phones too. Lift the decision rail (coach +
     the pick) above the 60-row board so the call is the first thing you
     reach, not the last. */
  @media(max-width:920px){ .grid > aside{order:-1} }

  /* --- Lineup page ------------------------------------------------------- */
  .lu-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:2px 0 12px;
    font-size:13px;color:var(--ink)}
  .lu-head b{font-family:var(--mono)}
  .lu-note{color:var(--muted);font-size:12px}
  .lu-sub{margin:18px 0 6px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;
    color:var(--muted);font-weight:600}
  .page-head h1 select{margin-left:10px;font:inherit;background:var(--panel2);
    color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:2px 8px}
  /* Lineup emphasis tracks attention needed: settled slots recede, coin flips are
     merely noted, and only an injured starter gets a loud border (.rec.NOW). */
  .rec.lu-settled{opacity:.72}
  .rec.lu-flip{border-color:var(--line)}
  .rec.lu-flip .reason{color:var(--steal)}
  .lu-slot{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.06em;
    color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:2px 6px}

/* --- waivers ------------------------------------------------------------ */
/* The week strip is a glance, not a table: it exists to show a hole forming. */
.wv-weeks{display:flex;gap:.5rem;flex-wrap:wrap;margin:.5rem 0 1.25rem}
.wv-wk{display:flex;flex-direction:column;gap:.15rem;padding:.5rem .75rem;
  border:1px solid var(--line);border-radius:8px;min-width:6.5rem}
.wv-wknum{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;opacity:.6}
.wv-lead{margin:-.35rem 0 .75rem}
.wv-up{color:var(--good,#4ade80)}
.wv-dn{color:var(--bad,#f87171)}
.wv-flat{opacity:.5}
.wv-warn{color:var(--warn,#fbbf24)}
/* Covered bye weeks are context, not alerts — they must not compete with a real hole. */
.mt-notes{opacity:.55;font-size:.8rem;margin-top:.15rem}

/* --- lineup: set vs optimal --------------------------------------------- */
/* The banner is the page's headline. "Nothing to change" is a result, so it gets a
   calm treatment rather than the loud one reserved for work you have to go and do. */
.lu-banner{padding:.7rem .9rem;border-radius:8px;margin:.4rem 0 1rem;border:1px solid var(--line)}
.lu-banner.ok{border-color:var(--good,#4ade80);opacity:.85}
.lu-banner.act{border-color:var(--bad,#f87171)}
.lu-banner.unknown{opacity:.7}
.lu-move{display:flex;align-items:center;gap:.6rem;margin-top:.5rem;flex-wrap:wrap}
.lu-move .out{opacity:.65;text-decoration:line-through}
.lu-move .arrow{opacity:.5}
.lu-move .gain{color:var(--good,#4ade80);font-weight:600}
/* Priority is a one-shot resource; state its price near the moves that spend it. */
.wv-priority{border:1px solid var(--line);border-radius:8px;padding:.55rem .8rem;
  margin:0 0 1.1rem;font-size:.85rem;opacity:.9}
