/* iOS game components, arranged for the web. Keep Pico out of this surface. */
.page-game main.container { width:100%; max-width:none; padding:0; }
.gp { --gp-ink:#edebe6; --gp-rgb:237,235,230; --gp-bg:#1e2024; --gp-live:#4ade80; color:var(--gp-ink); max-width:1500px; margin:auto; padding:20px 32px 64px; font-variant-numeric:tabular-nums; }
html.si-light .gp { --gp-ink:#101418; --gp-rgb:16,20,24; --gp-bg:#eceef1; --gp-live:#15803d; }
.gp *, .gp *::before, .gp *::after { box-sizing:border-box; }
.gp [hidden] { display:none!important; }
.gp :is(h1,h2,h3,h4,p,ul,figure,article,section,table,details,nav):not(:where(.disc-page *)) { margin:0; padding:0; color:inherit; }
.gp :is(article,section):not(:where(.disc-page *)) { border:0; border-radius:0; background:none; box-shadow:none; }
.gp a { color:inherit; text-decoration:none; }
.gp button:not(:where(.disc-page *)) { appearance:none; display:inline-flex; align-items:center; justify-content:center; width:auto; min-height:0; margin:0; padding:0; border:0; border-radius:0; background:none; color:inherit; box-shadow:none; font:inherit; line-height:1.4; cursor:pointer; }
.gp :is(a,button,summary,input,select):focus-visible { outline:2px solid var(--gp-ink); outline-offset:4px; box-shadow:none; }
.gp button:focus:not(:focus-visible) { box-shadow:none; }
.gp img { object-fit:contain; flex-shrink:0; }
.gp .gp-crest { width:22px; height:22px; vertical-align:middle; }
.gp .gp-crest-fallback { display:inline-flex; align-items:center; justify-content:center; font-size:10px; font-weight:900; border:1px solid rgba(var(--gp-rgb),.18); border-radius:50%; }
.gp .gp-muted,.gp .tpm-about-body { font-size:13px; line-height:1.65; color:rgba(var(--gp-rgb),.58); }
.gp .gp-eyebrow { font-size:10px; font-weight:850; letter-spacing:1px; text-transform:uppercase; color:rgba(var(--gp-rgb),.48); }
.gp-updated { margin-left:auto; color:rgba(var(--gp-rgb),.45); font-size:10px; }
.gp .gp-siblings { display:flex; gap:8px; overflow-x:auto; padding:0 0 14px; scrollbar-width:none; }
.gp .gp-siblings::-webkit-scrollbar { display:none; }
.gp-sibling { display:flex; align-items:center; flex:none; gap:12px; padding:8px 14px; border:1px solid rgba(var(--gp-rgb),.18); border-radius:999px; }
.gp-sibling[aria-current] { border-color:var(--gp-ink); box-shadow:inset 0 0 0 1px var(--gp-ink); }
.gp-sibling span { display:flex; flex-direction:column; text-align:center; font-size:11px; font-weight:850; }
.gp-sibling small { font-size:9px; color:rgba(var(--gp-rgb),.5); }
.gp-hero { position:relative; padding:26px 30px 0; overflow:hidden; background:none; }
.gp-scoreboard { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; max-width:880px; margin:auto; gap:24px; }
.gp-team { display:flex; align-items:center; justify-content:center; gap:24px; min-width:0; }
.gp-team.home { flex-direction:row-reverse; }
.gp-team-identity { text-align:center; min-width:0; }
.gp-team-identity .gp-crest { width:70px; height:70px; margin-bottom:10px; }
.gp-team-name { font-size:23px; font-weight:900; letter-spacing:-.65px; line-height:1.2; }
.gp-team-name small { font-size:13px; color:rgba(var(--gp-rgb),.48); margin-right:5px; }
.gp-record { margin-top:6px; font-size:12px; color:rgba(var(--gp-rgb),.45); font-weight:650; }
.gp-score { display:flex; flex-direction:column; align-items:center; font-size:54px; font-weight:900; line-height:1; letter-spacing:-2px; }
.gp-score.is-trailing { color:rgba(var(--gp-rgb),.45); }
.gp-ball { margin-top:7px; width:15px; height:9px; border-radius:70% 25%; transform:rotate(-25deg); background:#995f34; border:1px solid #704326; }
.gp-status { text-align:center; min-width:110px; }
.gp-status b { display:block; font-size:22px; font-weight:900; }
.gp-status span { display:block; font-size:10px; font-weight:800; letter-spacing:.8px; color:rgba(var(--gp-rgb),.5); margin-top:5px; }
.gp-status.is-live b,.gp .is-live-text { color:var(--gp-live); }
.gp-live-dot { width:6px; height:6px; background:var(--gp-live); border-radius:50%; display:inline-block; margin-right:6px; animation:gp-pulse 2s ease-in-out infinite; }
.gp-hero-bottom { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:40px; align-items:center; max-width:1000px; margin:20px auto 22px; }
.gp-field svg { display:block; width:100%; height:auto; filter:drop-shadow(0 6px 5px #0002); }
.gp-facts p { font-size:13px; line-height:1.6; margin-bottom:9px; display:flex; gap:10px; align-items:baseline; }
.gp-facts p > span:first-child { color:rgba(var(--gp-rgb),.4); font-size:10px; width:44px; flex:none; text-transform:uppercase; font-weight:800; letter-spacing:.5px; }
.gp-facts p > b { font-weight:650; }
.gp-chips { display:flex; flex-wrap:wrap; gap:7px; padding-top:4px; }
.gp-chip { display:inline-flex; border:1px solid rgba(var(--gp-rgb),.22); border-radius:999px; padding:5px 11px; font-size:11px; font-weight:750; }
.gp-situation { display:flex; justify-content:center; align-items:center; gap:9px; padding:0 0 16px; font-size:12px; font-weight:850; letter-spacing:.4px; }
.gp #gameLineScore { max-width:600px; margin:0 auto 18px; }
.gp-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(330px,.62fr); gap:48px; }
.gp-main,.gp-aside { min-width:0; }
.gp-aside { border-left:1px solid rgba(var(--gp-rgb),.12); padding-left:28px; }
.gp :is(#overview,#stats,#odds,#news,#discussion) { scroll-margin-top:90px; }
.gp .gp-section { padding:26px 0; border-bottom:0; }
.gp-section-head { display:flex; gap:12px; align-items:baseline; margin-bottom:18px; }
.gp h2 { font-size:19px; font-weight:900; letter-spacing:-.4px; line-height:1.3; }
.gp-rule { flex:1; height:1px; background:rgba(var(--gp-rgb),.14); }
.gp-section-head > a { font-size:11px; font-weight:750; }
.gp h3,.gp .tpm-latest-head { font-size:17px; line-height:1.35; font-weight:850; letter-spacing:-.3px; margin:0 0 8px; }
.gp .gp-editorial h3 { font-size:28px; letter-spacing:-.8px; margin-bottom:12px; }
.gp .gp-editorial p { font-size:15px; color:rgba(var(--gp-rgb),.78); line-height:1.75; margin:0 0 12px; }
.gp .gp-beats { display:grid; gap:14px; margin-top:18px; }
.gp .gp-beat { padding:0; }
.gp .gp-beat strong { display:block; font-size:12px; margin-bottom:4px; }
.gp .gp-sources { display:flex; gap:6px; flex-wrap:wrap; list-style:none; margin:16px 0 0; }
.gp .gp-sources li { list-style:none; padding:0; margin:0; }
.gp .gp-sources a { display:inline-block; border:1px solid rgba(var(--gp-rgb),.2); border-radius:999px; padding:5px 10px; font-size:10px; max-width:280px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.gp .gp-button,.gp .tpm-goto { border:1px solid rgba(var(--gp-rgb),.24); padding:6px 12px; border-radius:999px; font-size:11px; font-weight:800; display:inline-flex; margin-top:10px; }
.gp .gp-button:disabled { opacity:.5; cursor:wait; }
.gp .gp-table-wrap { overflow-x:auto; scrollbar-width:thin; }
.gp table { width:100%; border-collapse:collapse; font-size:12px; background:none; }
.gp th,.gp td { padding:11px 8px; border:0; border-bottom:1px solid rgba(var(--gp-rgb),.1); color:inherit; background:transparent; white-space:nowrap; text-align:right; font-size:12px; }
.gp th { font-size:9px; letter-spacing:.6px; font-weight:850; text-transform:uppercase; color:rgba(var(--gp-rgb),.45); }
.gp :is(th,td):first-child { text-align:left; padding-left:0; }
.gp :is(th,td):last-child { padding-right:0; }
.gp tr:last-child td { border-bottom:0; }
.gp td a:hover { text-decoration:underline; }
.gp details { border:0; padding:0; }
.gp summary { list-style:none; display:flex; align-items:center; gap:8px; margin:0; padding:14px 8px; font-size:12px; font-weight:800; color:inherit; border-radius:8px; cursor:pointer; }
.gp summary::marker,.gp summary::-webkit-details-marker { display:none; }
.gp summary::after { content:'+'; background:none; width:auto; height:auto; transform:none; margin-left:auto; font-size:16px; }
.gp details[open] > summary::after { content:'−'; }
.gp details[open] > summary { margin-bottom:10px; }
.gp summary,.gp .gp-hover,.gp .tpm-story { background-image:linear-gradient(rgba(var(--gp-rgb),.065),rgba(var(--gp-rgb),.065)); background-size:0% 100%; background-repeat:no-repeat; transition:background-size .6s cubic-bezier(.2,.7,.3,1); border-radius:8px; }
.gp summary:hover,.gp .gp-hover:hover,.gp .tpm-story:hover { background-size:100% 100%; }
.gp .gp-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.gp .gp-pair:empty { display:none; }
.gp .gp-pair h2 { font-size:15px; }
.gp-leader-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.gp-leader-head { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:850; margin-bottom:8px; }
.gp-leader { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; gap:10px; padding:12px 4px; border-bottom:1px solid rgba(var(--gp-rgb),.1); }
.gp-leader img { width:38px; height:42px; object-fit:cover; object-position:top; border-radius:5px; }
.gp-leader b { display:block; font-size:12px; }
.gp-leader small { display:block; font-size:9px; color:rgba(var(--gp-rgb),.48); margin-top:3px; text-transform:uppercase; }
.gp-leader-stat { text-align:right; font-size:18px; font-weight:900; }
.gp-stat-row { padding:11px 0; }
.gp-stat-values { display:flex; justify-content:space-between; align-items:center; font-size:13px; font-weight:800; }
.gp-stat-values span { font-size:10px; text-transform:uppercase; color:rgba(var(--gp-rgb),.45); font-weight:800; letter-spacing:.5px; }
.gp-stat-bars { display:flex; gap:6px; margin-top:7px; }
.gp-stat-bars span { display:flex; width:50%; height:4px; }
.gp-stat-bars span:first-child { justify-content:flex-end; }
.gp-stat-bars i { display:block; border-radius:9px; }
.gp-market-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; }
.gp-kalshi { color:#00a968; font-size:12px; font-weight:850; }
.gp-prob-bar { display:flex; gap:2px; height:6px; border-radius:999px; overflow:hidden; margin:10px 0; }
.gp-prob-bar i { height:100%; }
.gp-prob-legend { display:flex; justify-content:space-between; font-size:12px; font-weight:850; }
.gp-prob-legend span { display:flex; align-items:center; gap:7px; }
.gp-chart { width:100%; display:block; overflow:visible; }
.gp-chart text { fill:rgba(var(--gp-rgb),.5); font-size:10px; font-family:inherit; }
.gp .portfolio-tabs { display:flex; flex-wrap:wrap; gap:5px; margin:12px 0; }
.gp .portfolio-tab { border:1px solid rgba(var(--gp-rgb),.18); border-radius:999px; padding:4px 10px; font-size:10px; font-weight:850; }
.gp .portfolio-tab.active { background:var(--gp-ink); color:var(--gp-bg); border-color:var(--gp-ink); }
.gp input[type=range] { width:100%; height:16px; margin:8px 0; accent-color:var(--gp-ink); --pico-range-active-border-color:var(--gp-ink); --pico-range-thumb-color:var(--gp-ink); }
.gp output { display:block; font-size:11px; color:rgba(var(--gp-rgb),.6); min-height:18px; }
.gp label { font-size:11px; color:rgba(var(--gp-rgb),.6); }
.gp select { width:auto; display:inline-block; padding:5px 28px 5px 10px; border:1px solid rgba(var(--gp-rgb),.25); border-radius:999px; margin:0 0 12px 10px; font:inherit; background-color:var(--gp-bg); color:var(--gp-ink); }
.gp .gp-moment { padding:12px 10px 14px 16px; border-left:2px solid var(--moment-color,rgba(var(--gp-rgb),.18)); margin:0 0 12px 8px; scroll-margin-top:110px; }
.gp-moment:target { background:rgba(var(--gp-rgb),.07); }
.gp .gp-moment h3 { font-size:14px; }
.gp .gp-moment .gp-eyebrow { display:block; margin-bottom:7px; }
.gp .gp-margin-point { fill:var(--gp-ink); cursor:pointer; }
.gp .tpm-story { display:flex; align-items:center; gap:12px; padding:14px 8px; border-bottom:1px solid rgba(var(--gp-rgb),.1); }
.gp .tpm-story-rank { font-size:11px; color:rgba(var(--gp-rgb),.4); }
.gp .tpm-story-thumb img { width:76px; height:54px; border-radius:5px; object-fit:cover; }
.gp .tpm-story-body { min-width:0; }
.gp .tpm-story-title { display:block; font-size:13px; font-weight:800; line-height:1.45; }
.gp .tpm-story-kicker { display:block; font-size:10px; color:rgba(var(--gp-rgb),.48); margin-top:5px; }
.gp .gp-loading,.gp .gp-error { padding:30px 0; font-size:14px; }
.gp-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@keyframes gp-pulse { 50% { opacity:.4; } }
@media(min-width:1600px) { .gp { padding-left:48px; padding-right:48px; } }
@media(max-width:1100px) { .gp { padding:18px 24px 48px; } .gp-layout { gap:28px; grid-template-columns:minmax(0,1fr) minmax(285px,.65fr); } .gp-aside { padding-left:20px; } .gp-hero { padding:20px 0 0; } .gp-hero-bottom { gap:24px; } .gp-team-name { font-size:20px; } .gp-score { font-size:42px; } .gp-team { gap:14px; } .gp-leader-grid { gap:14px; } }
@media(max-width:800px) { .gp-layout { grid-template-columns:1fr; gap:0; } .gp-aside { border-left:0; padding-left:0; } .gp-hero-bottom { grid-template-columns:1fr; gap:14px; max-width:550px; } .gp-field { max-width:500px; width:100%; margin:auto; } .gp-topline { gap:12px; } .gp-updated { font-size:9px; max-width:150px; text-align:right; } .gp-team-identity .gp-crest { width:56px; height:56px; } }
@media(max-width:480px) { .gp { padding:14px 16px 40px; } .gp-topline > .gp-eyebrow { display:none; } .gp-scoreboard { gap:6px; } .gp-status { min-width:58px; } .gp-status b { font-size:16px; } .gp-status span { font-size:8px; } .gp-team { gap:5px; } .gp-team-name { font-size:14px; letter-spacing:-.3px; } .gp-team-name small { font-size:9px; } .gp-team-identity .gp-crest { width:44px; height:44px; } .gp-score { font-size:29px; letter-spacing:-1px; } .gp-record { font-size:10px; } .gp-jump { gap:20px!important; } .gp .gp-editorial h3 { font-size:24px; } .gp .gp-pair { grid-template-columns:1fr; gap:0; } .gp-leader-grid { grid-template-columns:1fr; gap:20px; } .gp-facts p { font-size:12px; } .gp-situation { font-size:10px; } }
@media(prefers-reduced-motion:reduce) { .gp * { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
.gp .gp-market-head { justify-content:space-between; }
.gp .disc-page { min-height:0; padding:0; }
.gp-hero.is-final .gp-hero-bottom { display:block; max-width:600px; margin-top:22px; }
.gp-hero.is-final .gp-facts { display:flex; flex-wrap:wrap; justify-content:center; column-gap:20px; }
.gp-hero.is-final .gp-facts p { font-size:11px; }
.gp-hero.is-final .gp-facts p > span:first-child { display:none; }

.gp-series-tally { display:flex; align-items:center; justify-content:space-between; text-align:center; gap:14px; margin-bottom:16px; }
.gp .gp-series-total { display:flex; align-items:center; gap:14px; text-align:left; min-width:0; }
.gp .gp-series-total > .gp-crest { width:58px; height:58px; }
.gp .gp-series-total b { display:block; font-size:42px; line-height:1.1; font-weight:900; }
.gp .gp-series-total small { display:block; font-size:12px; font-weight:750; margin-top:5px; }
.gp-series-tally > span { font-size:10px; color:rgba(var(--gp-rgb),.45); }
.gp-series-game { display:grid; grid-template-columns:48px minmax(0,1fr) minmax(0,1fr); gap:16px; align-items:center; font-size:13px; padding:16px 6px; border-bottom:1px solid rgba(var(--gp-rgb),.1); }
.gp .gp-series-side { display:flex; align-items:center; gap:8px; min-width:0; font-weight:650; }
.gp .gp-series-side .gp-crest { width:22px; height:22px; }
.gp .gp-series-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.gp .gp-series-side > b { margin-left:auto; font-size:14px; }
.gp .gp-series-side.is-winner { font-weight:850; }
.gp .gp-series-side.is-loser .gp-series-name,.gp .gp-series-side.is-loser > b { color:rgba(var(--gp-rgb),.55); }
@media(max-width:480px) {
  .gp .gp-series-tally { gap:10px; }
  .gp .gp-series-total { gap:8px; }
  .gp .gp-series-total > .gp-crest { width:38px; height:38px; }
  .gp .gp-series-total b { font-size:32px; }
  .gp .gp-series-total small { font-size:10px; }
  .gp .gp-series-game { grid-template-columns:44px minmax(0,1fr); gap:8px 12px; }
  .gp .gp-series-game > .gp-eyebrow { grid-row:span 2; }
  .gp .gp-series-side { grid-column:2; }
}
.gp-schedule-row { display:grid; grid-template-columns:44px minmax(0,1fr) auto; gap:9px; align-items:center; padding:12px 5px; border-bottom:1px solid rgba(var(--gp-rgb),.1); }
.gp-schedule-row[aria-current] { background:rgba(var(--gp-rgb),.045); }
.gp-schedule-team { display:flex; align-items:center; gap:8px; font-size:11px; font-weight:750; min-width:0; }
.gp-schedule-team small { font-size:9px; color:rgba(var(--gp-rgb),.45); }
.gp-schedule-row > b { font-size:10px; white-space:nowrap; }
.gp .gp-schedule-row > .gp-eyebrow { font-size:9px; letter-spacing:0; }
.gp .gp-sibling { border-radius:999px; }
body.page-game .site-rail-btn[data-rail="scores"] { color:#fff; }
body.page-game .site-rail-btn[data-rail="scores"] .site-rail-ico { border:1px solid #ffffff29; background:#ffffff0d; }
html.si-light body.page-game .site-rail-btn[data-rail="scores"] { color:#101418; }
html.si-light body.page-game .site-rail-btn[data-rail="scores"] .site-rail-ico { border-color:#1014184d; background:#1014180a; }


/* The scoreboard is the main column; discussion stays within reach alongside it. */
.gp-switcher { display:flex; align-items:center; gap:12px; margin-bottom:12px; min-width:0; }
.gp .gp-back { display:flex; flex:0 0 28px; align-items:center; justify-content:center; border-radius:999px; height:38px; }
.gp-back svg { width:22px; height:22px; }
.gp .gp-siblings { min-width:0; flex:1; padding:4px 2px 8px; }
.gp .gp-sibling { border-radius:999px; min-width:140px; justify-content:center; padding:8px 15px; }
.gp .gp-sibling[aria-current] { border-width:2px; box-shadow:none; padding:7px 14px; }
.gp-layout { align-items:start; grid-template-columns:minmax(0,1fr) minmax(320px,.54fr); gap:36px; }
.gp-hero { padding:24px 0 0; background-color:transparent; border-bottom:1px solid rgba(var(--gp-rgb),.12); }
.gp-hero::before { content:''; position:absolute; inset:0; pointer-events:none; background:radial-gradient(ellipse 28% 160px at 28% 160px,color-mix(in srgb,var(--away-color,#555) 10%,transparent),transparent 100%),radial-gradient(ellipse 28% 160px at 72% 160px,color-mix(in srgb,var(--home-color,#555) 10%,transparent),transparent 100%); }
.gp-hero > * { position:relative; }
.gp-hero-bottom { gap:22px; margin-top:14px; }
.gp-facts p { font-size:12px; gap:8px; }
.gp-facts p > span:first-child { width:38px; font-size:9px; }
.gp-scoreboard { gap:14px; }
.gp .gp-updated { font-size:9px; text-align:right; color:rgba(var(--gp-rgb),.45); margin:8px 0 14px; }
.gp .gp-aside { padding-left:24px; }
.gp-discussion { position:sticky; top:140px; min-width:0; }
.gp #gameDiscussionPanel { border:0; margin:0; }
.gp #gameDiscussionPanel > summary { display:none; }
.gp-disc-body { padding-top:16px; }
.gp-disc-body .gp-section-head { margin-bottom:8px; }
.gp #gameDiscussionTag { font-size:11px; margin:0 0 16px; }
.gp-disc-body .disc-page { display:flex; flex-direction:column; max-height:calc(100dvh - 245px); }
.gp #gameComposer { flex:none; }
.gp #gameComposer .disc-composer { padding:12px; border:1px solid rgba(var(--gp-rgb),.18); border-radius:12px; margin-bottom:14px; }
.gp #gameComposer .disc-input { min-height:82px; max-height:none; overflow:visible; font-size:13px; }
.gp .gp-disc-thread { overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; min-height:80px; padding-right:4px; }
.gp .gp-disc-thread:focus-visible { outline:2px solid var(--gp-ink); outline-offset:4px; }
.gp #odds .gp-section { padding:0; border:0; }
.gp .gp-sample-note { margin-bottom:16px; }
@media(max-width:1100px) {
  .gp-layout { grid-template-columns:minmax(0,1fr) 300px; gap:24px; }
  .gp .gp-aside { padding-left:18px; }
  .gp-hero-bottom { grid-template-columns:1fr; gap:14px; }
  .gp-field { max-width:480px; margin:auto; width:100%; }
  .gp-team-identity .gp-crest { width:54px; height:54px; }
  .gp-team-name { font-size:17px; }
  .gp-score { font-size:36px; }
  .gp #gameSchedules { grid-template-columns:1fr; gap:0; }
}
@media(max-width:800px) {
  .gp-layout { grid-template-columns:1fr; gap:0; }
  .gp-main { display:block; min-width:0; }
  .gp .gp-aside { display:block; position:static; border:0; padding:0; order:-1; margin-bottom:8px; }
  .gp #gameDiscussionPanel { border-bottom:0; }
  .gp #gameDiscussionPanel > summary { display:flex; padding:10px 0; }
  .gp-disc-body { padding:4px 0 16px; }
  .gp-disc-body .disc-page { max-height:440px; }
  .gp-disc-body .gp-section-head > h2 { display:none; }
  .gp .gp-disc-thread { max-height:260px; }
  .gp-hero-bottom { grid-template-columns:1fr; }
}
@media(max-width:480px) {
  .gp-scoreboard { gap:5px; }
  .gp-team-identity .gp-crest { width:44px; height:44px; }
  .gp-team-name { font-size:14px; }
  .gp-score { font-size:29px; }
}

.gp #gameComposer .disc-composer-foot { flex-wrap:wrap; gap:8px; }
.gp #gameComposer .disc-kbd-hint,.gp #gameComposer .disc-enter-hint { display:none; }
.gp #gameComposer .disc-post-btn { margin-left:auto; flex:none; white-space:nowrap; }
/* The iOS field is one centered canvas, with the facts and market chips below. */
.gp .gp-hero-bottom { display:flex; flex-direction:column; gap:18px; align-items:stretch; max-width:680px; margin:12px auto 22px; }
.gp .gp-field { width:100%; max-width:none; margin:0; }
.gp .gp-field svg { filter:drop-shadow(0 5px 7px #00000029); }
.gp .gp-facts p { font-size:13px; }
.gp .gp-chips { gap:8px; }
.gp-layout { align-items:stretch; }
.gp .gp-discussion { position:static; align-self:stretch; }
.gp-disc-sticky { position:sticky; top:140px; }
@media(max-width:800px) { .gp-disc-sticky { position:static; } }
.gp #gameComposer .disc-ios-composer { background:transparent; border-radius:12px; padding:12px; }
.gp #gameComposer .disc-ios-composer .disc-composer-foot { background:rgba(var(--gp-rgb),.045); margin:10px -12px -12px; padding:10px 12px; border-radius:0 0 12px 12px; }
.gp #gameComposer .disc-ios-composer .disc-post-btn { padding:6px 10px; margin-left:0; font-size:11px; }
.gp #gameComposer .disc-ios-composer .disc-kbd-hint,.gp #gameComposer .disc-ios-composer .disc-enter-hint { display:none; }
.gp .disc-game-eyebrow { width:100%; }
.gp .disc-ios-composer .ph-comp-chips { gap:12px; }
.gp .disc-ios-composer .disc-slash { left:8px!important; }

/* Game facts share one quiet row beneath the field. */
.gp .gp-facts,.gp .gp-hero.is-final .gp-facts { display:grid; grid-template-columns:1fr 1.35fr .65fr; gap:18px; }
.gp .gp-facts p { display:flex; flex-direction:column; align-items:flex-start; gap:4px; margin:0; min-width:0; }
.gp .gp-facts p > span:first-child,.gp .gp-hero.is-final .gp-facts p > span:first-child { display:block; width:auto; font-size:10px; }
.gp .gp-facts p > b { overflow-wrap:anywhere; }
.gp #gameProbability { min-width:0; }
.gp #gameProbabilityToggle { width:100%; }
.gp #gameProbabilityChart { margin-top:24px; }
.gp .gp-prob-chart { touch-action:pan-y; cursor:crosshair; overflow:visible; }
.gp .gp-prob-chart:focus-visible { outline:2px solid var(--gp-ink); outline-offset:6px; border-radius:4px; }
.gp .gp-prob-chart text { fill:currentColor; font-family:inherit; }
.gp .gp-prob-chart .gp-prob-tick { font-size:8.5px; font-weight:900; }
.gp .gp-prob-chart .gp-prob-end { fill:var(--team-color); }
.gp .gp-prob-abbr { font-size:9px; font-weight:900; letter-spacing:.6px; }
.gp .gp-prob-percent { font-size:15px; font-weight:900; font-variant-numeric:tabular-nums; }
.gp .gp-prob-chart .gp-prob-tooltip-time { fill:#ffffffb3; font-size:8.5px; font-weight:800; }
.gp .gp-prob-chart .gp-prob-tooltip-value { fill:white; font-size:10.5px; font-weight:900; }
.gp .gp-prob-marker { pointer-events:none; }
.gp .gp-prob-axis { display:flex; justify-content:space-between; align-items:center; gap:8px; min-height:38px; }
.gp .gp-prob-axis > span { color:rgba(var(--gp-rgb),.4); font-size:9.5px; font-weight:700; }
.gp .gp-prob-ranges { display:flex; align-items:center; gap:14px; }
.gp .gp-prob-ranges button { margin:0; padding:6px 0; border:0; background:transparent; color:rgba(var(--gp-rgb),.32); font-size:10px; font-weight:900; letter-spacing:.7px; transition:color .18s ease-in-out; }
.gp .gp-prob-ranges button.active { color:var(--gp-ink); }
@media(max-width:480px) {
  .gp .gp-facts,.gp .gp-hero.is-final .gp-facts { gap:10px; }
  .gp .gp-facts p { font-size:11px; }
  .gp .gp-prob-ranges { gap:10px; }
}
@media(prefers-reduced-motion:reduce) { .gp .gp-prob-ranges button { transition:none; } }

html:not(.si-light) .gp .gp-prob-chart .gp-prob-end { fill:var(--team-text-dark); }

/* The mastheads divide sections; individual rows retain their separators. */
.gp .gp-leader { grid-template-columns:56px minmax(0,1fr) auto; gap:12px; padding:14px 8px; margin:4px 0; min-height:98px; border:0; }
.gp .gp-leader-head { font-size:15px; gap:10px; margin-bottom:12px; }
.gp .gp-leader .gp-player-photo { width:56px; height:56px; object-fit:cover; object-position:top; border-radius:50%; background:#1e2028; }
.gp .gp-player-mono { display:grid; place-items:center; color:#edebe6; font-size:22px; font-weight:800; }
.gp .gp-player-body { display:flex; flex-direction:column; gap:4px; min-width:0; }
.gp .gp-player-eyebrow { display:flex; align-items:center; gap:5px; font-size:10px; font-weight:800; letter-spacing:.6px; text-transform:uppercase; color:rgba(var(--gp-rgb),.55); }
.gp .gp-leader .gp-player-eyebrow .gp-crest { width:15px; height:15px; object-fit:contain; background:none; border-radius:0; }
.gp .gp-leader .gp-player-name { font-size:16.5px; font-weight:800; line-height:1.3; }
.gp .gp-player-category { font-size:13.5px; line-height:1.5; text-transform:capitalize; color:rgba(var(--gp-rgb),.65); }
.gp a.gp-leader:hover .gp-player-name { text-decoration:underline; text-underline-offset:2px; }
.gp .gp-schedule-row { grid-template-columns:52px minmax(0,1fr) auto; gap:12px; min-height:76px; padding:16px 6px; }
.gp .gp-schedule-team { font-size:14px; gap:10px; }
.gp .gp-schedule-team .gp-crest { width:30px; height:30px; }
.gp .gp-schedule-team small { font-size:11px; }
.gp .gp-schedule-row > b { font-size:12px; }
.gp .gp-schedule-row > .gp-eyebrow { font-size:11px; }
.gp .gp-sidebar-head { align-items:center; margin-bottom:16px; }
.gp .gp-sidebar-tabs { display:inline-flex; align-items:center; flex:none; gap:0; padding:2px; border:1px solid rgba(var(--gp-rgb),.22); border-radius:999px; }
.gp .gp-sidebar-tabs button { padding:4px 13px; border-radius:999px; font-size:11.5px; font-weight:800; line-height:1.3; letter-spacing:0; color:rgba(var(--gp-rgb),.55); }
.gp .gp-sidebar-tabs button[aria-selected="true"] { background:var(--gp-ink); color:var(--gp-bg); }
.gp .gp-sidebar-head > a { white-space:nowrap; }
.gp .gp-content-thread { overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; max-height:calc(100dvh - 220px); padding-right:4px; }
.gp .gp-content-thread > .gp-section { padding:0; }
.gp .gp-content-thread .portfolio-tabs { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:10px; }
.gp .gp-content-thread .portfolio-tab { padding:5px 10px; border-radius:999px; border:1px solid rgba(var(--gp-rgb),.2); font-size:11px; font-weight:750; }
.gp .gp-content-thread .portfolio-tab.active { color:var(--gp-bg); background:var(--gp-ink); }
.gp .gp-content-thread .tpm-story { padding:16px 6px; }
.gp .gp-content-thread .tpm-story-rank { display:none; }
.gp .gp-content-thread:focus-visible { outline:2px solid var(--gp-ink); outline-offset:4px; }
@media(max-width:1100px) { .gp .gp-leader-grid { grid-template-columns:1fr; } }
@media(max-width:800px) { .gp .gp-content-thread { max-height:440px; } }
@media(max-width:480px) { .gp .gp-schedule-row { gap:8px; grid-template-columns:44px minmax(0,1fr) auto; } .gp .gp-schedule-team { font-size:13px; gap:6px; } .gp .gp-schedule-row > b { font-size:11px; } }

/* Straight row separators, independent of the rounded hover background. */
.gp .gp-series-game { position:relative; border-bottom:0; }
.gp .gp-series-game::after { content:''; position:absolute; left:0; right:0; bottom:0; height:1px; background:rgba(var(--gp-rgb),.1); pointer-events:none; }
.gp #gameSchedules .gp-section { padding:0; }
.gp .gp-schedule-head { margin-bottom:12px; align-items:center; }
.gp .gp-schedule-head h3 { display:flex; align-items:center; gap:8px; margin:0; font-size:15px; }
.gp .gp-schedule-head .gp-crest { width:26px; height:26px; }

/* Inline discussion composer: part of the rail, without an outer card. */
.gp #gameComposer .disc-composer.disc-ios-composer { padding:8px 0 0; border:0; border-radius:0; background:transparent; box-shadow:none; margin-bottom:18px; }
.gp #gameComposer .disc-ios-composer .disc-input { min-height:108px; max-height:none; padding:10px 0; font-size:16px; line-height:1.5; }
.gp #gameComposer .disc-ios-composer .disc-composer-foot { margin:8px 0 0; padding:10px 0; background:transparent; border-radius:0; border-top:1px solid rgba(var(--gp-rgb),.14); border-bottom:1px solid rgba(var(--gp-rgb),.14); }
.gp #gameComposer .disc-ios-composer > .disc-game-eyebrow { margin:0 0 4px; }
.gp #discussion .disc-ios-composer .disc-draft-count.is-over { color:#dc2626; }
.gp #discussion .disc-ios-composer .disc-upload-status { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:12px; padding:10px 0; }
.gp #discussion .disc-ios-composer .disc-post-btn:disabled { opacity:.35; cursor:default; }
.gp #discussion .disc-ios-composer .disc-slash { position:relative; left:auto!important; top:auto!important; width:100%; max-width:none; max-height:300px; overflow-y:auto; margin:8px 0; border-radius:0; border:0; border-top:1px solid rgba(var(--gp-rgb),.14); box-shadow:none; background:transparent; }
.gp #discussion .disc-ios-composer .disc-command-options { display:flex; flex-wrap:wrap; gap:8px; padding:5px 0 10px 36px; }
.gp #discussion .disc-ios-composer .disc-command-options button { padding:6px 10px; border:1px solid rgba(var(--gp-rgb),.22); border-radius:999px; font-size:12px; }
.gp #discussion .disc-ios-composer .disc-composer-who { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:750; margin-bottom:8px; }

.gp #discussion .disc-ios-composer .disc-slash-row { width:100%; margin:0; padding:9px 12px; border:0; border-radius:8px; background:transparent; color:var(--gp-ink); box-shadow:none; text-align:left; line-height:1.35; }
.gp #discussion .disc-ios-composer .disc-slash-row.is-active,
.gp #discussion .disc-ios-composer .disc-slash-row:hover { background:rgba(var(--gp-rgb),.06); }
.gp #discussion .disc-ios-composer .disc-slash-row:focus { box-shadow:none; }
.gp #discussion .disc-ios-composer .disc-slash-row:focus-visible { outline:2px solid var(--gp-ink); outline-offset:2px; }
.gp #discussion .disc-ios-composer .disc-slash-main { display:flex; flex-direction:column; gap:3px; }
.gp #discussion .disc-ios-composer .disc-slash-label { color:var(--gp-ink); }
.gp #discussion .disc-ios-composer .disc-slash-sub { color:rgba(var(--gp-rgb),.55); }
.gp #discussion .disc-ios-composer .disc-command-options .disc-slash-row { width:auto; padding:6px 10px; border:1px solid rgba(var(--gp-rgb),.22); border-radius:999px; font-size:12px; font-weight:700; }

/* Let the draft grow naturally; only the conversation list scrolls internally. */
.gp .gp-disc-body .disc-page { max-height:none; }
.gp .gp-disc-thread { max-height:calc(100dvh - 245px); }
.gp #discussion .disc-ios-composer .disc-input { height:auto; max-height:none; overflow:visible; }
.gp #discussion .disc-ios-composer .disc-media-draft { border:0; padding:0; background:none; box-shadow:none; border-radius:0; white-space:normal; }
.gp #discussion .disc-ios-composer .disc-media-draft img { width:auto; height:auto; max-width:100%; object-fit:contain; }
.gp #discussion .disc-ios-composer .disc-media-draft .disc-del-btn { display:block; margin:8px 0 0; }
.gp #discussion .disc-ios-composer .disc-slash-row { display:flex; align-items:center; gap:11px; appearance:none; font-family:inherit; }
.gp #discussion .disc-ios-composer .disc-slash-row:focus:not(:focus-visible) { outline:none; }
.gp #discussion .disc-ios-composer .disc-slash-label { display:block; }
.gp #discussion .disc-ios-composer .disc-slash-sub { display:block; white-space:normal; }
@media(max-width:800px) { .gp .gp-disc-thread { max-height:320px; } }
