/* THE MIX (owner 2026-10-01: "lets see the mix built"). Chosen from the three design directions in
   mock-scores-alt-D/E/F.html: F's modules for the Games home and an upcoming game, E's team colour header
   and jersey poster, D's one-row phone header and side-by-side box scores. Loaded last, so it wins. */

/* ---------- the header: one row on a phone, all four tabs fit at 390 ---------- */
@media (max-width:1023px){
  .hdr{padding:10px 0 8px;gap:10px;align-items:center;margin-bottom:0;}
  .hdr .scores-header-actions{flex-direction:row;align-items:center;gap:14px;}
  .hdr .scores-header-actions .hlinks a{padding:0;min-height:32px;display:inline-flex;align-items:center;}
  .scores-privacy{flex-direction:row;align-items:center;}
}
@media (max-width:360px){.hdr .brandlock .ball{width:28px;height:28px;}.hdr .scores-header-actions{gap:10px;}.hdr .scores-header-actions .hlinks a,.scores-privacy .sse-toggle{font-size:11px;}}
.preseason-tabs{display:flex;justify-content:space-between;gap:0;overflow:visible;margin:0 0 28px;}
.preseason-tabs button,.preseason-tabs a{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:14px;letter-spacing:0;padding:8px 2px 9px;white-space:nowrap;color:var(--pale);border-bottom:3px solid transparent;margin-bottom:-1.5px;}
.preseason-tabs button.on{color:#fff;border-bottom-color:var(--yellow);}
@media (max-width:360px){.preseason-tabs button,.preseason-tabs a{font-size:13px;}}
@media (max-width:330px){.preseason-tabs button,.preseason-tabs a{font-size:12px;}}

/* ---------- one way back ---------- */
.mx-backrow{margin:0 0 12px;}
.mx-back{display:inline-flex;align-items:center;min-height:36px;font-weight:900;font-size:13px;color:var(--yellow);text-decoration:none;}
.mx-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}

/* ---------- modules: a plain label and a hairline (owner 2026-10-05: no boxed outlines) ---------- */
.preseason-main.mx{max-width:1400px;}
@media(min-width:1024px){.preseason-main.mx{padding-top:28px;}}
.mx-grid{display:grid;gap:26px;grid-template-columns:minmax(0,1fr);}
.mx-mod,.mx-side{min-width:0;}
.mx-side{display:grid;gap:26px;align-content:start;}
.mx-mh{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;padding-bottom:6px;margin-bottom:12px;border-bottom:1px solid rgba(188,215,234,.18);}
.mx-mh h2{font:900 11.5px 'Nunito',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--pale2);margin:0;}
@media (max-width:420px){.mx-mh h2{font-size:11px;letter-spacing:.09em;}}
.mx-mh .text-action,.mx-mh .preseason-favorites{font-size:12.5px;min-height:32px;padding:0;}
.mx-arrows{display:flex;gap:4px;flex:none;}
.mx-arrow{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0 0 2px;border-radius:8px;border:1px solid rgba(188,215,234,.28);color:var(--pale2);font-size:17px;line-height:1;background:none;}
.mx-mh .preseason-favorites{flex:none;}
.mx-arrow:disabled{opacity:.3;}
.mx-sublbl{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--pale);margin:14px 0 4px;}
.mx-mh+.mx-sublbl{margin-top:0;}

