/* "Courtside magazine" theme (2026-10-05 preview, homepage only): a sports weekly on newsprint.
   Paper #f3f1ec, ink #111, one red #d7263d. Type: Big Shoulders Display (tall condensed headlines, scores, numbers),
   IBM Plex Sans Condensed (text, labels). Square corners, hairline rules instead of cards with shadows.
   Scoped to body.mg; overrides site.css (dark arena layer) and the page's own dark tokens. */
body.mg {
  --mg-paper: #f3f1ec; --mg-paper2: #ebe8e1; --mg-card: #faf9f6; --mg-ink: #111111; --mg-ink2: #3b3833; --mg-mut: #6b665c; --mg-dim: #9a9488;
  --mg-rule: #d9d4c9; --mg-rule2: #e6e2d9; --mg-red: #d7263d; --mg-red2: #b81d31;
  --bg: var(--mg-paper); --panel: var(--mg-card); --line: var(--mg-rule); --acc: var(--mg-red); --acc2: var(--mg-red2); --mut: var(--mg-mut);
  font-family: 'IBM Plex Sans Condensed', 'Arial Narrow', sans-serif !important; color: var(--mg-ink) !important; background: transparent !important;
}
html:has(body.mg) { background: #f3f1ec !important; background-image: none !important; }
body.mg::before { display: none; }
body.mg ::selection { background: rgba(215,38,61,.25); color: #111; }
body.mg :focus-visible { outline-color: var(--mg-red); }

/* ---------- type ---------- */
body.mg .orb, body.mg h1, body.mg .tier { font-family: 'Big Shoulders Display', 'Arial Narrow', sans-serif !important; font-weight: 900 !important; letter-spacing: .01em; }
body.mg h1.orb { font-size: clamp(44px, 9vw, 104px) !important; line-height: .9; text-transform: uppercase; color: var(--mg-ink); }
body.mg .btn, body.mg .nav-scroll, body.mg .tab, body.mg .role, body.mg table.box th,
body.mg .orb.text-\[9px\], body.mg .orb.text-\[10px\], body.mg .orb.text-\[11px\], body.mg .orb.text-xs, body.mg .orb.text-sm:not(h1):not(h2) {
  font-family: 'IBM Plex Sans Condensed', sans-serif !important; font-weight: 600 !important; letter-spacing: .08em !important; text-transform: uppercase;
}
body.mg .acc { color: var(--mg-red) !important; }
body.mg strong, body.mg b { color: var(--mg-ink); }
body.mg table, body.mg .orb { font-variant-numeric: tabular-nums lining-nums; }
body.mg .text-\[9px\] { font-size: 11px !important; } body.mg .text-\[10px\] { font-size: 11.5px !important; } body.mg .text-\[11px\] { font-size: 12.5px !important; }

/* ---------- Tailwind greys flip to ink on paper ---------- */
body.mg .text-white, body.mg .text-zinc-100, body.mg .text-zinc-200 { color: var(--mg-ink) !important; }
body.mg .text-zinc-300 { color: var(--mg-ink2) !important; }
body.mg .text-zinc-400 { color: var(--mg-mut) !important; }
body.mg .text-zinc-500 { color: #7d776c !important; }
body.mg .text-zinc-600, body.mg .text-zinc-700 { color: var(--mg-dim) !important; }
body.mg .border-zinc-800, body.mg .border-zinc-900 { border-color: var(--mg-rule) !important; }
body.mg .bg-zinc-900, body.mg .bg-zinc-800 { background-color: var(--mg-paper2) !important; }

/* ---------- masthead nav ---------- */
body.mg nav.sticky { background: rgba(243,241,236,.94) !important; border-bottom: 2px solid var(--mg-ink) !important; backdrop-filter: blur(6px); }
body.mg nav a.orb:first-child { font-family: 'Big Shoulders Display', sans-serif !important; font-weight: 900 !important; font-size: 22px !important; letter-spacing: .04em !important; color: var(--mg-ink) !important; }
body.mg nav a.orb:first-child .acc { color: var(--mg-red) !important; }
body.mg .nav-scroll { color: var(--mg-mut) !important; font-size: 13px !important; }
body.mg .nav-scroll > a:hover, body.mg .nav-scroll > a.acc { color: var(--mg-ink) !important; }
body.mg .nav-scroll > a.acc::after { background: var(--mg-red); height: 3px; border-radius: 0; }
body.mg .nav-scroll > a[target] { border: 1.5px solid var(--mg-ink) !important; color: var(--mg-ink) !important; border-radius: 0 !important; }
body.mg .nav-scroll > a[target]:hover { background: var(--mg-ink) !important; color: var(--mg-paper) !important; }
@media (max-width: 767px) { body.mg .mobile-dock { background: linear-gradient(180deg, rgba(243,241,236,0), rgba(243,241,236,.96) 30%); } }

/* ---------- surfaces: newsprint columns, hairline rules, no shadows ---------- */
body.mg .panel, body.mg .card { background: var(--mg-card) !important; background-image: none !important; border: 1px solid var(--mg-rule) !important; border-top: 3px solid var(--mg-ink) !important; border-radius: 0 !important; box-shadow: none !important; }

/* ---------- buttons ---------- */
body.mg .btn { border-radius: 0 !important; }
body.mg .btn-main { background: var(--mg-ink) !important; color: var(--mg-paper) !important; box-shadow: none !important; font-family: 'Big Shoulders Display', sans-serif !important; font-weight: 800 !important; font-size: 19px !important; letter-spacing: .1em !important; }
body.mg .btn-main:hover { background: var(--mg-red) !important; }
body.mg .btn-ghost, body.mg .btn-dark { background: transparent !important; border: 1.5px solid var(--mg-ink) !important; color: var(--mg-ink) !important; }
body.mg .btn-ghost:hover, body.mg .btn-dark:hover { background: var(--mg-ink) !important; color: var(--mg-paper) !important; }
body.mg input[type=checkbox] { accent-color: var(--mg-red); }

/* ---------- team card (opens the picker) ---------- */
body.mg .teampick { border-bottom: 1px solid var(--mg-rule) !important; border-radius: 0 !important; }
body.mg .teampick:hover { background: var(--mg-paper2) !important; }
body.mg .tp-side { color: var(--mg-red) !important; font-family: 'IBM Plex Sans Condensed', sans-serif !important; font-weight: 600 !important; }
body.mg .tp-city { color: var(--mg-mut) !important; font-family: 'IBM Plex Sans Condensed', sans-serif !important; }
body.mg .tp-name { color: var(--mg-ink) !important; font-family: 'Big Shoulders Display', sans-serif !important; font-weight: 900 !important; font-size: 34px !important; text-transform: uppercase; line-height: .95 !important; }
body.mg .tp-change { border: 1.5px solid var(--mg-ink) !important; color: var(--mg-ink) !important; border-radius: 0 !important; font-family: 'IBM Plex Sans Condensed', sans-serif !important; }
body.mg .teampick:hover .tp-change { background: var(--mg-ink) !important; color: var(--mg-paper) !important; }
body.mg .jersey { filter: none; }

/* ---------- roster ---------- */
body.mg .prow { border-bottom-color: var(--mg-rule2) !important; }
body.mg .prow:hover { background: var(--mg-paper2) !important; }
body.mg .pname { font-family: 'IBM Plex Sans Condensed', sans-serif !important; font-weight: 600 !important; font-size: 16px !important; color: var(--mg-ink) !important; }
body.mg .prow.out .pname { color: var(--mg-dim) !important; }
body.mg .prow-div { color: var(--mg-ink) !important; font-family: 'IBM Plex Sans Condensed', sans-serif !important; font-weight: 600 !important; }
body.mg .prow-div::after { background: var(--mg-ink) !important; height: 1px; }
body.mg .role { background: none !important; padding: 0 !important; }
body.mg .role.st { font-family: 'Big Shoulders Display', sans-serif !important; font-weight: 900 !important; font-size: 18px !important; color: var(--mg-red) !important; letter-spacing: 0 !important; }
body.mg .role.bn::before { background: var(--mg-dim) !important; }
body.mg .role.ot { color: var(--mg-red) !important; }

/* ---------- box score, plays, tabs ---------- */
body.mg table.box th { color: var(--mg-mut) !important; border-bottom: 2px solid var(--mg-ink) !important; font-size: 12px !important; }
body.mg table.box td { border-bottom-color: var(--mg-rule2) !important; color: var(--mg-ink2); }
body.mg table.box td:first-child, body.mg table.box th:first-child { background: var(--mg-card) !important; }
body.mg table.box tr.tot td { color: var(--mg-ink) !important; border-top: 2px solid var(--mg-ink) !important; }
body.mg .play { border-bottom-color: var(--mg-rule2) !important; }
body.mg .tab { color: var(--mg-mut) !important; } body.mg .tab.on { color: var(--mg-ink) !important; border-color: var(--mg-red) !important; }
body.mg .orb.text-5xl, body.mg .orb.text-6xl, body.mg .orb.text-7xl { letter-spacing: 0; }

/* ---------- picker sheet ---------- */
body.mg #tpick { background: rgba(17,17,17,.45) !important; }
body.mg .tp-sheet { background: var(--mg-paper) !important; border: 0 !important; border-top: 4px solid var(--mg-ink) !important; border-radius: 0 !important; box-shadow: 0 30px 60px -20px rgba(0,0,0,.4) !important; }
body.mg .tp-head { color: var(--mg-ink) !important; font-family: 'Big Shoulders Display', sans-serif !important; font-weight: 900 !important; font-size: 26px !important; text-transform: uppercase; border-bottom-color: var(--mg-rule) !important; }
body.mg .tp-x { border: 1.5px solid var(--mg-ink) !important; color: var(--mg-ink) !important; border-radius: 0 !important; }
body.mg .tp-search input { background: #fff !important; border: 1.5px solid var(--mg-ink) !important; color: var(--mg-ink) !important; border-radius: 0 !important; font-family: 'IBM Plex Sans Condensed', sans-serif !important; }
body.mg .tp-search input::placeholder { color: var(--mg-dim) !important; }
body.mg .tp-conf { color: var(--mg-ink) !important; font-family: 'IBM Plex Sans Condensed', sans-serif !important; font-weight: 600 !important; }
body.mg .tp-conf::after { background: var(--mg-ink) !important; }
body.mg .tp-tile:hover, body.mg .tp-tile:focus-visible { background: var(--mg-card) !important; border-color: var(--mg-rule) !important; }
body.mg .tp-tile.on { background: #fff !important; border-color: var(--mg-red) !important; border-radius: 0 !important; }
body.mg .tp-tn { color: var(--mg-ink) !important; font-family: 'Big Shoulders Display', sans-serif !important; font-weight: 800 !important; font-size: 18px !important; text-transform: uppercase; }
body.mg .tp-tr { color: var(--mg-mut) !important; font-family: 'IBM Plex Sans Condensed', sans-serif !important; }
body.mg .tp-note, body.mg .tp-empty { color: var(--mg-mut) !important; }

/* ---------- FAQ, footer, toast ---------- */
body.mg details > summary::after { color: var(--mg-red); }
body.mg .site-links a { color: var(--mg-mut); } body.mg .site-links a:hover { color: var(--mg-ink); }
body.mg .site-links h4 { color: var(--mg-ink) !important; font-family: 'IBM Plex Sans Condensed', sans-serif !important; font-weight: 600; font-size: 12px !important; }
body.mg footer { border-top: 2px solid var(--mg-ink) !important; }
body.mg .site-toast { background: var(--mg-ink); color: var(--mg-paper); border-color: var(--mg-ink); border-radius: 0; }

/* section dividers in the roster: small caps over an ink rule */
body.mg .prow-div { text-transform: uppercase; letter-spacing: .16em !important; font-size: 12px !important; padding-top: 14px; }
/* masthead kicker above the headline, between two rules, like a weekly's dateline */
body.mg main > header[data-kicker]::before, body.mg .art-head[data-kicker]::before { content: attr(data-kicker); display: inline-block; margin-bottom: 14px; padding: 5px 0;
  border-top: 1px solid #111; border-bottom: 1px solid #111; font-family: 'IBM Plex Sans Condensed', sans-serif; font-weight: 600; font-size: 12px;
  letter-spacing: .22em; text-transform: uppercase; color: #d7263d; }
body.mg main > header p { font-size: 17px; color: #3b3833 !important; max-width: 640px; }
@media (max-width: 640px) {
  body.mg main > header[data-kicker]::before, body.mg .art-head[data-kicker]::before { font-size: 11px; letter-spacing: .14em; }
  body.mg .tp-side { font-size: 11px !important; letter-spacing: .08em !important; white-space: nowrap; }
}

/* team mark: abbreviation over a two-colour rule (SITE.typeMark) */
.tmark { display:inline-flex; flex-direction:column; align-items:stretch; flex-shrink:0; text-align:center; vertical-align:middle; }
.tmark-t { font-family:'Big Shoulders Display','Arial Narrow',sans-serif; font-weight:900; line-height:.9; letter-spacing:.01em; color:#111; }
.tmark-r { display:flex; margin-top:3px; } .tmark-r i { display:block; } .tmark-r i:first-child { flex:2; } .tmark-r i:last-child { flex:1; }
/* team card: the mark sits level with the team name (bottom-aligned), as in a standings line */
body.mg .teampick { align-items: flex-end !important; }
body.mg .teampick .tmark { margin-bottom: 1px; }
body.mg .teampick .tp-change { align-self: center; }

/* status colours from Tailwind's dark-theme shades, re-inked for paper */
body.mg .text-emerald-400, body.mg .text-green-400 { color: #1f8a5b !important; }
body.mg .text-red-400 { color: #c0392b !important; }
body.mg .text-amber-400, body.mg .text-yellow-400 { color: #a8650f !important; }
/* selects/inputs that pages style inline */
body.mg select, body.mg input.txt, body.mg input.num, body.mg input.win { background: #fff !important; color: #111 !important; border: 1.5px solid #111 !important; border-radius: 0 !important; }

/* ---------- nav: section index with line icons (2026-10-02) ---------- */
body.mg .nav-scroll { gap: 6px !important; font-size: 15px !important; }
body.mg .nav-scroll > a { display: inline-flex; align-items: center; gap: 6px; padding: 14px 8px 12px !important;
  font-family: 'Big Shoulders Display', sans-serif !important; font-weight: 800 !important; letter-spacing: .04em !important; color: #55514a !important; }
body.mg .nav-scroll > a::before { content: ''; width: 15px; height: 15px; flex: none; background: currentColor; -webkit-mask: var(--ic) center/contain no-repeat; mask: var(--ic) center/contain no-repeat; }
body.mg .nav-scroll > a:hover { color: var(--mg-ink) !important; }
body.mg .nav-scroll > a:hover::before, body.mg .nav-scroll > a.acc::before { background: var(--mg-red); }
body.mg .nav-scroll > a.acc { color: var(--mg-ink) !important; }
body.mg .nav-scroll > a.acc::after { left: 8px; right: 8px; bottom: -1px; height: 4px; }
body.mg .nav-scroll > a[href="/nba-games/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%227%22%20height%3D%227%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%223%22%20width%3D%227%22%20height%3D%227%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2214%22%20width%3D%227%22%20height%3D%227%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%2214%22%20width%3D%227%22%20height%3D%227%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nav-scroll > a[href="/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M3%2012h18M12%203v18M5.6%205.6c3.5%203.5%203.5%209.3%200%2012.8M18.4%205.6c-3.5%203.5-3.5%209.3%200%2012.8%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nav-scroll > a[href="/nba-season-simulator/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2216%22%2F%3E%3Cpath%20d%3D%22M3%2010h18M8%203v4M16%203v4%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nav-scroll > a[href="/nba-draft-lottery-simulator/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Ccircle%20cx%3D%228%22%20cy%3D%2215%22%20r%3D%225%22%2F%3E%3Ccircle%20cx%3D%2216.5%22%20cy%3D%228%22%20r%3D%224.5%22%2F%3E%3Cpath%20d%3D%22M6.5%2015h3%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nav-scroll > a[href="/nba-draft-simulator/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Crect%20x%3D%225%22%20y%3D%224%22%20width%3D%2214%22%20height%3D%2217%22%2F%3E%3Cpath%20d%3D%22M9%204V2h6v2M8.5%2010h7M8.5%2014h7M8.5%2018h4%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nav-scroll > a[href="/nba-career-simulator/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%227%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M4%2022c0-4.5%203.6-8%208-8s8%203.5%208%208%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nav-scroll > a[href="/nba-gm-simulator/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Crect%20x%3D%223%22%20y%3D%227%22%20width%3D%2218%22%20height%3D%2213%22%2F%3E%3Cpath%20d%3D%22M9%207V4h6v3M3%2013h18%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nav-scroll > a[href="/nba-trade-simulator/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Cpath%20d%3D%22M4%208h15l-4-4M20%2016H5l4%204%22%2F%3E%3C%2Fsvg%3E"); }

/* ---------- crawlable copy: editorial spread ---------- */
body.mg h2.orb.text-sm { font-size: 30px !important; line-height: 1 !important; letter-spacing: .01em !important; color: var(--mg-ink) !important;
  border-top: 4px solid var(--mg-ink); padding-top: 12px; margin-bottom: 16px !important; }
body.mg h2.orb.text-sm ~ p, body.mg div > h2.orb.text-sm ~ p { font-size: 16.5px; line-height: 1.6; color: #34312b !important; }
body.mg h2.orb.text-sm + p::first-letter { font-family: 'Big Shoulders Display', sans-serif; font-weight: 900; color: var(--mg-red);
  float: left; font-size: 4.1em; line-height: .82; margin: 6px 8px 0 0; }
body.mg h2.orb.text-sm ~ p strong { color: var(--mg-ink) !important; font-weight: 700; }
/* FAQ: numbered Q&A, open by default, two columns on desktop */
body.mg :has(> details.faq) { counter-reset: faq; display: grid; gap: 0 40px; }
@media (min-width: 768px) { body.mg :has(> details.faq) { grid-template-columns: 1fr 1fr; } }
body.mg :has(> details.faq) > * { margin: 0 !important; }
body.mg details.faq { counter-increment: faq; border-top: 1.5px solid var(--mg-ink); padding: 14px 0 22px; background: none; }
body.mg details.faq > summary { display: flex; gap: 12px; align-items: baseline; font-family: 'Big Shoulders Display', sans-serif !important;
  font-weight: 800 !important; font-size: 22px; line-height: 1.1; text-transform: uppercase; letter-spacing: .01em; color: var(--mg-ink) !important; }
body.mg details.faq > summary::before { content: counter(faq, decimal-leading-zero); color: var(--mg-red); font-weight: 900; font-size: 26px; flex: none; min-width: 30px; }
body.mg details.faq > summary::after { content: '–'; margin-left: auto; color: var(--mg-mut); font-weight: 600; }
body.mg details.faq:not([open]) > summary::after { content: '+'; }
body.mg details.faq[open] > summary::after { transform: none; }
body.mg details.faq > p { font-size: 15.5px; line-height: 1.6; color: #3b3833 !important; margin-top: 8px !important; padding-left: 42px; }

/* ---------- hub /nba-games/: contents page ---------- */
body.mg .hub-head { border-bottom: 4px solid var(--mg-ink); padding-bottom: 18px; margin-bottom: 28px; }
body.mg .hub-head h1 { font-size: clamp(52px, 9vw, 104px); line-height: .9; letter-spacing: .005em; }
body.mg .hub-head p { font-size: 18px; line-height: 1.5; color: var(--mg-ink2); max-width: 640px; margin-top: 12px; }
body.mg .hub-lead { display: grid; gap: 24px; align-items: center; padding-bottom: 28px; border-bottom: 1.5px solid var(--mg-ink); }
@media (min-width: 768px) { body.mg .hub-lead { grid-template-columns: 1.35fr 1fr; gap: 36px; } }
body.mg .hub-lead h2 { font-size: clamp(38px, 5vw, 60px) !important; }
body.mg .hub-lead p { font-size: 18px !important; }
body.mg .hub-lead img, body.mg .hub-card img { width: 100%; height: auto; display: block; border: 1.5px solid var(--mg-ink); transition: transform .25s, box-shadow .25s; }
body.mg .hub-lead:hover img, body.mg .hub-card:hover img { transform: translate(-3px, -3px); box-shadow: 6px 6px 0 var(--mg-red); }
body.mg .hub-k { display: flex; align-items: baseline; gap: 10px; font-weight: 600; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--mg-mut); }
body.mg .hub-k b { font-family: 'Big Shoulders Display', sans-serif; font-weight: 900; font-size: 30px; color: var(--mg-red); letter-spacing: 0; }
body.mg .hub-lead h2, body.mg .hub-card h2 { font-family: 'Big Shoulders Display', sans-serif; font-weight: 900; font-size: 30px; line-height: .95; text-transform: uppercase; color: var(--mg-ink); margin: 6px 0 10px; }
body.mg .hub-lead p, body.mg .hub-card p { font-size: 15.5px; line-height: 1.55; color: var(--mg-ink2); }
body.mg .hub-go { display: inline-block; margin-top: 14px; font-weight: 700; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--mg-ink); border-bottom: 2px solid var(--mg-red); padding-bottom: 2px; }
body.mg .hub-go::after { content: ' \2192'; color: var(--mg-red); }
body.mg .hub-grid { display: grid; gap: 0 32px; }
@media (min-width: 640px) { body.mg .hub-grid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { body.mg .hub-grid { grid-template-columns: 1fr 1fr 1fr; } }
body.mg .hub-card { display: block; padding: 24px 0 30px; border-bottom: 1px solid var(--mg-rule); }
body.mg .hub-card img { margin-bottom: 14px; }
body.mg .hub-card:hover h2, body.mg .hub-lead:hover h2 { color: var(--mg-red); }
body.mg .hub-copy { display: grid; gap: 32px; margin-top: 40px; }
@media (min-width: 768px) { body.mg .hub-copy { grid-template-columns: 1fr 1fr; } }
body.mg .hub-copy p { font-size: 16.5px; line-height: 1.6; color: #34312b; }

/* ---------- about / privacy / terms / contact: article pages ---------- */
body.mg .art { font-size: 17px; line-height: 1.65; color: #34312b; counter-reset: sec; }
body.mg .art-head { border-bottom: 4px solid var(--mg-ink); padding-bottom: 18px; margin-bottom: 26px; }
body.mg .art-head h1 { font-size: clamp(56px, 10vw, 110px); line-height: .88; color: var(--mg-ink); }
body.mg .art-sub { font-size: 20px; line-height: 1.4; color: var(--mg-ink2); margin: 12px 0 0 !important; max-width: 560px; }
body.mg .art-date { font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--mg-mut); }
body.mg .art-head + p:not(.art-date)::first-letter { font-family: 'Big Shoulders Display', sans-serif; font-weight: 900; color: var(--mg-red); float: left; font-size: 4.2em; line-height: .82; margin: 6px 9px 0 0; }
body.mg .art h2 { font-family: 'Big Shoulders Display', sans-serif !important; font-weight: 900; font-size: 30px !important; letter-spacing: .01em !important; line-height: 1;
  color: var(--mg-ink) !important; border-top: 1.5px solid var(--mg-ink); padding-top: 12px; margin: 34px 0 10px !important; display: flex; gap: 12px; align-items: baseline; }
body.mg .art-num h2 { counter-increment: sec; }
body.mg .art-num h2::before { content: counter(sec, decimal-leading-zero); color: var(--mg-red); font-size: 26px; min-width: 32px; }
body.mg .art-num h2 + p { padding-left: 44px; }
body.mg .art strong { color: var(--mg-ink); }
body.mg .art a { color: var(--mg-red); text-decoration: underline; text-underline-offset: 3px; }
body.mg .art-mail { border: 1.5px solid var(--mg-ink); background: var(--mg-card); padding: 22px 24px; margin: 22px 0; box-shadow: 6px 6px 0 var(--mg-red); }
body.mg .art-mail span { display: block; font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--mg-mut); }
body.mg .art-mail a { font-family: 'Big Shoulders Display', sans-serif; font-weight: 900; font-size: clamp(26px, 5vw, 42px); color: var(--mg-ink) !important; text-decoration: none !important; word-break: break-all; }
body.mg .art-mail a:hover { color: var(--mg-red) !important; }
body.mg .art p:not(.art-sub):not(.art-date) { font-size: 17px !important; line-height: 1.65; color: #34312b !important; }

/* ---------- 404 ---------- */
body.mg .e404-num { font-family: 'Big Shoulders Display', sans-serif; font-weight: 900; font-size: clamp(120px, 26vw, 260px); line-height: .8; color: var(--mg-ink); letter-spacing: -.02em; }
body.mg .e404-num span { color: var(--mg-red); }
body.mg .e404 h1 { font-size: clamp(48px, 8vw, 84px); line-height: .9; color: var(--mg-ink); margin-top: 6px; }
body.mg .e404-line { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; padding: 12px 0; border-bottom: 1px solid var(--mg-rule); font-size: 13px; }
body.mg .e404-line span { font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--mg-mut); }
body.mg .e404-line code { font-family: ui-monospace, monospace; color: var(--mg-ink); background: var(--mg-card); border: 1px solid var(--mg-rule); padding: 2px 6px; word-break: break-all; }
body.mg .e404-line b { font-family: 'Big Shoulders Display', sans-serif; font-weight: 900; font-size: 20px; color: var(--mg-red); text-transform: uppercase; }
body.mg .e404-h { font-family: 'Big Shoulders Display', sans-serif; font-weight: 900; font-size: 30px; text-transform: uppercase; color: var(--mg-ink); border-top: 4px solid var(--mg-ink); padding-top: 12px; margin: 36px 0 4px; }
body.mg .e404-list { display: grid; gap: 0 32px; }
@media (min-width: 640px) { body.mg .e404-list { grid-template-columns: 1fr 1fr; } }
body.mg .e404-list a { display: flex; align-items: baseline; gap: 14px; padding: 12px 0; border-bottom: 1px solid var(--mg-rule); }
body.mg .e404-list b { font-family: 'Big Shoulders Display', sans-serif; font-weight: 900; font-size: 24px; color: var(--mg-red); min-width: 30px; }
body.mg .e404-list span { font-family: 'Big Shoulders Display', sans-serif; font-weight: 800; font-size: 22px; text-transform: uppercase; color: var(--mg-ink); }
body.mg .e404-list a:hover span { color: var(--mg-red); }
body.mg .e404-list a::after { content: '\2192'; margin-left: auto; color: var(--mg-red); font-weight: 700; }

/* ---------- grouped nav: Draft / Front Office menus (tools/nav.js) ---------- */
body.mg .nv-g { position: static; flex-shrink: 0; }
body.mg .nv-b { display: inline-flex; align-items: center; gap: 6px; padding: 14px 8px 12px; position: relative; background: none; border: 0; cursor: pointer;
  font: 800 15px 'Big Shoulders Display', sans-serif; letter-spacing: .04em; text-transform: uppercase; color: #55514a; }
body.mg .nv-b::before { content: ''; width: 15px; height: 15px; flex: none; background: currentColor; -webkit-mask: var(--ic) center/contain no-repeat; mask: var(--ic) center/contain no-repeat; }
body.mg .nv-b::after { content: ''; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); margin-left: 2px; transition: transform .15s; }
body.mg .nv-g.open .nv-b::after { transform: translateY(1px) rotate(-135deg); }
body.mg .nv-b:hover, body.mg .nv-g.open .nv-b, body.mg .nv-b.acc { color: var(--mg-ink); }
body.mg .nv-b:hover::before, body.mg .nv-g.open .nv-b::before, body.mg .nv-b.acc::before { background: var(--mg-red); }
body.mg .nv-b.acc { box-shadow: inset 0 -4px 0 var(--mg-red); }
body.mg .nv-b[data-ic="draft"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Crect%20x%3D%225%22%20y%3D%224%22%20width%3D%2214%22%20height%3D%2217%22%2F%3E%3Cpath%20d%3D%22M9%204V2h6v2M8.5%2010h7M8.5%2014h7M8.5%2018h4%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nv-b[data-ic="office"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Crect%20x%3D%223%22%20y%3D%227%22%20width%3D%2218%22%20height%3D%2213%22%2F%3E%3Cpath%20d%3D%22M9%207V4h6v3M3%2013h18%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nv-m { display: none; position: fixed; z-index: 60; min-width: 250px; background: var(--mg-paper); border: 1.5px solid var(--mg-ink); border-top: 4px solid var(--mg-ink); box-shadow: 6px 6px 0 var(--mg-red); padding: 4px 0; white-space: normal; text-transform: none; letter-spacing: 0; }
body.mg .nv-g.open .nv-m { display: block; }
body.mg .nv-m a { display: flex; align-items: flex-start; gap: 10px; padding: 11px 16px 11px 14px; border-bottom: 1px solid var(--mg-rule); color: var(--mg-ink) !important;
  font: 800 19px/1.05 'Big Shoulders Display', sans-serif; text-transform: uppercase; letter-spacing: .02em; flex-wrap: wrap; }
body.mg .nv-m a:last-child { border-bottom: 0; }
body.mg .nv-m a::before { content: ''; width: 16px; height: 16px; flex: none; margin-top: 1px; background: var(--mg-ink); -webkit-mask: var(--ic) center/contain no-repeat; mask: var(--ic) center/contain no-repeat; }
body.mg .nv-m a small { flex-basis: 100%; padding-left: 26px; font: 500 13px 'IBM Plex Sans Condensed', sans-serif; text-transform: none; color: var(--mg-mut); margin-top: 3px; letter-spacing: 0; }
body.mg .nv-m a:hover, body.mg .nv-m a.acc { background: var(--mg-card); color: var(--mg-red) !important; }
body.mg .nv-m a:hover::before, body.mg .nv-m a.acc::before { background: var(--mg-red); }
body.mg .nv-m a[href="/nba-draft-lottery-simulator/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Ccircle%20cx%3D%228%22%20cy%3D%2215%22%20r%3D%225%22%2F%3E%3Ccircle%20cx%3D%2216.5%22%20cy%3D%228%22%20r%3D%224.5%22%2F%3E%3Cpath%20d%3D%22M6.5%2015h3%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nv-m a[href="/nba-draft-simulator/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Crect%20x%3D%225%22%20y%3D%224%22%20width%3D%2214%22%20height%3D%2217%22%2F%3E%3Cpath%20d%3D%22M9%204V2h6v2M8.5%2010h7M8.5%2014h7M8.5%2018h4%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nv-m a[href="/nba-gm-simulator/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Crect%20x%3D%223%22%20y%3D%227%22%20width%3D%2218%22%20height%3D%2213%22%2F%3E%3Cpath%20d%3D%22M9%207V4h6v3M3%2013h18%22%2F%3E%3C%2Fsvg%3E"); }
body.mg .nv-m a[href="/nba-trade-simulator/"] { --ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2.2'%20stroke-linecap%3D'square'%3E%3Cpath%20d%3D%22M4%208h15l-4-4M20%2016H5l4%204%22%2F%3E%3C%2Fsvg%3E"); }
/* flagship first, "All games" set apart at the end */
body.mg .nav-scroll > a[href="/"] { color: var(--mg-ink) !important; }
body.mg .nav-scroll > a.nv-all { margin-left: 6px; padding-left: 14px !important; border-left: 1.5px solid var(--mg-rule); }
