/* t352u phone redesign. Loaded only via media="(max-width:767px) and (pointer:coarse)" — desktop/Electron never match. */
:root{--mg:#3dff7a;--mcard:#12161b;--mline:#22282f}

html.has-mnav body{padding-bottom:calc(64px + env(safe-area-inset-bottom))!important}
.mnav{position:fixed;left:0;right:0;bottom:0;z-index:9000;display:grid;grid-template-columns:repeat(5,1fr);background:#0b0e12;border-top:1px solid var(--mline);padding:6px 0 calc(6px + env(safe-area-inset-bottom))}
.mnav button{background:none;border:0;color:#8a939d;display:flex;flex-direction:column;align-items:center;gap:2px;font:600 11px/1.1 system-ui,sans-serif;min-height:48px}
.mnav button i{font-style:normal;font-size:20px}
.mnav button.on{color:var(--mg)}
.mnav-sheet{position:fixed;left:10px;right:10px;bottom:calc(72px + env(safe-area-inset-bottom));z-index:9001;background:var(--mcard);border:1px solid var(--mline);border-radius:16px;padding:8px;display:grid;gap:6px;box-shadow:0 10px 40px #000a}
.mnav-sheet[hidden]{display:none}
.mnav-sheet button{min-height:46px;border-radius:10px;background:#1a2027;border:1px solid var(--mline);color:#e8edf2;font:600 15px system-ui,sans-serif;text-align:left;padding:0 14px}
/* header: logo row only; Roster/RedZone/Bet Slips/Ticker live in the bottom bar / More sheet */
header.tbar .bs-btn,header.tbar .fa-btn,header.tbar .tktog-main,header.tbar .rzctl{display:none!important}
/* league pills: one swipeable row of rounded pills */
.tb-lg{order:9;flex:1 1 100%;gap:8px!important;padding:2px 0 4px;scroll-snap-type:x proximity}
.tb-lg button{flex:0 0 auto;border-radius:999px!important;padding:0 16px!important;min-height:36px;scroll-snap-align:start}
/* slim ticker */
.gcticker{font-size:12px!important}
.gcticker .tkhd{padding:0 6px!important}
/* single-column rounded cards */
.mgrid>*,.fins>*,.two>*{border-radius:14px!important}
.hhero{border-radius:16px!important;margin:8px 10px!important;text-align:center}
/* game page: sticky swipeable tabs */
.btabs{position:sticky;top:0;z-index:50;background:#0b0e12;gap:4px;padding:4px 6px}
.btabs button{border-radius:999px!important;padding:0 14px!important}
/* Bet Slips: full width, bigger inputs */
.bs-wrap,.bs-page,#slips{padding:8px 10px!important;max-width:100%!important}
.bs-wrap input,.bs-wrap select,.bs-page input,.bs-page select{min-height:42px;font-size:16px!important}

/* t358u: game hero showed only away team — stack away / countdown / home so both fit */
.pv-band{padding:16px 14px 12px!important}
.pv-t{grid-template-columns:1fr!important;gap:12px!important;justify-items:center}
.pv-team,.pv-team.h{flex-direction:row!important;text-align:left!important;justify-content:center;gap:12px!important;min-width:0;max-width:100%}
.pv-team img{width:56px!important;height:56px!important;flex:none}
.pv-ab{font-size:24px!important;overflow-wrap:anywhere}
.pv-vs{min-width:0;max-width:100%}
.pv-vs .pv-cd.ledclk{font-size:22px!important;max-width:100%}

/* t360u ESPN-style density: list rows, tighter spacing, sticky league chips */
.tb-lg{position:sticky;top:0;z-index:60;background:#0b0e12;gap:6px!important;padding:4px 8px!important}
.tb-lg button{min-height:30px!important;padding:0 12px!important;font-size:12px!important}
.hhero{padding:10px 12px!important;margin:6px 8px!important;gap:6px!important}.hhero::after{display:none}
.hhero h1{font-size:24px!important;margin:2px 0!important}
.feat,.mgrid,.fins{grid-template-columns:1fr!important;gap:0!important;margin:0 8px;border:1px solid var(--mline);border-radius:10px;overflow:hidden;background:var(--mcard)}
.feat>*,.mgrid>*,.fins>*{border-radius:0!important;border:0!important;border-top:1px solid var(--mline)!important;box-shadow:none!important;transform:none!important}
.feat>:first-child,.mgrid>:first-child,.fins>:first-child{border-top:0!important}
.fcard{padding:8px 10px!important;gap:4px!important}
.mcard{padding:6px 10px 6px 12px!important;gap:1px!important;background:transparent!important}
.mcard::before{width:3px}
.mc-f{margin-top:1px!important}
.lgrp{gap:4px!important}.lgrp-h{padding:8px 12px 2px;text-transform:uppercase;letter-spacing:.08em;color:#8a939d}
.btabs{padding:4px 6px!important;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.btabs button{min-height:32px;padding:0 11px!important;font-size:12px!important;flex:0 0 auto}
.pv-band{padding:10px 10px 8px!important}
.pv-team img{width:44px!important;height:44px!important}.pv-ab{font-size:20px!important}
.pv-t{gap:6px!important}
/* t371u phone: shrink Today's Slate hero + league/Bet Slips mini-cards */
.hhero{padding:8px 10px!important;margin:4px 8px!important;gap:4px!important}
.hhero .eyebrow{font-size:10px!important;margin:0!important;line-height:1.2!important}
.hhero h1{font-size:19px!important;line-height:1.05!important;margin:1px 0!important}
.hhero h1 .ledclk{padding:.08em .2em!important;border-radius:5px!important}
.hhero p,.hhero .muted{font-size:11px!important;line-height:1.25!important;margin:0!important}
.hhero .hcounts{gap:5px!important;margin-top:4px!important}
.hhero .hcount{padding:5px 7px!important;gap:1px!important;border-radius:8px!important;min-width:0!important}
.hhero .hcount b{font-size:14px!important}
.hhero .hcount span,.hhero .hcount small{font-size:10px!important;line-height:1.15!important}
.hhero .hcount>.fav-s{top:3px!important;right:4px!important;font-size:11px!important}
.hhero .hcounts .st-entry,.hhero .hcounts .nl-entry{padding:5px 8px!important;min-width:0!important;gap:2px!important}

/* t390u/t391u: symmetrical game title card (scorebug) — equal sides, centered even-rhythm mid column, nothing clipped */
.scorebug{display:flex!important;align-items:center!important;height:auto!important;max-height:none!important;overflow:visible!important}
.scorebug>.team{flex:1 1 0!important;min-width:0!important}
.scorebug>.team:not(.home){justify-content:flex-start!important}
.scorebug>.team.home{justify-content:flex-end!important}
.scorebug>.big{flex:0 0 auto!important;text-align:center!important}
.scorebug>.big:empty{display:none!important}
.scorebug .mid{flex:0 1 auto!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:5px!important;margin:0 auto!important;padding:0!important;overflow:visible!important;max-width:58%!important}
.scorebug .mid>*{margin:0!important;text-align:center!important;max-width:100%}
.scorebug .mid>:empty,.scorebug .mid>[hidden]{display:none!important}
.scorebug .mid .status{display:flex!important;justify-content:center!important;line-height:1.15!important}
.scorebug .mid .hban{display:flex!important;flex-direction:column!important;align-items:center!important;gap:5px!important;text-align:center!important}
.scorebug .mid .hban>*{margin:0!important;line-height:1.15!important;text-align:center!important}
.scorebug .mid .hban-cd{display:flex!important;justify-content:center!important;gap:.35em;flex-wrap:wrap}
.scorebug .mid .gco-hero-meta{display:flex!important;justify-content:center!important;width:100%}
.scorebug .mid .gco-meta{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:4px 8px!important;text-align:center!important;line-height:1.2!important}
.scorebug .mid .gco-meta .gsrc{flex-basis:100%!important;text-align:center!important;margin:0!important}

/* t395u: revert t392/t393 grid (piled left/overlap). Flex: away left, home right, equal team sides, mid truly centered */
.scorebug{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;gap:6px!important}
.scorebug>.team{flex:1 1 0!important;min-width:0!important;overflow:hidden}
.scorebug>.mid{flex:0 0 auto!important;max-width:52%!important;min-width:0!important;margin:0!important}
.scorebug .mid .hban-cd{flex-wrap:nowrap!important;white-space:nowrap!important;justify-content:center!important}
.scorebug .mid .hban-cdt,#fstatus .hban-cdt{min-width:0!important;text-align:center!important}
.scorebug .mid .gco-meta,.scorebug .mid .gsrc{white-space:normal!important;overflow:visible!important}
/* t430u: team abbr must never be clipped/overlapped by the score on phone heroes/scorebugs (all sports).
   Let the centre column wrap narrower, and when a side is still too tight drop the logo before the abbr. */
.scorebug>.mid{min-width:0!important;max-width:40vw!important}
.scorebug>.mid *{overflow-wrap:anywhere}
.scorebug>.team{container-type:inline-size}
.scorebug>.team .tn,.scorebug>.team .ab,.scorebug>.team .abbr{white-space:nowrap;overflow:visible;text-overflow:clip}
@container (max-width:64px){.scorebug>.team img{display:none!important}}