/* a team on a line: the fade, the city, the code */
.mx .ln{display:flex;align-items:baseline;gap:6px;padding:5px 8px;border-radius:5px;min-width:0;}
.mx .ln b{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:16px;line-height:1.2;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mx .ln .cd{font-size:10.5px;font-weight:900;letter-spacing:.04em;color:rgba(255,255,255,.72);flex:none;}

/* ---------- the Games home ---------- */
.mx-cards{display:grid;gap:10px;}
.mx-card,.mx-row{background:var(--navy2);border-radius:12px;overflow:hidden;text-decoration:none;color:#fff;}
.mx-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 88px;grid-template-areas:"m st" "s s";}
.mx-card .matchup{grid-area:m;display:grid;gap:4px;padding:10px 0 10px 10px;min-width:0;}
.mx-card .st,.mx-row .st{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.mx-card .st{grid-area:st;border-left:1px solid rgba(255,255,255,.07);}
.mx-card .st small{font-size:10px;font-weight:900;letter-spacing:.06em;color:var(--pale2);}
.mx .tip{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:20px;line-height:1.1;}
.mx .pm{font-size:10px;font-weight:900;color:var(--pale);}
.mx-sub{grid-area:s;border-top:1px solid rgba(255,255,255,.07);padding:7px 12px;font-size:12px;font-weight:700;color:var(--pale2);}
.mx-card-game{position:absolute;inset:0;border-radius:12px;}
.mx-card-game:focus-visible{outline:2px solid var(--yellow);outline-offset:-3px;}
.mx-favorite-team{position:relative;z-index:1;display:inline-flex;align-items:baseline;gap:5px;min-width:0;}
.mx-favorite-team:hover b{color:var(--yellow);}
.mx-favorite-team:focus-visible{outline:2px solid var(--yellow);outline-offset:3px;border-radius:3px;}
.mx-favorite-star{color:var(--yellow);font-size:11px;flex:none;}
.mx-home>.scores-ad{align-self:start;}

.mx-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin:0 0 12px;border-bottom:1px solid rgba(188,215,234,.12);}
.mx-days button{display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 0 8px;margin-bottom:-1px;border-bottom:3px solid transparent;background:none;color:var(--pale2);min-width:0;}
.mx-days small{font-size:10px;font-weight:900;letter-spacing:.06em;color:var(--pale);}
.mx-days b{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:19px;line-height:1.1;color:#fff;}
.mx-days span{font-size:10px;font-weight:800;color:var(--pale);white-space:nowrap;}
.mx-days button.on{border-bottom-color:var(--yellow);}
.mx-days button.on b{color:var(--yellow);}
.mx-days button:disabled{opacity:.42;cursor:default;}
@media (max-width:360px){.mx-days span{font-size:9px;}}

.mx-slate{display:grid;gap:8px;}
/* a game is the scoreboard card on every width (owner 2026-10-05): away over home, each a team-colour fade with
   city, code and score, and the status plate in its own column on the right */
.mx-row{display:grid;grid-template-columns:minmax(0,1fr) 86px;grid-template-areas:"a st" "h st";row-gap:4px;padding:8px 0 8px 8px;}
.mx-row .ln.a{grid-area:a;}.mx-row .ln.h{grid-area:h;}
.mx-row .st{grid-area:st;border-left:1px solid rgba(255,255,255,.07);margin:-8px 0;padding:0;}
.mx-card:hover,.mx-row:hover{background:#101d30;}

.mx-call{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.mx-call b{display:block;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:20px;line-height:1.15;color:#fff;}
.mx-call small{display:block;font-size:12.5px;font-weight:700;color:var(--pale2);margin-top:2px;}
.mx-call .btn{flex:none;width:auto;}

.mx-lrow{display:grid;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:8px;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.06);text-decoration:none;color:#fff;}
.mx-lrow em{font-style:normal;font-size:11px;font-weight:900;color:var(--pale);}
.mx-lrow .ln b{font-family:'Nunito',sans-serif;font-size:13.5px;font-weight:800;}
.mx-lrow strong{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:17px;}

/* ---------- an upcoming game ---------- */
.mx-two{display:grid;gap:22px;}
.mx-tlbl{padding:6px 10px;border-radius:6px;margin-bottom:6px;}
.mx-tlbl b{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:15px;color:#fff;}
.mx-tlbl .cd{font-size:10.5px;font-weight:900;color:rgba(255,255,255,.72);}
.mx-trow{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.06);text-decoration:none;color:#fff;}
.mx-trow .d b{display:block;font-size:13px;font-weight:900;}
.mx-trow .d small{font-size:10px;font-weight:800;color:var(--pale);}
.mx-trow .ln i{font-style:normal;font-size:11px;font-weight:800;color:var(--pale2);}
.mx-trow .ln b{font-size:14.5px;}
.mx-trow .t{font-size:12.5px;font-weight:800;color:var(--pale2);white-space:nowrap;}
.mx-vh{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.mx-vh>.mx-tlbl:last-child{text-align:right;--team-fade-angle:270deg;}
.mx-vr{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.06);}
.mx-vr>*:last-child{text-align:right;}
.mx-vr a{text-decoration:none;color:#fff;min-width:0;}
.mx-vr strong{display:block;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:19px;line-height:1.1;}
.mx-vr small{display:block;font-size:11.5px;font-weight:800;color:var(--pale2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mx-vk{font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--pale);text-align:center;}
.mx-prow{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.06);text-decoration:none;color:#fff;}
.mx-prow em{font-style:normal;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:15px;color:var(--pale2);text-align:right;}
.mx-prow b{font-size:14px;font-weight:800;}
.mx-prow span{font-size:11.5px;font-weight:900;color:var(--pale);}
.mx-more{display:inline-flex;margin-top:10px;font-size:12.5px;}

/* ---------- the team header and the jersey poster ---------- */
.mx-hero{position:relative;overflow:hidden;border-radius:16px;padding:12px 18px 18px;margin:0 0 14px;color:#fff;background:linear-gradient(120deg,var(--tc),color-mix(in srgb,var(--tc) 60%,#000));}
.mx-hero .mx-back{position:relative;z-index:1;color:#fff;}
.mx-wm{position:absolute;right:-6px;top:50%;transform:translateY(-50%);font-family:'Baloo 2',sans-serif;font-weight:800;font-style:normal;font-size:140px;line-height:.8;letter-spacing:-.02em;color:rgba(255,255,255,.08);pointer-events:none;}
.mx-hm{position:relative;}
.mx-hero h1{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:44px;line-height:1;margin:4px 0 6px;color:#fff;text-shadow:0 3px 0 rgba(0,0,0,.25);}
.mx-hero h1 .cd{font-size:15px;color:rgba(255,255,255,.75);vertical-align:middle;}
.mx-rec{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:17px;}
.mx-hs{position:relative;display:flex;flex-wrap:wrap;gap:8px 26px;margin:12px 0 0;}
.mx-hs dt{font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.78);}
.mx-hs dd{margin:2px 0 0;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:16px;}
.mx-hs a{color:#fff;text-decoration:none;}
.mx-player .mx-pl{position:relative;display:flex;align-items:center;gap:16px;margin-top:4px;}
.mx-num{flex:none;min-width:84px;text-align:center;}
.mx-num em{display:block;font-style:normal;font-size:11px;font-weight:900;letter-spacing:.2em;color:rgba(255,255,255,.88);}
.mx-num em.long{font-size:9px;letter-spacing:.08em;}
.mx-num b{display:block;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:92px;line-height:.86;color:#fff;text-shadow:0 5px 0 rgba(0,0,0,.25);}
.mx-num b.two{font-size:76px;}
.mx-pn{min-width:0;}
.mx-player .mx-pn h1{font-size:29px;line-height:1.05;margin:0 0 4px;overflow-wrap:normal;}
.mx-pn>span{display:block;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:16px;}
.mx-pn>span .cd{color:rgba(255,255,255,.75);}
.mx-pn small{display:block;margin-top:4px;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.82);}

.mx-teamgames{display:grid;gap:20px;}
.mx-tg-cal{display:none;}
.preseason-main .cc.game{background:linear-gradient(160deg,var(--tc),color-mix(in srgb,var(--tc) 62%,#000));color:#fff;}
.preseason-main .cc.game b,.preseason-main .cc.game small,.preseason-main .cc.game .dn{color:#fff;}

/* ---------- the live box score: grouped, no coloured row edge, both teams side by side on a wide screen ---------- */
table.bx tr.bxg th{text-align:left;font-size:9.5px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--pale);padding:10px 0 4px;}
table.bx tr.bxg th span{position:sticky;left:6px;}
.mx-box2>.panel{min-width:0;}
@container (min-width:1060px){
  .mx-box2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start;}
  .mx-box2>.scores-ad{grid-column:1/-1;order:3;}
}

/* ---------- the footer line ---------- */
.mx-foot{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:30px;padding-top:12px;border-top:1px solid rgba(188,215,234,.14);font-size:12px;color:var(--pale);}
.mx-foot a{color:var(--pale);}
@media (max-width:600px){.mx-foot{flex-direction:column;}}

/* ---------- a wide screen ---------- */
@media (min-width:700px){
  .mx-two{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;}
  .mx-nextmod .mx-two>div:last-child>.mx-tlbl{text-align:right;--team-fade-angle:270deg;}
  /* Keep the approved game panels on tablet and split-pane widths too. Phones retain plain modules. */
  .mx-gamegrid>.mx-mod{background:rgba(11,21,34,.5);border-radius:16px;padding:16px 20px 20px;}
  .mx-gamegrid{row-gap:24px;column-gap:24px;}
}
@media (min-width:1024px){
  .mx-home{grid-template-columns:minmax(0,2fr) minmax(0,1fr);column-gap:40px;}
  .mx-home>.mx-teams,.mx-home>.mx-slatemod{grid-column:1;}
  .mx-home>.mx-side{grid-column:2;grid-row:1 / span 2;}
  .mx-cards{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;}
  /* the web lays the same cards out as a grid: two across in the main column (inside its panel at 1100 too),
     three only when each card still gets at least 296px */
  .mx-slate{grid-template-columns:repeat(auto-fill,minmax(296px,1fr));gap:12px;}
  /* soft panels (owner 2026-10-06, V2): on the web the main column module and the right rail each sit on one
     slightly darker rounded panel with no border; the hairlines inside stay. The phone keeps plain modules. */
  .mx-home>.mx-mod,.mx-home>.mx-side{background:rgba(11,21,34,.5);border-radius:16px;padding:16px 20px 20px;}
  .mx-home>.mx-side{gap:30px;}
  .mx-gamegrid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);}
  .mx-gamegrid>.mx-startmod{grid-column:1 / -1;}
  .mx-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;padding:16px 34px 30px;}
  .mx-hero>.mx-back{grid-column:1 / -1;justify-self:start;}
  .mx-hero h1{font-size:86px;}
  .mx-wm{font-size:300px;right:-14px;}
  .mx-rec{font-size:22px;}
  .mx-hs{margin:0;gap:44px;}
  .mx-hs dd{font-size:24px;}
  .mx-player{display:block;}
  .mx-num{min-width:150px;}
  .mx-num b{font-size:150px;}
  .mx-num b.two{font-size:128px;}
  .mx-num em{font-size:14px;}
  .mx-player .mx-pn h1{font-size:58px;}
  .mx-pn>span{font-size:22px;}
  .mx-pn small{font-size:12.5px;}
  .mx-teamgames{grid-template-columns:minmax(0,3fr) minmax(350px,2fr);gap:24px;align-items:start;}
  .mx-tg-cal{display:block;}
}
.mx-act{display:flex;align-items:center;gap:14px;flex:none;}

/* ---------- league leaders: the season as quiet text, a card per stat ---------- */
.mx-season{display:flex;gap:14px;flex:none;}
.mx-season a{font-weight:900;font-size:13px;color:var(--pale);text-decoration:none;padding:4px 0;border-bottom:2px solid transparent;}
.mx-season a.on{color:#fff;border-bottom-color:var(--yellow);}
.mx-lcards{margin-bottom:14px;}
.mx-lcards .lch{min-height:36px;}
.mx-lcards table.ldr .nm .rowlink{color:#fff;text-decoration:none;}
.mx-lcards table.ldr .cd{font-size:10px;color:rgba(255,255,255,.7);}
.mx-lcards table.ldr td{padding-top:5px;padding-bottom:5px;}
.mx-lcards table.ldr td.nm{font-size:13.5px;}
/* the full leaders table: tap a column to sort, the name column stays put */
.mx-leader-more{text-align:center;margin:18px 0 24px;}
.mx-leader-more .line{margin-bottom:10px;}
.mx-ltable{padding:8px 0 4px;}
.mx-ltable table{min-width:100%;}
.mx-ltable th,.mx-ltable td{white-space:nowrap;}
.mx-ltable th button{font:inherit;color:inherit;letter-spacing:inherit;padding:6px 2px;background:none;}
.mx-ltable th.on,.mx-ltable td.on{color:var(--yellow);}
.mx-ltable .nm{position:sticky;left:0;z-index:1;background:var(--navy2);text-align:left;min-width:160px;}
.mx-ltable thead .nm{z-index:2;}
.mx-ltable td.nm{padding:0;}
.mx-ltable td.nm .rowlink{display:block;padding:7px 8px;color:#fff;text-decoration:none;}
.mx-ltable table.t th:first-child,.mx-ltable table.t td:first-child{padding-left:12px;}
.mx-ltable table.t th:last-child,.mx-ltable table.t td:last-child{padding-right:12px;}

/* ---------- the fade is a mark, not a bar (owner 2026-10-01: "are the colors not working ... was it better
   before?"). fade() paints a gradient across 88% of whatever it sits on, so a wide row smeared the team
   colour across 900px and two blue teams stacked into one blue slab. Capped at 260px, the colour sits at
   the start of the row on every width, the same as on a phone. ---------- */
[style*="linear-gradient(90deg"]{background-size:min(100%,260px) 100%;background-repeat:no-repeat;}
@media (min-width:600px) and (max-width:1023px){.preseason-tabs{justify-content:flex-start;gap:30px;}}
.mx-search{margin:0 0 16px;}

/* ---------- live scores in the mix (PR #150 connected ESPN scoreboards, 2026-10-04) ---------- */
.mx .ln .sc{margin-left:auto;padding-left:10px;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:18px;line-height:1;color:#fff;}
.mx .ln .sc:empty{display:none;}
.mx-kind{display:flex;align-items:baseline;gap:14px;margin:0 0 12px;}
.mx-kind span{font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--pale);}
.mx-kind button{font-weight:900;font-size:13px;color:var(--pale);padding:4px 0;border-bottom:2px solid transparent;background:none;}
.mx-kind button.on{color:#fff;border-bottom-color:var(--yellow);}

/* ==========================================================================================================
   DIRECTION I, THE SPLIT HERO (owner 2026-10-05). The game header is a strict grid: the caption across both
   halves, the two cities, the two scores with the status plate in the seam, the codes and records. Under it the
   tabs sit on a dark strip that sticks to the top, and the tab's content sits on one dark sheet. The hero, the
   strip and the sheet run edge to edge; the page clips the sideways overflow a full-width band can cause.
   ========================================================================================================== */
.wrap{overflow-x:clip;}
.mx-backrow{margin:0 0 6px;}
@media (min-width:1024px){.mx-home{margin-top:18px;}}
.sh{display:grid;grid-template-columns:minmax(0,1fr) 40px 40px minmax(0,1fr);grid-template-rows:auto auto auto auto;align-items:end;margin:0 calc(50% - 50vw);padding:12px 14px 15px;color:#fff;
  background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.18)),linear-gradient(90deg,var(--ta),color-mix(in srgb,var(--ta) 74%,#000) 50%,color-mix(in srgb,var(--th) 74%,#000) 50%,var(--th));}
.sh-cap{grid-row:1;grid-column:1/-1;justify-self:center;max-width:100%;margin:0 0 9px;font:900 10px/1.2 'Nunito',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sh-nm{grid-row:2;min-width:0;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:22px;line-height:1.05;color:#fff;white-space:nowrap;text-decoration:none;text-shadow:0 2px 0 rgba(0,0,0,.25);}
.sh-nm.a{grid-column:1/3;justify-self:start;}
.sh-nm.h{grid-column:3/5;justify-self:end;text-align:right;}
.sh-sc{grid-row:3;align-self:center;min-width:0;margin:6px 0 2px;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:60px;line-height:.92;letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap;color:#fff;text-shadow:0 3px 0 rgba(0,0,0,.25);}
.sh-sc.a{grid-column:1;justify-self:start;}
.sh-sc.h{grid-column:4;justify-self:end;}
.sh-sc.lo{color:rgba(255,255,255,.58);}
.sh-mid{grid-row:3;grid-column:2/4;justify-self:center;align-self:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:74px;padding:8px 8px 7px;border-radius:12px;background:var(--navy2);box-shadow:0 3px 0 rgba(0,0,0,.28),inset 0 0 0 1.5px rgba(255,255,255,.09);text-align:center;}
.sh.pre .sh-mid{margin-top:8px;}
.sh-rec{grid-row:4;margin-top:4px;font:900 11.5px/1.2 'Nunito',sans-serif;letter-spacing:.05em;color:rgba(255,255,255,.86);white-space:nowrap;}
.sh-rec.a{grid-column:1/3;justify-self:start;}
.sh-rec.h{grid-column:3/5;justify-self:end;}
/* the plate, in rows and in the seam: the replay build's FINAL, LIVE, quarter and clock, tip time */
.sh-mid .fin,.mx-row .st .fin,.mx-card .st .fin{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:17px;line-height:1;letter-spacing:.08em;color:var(--cream);}
.mx-row .st .fin,.mx-card .st .fin{font-size:15px;}
.sh-mid .pc,.mx-row .st .pc,.mx-card .st .pc{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:17px;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums;color:#fff;}
.mx-row .st .pc,.mx-card .st .pc{font-size:16px;}
.sh-mid .pc em,.mx-row .st .pc em,.mx-card .st .pc em{font-style:normal;color:var(--pale2);}
.sh-mid .tm,.mx-row .st .tm,.mx-card .st .tm{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:20px;line-height:1;color:#fff;}
.mx-row .st .tm,.mx-card .st .tm{font-size:19px;}
.sh-mid .pm,.mx-row .st .pm,.mx-card .st .pm{font-size:9.5px;font-weight:900;letter-spacing:.1em;line-height:1.2;color:var(--pale);}
.mx-row .st,.mx-card .st{gap:5px;}
@media (max-width:359px){
  .sh{grid-template-columns:minmax(0,1fr) 37px 37px minmax(0,1fr);padding:11px 12px 13px;}
  .sh-nm{font-size:19px;}
  .sh-sc{font-size:50px;}
  .sh-mid{min-width:68px;padding:7px 6px 6px;}
  .sh-mid .pc,.sh-mid .fin{font-size:15px;}
  .sh-rec{font-size:10.5px;letter-spacing:.04em;}
  .sh-cap{letter-spacing:.08em;}
}
/* the web: city and record stacked at the outer edge, the score beside the seam */
@media (min-width:1024px){
  .mx-backrow{margin:14px 0 10px;}
  .sh{grid-template-columns:minmax(0,1fr) auto 144px auto minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:28px;align-items:center;padding:16px calc(50vw - 50%) 24px;}   /* a notch smaller, owner Oct 9 */
  .sh-cap{font-size:11px;margin-bottom:11px;}
  .sh-nm{grid-row:2;align-self:end;font-size:44px;line-height:1;}
  .sh-nm.a{grid-column:1;}
  .sh-nm.h{grid-column:5;}
  .sh-sc{grid-row:2/4;font-size:94px;margin:0;}
  .sh-sc.a{grid-column:2;justify-self:end;}
  .sh-sc.h{grid-column:4;justify-self:start;}
  .sh-mid{grid-row:2/4;grid-column:3;min-width:128px;padding:13px 12px 12px;gap:7px;border-radius:14px;}
  .sh-rec{grid-row:3;align-self:start;margin-top:6px;font-size:13.5px;}
  .sh-rec.a{grid-column:1;}
  .sh-rec.h{grid-column:5;}
  .sh-mid .fin{font-size:24px;}
  .sh-mid .pm{font-size:11.5px;}
  .sh-mid .tm{font-size:29px;}
  .sh-mid .lvt{font-size:10.5px;padding:3px 9px 3px 8px;}
  .sh-mid .pc{font-size:26px;}
  .sh.pre .sh-mid{margin-top:0;}
}
/* HIDDEN SCORES: a plain empty slot, no blur, no digits under it */
.score-slot{display:inline-block;vertical-align:middle;width:1.02em;height:.5em;border-radius:.1em;background:rgba(255,255,255,.14);}
.sh-sc .score-slot{transform:translateY(-.04em);}
.mx .ln .score-slot{width:22px;height:11px;border-radius:3px;vertical-align:0;background:rgba(255,255,255,.12);}
/* a final's losing line steps back to grey, as the replay build draws it; never while scores are hidden */
.mx .ln.lo b,.mx .ln.lo .sc{color:var(--pale);}

/* the dark strip: the tabs, sticky, three equal tabs on a phone */
.sh-tabs{position:sticky;top:0;z-index:6;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 calc(50% - 50vw);padding:0 12px;background:var(--navy2);border-bottom:1px solid rgba(188,215,234,.14);}
.sh-tabs button{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:15px;letter-spacing:0;color:var(--pale);text-align:center;padding:12px 0 9px;border-bottom:3px solid transparent;white-space:nowrap;background:none;}
.sh-tabs button.on{color:#fff;border-bottom-color:var(--yellow);}
.sh-tabs.stuck{box-shadow:0 8px 16px rgba(0,0,0,.4);}
.sh-mini{display:none;}
.sh-anchor{height:0;}
@media (min-width:1024px){
  .sh-tabs{display:flex;gap:36px;align-items:stretch;padding:0 calc(50vw - 50%);}
  .sh-tabs button{font-size:17px;padding:15px 2px 12px;}
  .sh-tabs.stuck .sh-mini{display:flex;align-items:center;gap:18px;margin-left:auto;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:16px;color:#fff;white-space:nowrap;}
  .sh-mini b{font-weight:800;font-size:19px;margin-left:4px;}
  .sh-mini .lo{color:var(--pale);}
  .sh-mini em{font-style:normal;font-family:'Nunito',sans-serif;font-weight:900;font-size:11px;letter-spacing:.1em;color:var(--cream);}
}
/* the reveal control holds the strip's place while scores are hidden: one line, next to its button */
.sh-reveal{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 calc(50% - 50vw);padding:10px 12px;background:var(--navy2);}
.sh-reveal p{font-size:13px;font-weight:800;color:var(--pale2);white-space:nowrap;}
.sh-reveal .btn{width:auto;flex:none;min-height:40px;font-size:13px;padding:7px 13px;border-radius:10px;border-color:rgba(247,207,69,.75);color:var(--yellow);}
@media (min-width:1024px){.sh-reveal{padding:12px calc(50vw - 50%);}}
/* the sheet: the tab's content on one dark surface, no boxes inside it */
.sh-sheet{margin:0 calc(50% - 50vw);padding:12px 12px 26px;background:var(--navy2);}
.sh-sheet .panel{background:none;border:0;border-radius:0;padding:0;margin:0 0 14px;}
.mx-gamegrid{margin-top:26px;}
@media (min-width:1024px){.sh-sheet{padding:22px calc(50vw - 50%) 40px;}}

/* the box score team switch (owner 2026-10-05, option A): the two teams' colour halves, echoing the header
   above, in their display shades. The selected half is full strength with white type and a 3px yellow
   underline; the other half is the same colour dimmed, with pale type. No yellow fill. City and code only. */
.game-box-teams{position:static;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2px;padding:0;margin:2px 0 12px;border:0;border-radius:10px;overflow:hidden;background:none;max-width:none;}
.game-box-teams button{display:flex;align-items:baseline;justify-content:center;gap:5px;min-width:0;min-height:46px;padding:14px 6px 0;border:0;border-radius:0;background:rgba(255,255,255,.06);font-family:'Baloo 2',sans-serif;font-weight:800;font-size:14px;line-height:1;letter-spacing:0;white-space:nowrap;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.25);}
.game-box-teams button b{font-weight:800;}
.game-box-teams button .cd{margin:0;color:inherit;opacity:.75;}
.game-box-teams button.on{box-shadow:inset 0 -4px 0 var(--yellow);}   /* the underline is the whole difference */
.game-box-label{display:none;}
.game-box-group th{text-align:left;font-size:9.5px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--pale);padding:12px 0 5px;}
.game-box-group th span{position:sticky;left:0;}
@media (min-width:1100px){
  .game-box-teams{display:none;}
  .game-box-pair{gap:32px;}
  .game-box-label{display:flex;align-items:baseline;gap:6px;padding:7px 10px;border-radius:6px;margin:0 0 6px;}
  .game-box-label b{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:17px;color:#fff;}
  .game-box-label .cd{color:rgba(255,255,255,.72);}
  .game-box-panel .scrollhint{display:none;}
  .game-box-table{min-width:0;}
  .game-box-table th,.game-box-table td{padding-left:4px;padding-right:4px;}
  .game-box-table .nm{width:auto;min-width:0;max-width:none;padding-right:8px;}
  .game-box-table .nm .rowlink{white-space:nowrap;padding-left:0;}
}

/* team stats: once, in its tab, headed by the site's codes; the better number is white */
.game-team-grid{display:grid;gap:26px;}
.game-team-side{display:grid;gap:26px;align-content:start;}
.game-team-table thead th.game-team-code{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:15px;letter-spacing:.02em;color:#fff;text-align:center;padding:6px 0 5px;border-radius:5px;}
.game-team-table td{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:15px;color:var(--pale);}
.game-team-table td.b{color:#fff;}
.game-team-table tbody th{color:var(--pale2);}
@media (min-width:1024px){.game-team-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:56px;align-items:start;}}

/* box score cells: names in white on one line, the name column as wide as the longest full name */
.preseason-main .game-box-table th,.preseason-main .game-box-table td{padding:9px 6px;font-size:12.5px;}
.preseason-main .game-box-table thead th{font-size:9.5px;letter-spacing:.08em;color:var(--pale);padding:7px 6px;}
.preseason-main .game-box-table thead th:first-child{padding-left:0;}
.preseason-main .game-box-table tbody th.nm{width:auto;min-width:0;max-width:none;padding:0 10px 0 0;font-size:12.5px;font-weight:800;letter-spacing:0;color:#fff;text-align:left;border-top:1px solid rgba(255,255,255,.06);}
.preseason-main .game-box-table .nm .rowlink{white-space:nowrap;padding-left:0;padding-right:0;}
.preseason-main .game-box-table tr.game-box-total th{color:var(--pale2);font-weight:900;}
.preseason-main .game-box-table tr.game-box-group th{border-top:0;font-size:9.5px;font-weight:900;letter-spacing:.12em;color:var(--pale);padding:12px 0 5px;}
@media (min-width:601px){.preseason-main .game-box-table tbody th.nm{padding-top:9px;padding-bottom:9px;}.preseason-main .game-box-table .nm .rowlink{padding-top:0;padding-bottom:0;}}
@media (min-width:1100px){.preseason-main .game-box-table th,.preseason-main .game-box-table td{padding-left:4px;padding-right:4px;font-size:13px;}.preseason-main .game-box-table tbody th.nm{padding-right:8px;}}
/* team stats cells */
.preseason-main .game-team-table td{text-align:center;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:15px;color:var(--pale);padding:7px 4px 6px;}
.preseason-main .game-team-table td.b{color:#fff;}
.preseason-main .game-team-table tbody th{font:800 13px 'Nunito',sans-serif;letter-spacing:0;color:var(--pale2);text-align:left;padding:9px 0;border-top:1px solid rgba(255,255,255,.06);}
.preseason-main .game-team-table thead th.game-team-code{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:15px;letter-spacing:.02em;color:#fff;padding:6px 0 5px;}
@media (max-width:359px){.mx-row{grid-template-columns:minmax(0,1fr) 76px;}.mx .ln b{font-size:15px;}.mx-type{display:none;}}

/* Team schedules stay in bounded groups, with space around each complete ad break. */
.mx-tg-list,.mx-tg-side{min-width:0}.mx-tg-side{display:grid;gap:20px;align-content:start}
.mx-tg-panel,.mx-tg-cal>.panel{background:rgba(11,21,34,.55);border:1px solid rgba(188,215,234,.18);border-radius:14px;padding:16px}
.mx-tg-month{font:900 16px 'Baloo 2',sans-serif;margin:18px 0 8px;padding-bottom:10px;border-bottom:1px solid rgba(188,215,234,.18)}
.mx-tg-month:first-child{margin-top:0}.mx-tg-month small{display:block;font:800 10px 'Nunito',sans-serif;color:var(--pale);letter-spacing:.1em;text-transform:uppercase;margin-top:2px}
.mx-tg-panel .mx-trow{padding:8px 0}.mx-tg-panel .mx-trow:last-child{border-bottom:0}
.mx-tg-list .scores-ad:is(:not(.scores-ad-live),.filled,[data-score-ad-size]){margin:36px 0}.mx-tg-panel .mx-mh{margin-bottom:4px}.mx-tg-panel .mx-act a{font-size:12px;color:var(--pale2);text-decoration:none}
.mx-tg-stat{display:flex;align-items:center;justify-content:space-between;gap:10px;text-decoration:none;color:#fff;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.mx-tg-stat:last-child{border-bottom:0}.mx-tg-stat small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--pale)}.mx-tg-stat b{font:800 17px 'Baloo 2',sans-serif}.mx-tg-stat strong{font:800 25px 'Baloo 2',sans-serif;color:var(--yellow)}
.mx-tg-note{font-size:11px;margin:10px 0 0}
@media(max-width:600px){.mx-tg-panel{padding:12px}.mx-tg-panel .mx-trow{grid-template-columns:47px minmax(0,1fr) auto;gap:5px}.mx-tg-panel .mx-trow .ln b{font-size:13px}.mx-tg-panel .mx-trow .cd{display:none}.mx-tg-panel .mx-trow .t{font-size:12px}}

/* Tonight in History on a game page: one full-width button per side, in the team's tint, one line each */
.mx-tnmod{margin-top:14px}
.mx-tnmod .line{margin:0 0 12px}
.mx-tnsides{display:grid;grid-template-columns:1fr;gap:10px}
@media(min-width:560px){.mx-tnsides{grid-template-columns:1fr 1fr}}
.mx-tnside{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:12px;font:800 15px 'Baloo 2',sans-serif;color:#fff;text-decoration:none;white-space:nowrap;background:var(--tc);box-shadow:0 4px 0 rgba(0,0,0,.25)}
/* stats centred under their headers, the broadcast box layout; the name column stays left (owner 2026-10-21) */
.preseason-main .game-box-table td,.preseason-main .game-box-table thead th:not(:first-child){text-align:center;}
/* phone: MIN through REB and AST sit beside the name without a scroll (owner 2026-10-21) */
@media (max-width:600px){.preseason-main .game-box-panel{padding-left:10px;padding-right:10px;}.preseason-main .game-box-table th,.preseason-main .game-box-table td,.preseason-main .game-box-table thead th{padding-left:3px;padding-right:3px;}.preseason-main .game-box-table td,.preseason-main .game-box-table tbody th.nm{font-size:12px;}.preseason-main .game-box-table thead th{letter-spacing:.03em;}.preseason-main .game-box-table thead th:first-child{padding-left:0;}.preseason-main .game-box-table tbody th.nm{padding-right:6px;width:100px;min-width:100px;max-width:100px;}.preseason-main .game-box-table .nm .rowlink{white-space:normal;line-height:1.2;}}
