/* Game Action 360 "Make ESPN Jealous" UI System */
:root {
  --ga-bg: #05070d;
  --ga-bg-2: #07111f;
  --ga-card: rgba(13, 27, 46, .88);
  --ga-card-2: rgba(18, 37, 63, .92);
  --ga-line: rgba(255,255,255,.12);
  --ga-line-strong: rgba(255,255,255,.22);
  --ga-text: #f8fbff;
  --ga-muted: #9fb3ca;
  --ga-blue: #19d3ff;
  --ga-red: #ff315a;
  --ga-gold: #ffcf3f;
  --ga-green: #28e89f;
  --ga-purple: #9b7cff;
  --ga-radius: 24px;
}
* { box-sizing: border-box; }
body {
  background:
    radial-gradient(circle at 15% -10%, rgba(25,211,255,.22), transparent 28%),
    radial-gradient(circle at 85% 0%, rgba(255,49,90,.18), transparent 28%),
    linear-gradient(180deg, #081426 0%, var(--ga-bg) 48%, #03050a 100%);
  color: var(--ga-text);
  min-height: 100vh;
  font-feature-settings: "tnum" 1, "ss01" 1;
}
a { color: inherit; text-decoration: none; }
a:hover { color: var(--ga-blue); }
.ga-navbar { background: rgba(3,7,13,.84); backdrop-filter: blur(20px); border-bottom: 1px solid var(--ga-line); }
.ga-brand-mark { width: 38px; height: 38px; border-radius: 12px; display:inline-grid; place-items:center; background: linear-gradient(135deg,var(--ga-blue),var(--ga-red)); color:#fff; font-weight:1000; box-shadow:0 10px 30px rgba(25,211,255,.22); }
.ga-page { padding-top: 2rem; padding-bottom: 4rem; }
.ga-hero {
  position: relative; overflow: hidden; border: 1px solid var(--ga-line); border-radius: 34px;
  background:
    linear-gradient(135deg, rgba(25,211,255,.17), rgba(255,49,90,.10) 48%, rgba(255,207,63,.11)),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02)),
    var(--ga-card);
  box-shadow: 0 32px 90px rgba(0,0,0,.34);
}
.ga-hero:before { content:""; position:absolute; inset:-1px; background: linear-gradient(120deg, transparent 0 38%, rgba(255,255,255,.08) 40%, transparent 47%); pointer-events:none; }
.ga-hero-grid { display:grid; grid-template-columns: 1.35fr .9fr; gap: 1.25rem; }
.ga-card { background: var(--ga-card); border: 1px solid var(--ga-line); border-radius: var(--ga-radius); color: #fff; box-shadow: 0 16px 42px rgba(0,0,0,.24); }
.ga-card-lift { transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.ga-card-lift:hover { transform: translateY(-4px); border-color: rgba(25,211,255,.4); box-shadow:0 24px 68px rgba(0,0,0,.30); }
.ga-panel { background: rgba(255,255,255,.055); border:1px solid var(--ga-line); border-radius: 20px; }
.ga-glass { background: rgba(255,255,255,.075); border: 1px solid var(--ga-line); backdrop-filter: blur(16px); }
.ga-kicker { color: var(--ga-blue); text-transform: uppercase; font-weight: 900; letter-spacing: .14em; font-size: .74rem; }
.ga-title { font-weight: 1000; letter-spacing: -.055em; line-height: .95; }
.ga-gradient-text { background: linear-gradient(90deg,#fff 0%, var(--ga-blue) 42%, var(--ga-gold) 78%, #fff 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.ga-muted { color: var(--ga-muted); }
.ga-chip { display:inline-flex; gap:.42rem; align-items:center; padding:.38rem .68rem; border-radius:999px; background:rgba(255,255,255,.09); border:1px solid var(--ga-line); font-size:.82rem; color:#e7f4ff; }
.ga-live-dot { width:.55rem; height:.55rem; border-radius:50%; background: var(--ga-red); box-shadow:0 0 0 6px rgba(255,49,90,.12); display:inline-block; }
.ga-score { font-size: clamp(2.35rem, 6vw, 5.2rem); font-weight: 1000; line-height:.9; letter-spacing:-.08em; font-variant-numeric: tabular-nums; }
.ga-team-logo { width: 58px; height:58px; border-radius: 18px; display:grid; place-items:center; font-weight:1000; background:linear-gradient(135deg,rgba(25,211,255,.28),rgba(255,255,255,.09)); border:1px solid var(--ga-line); }
.ga-media-img { width:100%; height: 220px; object-fit: cover; border-radius: 18px; background: linear-gradient(135deg,rgba(25,211,255,.28),rgba(255,49,90,.18)); }
.ga-placeholder-media { min-height: 220px; border-radius: 20px; display:grid; place-items:center; background: radial-gradient(circle at 30% 20%, rgba(25,211,255,.28), transparent 28%), linear-gradient(135deg, #0d1b2e, #162a47); border:1px solid var(--ga-line); color:#dff7ff; }
.ga-stat { background:rgba(255,255,255,.07); border:1px solid var(--ga-line); border-radius:20px; padding:1rem; }
.ga-stat-value { font-size:1.9rem; line-height:1; font-weight:1000; letter-spacing:-.06em; }
.ga-section-title { font-weight:1000; letter-spacing:-.042em; }
.ga-table { --bs-table-bg:transparent; --bs-table-color:#f8fbff; --bs-table-border-color:rgba(255,255,255,.12); }
.ga-table thead th { color:#bfeeff; text-transform:uppercase; font-size:.72rem; letter-spacing:.12em; border-bottom-color:rgba(25,211,255,.28); }
.ga-ticker { border-block:1px solid var(--ga-line); background:rgba(255,255,255,.055); overflow:hidden; white-space:nowrap; }
.ga-ticker-track { display:inline-flex; gap:2rem; padding:.72rem 0; animation: gaTicker 38s linear infinite; }
@keyframes gaTicker { from{ transform:translateX(0);} to{ transform:translateX(-50%);} }
.ga-command-grid { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:.75rem; }
.ga-command-btn { min-height:76px; border-radius:18px; border:1px solid var(--ga-line); background:rgba(255,255,255,.07); color:#fff; font-weight:900; }
.ga-command-btn:hover { border-color:rgba(25,211,255,.5); background:rgba(25,211,255,.12); }
.ga-admin-shell { display:grid; grid-template-columns:280px 1fr; gap:1.5rem; }
.ga-sidebar { position:sticky; top:82px; height:calc(100vh - 104px); background:rgba(13,27,46,.93); border:1px solid var(--ga-line); border-radius:26px; padding:1rem; overflow:auto; }
.ga-sidebar a { color:#d7e8f8; display:flex; align-items:center; gap:.55rem; padding:.68rem .78rem; border-radius:14px; }
.ga-sidebar a:hover { background:rgba(25,211,255,.12); color:#fff; }
.form-control,.form-select,.form-check-input { background:#0b1728; border-color:rgba(255,255,255,.16); color:#fff; }
.form-control:focus,.form-select:focus { background:#0b1728; color:#fff; border-color:var(--ga-blue); box-shadow:0 0 0 .2rem rgba(25,211,255,.12); }
.btn-ga { --bs-btn-bg: linear-gradient(135deg,var(--ga-blue),#0a8fff); --bs-btn-color:#00111c; border:0; font-weight:900; box-shadow:0 12px 32px rgba(25,211,255,.22); }
.btn-ga:hover { filter:brightness(1.08); color:#00111c; }
.btn-outline-ga { border-color:rgba(25,211,255,.45); color:#dff7ff; font-weight:800; }
.btn-outline-ga:hover { background:rgba(25,211,255,.14); border-color:var(--ga-blue); color:#fff; }
.badge-live { background:rgba(255,49,90,.17); color:#ffd6de; border:1px solid rgba(255,49,90,.38); }
.badge-premium { background:rgba(255,207,63,.17); color:#ffefb2; border:1px solid rgba(255,207,63,.38); }
.ga-overlay-body { background: transparent !important; }
.scorebug-pro { width: 860px; border-radius: 18px; overflow:hidden; display:grid; grid-template-columns: 1fr 110px 110px 1fr 180px; box-shadow:0 18px 60px rgba(0,0,0,.45); border:1px solid rgba(255,255,255,.22); }
.scorebug-pro > div { padding:14px 18px; background:rgba(4,9,17,.91); color:#fff; display:flex; align-items:center; justify-content:center; border-right:1px solid rgba(255,255,255,.14); }
.scorebug-pro .team { justify-content:flex-start; font-weight:1000; letter-spacing:-.03em; }
.scorebug-pro .score { font-size:2.4rem; font-weight:1000; color:var(--ga-gold); font-variant-numeric:tabular-nums; }
.scorebug-pro .status { font-size:.85rem; color:#bfeeff; flex-direction:column; text-transform:uppercase; letter-spacing:.1em; }
@media(max-width: 991px){ .ga-hero-grid{grid-template-columns:1fr;} .ga-admin-shell{grid-template-columns:1fr;} .ga-sidebar{position:static;height:auto;} .ga-command-grid{grid-template-columns:repeat(2, minmax(0,1fr));} }
@media(max-width: 576px){ .ga-command-grid{grid-template-columns:1fr;} .ga-media-img{height:180px;} }
/* Baseball Network Edition */
.baseball-hero { background: radial-gradient(circle at 18% 20%, rgba(255,207,63,.22), transparent 26%), radial-gradient(circle at 82% 0%, rgba(25,211,255,.20), transparent 30%), linear-gradient(135deg,#05111f,#102846 56%,#06101d); border:1px solid rgba(255,255,255,.12); }
.network-card,.club-card,.player-card { background: rgba(7,17,31,.88); border:1px solid rgba(255,255,255,.13); border-radius:24px; box-shadow:0 18px 50px rgba(0,0,0,.25); }
.section-title { color:#fff; font-weight:1000; letter-spacing:-.04em; margin:1rem 0; }
.score-row,.team-line,.event-strip { display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.score-row { font-size:1.25rem; border-bottom:1px solid rgba(255,255,255,.12); padding:.75rem 0; }
.score-row strong { font-size:2.5rem; color:var(--ga-gold); line-height:1; }
.scoreboard-xl { background:rgba(0,0,0,.34); border:1px solid rgba(255,255,255,.14); }
.team-line { font-size:1.55rem; padding:.35rem 0; }
.team-line strong { font-size:3.5rem; color:var(--ga-gold); line-height:1; font-variant-numeric:tabular-nums; }
.bases { width:92px; height:64px; position:relative; margin-inline:auto; }
.bases .base,.diamond-board .base { width:25px; height:25px; transform:rotate(45deg); border:2px solid rgba(255,255,255,.55); background:rgba(255,255,255,.08); display:grid; place-items:center; font-size:.55rem; color:rgba(255,255,255,.7); }
.bases .base:nth-child(1){ position:absolute; left:34px; top:0; }
.bases .base:nth-child(2){ position:absolute; left:0; top:32px; }
.bases .base:nth-child(3){ position:absolute; right:0; top:32px; }
.base.occupied { background:var(--ga-gold) !important; border-color:#fff !important; color:#111 !important; box-shadow:0 0 20px rgba(255,207,63,.45); }
.team-logo { width:64px; height:64px; border-radius:18px; object-fit:cover; background:#111827; }
.team-logo-lg { width:132px; height:132px; border-radius:32px; object-fit:cover; background:#111827; border:1px solid rgba(255,255,255,.18); }
.headline-link { color:#fff; font-weight:800; padding-bottom:.75rem; border-bottom:1px solid rgba(255,255,255,.12); }
.gamecast-topper { background:linear-gradient(135deg,#05111f,#0d2746); border-bottom:1px solid rgba(255,255,255,.12); }
.diamond-board { height:230px; position:relative; border-radius:26px; background: radial-gradient(ellipse at bottom, rgba(96,55,25,.58), rgba(96,55,25,.18) 40%, transparent 41%), linear-gradient(180deg, rgba(32,142,76,.25), rgba(14,77,45,.18)); border:1px solid rgba(255,255,255,.12); }
.diamond-board .second{ position:absolute; left:50%; top:28px; margin-left:-12px; }
.diamond-board .third{ position:absolute; left:25%; top:95px; }
.diamond-board .first{ position:absolute; right:25%; top:95px; }
.diamond-board .plate{ position:absolute; left:50%; bottom:30px; transform:translateX(-50%); color:#fff; font-weight:900; }
.metric { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); border-radius:18px; padding:.85rem; color:#fff; }
.metric span { display:block; color:var(--ga-muted); font-size:.75rem; text-transform:uppercase; letter-spacing:.12em; }
.metric strong { font-size:2rem; color:var(--ga-gold); }
.timeline-item { padding:.75rem 0; border-bottom:1px solid rgba(255,255,255,.11); color:#fff; display:flex; gap:.75rem; align-items:center; }
.zone-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:.45rem; max-width:260px; margin:auto; padding:1rem; border:2px solid rgba(255,255,255,.2); }
.zone-dot { min-height:54px; display:grid; place-items:center; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); border-radius:12px; color:#fff; font-weight:900; }
.spray-field { position:relative; height:240px; border-radius:24px 24px 120px 120px; background:linear-gradient(180deg, rgba(32,142,76,.28), rgba(32,142,76,.08)); border:1px solid rgba(255,255,255,.14); overflow:hidden; }
.spray-field:after { content:""; position:absolute; left:50%; bottom:-80px; width:220px; height:220px; transform:translateX(-50%) rotate(45deg); border:2px solid rgba(255,255,255,.16); }
.spray-dot { position:absolute; width:14px; height:14px; border-radius:50%; background:var(--ga-gold); box-shadow:0 0 16px rgba(255,207,63,.75); }
.sponsor-panel { background:linear-gradient(135deg,rgba(255,207,63,.18),rgba(25,211,255,.11)); border:1px solid rgba(255,207,63,.34); border-radius:24px; color:#fff; }
.team-hero { background-size:cover; background-position:center; border-bottom:1px solid rgba(255,255,255,.12); }
.event-strip { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); border-radius:18px; }
.fw-black { font-weight:1000; }
/* Customer-facing product polish layer */
.gamecenter-hero,.clubhouse-hero,.player-hero{position:relative;overflow:hidden;border-radius:34px;border:1px solid var(--ga-line);background:radial-gradient(circle at 20% 10%,rgba(255,207,63,.18),transparent 30%),radial-gradient(circle at 90% 0,rgba(25,211,255,.18),transparent 28%),linear-gradient(135deg,rgba(6,16,29,.98),rgba(16,40,70,.92));box-shadow:0 32px 100px rgba(0,0,0,.32)}
.clubhouse-hero{background:radial-gradient(circle at 18% 15%,color-mix(in srgb,var(--team-secondary) 28%,transparent),transparent 32%),linear-gradient(135deg,color-mix(in srgb,var(--team-primary) 52%,#06101d),#06101d 70%)}
.broadcast-scoreboard{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025)),rgba(4,10,18,.88);border:1px solid rgba(255,255,255,.16);border-radius:28px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 22px 70px rgba(0,0,0,.34)}
.metric-tile{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.13);border-radius:18px;padding:1rem;min-height:88px;display:flex;flex-direction:column;justify-content:center}.metric-tile span{color:#cbd5e1;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.metric-tile strong{font-size:1.9rem;line-height:1;font-weight:1000;color:#fff;font-variant-numeric:tabular-nums}.timeline-feed{display:grid;gap:.75rem}.timeline-item{display:grid;grid-template-columns:48px 1fr;gap:1rem;align-items:center;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);border-radius:18px;padding:.85rem}.timeline-number{width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,var(--ga-blue),#0a8fff);color:#00111c;font-weight:1000;display:grid;place-items:center}.media-row{display:grid;grid-template-columns:88px 1fr;gap:.85rem;align-items:center;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.media-row img{width:88px;height:58px;object-fit:cover;border-radius:14px;background:#111827}.media-row small{display:block;color:var(--ga-muted);font-size:.8rem}.event-list-pro{display:grid;gap:.7rem}.event-strip-pro{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);border-radius:18px;padding:1rem}.event-strip-pro small{display:block;color:var(--ga-muted)}.score-pill{border-radius:999px;background:rgba(255,207,63,.16);border:1px solid rgba(255,207,63,.34);padding:.45rem .75rem;font-weight:1000;color:#fff;font-variant-numeric:tabular-nums}.player-card-pro,.sponsor-card-pro{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:22px;transition:.18s ease}.player-card-pro:hover,.sponsor-card-pro:hover{transform:translateY(-4px);border-color:rgba(25,211,255,.45);box-shadow:0 20px 54px rgba(0,0,0,.28)}.jersey-bubble,.player-avatar-xl{background:linear-gradient(135deg,var(--ga-gold),#f59e0b);color:#101827;font-weight:1000;display:grid;place-items:center}.jersey-bubble{width:48px;height:48px;border-radius:16px}.player-avatar-xl{width:190px;height:190px;border-radius:42px;margin:auto;font-size:3.4rem;box-shadow:0 25px 70px rgba(255,207,63,.22)}.team-logo-xl{width:min(220px,55vw);height:min(220px,55vw);object-fit:cover;border-radius:42px;border:1px solid rgba(255,255,255,.2);box-shadow:0 28px 80px rgba(0,0,0,.35)}.sponsor-logo{width:170px;height:90px;object-fit:contain;border-radius:18px;background:rgba(255,255,255,.08);padding:.75rem}.sponsor-logo-xl{width:min(280px,75vw);height:170px;object-fit:contain;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:30px;padding:1.25rem}.sponsor-panel{background:radial-gradient(circle at 15% 5%,rgba(255,207,63,.18),transparent 34%),rgba(255,255,255,.065);border:1px solid rgba(255,207,63,.22);border-radius:26px}.ga-table code{color:#bfeeff;white-space:normal}.baseball-nav-pills{display:flex;gap:.5rem;flex-wrap:wrap}.baseball-nav-pills a{padding:.55rem .9rem;border-radius:999px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.06);font-weight:800}.baseball-nav-pills a:hover{border-color:rgba(255,207,63,.45);color:#fff}.zone-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;border:2px solid rgba(255,255,255,.25);border-radius:16px;padding:.5rem;max-width:260px;margin:auto}.zone-dot{aspect-ratio:1;border-radius:12px;background:rgba(25,211,255,.14);border:1px solid rgba(25,211,255,.3);display:grid;place-items:center;font-weight:1000}.spray-field{height:260px;position:relative;border-radius:0 0 130px 130px;background:radial-gradient(circle at 50% 100%,rgba(40,232,159,.22),transparent 58%),rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.13);overflow:hidden}.spray-dot{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--ga-gold);box-shadow:0 0 0 7px rgba(255,207,63,.14)}

/* Game Action 360 UI Refinement Iteration — customer-facing product polish */
.network-hero-pro{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:38px;background:linear-gradient(135deg,rgba(8,20,38,.98),rgba(4,8,16,.96));box-shadow:0 36px 110px rgba(0,0,0,.38)}
.hero-orbit{position:absolute;border-radius:999px;filter:blur(4px);opacity:.55;pointer-events:none}.hero-orbit-one{width:520px;height:520px;right:-170px;top:-220px;background:radial-gradient(circle,rgba(25,211,255,.22),transparent 63%)}.hero-orbit-two{width:420px;height:420px;left:-110px;bottom:-220px;background:radial-gradient(circle,rgba(255,207,63,.18),transparent 66%)}
.network-headline{font-size:clamp(3.2rem,7vw,7.9rem);font-weight:1000;line-height:.86;letter-spacing:-.075em;background:linear-gradient(90deg,#fff 0%,#dff8ff 38%,var(--ga-blue) 62%,var(--ga-gold) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-wrap:balance}.hero-game-card{border:1px solid rgba(255,255,255,.14);border-radius:30px;background:rgba(255,255,255,.07);backdrop-filter:blur(18px);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.mini-metric{min-height:82px;border-radius:18px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.11);display:flex;flex-direction:column;align-items:center;justify-content:center}.mini-metric span{color:var(--ga-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.mini-metric strong{font-size:2rem;line-height:1;font-weight:1000;color:#fff}.scoreboard-grid-pro{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.lead-story-grid{display:grid;grid-template-columns:1.25fr .85fr;gap:1rem}.lead-story-card{min-height:420px;border-radius:28px;border:1px solid rgba(255,255,255,.13);background:radial-gradient(circle at 18% 8%,rgba(255,207,63,.18),transparent 32%),linear-gradient(135deg,rgba(14,35,62,.95),rgba(5,9,17,.92));display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 26px 80px rgba(0,0,0,.32);transition:.18s ease}.lead-story-card:hover{transform:translateY(-5px);border-color:rgba(255,207,63,.42);color:#fff}.sport-pill-pro{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.05rem;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.11);font-weight:900}.sport-pill-pro strong{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:rgba(25,211,255,.16);color:#fff}.partner-strip-pro{border-radius:34px;border:1px solid rgba(255,207,63,.2);background:radial-gradient(circle at 10% 5%,rgba(255,207,63,.18),transparent 30%),rgba(255,255,255,.055);box-shadow:0 30px 90px rgba(0,0,0,.28)}.sponsor-marquee-pro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.sponsor-tile-pro{min-height:172px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1rem;transition:.18s ease}.sponsor-tile-pro:hover{transform:translateY(-4px);border-color:rgba(255,207,63,.44);color:#fff}.sponsor-tile-pro img{width:140px;height:74px;object-fit:contain;margin-bottom:.75rem}.sponsor-tile-pro small{color:var(--ga-muted)}.empty-state-pro{border-radius:28px;border:1px dashed rgba(255,255,255,.2);background:rgba(255,255,255,.045)}.empty-state-icon{width:64px;height:64px;border-radius:22px;margin-inline:auto;background:linear-gradient(135deg,var(--ga-blue),var(--ga-gold));display:grid;place-items:center;color:#06101d;font-weight:1000}
.operator-layout-pro{display:grid;grid-template-columns:310px minmax(0,1fr) 330px;gap:1rem;align-items:start}.control-card-pro{border:1px solid rgba(255,255,255,.13);border-radius:26px;background:rgba(7,17,31,.9);box-shadow:0 22px 70px rgba(0,0,0,.28)}.sticky-operator-card{position:sticky;top:122px}.operator-score-team{display:flex;justify-content:space-between;align-items:center;padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.11)}.operator-score-team span{font-size:1.1rem;font-weight:900;color:#fff}.operator-score-team strong{font-size:3.2rem;line-height:.9;font-weight:1000;color:var(--ga-gold);font-variant-numeric:tabular-nums}.count-strip-pro{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;text-align:center}.count-strip-pro div{border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);padding:.8rem}.count-strip-pro span{display:block;color:var(--ga-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.count-strip-pro strong{font-size:2rem;line-height:1;font-weight:1000;color:#fff}.operator-tipbar-pro{display:flex;gap:.6rem;flex-wrap:wrap}.operator-tipbar-pro span{border-radius:999px;background:rgba(25,211,255,.1);border:1px solid rgba(25,211,255,.22);padding:.45rem .75rem;color:#c7f5ff;font-size:.85rem;font-weight:800}.side-badge-pro{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,var(--ga-gold),#f59e0b);display:grid;place-items:center;color:#06101d;font-weight:1000}.action-group-heading-pro{display:flex;justify-content:space-between;align-items:center;margin-bottom:.65rem;color:#fff}.action-group-heading-pro span{font-weight:1000;letter-spacing:-.02em}.action-group-heading-pro small{color:var(--ga-muted)}.action-grid-pro{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.action-tile-form-pro{min-height:104px;border-radius:18px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.052);padding:.55rem;display:flex;flex-direction:column;gap:.4rem}.action-player-select-pro{background:#07111f;color:#fff;border-color:rgba(255,255,255,.16)}.action-button-pro{flex:1;border:0;border-radius:14px;background:linear-gradient(135deg,rgba(25,211,255,.2),rgba(255,255,255,.07));color:#fff;font-weight:1000;padding:.75rem .5rem;transition:.16s ease}.action-button-pro:hover{transform:translateY(-2px);background:linear-gradient(135deg,rgba(25,211,255,.34),rgba(255,207,63,.16))}.stat-line-pro{display:flex;justify-content:space-between;padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.1);color:var(--ga-muted)}.stat-line-pro strong{color:#fff}.player-stat-row-pro{padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.player-stat-row-pro strong{display:block;color:#fff}.player-stat-row-pro small{display:block;color:var(--ga-muted)}
@media(max-width:1400px){.scoreboard-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-layout-pro{grid-template-columns:300px minmax(0,1fr)}.operator-right-pro{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.operator-right-pro .control-card-pro{margin-bottom:0!important}.action-grid-pro{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991px){.lead-story-grid{grid-template-columns:1fr}.sponsor-marquee-pro{grid-template-columns:1fr 1fr}.operator-layout-pro{grid-template-columns:1fr}.sticky-operator-card{position:static}.operator-right-pro{grid-template-columns:1fr}.action-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr))}.network-headline{font-size:clamp(3rem,13vw,5.2rem)}}
@media(max-width:575px){.scoreboard-grid-pro,.sponsor-marquee-pro,.action-grid-pro{grid-template-columns:1fr}.lead-story-card{min-height:300px}.operator-score-team strong{font-size:2.55rem}}

/* Team + Player Fan Hub Refinement — franchise-grade, season-aware pages */
.franchise-hero{border:1px solid rgba(255,255,255,.16);border-radius:42px;overflow:hidden;background-size:cover;background-position:center;box-shadow:0 38px 120px rgba(0,0,0,.42);position:relative}.franchise-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 15%,color-mix(in srgb,var(--team-primary) 34%,transparent),transparent 34%),radial-gradient(circle at 92% 3%,color-mix(in srgb,var(--team-secondary) 22%,transparent),transparent 30%);pointer-events:none}.franchise-hero-inner{position:relative;z-index:1}.franchise-logo{width:118px;height:118px;object-fit:cover;border-radius:30px;border:1px solid rgba(255,255,255,.22);box-shadow:0 24px 80px rgba(0,0,0,.4);background:rgba(255,255,255,.08);padding:.45rem}.franchise-title{font-size:clamp(3.1rem,7vw,7.8rem);font-weight:1000;line-height:.86;letter-spacing:-.08em;text-wrap:balance}.franchise-lead{max-width:980px;color:#d9eaff}.team-command-card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);border-radius:28px;backdrop-filter:blur(18px)}.season-switcher{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);border-radius:24px;padding:1rem}.season-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem .95rem;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font-weight:900;color:#eaf7ff}.season-tab.active,.season-tab:hover{background:linear-gradient(135deg,rgba(25,211,255,.22),rgba(255,207,63,.16));border-color:rgba(25,211,255,.45);color:#fff}.fan-metric{height:100%;min-height:128px;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.045));border:1px solid rgba(255,255,255,.13);padding:1.1rem;box-shadow:0 20px 58px rgba(0,0,0,.22)}.fan-metric span{display:block;color:var(--ga-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900}.fan-metric strong{display:block;font-size:2.25rem;line-height:1;font-weight:1000;letter-spacing:-.06em;color:#fff;margin:.35rem 0}.fan-metric small{color:#b9cde2}.schedule-board{display:grid;gap:.7rem}.schedule-row-pro{display:grid;grid-template-columns:112px minmax(0,1fr) 104px;gap:1rem;align-items:center;border-radius:20px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);padding:.85rem 1rem;transition:.16s ease}.schedule-row-pro:hover{transform:translateX(4px);border-color:rgba(25,211,255,.42);background:rgba(25,211,255,.075);color:#fff}.schedule-date strong,.schedule-status strong{display:block;font-weight:1000;font-variant-numeric:tabular-nums}.schedule-date small,.schedule-matchup small{display:block;color:var(--ga-muted)}.schedule-status{text-align:right}.schedule-status span{display:inline-block;border-radius:999px;padding:.22rem .55rem;background:rgba(255,207,63,.14);border:1px solid rgba(255,207,63,.28);font-size:.75rem;font-weight:900;color:#fff}.roster-grid-pro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.roster-card-pro{display:flex;gap:1rem;align-items:center;min-height:116px;border-radius:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:1rem;transition:.16s ease}.roster-card-pro:hover{transform:translateY(-4px);border-color:rgba(255,207,63,.44);box-shadow:0 24px 60px rgba(0,0,0,.26);color:#fff}.roster-number{width:66px;height:66px;flex:0 0 66px;border-radius:22px;background:linear-gradient(135deg,var(--ga-gold),#f97316);display:grid;place-items:center;color:#07111f;font-weight:1000;font-size:1.28rem;box-shadow:0 16px 40px rgba(255,207,63,.18)}.position-pill{border-radius:999px;background:rgba(25,211,255,.13);border:1px solid rgba(25,211,255,.28);color:#dff8ff;padding:.18rem .52rem;font-size:.73rem;font-weight:900}.roster-card-pro small{color:var(--ga-muted)}.roster-badges{display:flex;gap:.35rem;flex-wrap:wrap}.roster-badges span,.goal-chip,.award-pill-pro{display:inline-flex;border-radius:999px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.13);padding:.33rem .58rem;color:#d9ebff;font-size:.78rem;font-weight:800;margin:.12rem}.goal-chip{display:block;border-radius:16px;margin:.45rem 0;padding:.62rem .78rem}.leader-row-pro{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.1);padding:.8rem 0}.leader-row-pro strong{display:block;color:#fff}.leader-row-pro small{display:block;color:var(--ga-muted)}.leader-row-pro b{font-size:1.7rem;color:var(--ga-gold);font-weight:1000;font-variant-numeric:tabular-nums}.story-stack-pro{display:grid;gap:.8rem}.story-row-pro{display:flex;justify-content:space-between;gap:1rem;padding:1rem;border-radius:20px;background:rgba(255,255,255,.052);border:1px solid rgba(255,255,255,.1);transition:.16s ease}.story-row-pro:hover{border-color:rgba(25,211,255,.35);transform:translateY(-3px);color:#fff}.story-row-pro h3{font-size:1.1rem;margin:.15rem 0 .25rem;font-weight:1000}.story-row-pro p{margin:0;color:var(--ga-muted)}.timeline-item-pro{position:relative;border-left:2px solid rgba(25,211,255,.34);padding:.1rem 0 .9rem 1rem;margin-left:.35rem}.timeline-item-pro:before{content:"";position:absolute;left:-7px;top:.35rem;width:12px;height:12px;border-radius:50%;background:var(--ga-blue);box-shadow:0 0 0 6px rgba(25,211,255,.12)}.timeline-item-pro span{display:block;color:var(--ga-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;font-weight:900}.timeline-item-pro strong{display:block;color:#fff}.timeline-item-pro p{margin:.2rem 0 0;color:var(--ga-muted)}.media-grid-pro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.media-card-pro{display:block;overflow:hidden;border-radius:26px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);transition:.16s ease}.media-card-pro:hover{transform:translateY(-5px);border-color:rgba(25,211,255,.4);box-shadow:0 26px 68px rgba(0,0,0,.28);color:#fff}.media-card-pro img{width:100%;height:172px;object-fit:cover;background:rgba(255,255,255,.06)}.media-card-pro h3{font-size:1rem;font-weight:1000;margin:.2rem 0}.media-card-pro small{color:var(--ga-muted)}.athlete-hero{position:relative;overflow:hidden;border-radius:42px;border:1px solid rgba(255,255,255,.15);padding:2rem;background:radial-gradient(circle at 12% 0%,color-mix(in srgb,var(--team-primary) 32%,transparent),transparent 34%),radial-gradient(circle at 88% 12%,color-mix(in srgb,var(--team-secondary) 26%,transparent),transparent 30%),linear-gradient(135deg,rgba(13,27,46,.96),rgba(3,7,13,.96));box-shadow:0 35px 110px rgba(0,0,0,.36)}.athlete-photo-wrap{display:grid;place-items:center}.athlete-photo{width:min(250px,70vw);height:min(250px,70vw);object-fit:cover;border-radius:46px;border:1px solid rgba(255,255,255,.2);box-shadow:0 28px 90px rgba(0,0,0,.38)}.athlete-number{width:min(250px,70vw);height:min(250px,70vw);display:grid;place-items:center;border-radius:48px;background:linear-gradient(135deg,var(--ga-gold),#f97316);color:#07111f;font-size:4.6rem;font-weight:1000;box-shadow:0 28px 90px rgba(255,207,63,.2)}.athlete-title{font-size:clamp(3rem,7vw,7rem);font-weight:1000;line-height:.86;letter-spacing:-.08em}.tool-grid-pro{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem}.tool-grid-pro div{border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:.8rem;text-align:center}.tool-grid-pro span{display:block;color:var(--ga-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;font-weight:900}.tool-grid-pro strong{font-size:1.8rem;font-weight:1000;color:#fff}.coach-quote-pro{border-left:4px solid var(--ga-gold);padding:1rem 1.25rem;margin:1rem 0 0;background:rgba(255,207,63,.08);border-radius:0 18px 18px 0;color:#fff;font-size:1.18rem}.bio-card-row{display:flex;justify-content:space-between;gap:1rem;padding:.78rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.bio-card-row span{color:var(--ga-muted)}.bio-card-row strong{color:#fff;text-align:right}.award-pill-pro{display:block;border-radius:18px;padding:.7rem .9rem;margin:.45rem 0;background:rgba(255,207,63,.09);border-color:rgba(255,207,63,.22);color:#fff}
@media(max-width:1200px){.roster-grid-pro,.media-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-grid-pro{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:768px){.franchise-title,.athlete-title{font-size:clamp(3rem,15vw,4.5rem)}.schedule-row-pro{grid-template-columns:1fr}.schedule-status{text-align:left}.roster-grid-pro,.media-grid-pro,.tool-grid-pro{grid-template-columns:1fr}.franchise-logo{width:88px;height:88px}.athlete-hero{padding:1.25rem}}

/* Studio Command Center — preview and configuration focused dashboard */
.fw-black{font-weight:1000!important}.studio-shell-pro{display:grid;grid-template-columns:300px minmax(0,1fr);gap:1.5rem;align-items:start}.studio-main-pro{min-width:0}.studio-sidebar-pro{box-shadow:0 24px 80px rgba(0,0,0,.28)}.studio-sidebar-brand-pro{display:flex;gap:.75rem;align-items:center;padding:.4rem .4rem .9rem;border-bottom:1px solid rgba(255,255,255,.1)}.studio-sidebar-brand-pro strong{display:block;color:#fff;line-height:1}.studio-sidebar-brand-pro span{display:block;color:var(--ga-muted);font-size:.78rem}.studio-sidebar-label-pro{margin:1rem .75rem .35rem;color:var(--ga-blue);text-transform:uppercase;font-size:.68rem;font-weight:1000;letter-spacing:.14em}.studio-hero-pro{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:38px;background:radial-gradient(circle at 10% 10%,rgba(25,211,255,.28),transparent 32%),radial-gradient(circle at 92% 8%,rgba(255,207,63,.18),transparent 30%),linear-gradient(135deg,rgba(13,27,46,.95),rgba(3,7,13,.92));box-shadow:0 36px 110px rgba(0,0,0,.38)}.studio-title-pro{font-size:clamp(2.8rem,5.6vw,6.3rem);font-weight:1000;letter-spacing:-.075em;line-height:.88;text-wrap:balance}.studio-live-card-pro{border-radius:30px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.075);backdrop-filter:blur(18px)}.studio-signal-grid-pro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.studio-signal-grid-pro div{border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.07);padding:1rem}.studio-signal-grid-pro span{display:block;color:var(--ga-muted);text-transform:uppercase;font-size:.7rem;font-weight:1000;letter-spacing:.12em}.studio-signal-grid-pro strong{display:block;font-size:2.25rem;color:#fff;font-weight:1000;letter-spacing:-.06em;line-height:1}.studio-grid-pro{display:grid;grid-template-columns:minmax(0,1.55fr) 420px;gap:1.5rem;align-items:start}.studio-card-header-pro{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;flex-wrap:wrap;padding:1.2rem 1.35rem;border-bottom:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045)}.studio-select-pro{min-width:180px}.studio-preview-stage-pro{background:linear-gradient(135deg,rgba(25,211,255,.08),rgba(255,255,255,.02));min-height:440px}.studio-game-card-pro{border-radius:30px;border:1px solid rgba(255,255,255,.16);background:radial-gradient(circle at 20% 10%,rgba(25,211,255,.18),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045));box-shadow:0 28px 90px rgba(0,0,0,.32)}.studio-status-pill-pro{display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;padding:.5rem .8rem;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.08);font-weight:1000;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.studio-status-pill-pro.is-live{background:rgba(255,49,90,.16);border-color:rgba(255,49,90,.35);color:#ffe4e9}.studio-scoreboard-pro{display:grid;grid-template-columns:1fr 180px 1fr;gap:1rem;align-items:center}.studio-score-team-pro{border-radius:24px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);padding:1.1rem}.studio-score-team-pro span{display:block;color:#dcefff;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.studio-score-team-pro strong{display:block;color:#fff;font-weight:1000;font-size:clamp(3rem,7vw,6rem);line-height:.9;letter-spacing:-.08em;font-variant-numeric:tabular-nums}.studio-score-mid-pro{text-align:center}.studio-score-mid-pro span{display:block;font-size:1.25rem;color:#fff;font-weight:1000}.studio-score-mid-pro small{display:block;color:var(--ga-muted)}.studio-mini-metric-pro{height:100%;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);padding:.85rem}.studio-mini-metric-pro span{display:block;color:var(--ga-muted);font-size:.68rem;text-transform:uppercase;font-weight:1000;letter-spacing:.12em}.studio-mini-metric-pro strong{display:block;font-size:1.85rem;color:#fff;line-height:1;font-weight:1000}.studio-preview-actions-pro{display:flex;gap:.6rem;flex-wrap:wrap}.studio-checklist-pro{display:grid;gap:.65rem}.studio-check-row-pro{display:grid;grid-template-columns:36px 1fr;gap:.7rem;align-items:start;padding:.75rem;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11)}.studio-check-row-pro.complete{border-color:rgba(40,232,159,.22);background:rgba(40,232,159,.065)}.studio-check-row-pro.incomplete{border-color:rgba(255,207,63,.24);background:rgba(255,207,63,.06)}.studio-check-icon-pro{width:36px;height:36px;border-radius:14px;display:grid;place-items:center;font-weight:1000;background:rgba(255,255,255,.09);color:#fff}.studio-check-row-pro strong{display:block;color:#fff}.studio-check-row-pro span{display:block;color:var(--ga-muted);font-size:.86rem}.studio-config-grid-pro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.studio-config-card-pro{border-radius:24px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);padding:1rem}.studio-config-card-pro h3,.studio-publishing-grid-pro h3,.studio-workflow-card-pro h3{font-size:1rem;font-weight:1000;color:#fff;margin-bottom:.8rem}.studio-toggle-row-pro{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.1);cursor:pointer}.studio-toggle-row-pro:last-child{border-bottom:0}.studio-toggle-row-pro strong{display:block;color:#fff}.studio-toggle-row-pro small{display:block;color:var(--ga-muted);font-size:.78rem;max-width:320px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-health-list-pro{display:grid;gap:.7rem}.studio-health-row-pro{border-radius:20px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);padding:.9rem}.studio-health-row-pro.ready{border-color:rgba(40,232,159,.22)}.studio-health-row-pro.attention{border-color:rgba(255,49,90,.26)}.studio-health-row-pro.watch{border-color:rgba(255,207,63,.26)}.studio-health-row-pro div{display:flex;justify-content:space-between;gap:1rem;align-items:baseline}.studio-health-row-pro strong{font-size:1.65rem;font-weight:1000;color:#fff}.studio-health-row-pro span{font-weight:900;color:#dff7ff}.studio-health-row-pro small{display:block;color:var(--ga-muted);line-height:1.35}.studio-team-brand-pro{min-height:180px;border-radius:28px;border:1px solid rgba(255,255,255,.14);background:radial-gradient(circle at 20% 15%,color-mix(in srgb,var(--team-primary) 32%,transparent),transparent 30%),radial-gradient(circle at 80% 20%,color-mix(in srgb,var(--team-secondary) 28%,transparent),transparent 28%),rgba(255,255,255,.055);display:grid;place-items:center}.studio-team-brand-pro img{max-width:120px;max-height:120px;border-radius:24px}.studio-team-brand-pro strong{font-size:3rem;font-weight:1000}.studio-publishing-grid-pro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.studio-publish-row-pro{display:block;border-radius:18px;padding:.8rem;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1);margin-bottom:.6rem;transition:.15s ease}.studio-publish-row-pro:hover{transform:translateY(-3px);border-color:rgba(25,211,255,.36);color:#fff}.studio-publish-row-pro strong{display:block;color:#fff;line-height:1.2}.studio-publish-row-pro span{display:block;color:var(--ga-muted);font-size:.8rem;margin-top:.25rem}.studio-workflow-grid-pro{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.studio-workflow-card-pro{border-radius:24px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);padding:1rem}.studio-workflow-card-pro span{display:block;border-radius:999px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.1);padding:.45rem .65rem;margin:.4rem 0;color:#dfefff;font-weight:800;font-size:.85rem}
@media(max-width:1400px){.studio-grid-pro{grid-template-columns:1fr}.studio-rail-pro{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.studio-rail-pro .ga-card{margin-bottom:0!important}.studio-config-grid-pro,.studio-publishing-grid-pro{grid-template-columns:1fr}.studio-workflow-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:991px){.studio-shell-pro{grid-template-columns:1fr}.ga-sidebar{position:static;height:auto}.studio-scoreboard-pro{grid-template-columns:1fr}.studio-score-mid-pro{text-align:left}.studio-rail-pro{grid-template-columns:1fr}.studio-signal-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575px){.studio-signal-grid-pro,.studio-workflow-grid-pro{grid-template-columns:1fr}.studio-card-header-pro{padding:1rem}.studio-preview-stage-pro{padding:1rem!important}.studio-title-pro{font-size:3rem}.studio-score-team-pro strong{font-size:3.5rem}}

/* Conventional Baseball Scorebook Console */
.scorebook-shell{color:#fff}.scorebook-topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.scorebook-title{font-size:clamp(2.1rem,4vw,4.6rem);font-weight:1000;letter-spacing:-.06em;line-height:.92;color:#fff}.scorebook-actions{display:flex;gap:.6rem;flex-wrap:wrap}.scorebook-game-strip{display:grid;grid-template-columns:1fr 260px 1fr;gap:1rem;align-items:stretch}.scorebook-team-score,.scorebook-inning-card,.scorebook-card{background:rgba(7,17,31,.9);border:1px solid rgba(255,255,255,.14);border-radius:26px;box-shadow:0 20px 70px rgba(0,0,0,.28)}.scorebook-team-score{padding:1.2rem 1.4rem}.scorebook-team-score span{display:block;color:#cfe9ff;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.scorebook-team-score strong{display:block;font-size:4.2rem;line-height:.9;font-weight:1000;color:var(--ga-gold);font-variant-numeric:tabular-nums}.scorebook-inning-card{display:grid;place-items:center;text-align:center;padding:1rem}.scorebook-inning-card span{font-weight:1000;text-transform:uppercase;letter-spacing:.12em;color:#bfeeff}.scorebook-inning-card strong{font-size:3rem;line-height:1;font-weight:1000}.scorebook-inning-card small{color:var(--ga-muted)}.scorebook-layout{display:grid;grid-template-columns:310px minmax(0,1fr) 360px;gap:1.25rem;align-items:start}.sticky-scorebook{position:sticky;top:92px}.scorebook-lineup-number{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;font-size:1.65rem;font-weight:1000;background:rgba(255,207,63,.16);border:1px solid rgba(255,207,63,.35);color:#ffefb2}.scorebook-matchup{display:grid;gap:.55rem}.scorebook-matchup div{display:flex;justify-content:space-between;gap:.7rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.5rem}.scorebook-matchup span{color:var(--ga-muted);text-transform:uppercase;font-size:.68rem;font-weight:1000;letter-spacing:.12em}.scorebook-matchup strong{text-align:right}.scorebook-diamond{height:230px;position:relative;border-radius:28px;background:radial-gradient(ellipse at bottom,rgba(116,71,35,.72),rgba(116,71,35,.18) 42%,transparent 43%),linear-gradient(180deg,rgba(36,151,83,.32),rgba(8,59,35,.24));border:1px solid rgba(255,255,255,.13);overflow:hidden}.scorebook-diamond:after{content:"";position:absolute;left:50%;top:54%;width:118px;height:118px;transform:translate(-50%,-50%) rotate(45deg);border:2px solid rgba(255,255,255,.22)}.diamond-base{position:absolute;width:62px;height:62px;z-index:2;transform:rotate(45deg);display:grid;place-items:center;background:rgba(255,255,255,.08);border:2px solid rgba(255,255,255,.35);border-radius:10px}.diamond-base span,.diamond-base strong{transform:rotate(-45deg);grid-area:1/1}.diamond-base span{font-size:.62rem;color:#c8d8e8;margin-top:-18px;font-weight:900}.diamond-base strong{font-size:.7rem;color:#fff;margin-top:14px;max-width:50px;overflow:hidden;text-overflow:ellipsis}.diamond-base.occupied{background:var(--ga-gold);border-color:#fff;box-shadow:0 0 28px rgba(255,207,63,.42)}.diamond-base.occupied span,.diamond-base.occupied strong{color:#111}.base-second{left:50%;top:24px;margin-left:-31px}.base-third{left:42px;top:92px}.base-first{right:42px;top:92px}.diamond-plate{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);width:52px;height:34px;display:grid;place-items:center;background:#fff;color:#111;font-weight:1000;clip-path:polygon(0 0,100% 0,100% 70%,50% 100%,0 70%)}.scorebook-count-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}.scorebook-count-grid div{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:.75rem;text-align:center}.scorebook-count-grid span{display:block;color:var(--ga-muted);font-size:.68rem;text-transform:uppercase;font-weight:1000;letter-spacing:.12em}.scorebook-count-grid strong{display:block;font-size:2rem;line-height:1;font-weight:1000}.pitch-button-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.pitch-btn{width:100%;min-height:118px;border-radius:24px;border:1px solid rgba(255,255,255,.13);background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045));color:#fff;transition:.15s ease}.pitch-btn:hover{transform:translateY(-3px);border-color:rgba(25,211,255,.44);background:rgba(25,211,255,.12)}.pitch-btn strong{display:block;font-size:3rem;line-height:1;font-weight:1000;color:var(--ga-gold)}.pitch-btn span{display:block;font-weight:900}.scorebook-symbol-legend{display:flex;gap:.35rem;flex-wrap:wrap}.scorebook-symbol-legend span{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-weight:1000;color:#dff7ff}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.result-card{border-radius:24px;padding:1rem;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12)}.result-card-head{display:flex;align-items:center;gap:.75rem}.result-card-head strong{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:rgba(255,207,63,.14);border:1px solid rgba(255,207,63,.28);font-size:1.3rem;color:var(--ga-gold)}.result-card-head span{font-size:1.05rem;font-weight:1000;color:#fff}.runner-matrix{border-top:1px solid rgba(255,255,255,.1);padding-top:.65rem}.result-submit{width:100%;border:0;border-radius:16px;padding:.8rem 1rem;background:linear-gradient(135deg,var(--ga-blue),#0a8fff);font-weight:1000;color:#03101f}.lineup-stack{display:grid;gap:.45rem}.lineup-row{display:grid;grid-template-columns:38px 1fr 48px;gap:.55rem;align-items:center;padding:.62rem;border-radius:16px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1)}.lineup-row.current{background:rgba(255,207,63,.13);border-color:rgba(255,207,63,.36)}.lineup-row span{width:32px;height:32px;border-radius:12px;background:rgba(255,255,255,.08);display:grid;place-items:center;font-weight:1000;color:#dff7ff}.lineup-row strong{font-size:.9rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lineup-row small{text-align:right;color:var(--ga-muted);font-weight:900}.scorebook-log{display:grid;gap:.45rem;max-height:440px;overflow:auto}.scorebook-log-row{display:grid;grid-template-columns:46px 1fr;gap:.5rem;padding:.65rem;border-radius:16px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1)}.scorebook-log-row span{font-weight:1000;color:var(--ga-gold)}.scorebook-log-row strong{color:#fff}.scorebook-log-row small{grid-column:2;color:var(--ga-muted)}
@media(max-width:1400px){.scorebook-layout{grid-template-columns:280px minmax(0,1fr)}.scorebook-right{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.scorebook-right .scorebook-card{margin-bottom:0!important}.result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:991px){.scorebook-game-strip,.scorebook-layout{grid-template-columns:1fr}.sticky-scorebook{position:static}.scorebook-right{display:block}.pitch-button-grid,.result-grid{grid-template-columns:1fr 1fr}}
@media(max-width:575px){.pitch-button-grid,.result-grid{grid-template-columns:1fr}.scorebook-team-score strong{font-size:3rem}.scorebook-inning-card strong{font-size:2.4rem}}
.studio-sidebar-hint{display:block;color:rgba(255,255,255,.42);font-size:.72rem;line-height:1.2;margin:-.45rem 0 .55rem .8rem}.studio-access-card{background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));box-shadow:0 14px 38px rgba(0,0,0,.16)}.studio-access-card:hover{border-color:rgba(25,211,255,.45)!important;transform:translateY(-1px)}

/* League Fan Hub - real standings, leaders, highlights and news */
.league-hub-hero{position:relative;overflow:hidden;border-radius:38px;border:1px solid rgba(255,255,255,.13);padding:2rem;background:linear-gradient(135deg,rgba(7,17,31,.94),rgba(12,28,50,.88));box-shadow:0 30px 90px rgba(0,0,0,.32)}
.league-hub-hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 12% 8%,rgba(25,211,255,.22),transparent 30%),radial-gradient(circle at 86% 18%,rgba(255,207,63,.18),transparent 30%),linear-gradient(135deg,rgba(255,255,255,.08),transparent);pointer-events:none}.league-hub-title{font-size:clamp(3rem,6vw,7rem);font-weight:1000;letter-spacing:-.075em;line-height:.88;color:#fff;margin:0}.league-featured-game{border-radius:28px;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(18px)}.league-matchup-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid rgba(255,255,255,.11)}.league-matchup-row div{display:flex;align-items:center;gap:.8rem}.league-matchup-row strong{font-size:1.18rem;color:#fff}.league-matchup-row span{font-size:3.2rem;font-weight:1000;color:var(--ga-gold);font-variant-numeric:tabular-nums;line-height:1}.league-team-badge{width:58px;height:58px;border-radius:18px;object-fit:cover;border:1px solid rgba(255,255,255,.18);background:#111827}.league-score-ticker{display:flex;gap:.75rem;overflow:auto;padding:.35rem .05rem .75rem}.league-score-chip{flex:0 0 auto;min-width:240px;border-radius:20px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.12);padding:.85rem;color:#fff;transition:.15s ease}.league-score-chip:hover{transform:translateY(-2px);border-color:rgba(25,211,255,.42)}.league-score-chip span{display:block;color:var(--ga-blue);text-transform:uppercase;font-size:.68rem;font-weight:1000;letter-spacing:.12em}.league-score-chip strong{display:block;font-size:.95rem}.league-tabbar{display:flex;gap:.5rem;flex-wrap:wrap;padding:.4rem;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.11)}.league-tabbar a{display:block;padding:.55rem .85rem;border-radius:999px;font-weight:900;color:#dff7ff}.league-tabbar a:hover{background:rgba(25,211,255,.13);color:#fff}.league-standings-team{display:flex;align-items:center;gap:.75rem}.league-standings-team strong{display:block;color:#fff}.league-standings-team small{display:block;color:#cbd5e1;font-size:.75rem}.league-mini-logo{width:42px;height:42px;border-radius:13px;object-fit:cover;background:#111827}.league-standings-table tbody tr{transition:.15s ease}.league-standings-table tbody tr:hover{background:rgba(25,211,255,.07)}.league-leaders-stack{display:grid;gap:.85rem}.league-leader-card{border-radius:22px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);padding:1rem}.league-leader-card span{display:block;color:var(--ga-blue);text-transform:uppercase;letter-spacing:.1em;font-weight:1000;font-size:.68rem}.league-leader-card strong{display:block;color:#fff;font-size:1.05rem}.league-leader-card small{display:block;color:#cbd5e1}.league-leader-card b{font-size:2rem;color:var(--ga-gold);font-variant-numeric:tabular-nums}.league-leader-row{display:flex;justify-content:space-between;gap:.8rem;border-top:1px solid rgba(255,255,255,.09);margin-top:.55rem;padding-top:.55rem}.league-leader-row span{color:#dbefff;text-transform:none;letter-spacing:0;font-size:.85rem}.league-leader-row strong{font-size:.9rem;color:#fff}.league-top-story{display:grid;grid-template-columns:240px minmax(0,1fr);gap:1rem;border-radius:24px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);padding:.75rem;color:#fff}.league-top-story:hover{border-color:rgba(25,211,255,.42)}.league-top-story-img{width:100%;height:170px;border-radius:18px;object-fit:cover}.league-top-story h3{font-weight:1000;letter-spacing:-.04em;margin:.25rem 0}.league-top-story p{color:#cbd5e1;margin:0}.league-news-list,.league-event-list{display:grid;gap:.6rem}.league-news-row,.league-event-row{display:grid;grid-template-columns:92px 1fr 112px;gap:1rem;align-items:center;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);padding:.75rem;color:#fff}.league-news-row:hover,.league-event-row:hover{background:rgba(25,211,255,.09);border-color:rgba(25,211,255,.28)}.league-news-row span,.league-event-row span{color:var(--ga-blue);font-weight:1000;font-size:.8rem;text-transform:uppercase}.league-news-row strong,.league-event-row strong{color:#fff}.league-news-row small,.league-event-row em{color:#cbd5e1;font-style:normal;text-align:right}.league-event-row span small{display:block;color:#cbd5e1;font-size:.68rem;text-transform:none}.league-event-row.compact{grid-template-columns:72px 1fr 80px}.league-highlight-hero{position:relative;display:block;overflow:hidden;border-radius:26px;border:1px solid rgba(255,255,255,.12);color:#fff}.league-highlight-img{width:100%;height:270px;object-fit:cover;filter:saturate(1.06)}.league-play-pill{position:absolute;inset:auto auto 1rem 1rem;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:rgba(25,211,255,.9);color:#03101f;font-weight:1000;box-shadow:0 18px 44px rgba(25,211,255,.25)}.league-highlight-caption{position:absolute;left:0;right:0;bottom:0;padding:4rem 1rem 1rem;background:linear-gradient(180deg,transparent,rgba(0,0,0,.82))}.league-highlight-caption span{color:var(--ga-gold);font-weight:1000}.league-highlight-caption strong{display:block;font-size:1.1rem}.league-team-spotlight{display:block;padding:1rem;border-radius:24px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);color:#fff;transition:.15s ease}.league-team-spotlight:hover{transform:translateY(-4px);border-color:rgba(25,211,255,.4);box-shadow:0 22px 55px rgba(0,0,0,.24)}.league-team-spotlight strong{display:block;font-size:1.05rem}.league-team-spotlight span{display:block;color:var(--ga-gold);font-weight:1000}.league-team-spotlight p{color:#cbd5e1;min-height:74px}.league-team-spotlight small{color:#dff7ff}.league-gallery-tile{position:relative;display:block;overflow:hidden;border-radius:18px;border:1px solid rgba(255,255,255,.11)}.league-gallery-tile img{width:100%;height:118px;object-fit:cover}.league-gallery-tile span{position:absolute;left:0;right:0;bottom:0;padding:1.7rem .65rem .55rem;background:linear-gradient(180deg,transparent,rgba(0,0,0,.84));font-weight:900;font-size:.78rem;color:#fff}.league-sponsor-strip{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;border-radius:28px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);padding:1rem}.league-sponsor-card{display:flex;align-items:center;gap:.75rem;border-radius:18px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.1);padding:.65rem .9rem;color:#fff}.league-sponsor-card img{width:80px;height:38px;object-fit:contain;border-radius:8px;background:#fff}
@media(max-width:991px){.league-top-story{grid-template-columns:1fr}.league-news-row,.league-event-row{grid-template-columns:1fr}.league-news-row small,.league-event-row em{text-align:left}.league-highlight-img{height:220px}}
@media(max-width:575px){.league-hub-hero{padding:1.2rem}.league-matchup-row span{font-size:2.4rem}.league-tabbar{border-radius:24px}.league-tabbar a{width:calc(50% - .25rem);text-align:center}.league-score-chip{min-width:210px}}

/* Tournament Fan Hub */
.tournament-hero {
  background:
    radial-gradient(circle at 20% 15%, rgba(255, 207, 63, 0.24), transparent 28%),
    linear-gradient(135deg, rgba(8, 12, 24, 0.98), rgba(22, 39, 70, 0.94)),
    url('https://picsum.photos/seed/tournament-hero-field/1800/900') center/cover;
  border: 1px solid rgba(255,255,255,0.12);
}
.tournament-control-card { background: rgba(0,0,0,0.38); backdrop-filter: blur(12px); }
.tournament-score-strip { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: .75rem; overflow-x: auto; }
.score-strip-card { display: block; padding: .9rem; border: 1px solid rgba(255,255,255,.12); border-radius: 1rem; background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03)); color: #fff; transition: transform .18s ease, border-color .18s ease; }
.score-strip-card:hover { transform: translateY(-2px); border-color: rgba(255,207,63,.65); }
.score-strip-card .team-row { display: flex; justify-content: space-between; gap: 1rem; font-size: .98rem; padding: .12rem 0; }
.tournament-table tbody tr:first-child { box-shadow: inset 4px 0 0 #ffcf3f; }
.bracket-scroll { display: flex; gap: 1rem; overflow-x: auto; padding-bottom: .5rem; }
.bracket-round { min-width: 250px; border-radius: 1rem; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.11); padding: 1rem; }
.bracket-round h3 { font-size: .9rem; text-transform: uppercase; letter-spacing: .12em; color: #ffcf3f; margin-bottom: .8rem; }
.bracket-matchup { border-radius: .85rem; background: rgba(0,0,0,.28); border: 1px solid rgba(255,255,255,.1); padding: .75rem; margin-bottom: .75rem; }
.bracket-matchup div { display: flex; justify-content: space-between; gap: .75rem; padding: .28rem 0; }
.bracket-matchup span { color: rgba(255,255,255,.55); font-size: .76rem; }
.bracket-matchup small { color: rgba(255,255,255,.58); }
.story-card, .media-card { display: block; padding: .75rem; border-radius: 1rem; background: rgba(255,255,255,.035); border: 1px solid transparent; height: 100%; }
.story-card:hover, .media-card:hover { border-color: rgba(255,207,63,.45); background: rgba(255,255,255,.06); }
.leader-stack { display: grid; gap: .9rem; }
.leader-panel { border: 1px solid rgba(255,255,255,.12); border-radius: 1rem; padding: 1rem; background: rgba(255,255,255,.04); }
.display-stat { font-size: 1.35rem; font-weight: 900; color: #ffcf3f; letter-spacing: -.04em; }
.sponsor-tile { border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.04); border-radius: 1rem; padding: 1rem; }

/* League pay-to-play registration experience */
.league-reg-hero{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:2rem;background:radial-gradient(circle at top left,rgba(25,211,255,.22),transparent 35%),linear-gradient(135deg,#07111f,#0f172a 65%,#132033);display:flex;justify-content:space-between;gap:2rem;align-items:flex-end;box-shadow:0 28px 80px rgba(0,0,0,.35)}
.league-reg-hero.compact{align-items:center}.league-reg-hero-panel{min-width:220px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:rgba(255,255,255,.06);padding:1.2rem;display:flex;flex-direction:column;gap:.6rem;text-align:right}.league-reg-hero-panel strong{font-size:2rem;line-height:1}.league-registration-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.league-registration-card{border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:1.4rem;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));box-shadow:0 18px 50px rgba(0,0,0,.22)}.league-registration-card h3{margin:.9rem 0 .35rem;font-weight:900}.league-registration-card p{color:#a8b3c7}.league-reg-price{text-align:right;font-weight:1000;font-size:1.4rem;color:#fff}.league-reg-price small{display:block;color:#a8b3c7;font-size:.78rem;font-weight:700}.league-reg-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.league-reg-meta span,.league-confirm-stat{border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.045);padding:.75rem;display:flex;flex-direction:column;gap:.1rem}.league-reg-meta strong,.league-confirm-stat span{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:#8ea2c7}.league-reg-benefits{border-left:3px solid #19d3ff;padding-left:1rem;margin-top:1rem;color:#d8e7ff}.league-reg-steps{list-style:none;padding:0;margin:0;display:grid;gap:.9rem}.league-reg-steps li{display:grid;gap:.15rem;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:.8rem}.league-reg-steps span,.league-reg-approved-row span{color:#a8b3c7}.league-reg-approved-row{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(255,255,255,.08);padding:.65rem 0}.league-reg-submit-bar{position:sticky;bottom:1rem;z-index:5;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(7,17,31,.92);backdrop-filter:blur(14px);padding:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.league-reg-submit-bar span{display:block;color:#a8b3c7}.league-confirmation-card{max-width:980px;margin:0 auto}.league-finance-row{display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.09);padding:.7rem 0}.league-finance-row strong{font-size:1.2rem}.league-reg-filterbar{display:flex;gap:.5rem;flex-wrap:wrap}
@media(max-width:768px){.league-reg-hero,.league-reg-submit-bar{flex-direction:column;align-items:stretch}.league-reg-hero-panel{text-align:left}.league-reg-meta{grid-template-columns:1fr}}

/* League/Tournament configuration studio */
.studio-config-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.25rem;align-items:start}.studio-config-main{min-width:0}.studio-config-side{min-width:0}.studio-form-section{border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.035);border-radius:24px;padding:1.15rem}.studio-toggle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.75rem}.studio-toggle-card{display:flex;gap:.85rem;align-items:center;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);border-radius:18px;padding:.9rem;cursor:pointer;transition:.16s ease}.studio-toggle-card:hover{border-color:rgba(255,207,63,.45);background:rgba(255,207,63,.08)}.studio-toggle-card span{display:grid;gap:.1rem}.studio-toggle-card strong{font-size:.92rem;color:#fff}.studio-toggle-card small{color:#9fb0c9}.studio-check-line{display:flex;align-items:center;gap:.75rem;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);border-radius:16px;padding:.85rem;color:#fff;font-weight:800}.studio-preview-hero,.studio-tournament-preview{border-radius:24px;padding:1.2rem;border:1px solid rgba(255,255,255,.12);background:radial-gradient(circle at top left,var(--preview-secondary,#ffcf3f) 0,transparent 32%),linear-gradient(135deg,var(--preview-primary,#0b1f3a),#06101d);min-height:180px;display:flex;flex-direction:column;justify-content:flex-end;gap:.35rem;color:#fff}.studio-preview-logo{width:68px;height:68px;border-radius:22px;display:grid;place-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);font-weight:1000;color:#fff}.studio-preview-hero strong,.studio-tournament-preview strong{font-size:1.35rem;line-height:1.05}.studio-preview-hero span,.studio-tournament-preview small{color:#dce8ff}.studio-tournament-preview{background:radial-gradient(circle at top left,rgba(255,207,63,.22),transparent 34%),linear-gradient(135deg,#07111f,#172554)}.studio-tournament-preview span{align-self:flex-start;border-radius:999px;background:rgba(255,207,63,.18);border:1px solid rgba(255,207,63,.35);padding:.3rem .65rem;color:#ffefad;font-weight:900;text-transform:uppercase;font-size:.7rem;letter-spacing:.09em}.studio-readiness-list{display:grid;gap:.55rem}.studio-readiness-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;border-bottom:1px solid rgba(255,255,255,.08);padding:.55rem 0}.studio-readiness-row span{color:#dbe7ff}.studio-readiness-row strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.studio-config-hero{display:flex;justify-content:space-between;gap:1.2rem;align-items:flex-end;border:1px solid rgba(255,255,255,.13);border-radius:32px;padding:2rem;background:radial-gradient(circle at top left,var(--preview-secondary,rgba(255,207,63,.19)),transparent 32%),linear-gradient(135deg,var(--preview-primary,#07111f),#06101d 70%);box-shadow:0 24px 76px rgba(0,0,0,.28)}.studio-config-hero h1{font-weight:1000;letter-spacing:-.05em;margin:0;color:#fff}.studio-config-hero p{color:#b9c7df;max-width:760px;margin:.45rem 0 0}.studio-config-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.studio-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.65rem}.studio-module-tile{border-radius:18px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.045);padding:.85rem}.studio-module-tile strong{display:block;color:#fff;font-weight:1000}.studio-module-tile span{font-size:.74rem;text-transform:uppercase;letter-spacing:.09em}.studio-module-tile.enabled{border-color:rgba(25,211,255,.36);background:rgba(25,211,255,.08)}.studio-module-tile.enabled span{color:#7fe8ff}.studio-module-tile.disabled{opacity:.62}.studio-module-tile.disabled span{color:#ffc46b}.studio-admin-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;border-bottom:1px solid rgba(255,255,255,.08);padding:.75rem 0}.studio-admin-row strong{color:#fff}.studio-admin-row small{display:block;color:#9fb0c9}.studio-pool-card{border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.045);padding:1rem;height:100%}.studio-pool-card strong{display:block;color:#fff;font-size:1.05rem}.studio-pool-card small{color:#9fb0c9}.studio-config-form .form-control,.studio-config-form .form-select{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.15);color:#fff}.studio-config-form .form-control::placeholder{color:rgba(255,255,255,.38)}.studio-config-form .form-text{font-size:.78rem}.studio-config-form .form-label{color:#dbeafe;font-weight:800}.studio-config-form option{color:#111827}
@media(max-width:1100px){.studio-config-grid{grid-template-columns:1fr}.studio-config-side .sticky-lg-top{position:static!important}.studio-config-hero{align-items:flex-start;flex-direction:column}.studio-config-actions{justify-content:flex-start}}

/* Tournament structure builder */
.ga-tournament-builder { border: 1px solid rgba(255,255,255,.08); border-radius: 1.5rem; padding: 1.25rem; background: linear-gradient(145deg, rgba(255,255,255,.035), rgba(255,255,255,.015)); }
.builder-mode-strip { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:.75rem; }
.builder-mode-card { display:flex; gap:.75rem; align-items:flex-start; padding:1rem; border:1px solid rgba(255,255,255,.12); border-radius:1rem; background:rgba(255,255,255,.04); cursor:pointer; transition:.16s ease; min-height:92px; }
.builder-mode-card:hover { transform:translateY(-1px); border-color:rgba(255,193,7,.5); background:rgba(255,193,7,.08); }
.builder-mode-card span { display:flex; flex-direction:column; gap:.25rem; }
.builder-mode-card small { color:rgba(255,255,255,.62); line-height:1.25; }
.builder-panel { border:1px solid rgba(255,255,255,.08); box-shadow:0 20px 50px rgba(0,0,0,.18); }
.builder-help { border:1px dashed rgba(255,193,7,.35); background:rgba(255,193,7,.07); color:rgba(255,255,255,.78); border-radius:1rem; padding:.75rem .9rem; font-size:.9rem; }
.builder-pool-card,.builder-round-card { border:1px solid rgba(255,255,255,.11); border-radius:1rem; background:rgba(3,7,18,.48); padding:1rem; margin-bottom:.8rem; }
.builder-pool-head,.builder-round-head { display:grid; grid-template-columns: 1fr auto auto; gap:.5rem; margin-bottom:.65rem; align-items:center; }
.builder-entry-chip-row { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.65rem; }
.builder-entry-chip { border:1px solid rgba(255,255,255,.13); border-radius:999px; background:rgba(255,255,255,.06); color:rgba(255,255,255,.78); font-size:.75rem; padding:.25rem .55rem; }
.builder-entry-chip:hover { border-color:rgba(255,193,7,.45); color:#ffc107; }
.builder-list-row { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.5rem; margin-bottom:.5rem; }
.builder-seed { width:1.75rem; height:1.75rem; border-radius:999px; display:grid; place-items:center; background:rgba(255,193,7,.16); color:#ffc107; font-weight:800; font-size:.8rem; }
.builder-warning { border:1px solid rgba(255,193,7,.18); background:rgba(255,193,7,.055); }
.double-elim-controls { border:1px solid rgba(255,255,255,.08); border-radius:1rem; padding:.75rem; background:rgba(255,255,255,.035); }
.builder-game-row { display:grid; grid-template-columns:minmax(110px,.8fr) minmax(120px,1fr) auto minmax(120px,1fr) auto; gap:.5rem; align-items:center; margin-bottom:.5rem; }
.builder-vs { color:rgba(255,255,255,.52); font-size:.8rem; text-transform:uppercase; letter-spacing:.08em; }
.builder-validation .alert { border:0; }
.preview-block { margin-bottom:1.1rem; }
.preview-pool { border:1px solid rgba(255,255,255,.1); border-radius:1rem; padding:.75rem; margin:.55rem 0; background:rgba(255,255,255,.035); }
.preview-pool ol { margin:.5rem 0 0; padding-left:1.25rem; color:rgba(255,255,255,.75); }
.preview-bracket { display:flex; gap:.75rem; overflow-x:auto; padding-bottom:.4rem; }
.preview-round { min-width:185px; border:1px solid rgba(255,255,255,.11); border-radius:1rem; background:rgba(255,255,255,.035); padding:.7rem; }
.preview-round > strong { display:block; margin-bottom:.55rem; color:#fff; }
.preview-matchup { border:1px solid rgba(255,255,255,.1); border-radius:.75rem; padding:.55rem; margin-bottom:.5rem; background:rgba(0,0,0,.22); }
.preview-matchup span { display:block; font-weight:700; color:rgba(255,255,255,.86); }
.preview-matchup em { display:block; font-size:.68rem; color:#ffc107; font-style:normal; text-transform:uppercase; letter-spacing:.08em; margin:.2rem 0; }
@media (max-width: 1100px) { .builder-mode-strip { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 700px) { .builder-mode-strip { grid-template-columns: 1fr; } .builder-game-row,.builder-pool-head,.builder-round-head { grid-template-columns: 1fr; } .builder-vs { display:none; } }

/* Light Broadcast Theme Refinement
   Goal: premium sports-network energy without the heavy all-dark treatment.
   This layer intentionally overrides the earlier dark-first design while keeping
   the same markup and component names. Overlays can remain broadcast-dark. */
:root {
  --ga-bg: #f6f8fc;
  --ga-bg-2: #eef3f8;
  --ga-card: #ffffff;
  --ga-card-2: #f9fbff;
  --ga-line: rgba(15, 23, 42, .10);
  --ga-line-strong: rgba(15, 23, 42, .18);
  --ga-text: #111827;
  --ga-muted: #64748b;
  --ga-blue: #0b72d9;
  --ga-red: #d82246;
  --ga-gold: #b77900;
  --ga-green: #047857;
  --ga-purple: #6d28d9;
  --ga-radius: 22px;
  --ga-shadow-soft: 0 18px 50px rgba(15, 23, 42, .08);
  --ga-shadow-hover: 0 24px 70px rgba(15, 23, 42, .13);
}

body.ga-light-theme {
  background:
    radial-gradient(circle at 12% -8%, rgba(11, 114, 217, .14), transparent 30%),
    radial-gradient(circle at 92% 0%, rgba(183, 121, 0, .12), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #f6f8fc 44%, #edf2f8 100%);
  color: var(--ga-text);
}
body.ga-light-theme a:hover { color: var(--ga-blue); }

body.ga-light-theme .ga-navbar {
  background: rgba(255, 255, 255, .92);
  border-bottom: 1px solid rgba(15, 23, 42, .10);
  box-shadow: 0 12px 34px rgba(15, 23, 42, .06);
}
body.ga-light-theme .navbar .nav-link,
body.ga-light-theme .navbar-brand,
body.ga-light-theme .navbar-brand span { color: #111827; }
body.ga-light-theme .navbar .nav-link:hover { color: var(--ga-blue); }
body.ga-light-theme .navbar .text-warning { color: #a16207 !important; }
body.ga-light-theme .ga-brand-mark {
  background: linear-gradient(135deg, #0b72d9, #14b8a6);
  box-shadow: 0 10px 28px rgba(11, 114, 217, .22);
}

body.ga-light-theme .ga-page { padding-top: 1.6rem; }
body.ga-light-theme .ga-card,
body.ga-light-theme .network-card,
body.ga-light-theme .club-card,
body.ga-light-theme .player-card,
body.ga-light-theme .builder-panel,
body.ga-light-theme .studio-form-section,
body.ga-light-theme .ga-tournament-builder {
  background: #ffffff;
  color: var(--ga-text);
  border: 1px solid rgba(15, 23, 42, .10);
  box-shadow: var(--ga-shadow-soft);
}
body.ga-light-theme .ga-card-lift:hover {
  border-color: rgba(11, 114, 217, .28);
  box-shadow: var(--ga-shadow-hover);
}
body.ga-light-theme .ga-panel,
body.ga-light-theme .ga-glass,
body.ga-light-theme .ga-stat,
body.ga-light-theme .studio-toggle-card,
body.ga-light-theme .studio-check-line,
body.ga-light-theme .studio-module-tile,
body.ga-light-theme .studio-pool-card,
body.ga-light-theme .builder-pool-card,
body.ga-light-theme .builder-round-card,
body.ga-light-theme .preview-pool,
body.ga-light-theme .preview-round,
body.ga-light-theme .double-elim-controls {
  background: #f8fafc;
  color: var(--ga-text);
  border-color: rgba(15, 23, 42, .10);
}
body.ga-light-theme .builder-mode-card,
body.ga-light-theme .builder-entry-chip,
body.ga-light-theme .preview-matchup {
  background: #ffffff;
  color: var(--ga-text);
  border-color: rgba(15, 23, 42, .12);
}
body.ga-light-theme .builder-mode-card:hover,
body.ga-light-theme .studio-toggle-card:hover {
  border-color: rgba(11, 114, 217, .32);
  background: #f0f7ff;
}

body.ga-light-theme .ga-hero,
body.ga-light-theme .baseball-hero,
body.ga-light-theme .gamecast-topper,
body.ga-light-theme .team-hero,
body.ga-light-theme .league-hero,
body.ga-light-theme .tournament-hero,
body.ga-light-theme .studio-config-hero {
  background:
    radial-gradient(circle at 12% 8%, rgba(11, 114, 217, .16), transparent 30%),
    radial-gradient(circle at 88% 4%, rgba(183, 121, 0, .12), transparent 32%),
    linear-gradient(135deg, #ffffff, #eef6ff 52%, #f9fafb);
  color: #0f172a;
  border: 1px solid rgba(15, 23, 42, .10);
  box-shadow: 0 28px 80px rgba(15, 23, 42, .10);
}
body.ga-light-theme .ga-hero:before { background: linear-gradient(120deg, transparent 0 38%, rgba(255,255,255,.55) 40%, transparent 48%); }
body.ga-light-theme .ga-title,
body.ga-light-theme .ga-section-title,
body.ga-light-theme .section-title,
body.ga-light-theme .studio-config-hero h1,
body.ga-light-theme .studio-toggle-card strong,
body.ga-light-theme .studio-check-line,
body.ga-light-theme .studio-admin-row strong,
body.ga-light-theme .studio-pool-card strong,
body.ga-light-theme .preview-round > strong,
body.ga-light-theme .preview-matchup span,
body.ga-light-theme .headline-link,
body.ga-light-theme h1,
body.ga-light-theme h2,
body.ga-light-theme h3,
body.ga-light-theme h4,
body.ga-light-theme h5,
body.ga-light-theme h6 { color: #0f172a; }
body.ga-light-theme .ga-gradient-text {
  background: linear-gradient(90deg, #0f172a 0%, #0b72d9 48%, #0f766e 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
body.ga-light-theme .ga-muted,
body.ga-light-theme .studio-toggle-card small,
body.ga-light-theme .studio-admin-row small,
body.ga-light-theme .studio-config-hero p,
body.ga-light-theme .studio-readiness-row span,
body.ga-light-theme .builder-help,
body.ga-light-theme .builder-vs,
body.ga-light-theme .builder-mode-card small,
body.ga-light-theme .preview-pool ol { color: #64748b; }
body.ga-light-theme .ga-kicker { color: #0b72d9; }

body.ga-light-theme .ga-chip {
  background: #eef6ff;
  border-color: rgba(11, 114, 217, .16);
  color: #17446d;
}
body.ga-light-theme .badge-live {
  background: #fff1f2;
  border-color: #fecdd3;
  color: #be123c;
}
body.ga-light-theme .badge-premium {
  background: #fffbeb;
  border-color: #fde68a;
  color: #92400e;
}

body.ga-light-theme .ga-ticker {
  background: #ffffff;
  border-block: 1px solid rgba(15, 23, 42, .08);
  box-shadow: 0 10px 30px rgba(15, 23, 42, .04);
}
body.ga-light-theme .ga-ticker strong { color: #0f172a; }

body.ga-light-theme .ga-table,
body.ga-light-theme .table {
  --bs-table-bg: transparent;
  --bs-table-color: #0f172a;
  --bs-table-border-color: rgba(15, 23, 42, .10);
  color: #0f172a;
}
body.ga-light-theme .ga-table thead th,
body.ga-light-theme .table thead th {
  color: #475569;
  border-bottom-color: rgba(11, 114, 217, .22);
  background: #f8fafc;
}
body.ga-light-theme .table-hover tbody tr:hover { --bs-table-hover-bg: #f0f7ff; }

body.ga-light-theme .ga-score,
body.ga-light-theme .team-line strong,
body.ga-light-theme .score-row strong,
body.ga-light-theme .ga-stat-value { color: #0f172a; }
body.ga-light-theme .scoreboard-xl {
  background: #ffffff;
  border-color: rgba(15, 23, 42, .12);
}
body.ga-light-theme .team-logo,
body.ga-light-theme .team-logo-lg,
body.ga-light-theme .ga-team-logo {
  background: #eef2f7;
  border-color: rgba(15, 23, 42, .12);
  color: #0f172a;
}
body.ga-light-theme .base.occupied {
  background: #f59e0b !important;
  border-color: #b45309 !important;
  color: #111827 !important;
}
body.ga-light-theme .bases .base,
body.ga-light-theme .diamond-board .base {
  border-color: rgba(15, 23, 42, .38);
  background: #ffffff;
  color: #475569;
}

body.ga-light-theme .ga-command-btn,
body.ga-light-theme .scorebook-action,
body.ga-light-theme .scorebook-runner-control {
  background: #ffffff;
  border-color: rgba(15, 23, 42, .12);
  color: #0f172a;
  box-shadow: 0 10px 22px rgba(15, 23, 42, .06);
}
body.ga-light-theme .ga-command-btn:hover,
body.ga-light-theme .scorebook-action:hover,
body.ga-light-theme .scorebook-runner-control:hover {
  background: #eef6ff;
  border-color: rgba(11, 114, 217, .30);
}

body.ga-light-theme .ga-admin-shell { color: #0f172a; }
body.ga-light-theme .ga-sidebar {
  background: #ffffff;
  border-color: rgba(15, 23, 42, .10);
  box-shadow: var(--ga-shadow-soft);
}
body.ga-light-theme .ga-sidebar a { color: #334155; }
body.ga-light-theme .ga-sidebar a:hover {
  background: #eef6ff;
  color: #0b72d9;
}
body.ga-light-theme .studio-preview-hero,
body.ga-light-theme .studio-tournament-preview {
  background:
    radial-gradient(circle at top left, rgba(11, 114, 217, .16), transparent 34%),
    linear-gradient(135deg, #ffffff, #eef6ff);
  color: #0f172a;
  border-color: rgba(15, 23, 42, .10);
}
body.ga-light-theme .studio-preview-hero strong,
body.ga-light-theme .studio-tournament-preview strong,
body.ga-light-theme .studio-tournament-preview small { color: #0f172a; }
body.ga-light-theme .studio-preview-logo {
  background: #ffffff;
  color: #0b72d9;
  border-color: rgba(11, 114, 217, .18);
}

body.ga-light-theme .form-control,
body.ga-light-theme .form-select,
body.ga-light-theme .form-check-input,
body.ga-light-theme .studio-config-form .form-control,
body.ga-light-theme .studio-config-form .form-select {
  background: #ffffff;
  border-color: rgba(15, 23, 42, .16);
  color: #0f172a;
}
body.ga-light-theme .form-control::placeholder,
body.ga-light-theme .studio-config-form .form-control::placeholder { color: #94a3b8; }
body.ga-light-theme .form-control:focus,
body.ga-light-theme .form-select:focus,
body.ga-light-theme .studio-config-form .form-control:focus,
body.ga-light-theme .studio-config-form .form-select:focus {
  background: #ffffff;
  color: #0f172a;
  border-color: #0b72d9;
  box-shadow: 0 0 0 .22rem rgba(11, 114, 217, .12);
}
body.ga-light-theme .form-label,
body.ga-light-theme .studio-config-form .form-label { color: #334155; }
body.ga-light-theme .form-text,
body.ga-light-theme .studio-config-form .form-text { color: #64748b; }

body.ga-light-theme .btn-ga {
  --bs-btn-bg: #0b72d9;
  --bs-btn-color: #ffffff;
  --bs-btn-hover-bg: #075fb7;
  --bs-btn-hover-color: #ffffff;
  box-shadow: 0 12px 28px rgba(11, 114, 217, .22);
}
body.ga-light-theme .btn-outline-ga {
  border-color: rgba(11, 114, 217, .35);
  color: #0b72d9;
  background: #ffffff;
}
body.ga-light-theme .btn-outline-ga:hover {
  background: #0b72d9;
  border-color: #0b72d9;
  color: #ffffff;
}

body.ga-light-theme .ga-media-img,
body.ga-light-theme .ga-placeholder-media {
  background: linear-gradient(135deg, #e0f2fe, #fef3c7);
  border-color: rgba(15, 23, 42, .10);
  color: #0f172a;
}
body.ga-light-theme footer .ga-card { background: #ffffff; }

/* Keep broadcast overlays dark by design, even while app UI is lighter. */
body.ga-overlay-body,
body.ga-overlay-body .scorebug-pro > div {
  color: #ffffff;
}

/* Readability + Admin Experience Fix
   This layer fixes the light-theme contrast problems and turns admin show pages
   into previews/control rooms instead of raw metadata grids. */
body.ga-light-theme {
  background: #f6f8fc !important;
  color: #0f172a !important;
}
body.ga-light-theme a { color: #0b5fb7; }
body.ga-light-theme a:hover { color: #083f7d; }
body.ga-light-theme .navbar.ga-navbar {
  background: rgba(255,255,255,.94) !important;
  border-bottom: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: 0 8px 24px rgba(15,23,42,.06);
}
body.ga-light-theme .navbar .nav-link,
body.ga-light-theme .navbar-brand,
body.ga-light-theme .navbar .fw-bold { color: #0f172a !important; }
body.ga-light-theme .ga-card,
body.ga-light-theme .network-card,
body.ga-light-theme .club-card,
body.ga-light-theme .player-card,
body.ga-light-theme .ga-panel,
body.ga-light-theme .ga-glass,
body.ga-light-theme .ga-stat,
body.ga-light-theme .builder-panel,
body.ga-light-theme .builder-pool-card,
body.ga-light-theme .builder-round-card,
body.ga-light-theme .preview-pool,
body.ga-light-theme .preview-round,
body.ga-light-theme .preview-matchup,
body.ga-light-theme .studio-access-card,
body.ga-light-theme .studio-config-hero,
body.ga-light-theme .studio-pool-card,
body.ga-light-theme .bracket-round,
body.ga-light-theme .bracket-matchup {
  background: #ffffff !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.11) !important;
  box-shadow: 0 14px 34px rgba(15,23,42,.07) !important;
}
body.ga-light-theme .ga-hero,
body.ga-light-theme .baseball-hero,
body.ga-light-theme .gamecast-topper {
  background:
    radial-gradient(circle at top left, rgba(11,114,217,.14), transparent 34%),
    linear-gradient(135deg, #ffffff, #eef6ff 58%, #fff7df) !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.10) !important;
  box-shadow: 0 22px 50px rgba(15,23,42,.08) !important;
}
body.ga-light-theme .ga-title,
body.ga-light-theme .ga-section-title,
body.ga-light-theme .section-title,
body.ga-light-theme h1,
body.ga-light-theme h2,
body.ga-light-theme h3,
body.ga-light-theme h4,
body.ga-light-theme h5,
body.ga-light-theme h6,
body.ga-light-theme strong,
body.ga-light-theme .fw-bold,
body.ga-light-theme .fw-black,
body.ga-light-theme .headline-link,
body.ga-light-theme .preview-round > strong,
body.ga-light-theme .preview-matchup span {
  color: #0f172a !important;
}
body.ga-light-theme .ga-muted,
body.ga-light-theme .text-muted,
body.ga-light-theme small,
body.ga-light-theme .preview-pool ol,
body.ga-light-theme .builder-help,
body.ga-light-theme .builder-mode-card small,
body.ga-light-theme .builder-vs {
  color: #64748b !important;
}
body.ga-light-theme .ga-kicker {
  color: #0b72d9 !important;
}
body.ga-light-theme .ga-chip,
body.ga-light-theme .builder-entry-chip {
  background: #f1f5f9 !important;
  border-color: rgba(15,23,42,.10) !important;
  color: #334155 !important;
}
body.ga-light-theme .badge,
body.ga-light-theme .badge-live,
body.ga-light-theme .badge-premium {
  color: #0f172a;
}
body.ga-light-theme .ga-table,
body.ga-light-theme .table {
  --bs-table-bg: #ffffff;
  --bs-table-color: #0f172a;
  --bs-table-border-color: rgba(15,23,42,.10);
  color: #0f172a !important;
}
body.ga-light-theme .ga-table thead th,
body.ga-light-theme .table thead th {
  color: #334155 !important;
  background: #f8fafc;
  border-bottom-color: rgba(15,23,42,.14) !important;
}
body.ga-light-theme .btn-outline-light {
  color: #0b5fb7 !important;
  border-color: rgba(11,95,183,.35) !important;
  background: #ffffff !important;
}
body.ga-light-theme .btn-outline-light:hover {
  color: #ffffff !important;
  background: #0b5fb7 !important;
  border-color: #0b5fb7 !important;
}
body.ga-light-theme .btn-outline-warning {
  color: #8a5a00 !important;
  background: #fffaf0 !important;
  border-color: rgba(180,115,0,.35) !important;
}
body.ga-light-theme .btn-outline-info {
  color: #075985 !important;
  background: #f0f9ff !important;
  border-color: rgba(7,89,133,.30) !important;
}
body.ga-light-theme .text-white,
body.ga-light-theme .text-light { color: #0f172a !important; }
body.ga-light-theme .text-warning { color: #b45309 !important; }
body.ga-light-theme .text-info { color: #075985 !important; }
body.ga-light-theme .text-success { color: #15803d !important; }
body.ga-light-theme .text-danger { color: #b91c1c !important; }
body.ga-light-theme .border-secondary-subtle,
body.ga-light-theme .border-bottom { border-color: rgba(15,23,42,.10) !important; }
body.ga-light-theme .ga-ticker {
  background: #ffffff !important;
  border-color: rgba(15,23,42,.10) !important;
  color: #0f172a !important;
}
body.ga-light-theme .ga-score,
body.ga-light-theme .team-line strong,
body.ga-light-theme .score-row strong {
  color: #b45309 !important;
}
body.ga-light-theme .scoreboard-xl {
  background: #ffffff !important;
  border-color: rgba(15,23,42,.10) !important;
}
body.ga-light-theme .alert { color: #0f172a; }
body.ga-light-theme .dropdown-menu { background: #ffffff; color: #0f172a; border-color: rgba(15,23,42,.10); }

.admin-show-hero {
  background:
    radial-gradient(circle at 8% 12%, rgba(11,114,217,.14), transparent 32%),
    linear-gradient(135deg, #ffffff 0%, #f3f8ff 62%, #fff9e8 100%);
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 28px;
  padding: 1.35rem;
  box-shadow: 0 18px 44px rgba(15,23,42,.07);
}
.admin-show-title { font-size: clamp(2rem, 4vw, 4.3rem); font-weight: 1000; letter-spacing: -.065em; line-height: .94; }
.admin-preview-frame { border-radius: 24px; overflow: hidden; background: #0f172a; min-height: 315px; border: 1px solid rgba(15,23,42,.12); box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); }
.admin-preview-frame iframe { width: 100%; min-height: 390px; border: 0; display: block; }
.admin-video-placeholder { min-height: 360px; display: grid; place-items: center; color: #ffffff; background: radial-gradient(circle at 30% 20%, rgba(14,165,233,.35), transparent 34%), linear-gradient(135deg,#0f172a,#1e293b); }
.admin-video-placeholder .play-orb { width: 86px; height: 86px; border-radius: 50%; display: grid; place-items: center; background: rgba(255,255,255,.92); color:#0f172a; font-weight: 1000; box-shadow: 0 14px 40px rgba(0,0,0,.28); }
.admin-live-status { display:inline-flex; align-items:center; gap:.5rem; border-radius:999px; padding:.42rem .72rem; font-weight:900; background:#eef6ff; color:#0b5fb7; border:1px solid rgba(11,95,183,.18); }
.admin-live-status.live { background:#fff1f2; color:#be123c; border-color:rgba(190,18,60,.20); }
.admin-object-card { background:#ffffff; border:1px solid rgba(15,23,42,.10); border-radius:22px; padding:1rem; box-shadow:0 10px 26px rgba(15,23,42,.055); }
.admin-object-card .label { text-transform:uppercase; letter-spacing:.12em; font-size:.72rem; font-weight:900; color:#64748b; }
.admin-object-card .value { color:#0f172a; font-weight:800; overflow-wrap:anywhere; }
.admin-action-list a, .admin-action-list .btn { justify-content:space-between; text-align:left; }
.admin-raw-details { background:#f8fafc; border:1px solid rgba(15,23,42,.08); border-radius:18px; padding:1rem; }
.admin-raw-details summary { cursor:pointer; font-weight:900; color:#334155; }
.admin-raw-details table { margin-top:1rem; }

/* Readability + scorebook usability pass — high contrast, no outline-only headings, no cramped cards. */
body.ga-light-theme {
  background: #f5f7fb !important;
  color: #111827 !important;
}
body.ga-light-theme a { color: #075ec7; }
body.ga-light-theme p,
body.ga-light-theme li,
body.ga-light-theme label,
body.ga-light-theme .form-label,
body.ga-light-theme .card-text { color: #334155 !important; }
body.ga-light-theme .ga-hero-title,
body.ga-light-theme .franchise-title,
body.ga-light-theme .athlete-title,
body.ga-light-theme .admin-show-title,
body.ga-light-theme .league-title,
body.ga-light-theme .tournament-title,
body.ga-light-theme .hero-title {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  background: none !important;
  line-height: 1.02 !important;
  letter-spacing: -0.055em !important;
}
body.ga-light-theme .ga-card,
body.ga-light-theme .content-card,
body.ga-light-theme .story-card,
body.ga-light-theme .media-card,
body.ga-light-theme .team-command-card,
body.ga-light-theme .fan-metric,
body.ga-light-theme .season-switcher,
body.ga-light-theme .scorebook-card,
body.ga-light-theme .admin-object-card,
body.ga-light-theme .builder-panel,
body.ga-light-theme .league-card,
body.ga-light-theme .tournament-card {
  background: #ffffff !important;
  border-color: rgba(15, 23, 42, .12) !important;
  color: #111827 !important;
  box-shadow: 0 16px 42px rgba(15, 23, 42, .07) !important;
}
body.ga-light-theme .season-tab {
  background: #ffffff !important;
  border: 1px solid rgba(15, 23, 42, .14) !important;
  color: #075ec7 !important;
  min-width: max-content;
}
body.ga-light-theme .season-tab.active,
body.ga-light-theme .season-tab:hover {
  background: #eaf4ff !important;
  border-color: rgba(7, 94, 199, .32) !important;
  color: #0f172a !important;
}
body.ga-light-theme .scorebook-shell {
  color: #111827 !important;
}
body.ga-light-theme .scorebook-title,
body.ga-light-theme .scorebook-section-title,
body.ga-light-theme .scorebook-card h1,
body.ga-light-theme .scorebook-card h2,
body.ga-light-theme .scorebook-card h3,
body.ga-light-theme .scorebook-card h4,
body.ga-light-theme .scorebook-card h5 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}
body.ga-light-theme .scorebook-help,
body.ga-light-theme .scorebook-card .ga-muted,
body.ga-light-theme .scorebook-card small {
  color: #475569 !important;
}
body.ga-light-theme .scorebook-game-strip,
body.ga-light-theme .scorebook-team-score,
body.ga-light-theme .scorebook-inning-card {
  background: #ffffff !important;
  color: #0f172a !important;
  border-color: rgba(15, 23, 42, .12) !important;
}
body.ga-light-theme .scorebook-team-score strong,
body.ga-light-theme .scorebook-inning-card strong {
  color: #c2410c !important;
}
.scorebook-pa-board { display: grid; gap: 1rem; }
.scorebook-result-bank {
  border: 1px solid rgba(15,23,42,.10);
  background: #f8fafc;
  border-radius: 22px;
  padding: 1rem;
}
.scorebook-bank-title {
  color: #334155;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .76rem;
  font-weight: 1000;
  margin-bottom: .7rem;
}
.scorebook-result-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
  gap: .65rem;
}
.scorebook-result-form { margin: 0; }
.scorebook-result-chip {
  width: 100%;
  min-height: 68px;
  border: 1px solid rgba(7,94,199,.20);
  border-radius: 18px;
  background: #ffffff;
  color: #0f172a;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: .62rem;
  padding: .7rem .78rem;
  font-weight: 900;
  box-shadow: 0 10px 22px rgba(15,23,42,.055);
}
.scorebook-result-chip strong {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  flex: 0 0 42px;
  background: #eaf4ff;
  color: #075ec7 !important;
  border: 1px solid rgba(7,94,199,.20);
}
.scorebook-result-chip span { color: #0f172a; overflow-wrap: anywhere; }
.scorebook-result-chip:hover { transform: translateY(-2px); border-color: rgba(7,94,199,.45); }
.scorebook-result-chip.out-chip strong { background: #fff7ed; color: #c2410c !important; border-color: rgba(194,65,12,.18); }
.scorebook-advanced-play {
  border: 1px dashed rgba(15,23,42,.18);
  background: #ffffff;
  border-radius: 18px;
  padding: .9rem 1rem;
  color: #334155;
}
.scorebook-advanced-play summary { cursor: pointer; color: #0f172a; font-weight: 900; }
.scorebook-advanced-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: .8rem; }
.scorebook-advanced-form { display: grid; gap: .5rem; border: 1px solid rgba(15,23,42,.10); border-radius: 16px; padding: .85rem; background: #f8fafc; }
.advanced-form-head { display: flex; align-items: center; gap: .55rem; font-weight: 900; color: #0f172a; }
.advanced-form-head strong { color: #075ec7 !important; }
body.ga-light-theme .result-grid,
body.ga-light-theme .result-card { background: transparent !important; }
body.ga-light-theme .pitch-btn {
  background: #ffffff !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.14) !important;
}
body.ga-light-theme .pitch-btn strong { color: #075ec7 !important; }
body.ga-light-theme .pitch-btn span { color: #334155 !important; }
body.ga-light-theme .lineup-row,
body.ga-light-theme .scorebook-log-row {
  background: #f8fafc !important;
  border-color: rgba(15,23,42,.10) !important;
  color: #0f172a !important;
}
body.ga-light-theme .lineup-row strong,
body.ga-light-theme .scorebook-log-row strong { color: #0f172a !important; }
body.ga-light-theme .lineup-row.current { background: #eaf4ff !important; border-color: rgba(7,94,199,.28) !important; }
body.ga-light-theme .scorebook-diamond .diamond-base,
body.ga-light-theme .diamond-plate {
  background: #ffffff !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.20) !important;
}
body.ga-light-theme .scorebook-diamond .diamond-base.occupied {
  background: #eaf4ff !important;
  border-color: rgba(7,94,199,.35) !important;
}
body.ga-light-theme .scorebook-diamond .diamond-base span,
body.ga-light-theme .scorebook-diamond .diamond-base strong { color: #0f172a !important; }
body.ga-light-theme .form-control,
body.ga-light-theme .form-select {
  color: #0f172a !important;
  background-color: #ffffff !important;
  border-color: rgba(15,23,42,.18) !important;
}
body.ga-light-theme .form-control::placeholder { color: #64748b !important; opacity: 1; }
@media (max-width: 900px) {
  .scorebook-result-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .scorebook-result-chip { min-height: 62px; }
}

/* Unified scorecard system: keeps home page, event cards, league tickers, and GameCenter previews visually consistent. */
.ga-scorecard {
  --scorecard-bg: #ffffff;
  --scorecard-text: #0f172a;
  --scorecard-muted: #475569;
  --scorecard-border: rgba(15, 23, 42, .12);
  --scorecard-soft: #f8fafc;
  --scorecard-accent: #075ec7;
  background: var(--scorecard-bg) !important;
  color: var(--scorecard-text) !important;
  border: 1px solid var(--scorecard-border) !important;
  border-radius: 28px;
  box-shadow: 0 22px 60px rgba(15, 23, 42, .08);
  padding: 1.35rem;
  overflow: hidden;
  min-width: 0;
}
.ga-scorecard * { color: inherit; }
.ga-scorecard__meta {
  display: flex;
  justify-content: space-between;
  gap: .9rem;
  align-items: center;
  margin-bottom: 1rem;
}
.ga-scorecard__status {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  border-radius: 999px;
  padding: .42rem .72rem;
  background: #eef2f7;
  color: #0f172a !important;
  border: 1px solid rgba(15, 23, 42, .10);
  font-size: .72rem;
  font-weight: 1000;
  letter-spacing: .03em;
  text-transform: uppercase;
  line-height: 1;
  white-space: nowrap;
}
.ga-scorecard__status::before {
  content: "";
  width: .48rem;
  height: .48rem;
  border-radius: 999px;
  background: #94a3b8;
  flex: 0 0 auto;
}
.ga-scorecard__status.is-live { background: #fff1f2; color: #9f1239 !important; border-color: #fecdd3; }
.ga-scorecard__status.is-live::before { background: #ef4444; box-shadow: 0 0 0 .22rem rgba(239, 68, 68, .12); }
.ga-scorecard__status.is-final { background: #f1f5f9; color: #334155 !important; }
.ga-scorecard__time { color: var(--scorecard-muted) !important; font-size: .88rem; font-weight: 800; text-align: right; }
.ga-scorecard__teams { display: grid; gap: .7rem; }
.ga-scorecard__team {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
  min-width: 0;
}
.ga-scorecard__identity {
  display: flex;
  align-items: center;
  gap: .8rem;
  min-width: 0;
}
.ga-scorecard__logo {
  width: 44px;
  height: 44px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  background: #eaf4ff;
  color: #0f172a !important;
  border: 1px solid rgba(7, 94, 199, .16);
  font-weight: 1000;
  letter-spacing: -.04em;
  font-size: .92rem;
  overflow: hidden;
}
.ga-scorecard__team-copy { min-width: 0; }
.ga-scorecard__team-copy strong {
  display: block;
  color: #0f172a !important;
  font-size: clamp(.98rem, 1.5vw, 1.14rem);
  font-weight: 1000;
  line-height: 1.08;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ga-scorecard__team-copy small { display: block; color: #64748b !important; font-weight: 900; margin-top: .14rem; }
.ga-scorecard__score {
  color: #b45309 !important;
  font-size: clamp(2.15rem, 6vw, 3.6rem);
  font-weight: 1000;
  line-height: .92;
  letter-spacing: -.075em;
  font-variant-numeric: tabular-nums;
  min-width: 2ch;
  text-align: right;
}
.ga-scorecard__baseball {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 88px auto;
  gap: 1rem;
  align-items: center;
  margin-top: 1.15rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(15, 23, 42, .10);
}
.ga-scorecard__situation span,
.ga-scorecard__count span,
.ga-scorecard__footer {
  display: block;
  color: #075ec7 !important;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: .68rem;
  font-weight: 1000;
}
.ga-scorecard__situation strong,
.ga-scorecard__count strong { color: #0f172a !important; font-weight: 1000; font-size: .98rem; }
.ga-scorecard__count { text-align: right; }
.ga-scorecard__count strong { font-size: 1.25rem; font-variant-numeric: tabular-nums; }
.ga-scorecard__diamond {
  position: relative;
  width: 78px;
  height: 54px;
  margin: 0 auto;
}
.ga-scorecard__diamond .base {
  position: absolute;
  width: 22px;
  height: 22px;
  background: #ffffff;
  border: 2px solid #cbd5e1;
  transform: rotate(45deg);
  box-shadow: 0 3px 8px rgba(15, 23, 42, .08);
}
.ga-scorecard__diamond .base.occupied { background: #fbbf24; border-color: #b45309; }
.ga-scorecard__diamond .second { top: 0; left: 28px; }
.ga-scorecard__diamond .third { top: 26px; left: 2px; }
.ga-scorecard__diamond .first { top: 26px; right: 2px; }
.ga-scorecard__footer { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid rgba(15, 23, 42, .10); }
.ga-scorecard--compact {
  border-radius: 22px;
  padding: 1rem;
  box-shadow: none;
  background: #ffffff !important;
}
.ga-scorecard--compact .ga-scorecard__meta { margin-bottom: .82rem; }
.ga-scorecard--compact .ga-scorecard__team { gap: .75rem; }
.ga-scorecard--compact .ga-scorecard__logo { width: 40px; height: 40px; flex-basis: 40px; border-radius: 14px; }
.ga-scorecard--compact .ga-scorecard__score { font-size: 2.25rem; }
.ga-scorecard--compact .ga-scorecard__baseball { grid-template-columns: 1fr auto; gap: .75rem; }
.ga-scorecard--compact .ga-scorecard__diamond { grid-column: 1 / -1; order: 3; margin-top: .25rem; }
.event-card-unified { position: relative; padding: .65rem !important; background: #ffffff !important; color: #0f172a !important; }
.event-card-unified__body { padding: .95rem .85rem .85rem; }
.event-card-unified__title { font-size: 1.08rem; line-height: 1.18; font-weight: 1000; margin: .25rem 0 .75rem; color: #0f172a !important; }
.event-card-unified__title a { color: #0f172a !important; text-decoration: none; }
.event-card-unified__chips { display: flex; flex-wrap: wrap; gap: .45rem; }
.event-card-unified .ga-chip { color: #334155 !important; background: #f8fafc !important; border-color: rgba(15,23,42,.10) !important; }
body.ga-light-theme .broadcast-scoreboard { background: #ffffff !important; color: #0f172a !important; border-color: rgba(15,23,42,.12) !important; }
body.ga-light-theme .hero-game-card .text-white,
body.ga-light-theme .event-card-unified .text-white { color: #0f172a !important; }
body.ga-light-theme .hero-game-card,
body.ga-light-theme .network-card,
body.ga-light-theme .lead-story-card,
body.ga-light-theme .partner-strip-pro { color: #0f172a !important; }
body.ga-light-theme .ga-kicker { color: #075ec7 !important; }
@media (max-width: 575px) {
  .ga-scorecard { padding: 1rem; border-radius: 22px; }
  .ga-scorecard__meta { align-items: flex-start; }
  .ga-scorecard__team-copy strong { font-size: .98rem; }
  .ga-scorecard__score { font-size: 2.35rem; }
  .ga-scorecard__baseball { grid-template-columns: 1fr auto; }
  .ga-scorecard__diamond { grid-column: 1 / -1; }
}

/* True baseball diamond fix: replaces the generic field graphic with a conventional infield. */
.baseball-diamond,
.diamond-board,
.scorebook-diamond {
  --field-grass: #d9f0df;
  --field-grass-deep: #b7dfc1;
  --field-dirt: #d4b27c;
  --field-dirt-deep: #b8884a;
  --chalk: rgba(255,255,255,.88);
  --base-empty: #ffffff;
  --base-stroke: rgba(15,23,42,.34);
  position: relative !important;
  min-height: 310px !important;
  height: 310px !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  background:
    radial-gradient(ellipse at 50% 88%, rgba(180,128,72,.92) 0 20%, transparent 20.5%),
    radial-gradient(ellipse at 50% 62%, rgba(212,178,124,.88) 0 27%, transparent 27.5%),
    linear-gradient(180deg, var(--field-grass-deep), var(--field-grass)) !important;
  border: 1px solid rgba(15,23,42,.12) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.35), 0 16px 36px rgba(15,23,42,.08) !important;
}

/* Infield dirt diamond */
.baseball-diamond::before,
.diamond-board::before,
.scorebook-diamond::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 53%;
  width: 178px;
  height: 178px;
  transform: translate(-50%, -50%) rotate(45deg);
  background: linear-gradient(135deg, var(--field-dirt), var(--field-dirt-deep));
  border: 3px solid rgba(255,255,255,.82);
  box-shadow: inset 0 0 34px rgba(90,55,25,.20), 0 8px 20px rgba(90,55,25,.08);
  z-index: 1;
}

/* Mound */
.baseball-diamond::after,
.diamond-board::after,
.scorebook-diamond::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 54%;
  width: 58px;
  height: 40px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: radial-gradient(circle, #c59658, #a9783e);
  border: 2px solid rgba(255,255,255,.55);
  z-index: 2;
}

/* Public Gamecast bases */
.diamond-board .base {
  position: absolute !important;
  z-index: 4 !important;
  width: 34px !important;
  height: 34px !important;
  margin: 0 !important;
  border-radius: 5px !important;
  transform: translate(-50%, -50%) rotate(45deg) !important;
  background: var(--base-empty) !important;
  border: 2px solid var(--base-stroke) !important;
  color: #0f172a !important;
  display: grid !important;
  place-items: center !important;
  font-size: .58rem !important;
  font-weight: 1000 !important;
  box-shadow: 0 5px 10px rgba(15,23,42,.12) !important;
}
.diamond-board .base::before {
  content: attr(class);
  display: none;
}
.diamond-board .base.second { left: 50% !important; top: calc(53% - 89px) !important; right: auto !important; }
.diamond-board .base.first { left: calc(50% + 89px) !important; top: 53% !important; right: auto !important; }
.diamond-board .base.third { left: calc(50% - 89px) !important; top: 53% !important; right: auto !important; }
.diamond-board .base.occupied {
  background: #ffd166 !important;
  border-color: #9a6700 !important;
  color: #0f172a !important;
  box-shadow: 0 0 0 5px rgba(255,209,102,.22), 0 8px 16px rgba(15,23,42,.14) !important;
}
.diamond-board .base > *,
.diamond-board .base { line-height: 1 !important; }
.diamond-board .plate {
  position: absolute !important;
  left: 50% !important;
  top: calc(53% + 89px) !important;
  bottom: auto !important;
  width: 42px !important;
  height: 34px !important;
  transform: translate(-50%, -50%) !important;
  z-index: 5 !important;
  display: grid !important;
  place-items: center !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-size: .62rem !important;
  font-weight: 1000 !important;
  clip-path: polygon(8% 0, 92% 0, 92% 62%, 50% 100%, 8% 62%) !important;
  filter: drop-shadow(0 5px 9px rgba(15,23,42,.13));
}

/* Scorekeeper diamond bases */
.scorebook-diamond .diamond-base {
  position: absolute !important;
  z-index: 4 !important;
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
  border-radius: 5px !important;
  transform: translate(-50%, -50%) rotate(45deg) !important;
  background: var(--base-empty) !important;
  border: 2px solid var(--base-stroke) !important;
  box-shadow: 0 5px 10px rgba(15,23,42,.12) !important;
}
.scorebook-diamond .diamond-base span,
.scorebook-diamond .diamond-base strong {
  transform: rotate(-45deg) !important;
  color: #0f172a !important;
  font-weight: 1000 !important;
}
.scorebook-diamond .diamond-base span { font-size: .56rem !important; margin-top: -13px !important; }
.scorebook-diamond .diamond-base strong { font-size: .58rem !important; margin-top: 12px !important; }
.scorebook-diamond .base-second { left: 50% !important; top: calc(53% - 89px) !important; }
.scorebook-diamond .base-first { left: calc(50% + 89px) !important; top: 53% !important; right: auto !important; }
.scorebook-diamond .base-third { left: calc(50% - 89px) !important; top: 53% !important; }
.scorebook-diamond .diamond-base.occupied {
  background: #ffd166 !important;
  border-color: #9a6700 !important;
  box-shadow: 0 0 0 5px rgba(255,209,102,.22), 0 8px 16px rgba(15,23,42,.14) !important;
}
.scorebook-diamond .diamond-plate {
  position: absolute !important;
  left: 50% !important;
  top: calc(53% + 89px) !important;
  bottom: auto !important;
  width: 44px !important;
  height: 36px !important;
  transform: translate(-50%, -50%) !important;
  z-index: 5 !important;
  display: grid !important;
  place-items: center !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-size: .62rem !important;
  font-weight: 1000 !important;
  clip-path: polygon(8% 0, 92% 0, 92% 62%, 50% 100%, 8% 62%) !important;
  filter: drop-shadow(0 5px 9px rgba(15,23,42,.13));
}

/* Make Diamond View text match the light UI even when older templates use text-white. */
body.ga-light-theme .network-card h1,
body.ga-light-theme .network-card h2,
body.ga-light-theme .network-card h3,
body.ga-light-theme .network-card .text-white {
  color: #0f172a !important;
}

@media (max-width: 575px) {
  .diamond-board,
  .scorebook-diamond { min-height: 260px !important; height: 260px !important; }
  .diamond-board::before,
  .scorebook-diamond::before { width: 146px; height: 146px; }
  .diamond-board .base.second,
  .scorebook-diamond .base-second { top: calc(53% - 73px) !important; }
  .diamond-board .base.first,
  .scorebook-diamond .base-first { left: calc(50% + 73px) !important; }
  .diamond-board .base.third,
  .scorebook-diamond .base-third { left: calc(50% - 73px) !important; }
  .diamond-board .plate,
  .scorebook-diamond .diamond-plate { top: calc(53% + 73px) !important; }
}

/* GameCast + article media editor polish */
.article-editor-shell .ga-card,
.gamecast-page .network-card {
  background: #ffffff !important;
  color: #101828 !important;
  border: 1px solid rgba(15, 23, 42, .10) !important;
  box-shadow: 0 14px 40px rgba(15, 23, 42, .07) !important;
}
.article-editor-shell .form-label,
.article-editor-shell h1,
.article-editor-shell h2,
.article-editor-shell h3,
.gamecast-page h1,
.gamecast-page h2,
.gamecast-page h3,
.gamecast-page strong { color: #101828 !important; }
.article-body-input { min-height: 420px; font-size: 1.02rem; line-height: 1.6; }
.media-pick-grid,
.article-embed-grid,
.article-photo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1rem;
}
.media-pick-card,
.article-embed-card,
.article-photo-card {
  display: grid;
  grid-template-columns: 88px 1fr;
  gap: .85rem;
  align-items: center;
  padding: .75rem;
  border: 1px solid rgba(15, 23, 42, .12);
  border-radius: 18px;
  background: #fff;
  color: #101828 !important;
  text-decoration: none;
  min-height: 108px;
}
.media-pick-card { cursor: pointer; position: relative; }
.media-pick-card input { position: absolute; top: .65rem; left: .65rem; z-index: 2; }
.media-pick-card.selected { border-color: #1683f3; box-shadow: 0 0 0 4px rgba(22,131,243,.12); }
.media-pick-card img,
.article-embed-card img,
.article-photo-card img {
  width: 88px;
  height: 74px;
  object-fit: cover;
  border-radius: 14px;
  background: #eef2f7;
}
.article-embed-card { grid-template-columns: 148px 1fr; align-items: stretch; }
.article-embed-card img { width: 148px; height: 112px; }
.media-pick-card strong,
.article-embed-card h3,
.article-photo-card strong { display: block; color: #101828 !important; font-size: .96rem; line-height: 1.2; }
.media-pick-card small,
.article-embed-card p,
.article-photo-card small { display: block; color: #667085 !important; font-size: .82rem; margin: .25rem 0 0; }
.article-hero-image { max-height: 520px; object-fit: cover; }
.article-body-card { color: #182230 !important; }
.article-body-card p { color: #182230 !important; }

.gamecast-topper {
  background: linear-gradient(180deg, #f8fbff, #ffffff) !important;
  color: #101828 !important;
}
.gamecast-topper .text-white,
.gamecast-topper .text-white-50 { color: #475467 !important; }
.pitch-chart-live {
  position: relative;
  height: 300px;
  border-radius: 22px;
  background: linear-gradient(180deg, #f8fbff, #ffffff);
  border: 1px solid rgba(15,23,42,.10);
  display: grid;
  place-items: center;
}
.strike-zone-live {
  position: relative;
  width: 48%;
  height: 72%;
  border: 3px solid #101828;
  background: repeating-linear-gradient(90deg, transparent 0 32.5%, rgba(16,24,40,.08) 32.5% 33.5%, transparent 33.5% 65.5%, rgba(16,24,40,.08) 65.5% 66.5%, transparent 66.5%), repeating-linear-gradient(0deg, transparent 0 32.5%, rgba(16,24,40,.08) 32.5% 33.5%, transparent 33.5% 65.5%, rgba(16,24,40,.08) 65.5% 66.5%, transparent 66.5%);
  border-radius: 10px;
}
.pitch-dot-live {
  position: absolute;
  width: 26px;
  height: 26px;
  transform: translate(-50%, -50%);
  border-radius: 999px;
  display: grid;
  place-items: center;
  font-size: .7rem;
  font-weight: 900;
  background: #1683f3;
  color: #fff;
  box-shadow: 0 6px 12px rgba(22,131,243,.25);
}
.pitch-dot-live.ball { background: #f59e0b; }
.pitch-dot-live.called-strike,
.pitch-dot-live.swinging-strike { background: #12b76a; }
.pitch-dot-live.foul { background: #7c3aed; }
.spray-field-live {
  position: relative;
  height: 300px;
  overflow: hidden;
  border-radius: 22px;
  background: radial-gradient(circle at 50% 95%, #b08968 0 18%, transparent 19%), radial-gradient(circle at 50% 92%, rgba(180,83,9,.18) 0 36%, transparent 37%), radial-gradient(circle at 50% 95%, #d1fadf 0 74%, #ecfdf3 75% 100%);
  border: 1px solid rgba(15,23,42,.10);
}
.spray-field-live::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 9%;
  width: 220px;
  height: 220px;
  transform: translateX(-50%) rotate(45deg);
  border-left: 2px solid rgba(16,24,40,.28);
  border-top: 2px solid rgba(16,24,40,.28);
}
.spray-dot-live {
  position: absolute;
  width: 14px;
  height: 14px;
  transform: translate(-50%, -50%);
  border-radius: 999px;
  background: #ef4444;
  border: 2px solid #fff;
  box-shadow: 0 6px 14px rgba(239,68,68,.28);
}
.spray-dot-live.ground-ball { background: #12b76a; }
.spray-dot-live.line-drive { background: #1683f3; }
.spray-dot-live.fly-ball { background: #f59e0b; }
.gamecast-mini-list { display: grid; gap: .5rem; }
.gamecast-mini-list > div {
  display: flex;
  justify-content: space-between;
  gap: .75rem;
  padding: .65rem .75rem;
  border-radius: 12px;
  background: #f8fafc;
  border: 1px solid rgba(15,23,42,.08);
}
.gamecast-mini-list span { color: #667085 !important; font-size: .85rem; text-align: right; }
.gamecast-empty-action {
  display: grid;
  gap: .35rem;
  padding: 1rem;
  background: #f8fafc;
  border: 1px dashed rgba(15,23,42,.20);
  border-radius: 16px;
  color: #475467;
}
@media (max-width: 575px) {
  .article-embed-card,
  .media-pick-card,
  .article-photo-card { grid-template-columns: 1fr; }
  .article-embed-card img,
  .media-pick-card img,
  .article-photo-card img { width: 100%; height: 150px; }
}

/* --------------------------------------------------------------------------
   READABILITY PASS: HERO CONTRAST + LIGHT BROADCAST SURFACES
   --------------------------------------------------------------------------
   These rules intentionally come last. Earlier iterations mixed dark hero
   gradients with dark headline text. The public product now defaults to a
   bright, readable broadcast look while leaving /overlays dark for OBS/vMix.
*/
body.ga-light-theme {
  --ga-page-bg: #f5f8fc;
  --ga-surface: #ffffff;
  --ga-surface-soft: #f8fafc;
  --ga-text-strong: #101828;
  --ga-text: #182230;
  --ga-text-muted: #475467;
  --ga-blue: #0b72d9;
  --ga-gold: #f4b400;
}

body.ga-light-theme .network-hero-pro,
body.ga-light-theme .gamecenter-hero,
body.ga-light-theme .clubhouse-hero,
body.ga-light-theme .player-hero,
body.ga-light-theme .franchise-hero,
body.ga-light-theme .athlete-hero,
body.ga-light-theme .league-hub-hero,
body.ga-light-theme .league-reg-hero,
body.ga-light-theme .ga-hero,
body.ga-light-theme .baseball-hero,
body.ga-light-theme .team-hero,
body.ga-light-theme .tournament-hero,
body.ga-light-theme .studio-hero-pro,
body.ga-light-theme .studio-config-hero,
body.ga-light-theme .admin-show-hero {
  background:
    radial-gradient(circle at 8% 8%, rgba(11,114,217,.10), transparent 30%),
    radial-gradient(circle at 88% 6%, rgba(244,180,0,.13), transparent 34%),
    linear-gradient(135deg, #ffffff 0%, #f3f8ff 56%, #fffaf0 100%) !important;
  color: var(--ga-text-strong) !important;
  border: 1px solid rgba(16,24,40,.10) !important;
  box-shadow: 0 22px 54px rgba(16,24,40,.08) !important;
  text-shadow: none !important;
}

body.ga-light-theme .network-hero-pro *,
body.ga-light-theme .gamecenter-hero *,
body.ga-light-theme .clubhouse-hero *,
body.ga-light-theme .player-hero *,
body.ga-light-theme .franchise-hero *,
body.ga-light-theme .athlete-hero *,
body.ga-light-theme .league-hub-hero *,
body.ga-light-theme .league-reg-hero *,
body.ga-light-theme .ga-hero *,
body.ga-light-theme .baseball-hero *,
body.ga-light-theme .team-hero *,
body.ga-light-theme .tournament-hero *,
body.ga-light-theme .studio-hero-pro *,
body.ga-light-theme .studio-config-hero *,
body.ga-light-theme .admin-show-hero * {
  text-shadow: none !important;
}

body.ga-light-theme .ga-title,
body.ga-light-theme .display-1,
body.ga-light-theme .display-2,
body.ga-light-theme .display-3,
body.ga-light-theme .display-4,
body.ga-light-theme .network-hero-pro h1,
body.ga-light-theme .gamecenter-hero h1,
body.ga-light-theme .clubhouse-hero h1,
body.ga-light-theme .player-hero h1,
body.ga-light-theme .franchise-hero h1,
body.ga-light-theme .athlete-hero h1,
body.ga-light-theme .league-hub-hero h1,
body.ga-light-theme .league-reg-hero h1,
body.ga-light-theme .admin-show-title {
  color: var(--ga-text-strong) !important;
  -webkit-text-fill-color: var(--ga-text-strong) !important;
  background: none !important;
  font-weight: 900 !important;
  letter-spacing: -.035em !important;
  line-height: 1.04 !important;
  opacity: 1 !important;
}

body.ga-light-theme .lead,
body.ga-light-theme .ga-muted,
body.ga-light-theme .text-white,
body.ga-light-theme .text-white-50,
body.ga-light-theme .network-hero-pro p,
body.ga-light-theme .gamecenter-hero p,
body.ga-light-theme .clubhouse-hero p,
body.ga-light-theme .player-hero p,
body.ga-light-theme .franchise-hero p,
body.ga-light-theme .athlete-hero p,
body.ga-light-theme .league-hub-hero p,
body.ga-light-theme .league-reg-hero p,
body.ga-light-theme .admin-show-hero p {
  color: var(--ga-text-muted) !important;
  opacity: 1 !important;
}

body.ga-light-theme .ga-kicker,
body.ga-light-theme .league-hub-kicker,
body.ga-light-theme .studio-kicker {
  color: var(--ga-blue) !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
}

body.ga-light-theme .hero-orbit,
body.ga-light-theme .league-hub-hero-bg,
body.ga-light-theme .ga-gradient-text {
  display: none !important;
}

body.ga-light-theme .network-card,
body.ga-light-theme .hero-game-card,
body.ga-light-theme .ga-card,
body.ga-light-theme .ga-stat,
body.ga-light-theme .metric-tile,
body.ga-light-theme .sponsor-panel,
body.ga-light-theme .league-reg-hero-panel,
body.ga-light-theme .league-registration-card,
body.ga-light-theme .admin-preview-card,
body.ga-light-theme .studio-panel,
body.ga-light-theme .studio-form-section,
body.ga-light-theme .scorebook-card,
body.ga-light-theme .scorebook-panel {
  background: #ffffff !important;
  color: var(--ga-text-strong) !important;
  border: 1px solid rgba(16,24,40,.10) !important;
  box-shadow: 0 16px 38px rgba(16,24,40,.07) !important;
}

body.ga-light-theme .network-card h1,
body.ga-light-theme .network-card h2,
body.ga-light-theme .network-card h3,
body.ga-light-theme .network-card h4,
body.ga-light-theme .network-card h5,
body.ga-light-theme .hero-game-card h1,
body.ga-light-theme .hero-game-card h2,
body.ga-light-theme .hero-game-card h3,
body.ga-light-theme .ga-card h1,
body.ga-light-theme .ga-card h2,
body.ga-light-theme .ga-card h3,
body.ga-light-theme .ga-stat strong,
body.ga-light-theme .metric-tile strong {
  color: var(--ga-text-strong) !important;
}

body.ga-light-theme .ga-stat .ga-kicker,
body.ga-light-theme .metric-tile span {
  color: #0b72d9 !important;
}

body.ga-light-theme .btn-outline-ga,
body.ga-light-theme .btn-outline-info,
body.ga-light-theme .btn-outline-warning {
  background: #ffffff !important;
  color: #0b3b69 !important;
  border-color: rgba(11,114,217,.32) !important;
}
body.ga-light-theme .btn-outline-ga:hover,
body.ga-light-theme .btn-outline-info:hover,
body.ga-light-theme .btn-outline-warning:hover {
  background: #eef6ff !important;
  color: #072f57 !important;
}

/* Keep the public scorecard crisp and consistent inside bright heroes. */
body.ga-light-theme .scorecard-unified,
body.ga-light-theme .scoreboard-panel,
body.ga-light-theme .scoreboard-xl,
body.ga-light-theme .live-game-card {
  background: #ffffff !important;
  color: var(--ga-text-strong) !important;
  border: 1px solid rgba(16,24,40,.12) !important;
  box-shadow: 0 18px 42px rgba(16,24,40,.10) !important;
}
body.ga-light-theme .scorecard-unified *,
body.ga-light-theme .scoreboard-panel *,
body.ga-light-theme .scoreboard-xl *,
body.ga-light-theme .live-game-card * {
  text-shadow: none !important;
}
body.ga-light-theme .scorecard-unified .score,
body.ga-light-theme .scoreboard-panel .score,
body.ga-light-theme .scoreboard-xl .score,
body.ga-light-theme .live-game-card .score {
  color: #b45309 !important;
}

@media (max-width: 768px) {
  body.ga-light-theme .gamecenter-hero,
  body.ga-light-theme .network-hero-pro,
  body.ga-light-theme .ga-hero {
    border-radius: 24px !important;
  }
  body.ga-light-theme .ga-title,
  body.ga-light-theme .display-3,
  body.ga-light-theme .display-4 {
    font-size: clamp(2rem, 9vw, 3rem) !important;
    line-height: 1.08 !important;
  }
}


/* GA360 dark broadcast readability + scorebug state cleanup
   Keeps top GameCenter sections dark, makes headline copy readable, and removes
   duplicate baseball state language in overlays. */
body.ga-light-theme .gamecenter-hero,
body.ga-light-theme .network-hero-pro,
body.ga-light-theme .baseball-hero,
body.ga-light-theme .gamecast-topper {
  background:
    radial-gradient(circle at 12% 8%, rgba(255,207,63,.18), transparent 28%),
    radial-gradient(circle at 88% 0%, rgba(25,211,255,.18), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0f2a49 58%, #07111f 100%) !important;
  color: #f8fafc !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 28px 85px rgba(5, 12, 24, .32) !important;
}

body.ga-light-theme .gamecenter-hero h1,
body.ga-light-theme .network-hero-pro h1,
body.ga-light-theme .baseball-hero h1,
body.ga-light-theme .gamecast-topper h1,
body.ga-light-theme .gamecenter-hero .ga-title,
body.ga-light-theme .network-hero-pro .network-headline {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: none !important;
  font-size: clamp(2.25rem, 4.5vw, 4.7rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.055em !important;
  font-weight: 950 !important;
  max-width: 980px;
}

body.ga-light-theme .gamecenter-hero .lead,
body.ga-light-theme .network-hero-pro .lead,
body.ga-light-theme .baseball-hero .lead,
body.ga-light-theme .gamecast-topper .ga-muted,
body.ga-light-theme .gamecenter-hero .ga-muted,
body.ga-light-theme .network-hero-pro .ga-muted,
body.ga-light-theme .baseball-hero .ga-muted {
  color: #d5e6f7 !important;
}

body.ga-light-theme .gamecenter-hero .ga-stat,
body.ga-light-theme .network-hero-pro .ga-stat,
body.ga-light-theme .baseball-hero .ga-stat {
  background: rgba(255,255,255,.96) !important;
  color: #111827 !important;
  border: 1px solid rgba(255,255,255,.42) !important;
  box-shadow: 0 16px 38px rgba(0,0,0,.18) !important;
}

body.ga-light-theme .gamecenter-hero .ga-stat strong,
body.ga-light-theme .network-hero-pro .ga-stat strong,
body.ga-light-theme .baseball-hero .ga-stat strong {
  color: #111827 !important;
}

body.ga-light-theme .gamecenter-hero .btn-ga,
body.ga-light-theme .network-hero-pro .btn-ga,
body.ga-light-theme .baseball-hero .btn-ga {
  color: #fff !important;
}

body.ga-light-theme .gamecenter-hero .btn-outline-ga,
body.ga-light-theme .gamecenter-hero .btn-outline-info,
body.ga-light-theme .gamecenter-hero .btn-outline-warning,
body.ga-light-theme .network-hero-pro .btn-outline-ga,
body.ga-light-theme .network-hero-pro .btn-outline-info,
body.ga-light-theme .network-hero-pro .btn-outline-warning,
body.ga-light-theme .baseball-hero .btn-outline-ga,
body.ga-light-theme .baseball-hero .btn-outline-info,
body.ga-light-theme .baseball-hero .btn-outline-warning {
  background: rgba(255,255,255,.95) !important;
  color: #0b3b69 !important;
  border-color: rgba(255,255,255,.55) !important;
}

/* More compact hero on wide screens so it feels premium, not oversized. */
@media (min-width: 1200px) {
  body.ga-light-theme .gamecenter-hero,
  body.ga-light-theme .network-hero-pro,
  body.ga-light-theme .baseball-hero {
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important;
  }
}

/* Clean broadcast scorebug: one status line, one count line, one outs indicator. */
.scorebug-pro--clean {
  width: 900px;
  max-width: 100vw;
  min-height: 76px;
  display: grid;
  grid-template-columns: minmax(190px,1fr) 110px 110px minmax(190px,1fr) 210px;
  overflow: hidden;
  border-radius: 0 0 16px 16px;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 18px 60px rgba(0,0,0,.45);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.scorebug-pro--clean > div { min-width: 0; }
.scorebug-pro--clean .bug-team {
  display:flex;align-items:center;gap:.75rem;
  padding: 13px 18px;
  background: #151820;
  color:#fff;
  border-right:1px solid rgba(255,255,255,.14);
  font-weight:950;
  letter-spacing:-.03em;
  text-transform: uppercase;
}
.scorebug-pro--clean .bug-team-name { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.scorebug-pro--clean .bug-mark {
  width:34px;height:34px;flex:0 0 34px;border-radius:999px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#79d7ff,#e83e73);
  color:#fff;font-size:.7rem;font-weight:950;letter-spacing:0;
}
.scorebug-pro--clean .bug-score {
  display:grid;place-items:center;
  background:linear-gradient(180deg,#ffe576,#ffc928);
  color:#07111f;
  font-size:2.35rem;
  line-height:1;
  font-weight:1000;
  font-variant-numeric: tabular-nums;
  border-right:1px solid rgba(255,255,255,.2);
}
.scorebug-pro--clean .bug-state {
  display:flex;flex-direction:column;justify-content:center;gap:.24rem;
  padding: 10px 18px;
  background:#141821;
  color:#eaf7ff;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:.75rem;
  font-weight:900;
}
.scorebug-pro--clean .bug-state-main { color:#c9f2ff; white-space:nowrap; }
.scorebug-pro--clean .bug-count { display:flex;gap:.75rem;color:#fff;letter-spacing:.08em; }
.scorebug-pro--clean .bug-bottom-row { display:flex;align-items:center;justify-content:space-between;gap:.75rem; }
.scorebug-pro--clean .bug-outs { display:flex;align-items:center;gap:.28rem;color:#9fb0c9;font-size:.62rem;letter-spacing:.12em; }
.scorebug-pro--clean .bug-outs i { width:8px;height:8px;border-radius:999px;background:#3a4353;border:1px solid #5b6474;display:inline-block; }
.scorebug-pro--clean .bug-outs i.is-on { background:#ffcf3f;border-color:#ffd66c;box-shadow:0 0 0 2px rgba(255,207,63,.15); }
.scorebug-pro--clean .bug-bases { width:44px;height:30px;position:relative;flex:0 0 44px; }
.scorebug-pro--clean .bug-bases .base { position:absolute;width:12px;height:12px;transform:rotate(45deg);background:#2c3340;border:1px solid #8993a4; }
.scorebug-pro--clean .bug-bases .base.on { background:#ffcf3f;border-color:#ffe28a; }
.scorebug-pro--clean .bug-bases .second { left:16px;top:0; }
.scorebug-pro--clean .bug-bases .third { left:1px;top:15px; }
.scorebug-pro--clean .bug-bases .first { right:1px;top:15px; }
.scorebug-pro--clean + .sponsor-strip {
  width: 475px;
  margin-left: 28px;
  margin-top: -2px;
  border-radius:0 0 999px 999px;
  background:rgba(9,13,21,.94);
  color:#ffdc52;
  border:1px solid rgba(255,207,63,.45);
  box-shadow:0 10px 28px rgba(0,0,0,.35);
}

/* Prevent old overlay status/count/bases rules from leaking into the clean scorebug. */
.scorebug-pro--clean .status,
.scorebug-pro--clean .team,
.scorebug-pro--clean .score { all: unset; }


/* Broadcast scorebug v2: clear state modules, no duplicated outs/count text. */
.scorebug-broadcast-v2 {
  width: 1152px;
  max-width: calc(100vw - 24px);
  min-height: 86px;
  display: grid;
  grid-template-columns: minmax(210px, 1fr) 104px 104px minmax(210px, 1fr) 112px 112px 92px 82px;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 18px 58px rgba(0,0,0,.42);
  background: #11151e;
  color: #fff;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.scorebug-broadcast-v2 > * { min-width: 0; }
.scorebug-broadcast-v2 .bug-side {
  display:flex;align-items:center;gap:.72rem;
  padding: 0 20px;
  background:#151923;
  border-right:1px solid rgba(255,255,255,.12);
  font-weight:950;
  letter-spacing:-.025em;
  text-transform:uppercase;
}
.scorebug-broadcast-v2 .bug-side--home { border-left:1px solid rgba(255,255,255,.1); }
.scorebug-broadcast-v2 .bug-logo {
  width:34px;height:34px;flex:0 0 34px;border-radius:999px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#78d7ff,#e83e73);
  color:#fff;font-weight:950;font-size:.72rem;letter-spacing:0;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.25);
}
.scorebug-broadcast-v2 .bug-team-text {
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-size:1.25rem;line-height:1;
}
.scorebug-broadcast-v2 .bug-score {
  position: relative;
  display:grid;place-items:center;
  min-width: 104px;
  background:linear-gradient(180deg,#ffe472,#ffc525);
  color:#06101d;
  font-size:2.4rem;
  line-height:1;
  font-weight:1000;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.03em;
  border-right:1px solid rgba(255,255,255,.18);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}
.scorebug-broadcast-v2 .bug-score--away::after {
  content:"";
  position:absolute;
  top:16px;
  bottom:16px;
  right:-1px;
  width:2px;
  background:rgba(10,16,28,.22);
}
.scorebug-broadcast-v2 .bug-score--home {
  border-left:1px solid rgba(255,255,255,.22);
}
.scorebug-broadcast-v2 .bug-status-panel,
.scorebug-broadcast-v2 .bug-count-panel,
.scorebug-broadcast-v2 .bug-bases-panel,
.scorebug-broadcast-v2 .bug-outs-panel {
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:.18rem;
  background:#121720;
  border-left:1px solid rgba(255,255,255,.11);
  padding: 8px 10px;
  text-align:center;
}
.scorebug-broadcast-v2 .bug-status-panel { align-items:flex-start;text-align:left;padding-left:18px; }
.scorebug-broadcast-v2 .bug-status-panel.is-final { align-items:center;text-align:center; }
.scorebug-broadcast-v2 .bug-inning,
.scorebug-broadcast-v2 .bug-final-label {
  color:#f4fbff;
  font-size:.92rem;
  line-height:1;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.scorebug-broadcast-v2 .bug-live {
  color:#8ee5ff;
  font-size:.7rem;
  line-height:1;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.scorebug-broadcast-v2 .bug-panel-label {
  color:#8ee5ff;
  font-size:.57rem;
  line-height:1;
  font-weight:950;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.scorebug-broadcast-v2 .bug-count-values {
  display:flex;gap:.55rem;
  color:#fff;
  font-size:1.03rem;
  font-weight:1000;
  letter-spacing:.05em;
  white-space:nowrap;
}
.scorebug-broadcast-v2 .bug-bases-v2 {
  width:44px;height:31px;position:relative;margin-top:2px;
}
.scorebug-broadcast-v2 .bug-bases-v2 .base {
  position:absolute;width:12px;height:12px;transform:rotate(45deg);
  background:#2d3441;border:1.5px solid #8894a8;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.05);
}
.scorebug-broadcast-v2 .bug-bases-v2 .base.on { background:#ffbd20;border-color:#ffe18b;box-shadow:0 0 0 2px rgba(255,189,32,.18); }
.scorebug-broadcast-v2 .bug-bases-v2 .second { left:16px;top:0; }
.scorebug-broadcast-v2 .bug-bases-v2 .third { left:1px;top:15px; }
.scorebug-broadcast-v2 .bug-bases-v2 .first { right:1px;top:15px; }
.scorebug-broadcast-v2 .bug-out-dots { display:flex;gap:5px;margin-top:3px; }
.scorebug-broadcast-v2 .bug-out-dots i {
  width:10px;height:10px;border-radius:999px;
  background:#303744;border:1px solid #707b90;
}
.scorebug-broadcast-v2 .bug-out-dots i.is-on { background:#ffbd20;border-color:#ffe18b;box-shadow:0 0 0 2px rgba(255,189,32,.18); }
.sponsor-strip--v2 {
  display:inline-flex;
  align-items:center;
  width:auto;
  max-width:min(760px, calc(100vw - 48px));
  min-height:38px;
  padding:8px 18px 9px;
  margin-left: 24px;
  margin-top: 8px;
  border-radius:0 0 18px 18px;
  background:rgba(10,13,20,.98);
  color:#ffdc52;
  border:1px solid rgba(255,207,63,.5);
  box-shadow:0 10px 28px rgba(0,0,0,.35);
  font-weight:900;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media (max-width: 980px) {
  .scorebug-broadcast-v2 { grid-template-columns: 1fr 62px 62px 1fr; width: calc(100vw - 16px); }
  .scorebug-broadcast-v2 .bug-status-panel,
  .scorebug-broadcast-v2 .bug-count-panel,
  .scorebug-broadcast-v2 .bug-bases-panel,
  .scorebug-broadcast-v2 .bug-outs-panel { grid-column:auto; min-height:46px; }
  .scorebug-broadcast-v2 .bug-team-text { font-size:1rem; }
  .scorebug-broadcast-v2 .bug-score { font-size:1.8rem; }
}

/* Scorekeeper Pro functional scoring workflow */
.scorebook-pro .scorebook-card {
  color: #111827;
  background: #ffffff;
  border: 1px solid rgba(15, 23, 42, .12);
  box-shadow: 0 16px 40px rgba(15, 23, 42, .10);
}
.scorebook-pro .scorebook-readable-title,
.scorebook-pro .scorebook-card h1,
.scorebook-pro .scorebook-card h2,
.scorebook-pro .scorebook-card h3,
.scorebook-pro .scorebook-card h4,
.scorebook-pro .scorebook-card h5 { color: #111827 !important; }
.scorebook-pro .scorebook-readable-muted,
.scorebook-pro .scorebook-card .ga-muted { color: #536178 !important; }
.scorebook-layout-pro { align-items: start; }
.scorebook-section-head { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; flex-wrap:wrap; }
.scorebook-pitch-workspace,
.scorebook-play-workspace { display:grid; grid-template-columns: minmax(260px, 360px) 1fr; gap:1.25rem; align-items:start; }
.scorebook-zone-picker {
  display:grid; grid-template-columns:repeat(3, 1fr); gap:6px;
  padding:18px; border-radius:24px;
  background:linear-gradient(180deg, #eef6ff, #dbeafe);
  border:1px solid rgba(30, 64, 175, .18);
  aspect-ratio: 1 / 1;
  max-width: 360px;
}
.zone-cell {
  border:2px solid rgba(15,23,42,.22);
  background:rgba(255,255,255,.82);
  border-radius:14px;
  color:#0f172a;
  font-weight:1000;
  font-size:1.05rem;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.45);
}
.zone-cell:hover,
.zone-cell.is-selected { background:#ffcf3f; border-color:#b7791f; transform:translateY(-1px); }
.pitch-result-grid { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:.65rem; }
.pitch-result-button,
.scorebook-result-select {
  border:1px solid rgba(15,23,42,.14);
  background:#f8fafc;
  color:#111827;
  border-radius:16px;
  padding:.85rem .9rem;
  display:flex; align-items:center; gap:.65rem;
  font-weight:900;
  text-align:left;
}
.pitch-result-button strong,
.scorebook-result-select strong {
  min-width:42px; height:42px; border-radius:13px;
  display:grid; place-items:center;
  background:#e0f2fe; color:#075985;
  font-weight:1000;
}
.pitch-result-button:hover,
.scorebook-result-select:hover,
.scorebook-result-select.is-selected { background:#fff7dc; border-color:#f0b429; box-shadow:0 10px 24px rgba(217,119,6,.16); }
.scorebook-result-matrix { display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:.65rem; }
.scorebook-spray-picker {
  position:relative; overflow:hidden;
  height:330px;
  border-radius:28px;
  background:
    radial-gradient(circle at 50% 92%, #c8b99b 0 20%, transparent 21%),
    radial-gradient(circle at 50% 94%, rgba(255,255,255,.95) 0 2%, transparent 3%),
    linear-gradient(180deg, #d9fbe8 0%, #bdeccf 52%, #eef7ef 100%);
  border:1px solid rgba(22,101,52,.18);
  box-shadow: inset 0 -42px 80px rgba(150,115,65,.22);
}
.scorebook-spray-picker:before,
.scorebook-spray-picker:after {
  content:""; position:absolute; left:50%; bottom:8%; width:2px; height:88%; background:rgba(255,255,255,.92); transform-origin:bottom center;
}
.scorebook-spray-picker:before { transform:rotate(-38deg); }
.scorebook-spray-picker:after { transform:rotate(38deg); }
.spray-arc { position:absolute; left:12%; right:12%; top:12%; height:58%; border-top:2px dashed rgba(21,128,61,.22); border-radius:50% 50% 0 0; }
.spray-target {
  position:absolute; transform:translate(-50%, -50%);
  border:2px solid rgba(15,23,42,.18);
  background:#ffffff;
  color:#0f172a;
  border-radius:999px;
  width:48px; height:48px;
  font-weight:1000;
  box-shadow:0 10px 20px rgba(15,23,42,.14);
  z-index:3;
}
.spray-target.is-selected,
.spray-target:hover { background:#ffcf3f; border-color:#b7791f; }
.spray-target.left{left:25%;top:42%}.spray-target.left-center{left:38%;top:29%}.spray-target.center{left:50%;top:22%}.spray-target.right-center{left:62%;top:29%}.spray-target.right{left:75%;top:42%}.spray-target.infield-left{left:34%;top:66%}.spray-target.mound{left:50%;top:68%}.spray-target.infield-right{left:66%;top:66%}.spray-target.home{left:50%;top:90%}
.spray-selected-marker { position:absolute; width:18px; height:18px; border-radius:999px; transform:translate(-50%, -50%); background:#ef4444; border:3px solid #fff; box-shadow:0 0 0 3px rgba(239,68,68,.25); z-index:4; }
.scorebook-empty-mini { border-radius:16px; padding:1rem; background:#f8fafc; color:#64748b; font-weight:800; }
.true-diamond--scorebook { background:linear-gradient(180deg, #dff6e7, #f3f8f4) !important; }
.scorebook-pro .lineup-row strong,
.scorebook-pro .scorebook-log-row strong { color:#111827; }
.scorebook-pro .lineup-row small,
.scorebook-pro .scorebook-log-row small { color:#64748b; }
@media (max-width: 980px) {
  .scorebook-pitch-workspace,
  .scorebook-play-workspace { grid-template-columns: 1fr; }
  .scorebook-result-matrix { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}

/* Plate appearance quick-action scorebook refinement */
.scorebook-pa-quick-card .scorebook-quick-groups { display: grid; gap: 1rem; }
.scorebook-quick-group { border: 1px solid rgba(15,23,42,.10); border-radius: 22px; background: #ffffff; padding: 1rem; box-shadow: 0 10px 28px rgba(15,23,42,.05); }
.scorebook-quick-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: .8rem; flex-wrap: wrap; }
.scorebook-quick-heading strong { color: #0f172a; font-weight: 1000; font-size: 1.02rem; }
.scorebook-quick-heading span { color: #64748b; font-weight: 750; font-size: .88rem; }
.scorebook-result-matrix.compact { grid-template-columns: repeat(auto-fit, minmax(118px, 1fr)); gap: .55rem; }
.scorebook-result-matrix.compact .scorebook-result-select { min-height: 74px; padding: .65rem; border-radius: 16px; }
.scorebook-result-matrix.compact .scorebook-result-select strong { width: 42px; height: 42px; border-radius: 14px; font-size: 1rem; }
.scorebook-result-matrix.compact .scorebook-result-select span { font-size: .82rem; }
.scorebook-result-matrix.outs .scorebook-result-select strong { background: #fff7ed; border-color: rgba(194,65,12,.20); color: #c2410c; }
.scorebook-result-matrix.no-bip .scorebook-result-select strong { background: #eef6ff; border-color: rgba(37,99,235,.20); color: #075ec7; }
.scorebook-runner-quick-card .runner-event-stack { display: grid; gap: .8rem; }
.runner-event-row { display: grid; grid-template-columns: 1fr; gap: .65rem; border: 1px solid rgba(15,23,42,.10); background: #fff; border-radius: 18px; padding: .75rem; }
.runner-event-base { display: flex; justify-content: space-between; gap: .75rem; align-items: center; color: #0f172a; }
.runner-event-base strong { width: 42px; height: 34px; border-radius: 12px; display: grid; place-items: center; background: #fff7dc; color: #8a5b00; border: 1px solid rgba(217,119,6,.16); }
.runner-event-base span { font-weight: 900; color: #334155; font-size: .86rem; overflow-wrap: anywhere; }
.runner-event-buttons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .4rem; }
.runner-event-form { margin: 0; }
.runner-event-button { width: 100%; min-height: 52px; border-radius: 14px; border: 1px solid rgba(15,23,42,.12); background: #f8fafc; color: #0f172a; display: grid; place-items: center; padding: .35rem; }
.runner-event-button:hover { border-color: rgba(7,94,199,.35); background: #eff6ff; }
.runner-event-button strong { display: block; font-size: .86rem; font-weight: 1000; }
.runner-event-button span { display: block; font-size: .54rem; line-height: 1.05; font-weight: 850; color: #475569; }
@media (max-width: 720px) { .runner-event-buttons { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Baseball spray chart field-location fix: shared field used by Scorekeeper and GameCast. */
.baseball-field-chart {
  --field-line: rgba(255,255,255,.88);
  --field-line-dark: rgba(15,23,42,.24);
  position: relative;
  height: 360px;
  min-height: 320px;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(15,23,42,.10);
  background:
    radial-gradient(ellipse at 50% 15%, rgba(21,128,61,.10) 0 34%, transparent 35%),
    linear-gradient(180deg, #dffbea 0%, #c4f1d4 47%, #edf8ee 100%);
  box-shadow: inset 0 -55px 90px rgba(139,92,38,.16);
  cursor: crosshair;
  isolation: isolate;
}
.baseball-field-chart .field-grass { position:absolute; inset:0; background: radial-gradient(ellipse at 50% 30%, rgba(16,185,129,.22) 0 42%, transparent 43%); z-index:0; }
.baseball-field-chart .outfield-arc { position:absolute; left:7%; right:7%; top:7%; height:58%; border-top:2px dashed rgba(22,101,52,.34); border-radius:50% 50% 0 0; z-index:1; }
.baseball-field-chart .foul-line { position:absolute; left:50%; bottom:8%; width:2px; height:95%; background: var(--field-line); transform-origin:bottom center; z-index:2; box-shadow: 0 0 0 1px rgba(15,23,42,.06); }
.baseball-field-chart .foul-line-left { transform:rotate(-42deg); }
.baseball-field-chart .foul-line-right { transform:rotate(42deg); }
.baseball-field-chart .infield-dirt-field { position:absolute; left:50%; bottom:9%; width:190px; height:190px; transform:translateX(-50%) rotate(45deg); border-radius:20px; background:linear-gradient(135deg, #c8a477, #b88458); border:1px solid rgba(120,70,25,.22); z-index:3; }
.baseball-field-chart .basepath-diamond { position:absolute; left:50%; bottom:13%; width:132px; height:132px; transform:translateX(-50%) rotate(45deg); border:3px solid rgba(255,255,255,.88); z-index:4; }
.baseball-field-chart .pitching-mound-field { position:absolute; left:50%; top:64%; width:34px; height:34px; transform:translate(-50%,-50%); border-radius:999px; background:#a86f45; border:3px solid rgba(255,255,255,.7); z-index:5; }
.baseball-field-chart .home-plate-field { position:absolute; left:50%; bottom:7%; width:24px; height:24px; transform:translateX(-50%) rotate(45deg); background:#fff; border:2px solid rgba(15,23,42,.25); z-index:6; }
.baseball-field-chart .spray-target { position:absolute; transform:translate(-50%, -50%); border:2px solid rgba(15,23,42,.18); background:#fff; color:#0f172a; border-radius:999px; min-width:44px; width:auto; height:44px; padding:0 .62rem; font-size:.78rem; font-weight:1000; box-shadow:0 10px 24px rgba(15,23,42,.14); z-index:8; cursor:pointer; }
.baseball-field-chart .spray-target.is-selected,
.baseball-field-chart .spray-target:hover { background:#ffcf3f; border-color:#b7791f; color:#0f172a; }
.baseball-field-chart .spray-target.third-base{left:34%;top:70%}.baseball-field-chart .spray-target.shortstop{left:42%;top:58%}.baseball-field-chart .spray-target.second-base{left:58%;top:58%}.baseball-field-chart .spray-target.first-base{left:66%;top:70%}.baseball-field-chart .spray-target.pitcher{left:50%;top:68%}.baseball-field-chart .spray-target.catcher{left:50%;top:92%}
.baseball-field-chart .spray-target.left{left:24%;top:42%}.baseball-field-chart .spray-target.left-center{left:38%;top:29%}.baseball-field-chart .spray-target.center{left:50%;top:20%}.baseball-field-chart .spray-target.right-center{left:62%;top:29%}.baseball-field-chart .spray-target.right{left:76%;top:42%}
.baseball-field-chart .spray-target.hr-left{left:17%;top:22%; font-size:.68rem}.baseball-field-chart .spray-target.hr-center{left:50%;top:8%; font-size:.68rem}.baseball-field-chart .spray-target.hr-right{left:83%;top:22%; font-size:.68rem}
.baseball-field-chart .spray-selected-marker { position:absolute; width:22px; height:22px; border-radius:999px; transform:translate(-50%, -50%); background:#ef4444; border:4px solid #fff; box-shadow:0 0 0 4px rgba(239,68,68,.25), 0 12px 22px rgba(15,23,42,.22); z-index:10; pointer-events:none; }
.baseball-field-chart .field-zone-label { position:absolute; z-index:7; transform:translate(-50%,-50%); color:rgba(15,23,42,.62); background:rgba(255,255,255,.72); border:1px solid rgba(15,23,42,.10); border-radius:999px; padding:.18rem .45rem; font-size:.68rem; font-weight:1000; letter-spacing:.04em; }
.baseball-field-chart .label-3b{left:34%;top:70%}.baseball-field-chart .label-ss{left:42%;top:58%}.baseball-field-chart .label-2b{left:58%;top:58%}.baseball-field-chart .label-1b{left:66%;top:70%}.baseball-field-chart .label-lf{left:24%;top:42%}.baseball-field-chart .label-cf{left:50%;top:20%}.baseball-field-chart .label-rf{left:76%;top:42%}.baseball-field-chart .label-hr{left:50%;top:8%}
.baseball-field-chart--gamecast .field-zone-label { pointer-events:none; }
.baseball-field-chart--gamecast .spray-dot-live { z-index:12; }
@media (max-width: 720px) {
  .baseball-field-chart { height:300px; min-height:280px; border-radius:22px; }
  .baseball-field-chart .spray-target { min-width:38px; height:38px; font-size:.68rem; padding:0 .45rem; }
  .baseball-field-chart .infield-dirt-field { width:154px; height:154px; }
  .baseball-field-chart .basepath-diamond { width:106px; height:106px; }
}

/* Base runner visibility + conventional third-out controls */
.scorebook-base-field,
.runner-base-map {
  position: relative;
  height: 210px;
  border-radius: 22px;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 50% 20%, rgba(16,185,129,.15) 0 42%, transparent 43%),
    linear-gradient(180deg, #e8fbef, #dff6e8 58%, #fff7ed 100%);
  border: 1px solid rgba(15,23,42,.10);
  box-shadow: inset 0 -34px 60px rgba(146, 88, 40, .15);
}
.scorebook-base-field .base-field-grass { position:absolute; inset:0; background: radial-gradient(ellipse at 50% 24%, rgba(22,163,74,.18) 0 45%, transparent 46%); }
.scorebook-base-field .base-field-dirt,
.runner-base-map .runner-base-map-dirt {
  position:absolute; left:50%; bottom:28px; width:118px; height:118px;
  transform: translateX(-50%) rotate(45deg);
  border-radius: 16px;
  background: linear-gradient(135deg, #c59b68, #b57a49);
  border: 1px solid rgba(120,70,25,.22);
}
.scorebook-base-field .base-field-paths,
.runner-base-map .runner-base-map-paths {
  position:absolute; left:50%; bottom:45px; width:86px; height:86px;
  transform: translateX(-50%) rotate(45deg);
  border: 3px solid rgba(255,255,255,.92);
  box-shadow: 0 0 0 1px rgba(15,23,42,.08);
}
.scorebook-base-field .base-field-mound { position:absolute; left:50%; top:58%; transform:translate(-50%,-50%); width:30px; height:30px; border-radius:999px; display:grid; place-items:center; background:#9a6a43; color:#fff; font-size:.7rem; font-weight:1000; border:2px solid rgba(255,255,255,.85); }
.scorebook-base-field .base-field-bag,
.runner-base-map .runner-map-base {
  position:absolute; transform:translate(-50%,-50%);
  display:grid; place-items:center; text-align:center;
  width:66px; min-height:58px; padding:.25rem;
  border-radius:16px;
  background:#ffffff;
  border:2px solid rgba(15,23,42,.14);
  color:#0f172a;
  box-shadow:0 10px 24px rgba(15,23,42,.12);
  z-index:4;
}
.scorebook-base-field .base-field-bag strong,
.runner-base-map .runner-map-base strong { font-size:.74rem; font-weight:1000; letter-spacing:.08em; color:#334155; }
.scorebook-base-field .base-field-bag span,
.runner-base-map .runner-map-base span { font-size:.68rem; line-height:1.05; font-weight:900; color:#64748b; max-width:58px; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.scorebook-base-field .base-field-bag.occupied,
.runner-base-map .runner-map-base.occupied { background:#ffcf3f; border-color:#b7791f; box-shadow:0 0 0 4px rgba(255,207,63,.16), 0 12px 24px rgba(15,23,42,.16); }
.scorebook-base-field .base-field-bag.occupied span,
.runner-base-map .runner-map-base.occupied span { color:#2f2410; }
.scorebook-base-field .base-field-bag.second,
.runner-base-map .runner-map-base.second { left:50%; top:19%; }
.scorebook-base-field .base-field-bag.third,
.runner-base-map .runner-map-base.third { left:25%; top:62%; }
.scorebook-base-field .base-field-bag.first,
.runner-base-map .runner-map-base.first { left:75%; top:62%; }
.scorebook-base-field .base-field-plate,
.runner-base-map .runner-map-plate { position:absolute; left:50%; bottom:12px; transform:translateX(-50%); width:44px; height:34px; display:grid; place-items:center; border-radius:12px 12px 18px 18px; background:#fff; border:2px solid rgba(15,23,42,.18); color:#0f172a; font-size:.72rem; font-weight:1000; z-index:5; }
.runner-base-map { height: 190px; border-radius: 18px; }
.runner-event-button--out { background:#fff7ed; border-color:rgba(194,65,12,.22); }
.runner-event-button--out strong { color:#c2410c; }
.runner-event-button--third-out { background:#fee2e2; border-color:rgba(185,28,28,.36); }
.runner-event-button em,
.scorebook-result-select em { display:block; margin-top:.1rem; font-style:normal; font-size:.58rem; line-height:1; color:#b91c1c; font-weight:1000; text-transform:uppercase; letter-spacing:.06em; }
.scorebook-result-select.will-end-inning { border-color:rgba(185,28,28,.34); background:#fff7f7; }
@media (max-width: 720px) {
  .scorebook-base-field { height:185px; }
  .runner-base-map { height:170px; }
  .scorebook-base-field .base-field-bag,
  .runner-base-map .runner-map-base { width:58px; min-height:52px; }
}

/* DARK GRADIENT SCOREKEEPER THEME FIX
   Restores premium dark score panels with high-contrast white text and neutral/gold accents. */
.scorebook-shell {
  background:
    radial-gradient(circle at 18% 0%, rgba(19, 111, 220, .20), transparent 32%),
    radial-gradient(circle at 90% 5%, rgba(255, 196, 57, .14), transparent 34%),
    linear-gradient(180deg, #07111f 0%, #101827 45%, #f6f8fb 45%, #eef3f8 100%);
  color: #f8fbff;
}
.scorebook-topbar,
.scorebook-topbar .ga-muted,
.scorebook-topbar .scorebook-title,
.scorebook-topbar h1 {
  color: #f8fbff !important;
}
.scorebook-topbar .ga-muted { color: #c8d7e8 !important; }
.scorebook-topbar .ga-kicker { color: #f7c948 !important; }

.scorebook-game-strip {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, 260px) minmax(0, 1fr);
  align-items: stretch;
  overflow: hidden;
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.03)),
    linear-gradient(135deg, #111827 0%, #0b1220 48%, #162033 100%);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 24px 70px rgba(8, 15, 27, .32), inset 0 1px 0 rgba(255,255,255,.10);
}
.scorebook-team-score {
  min-height: 116px;
  padding: 1.1rem 1.35rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: .35rem;
  color: #fff;
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.015));
}
.scorebook-team-score span {
  color: #f5f9ff !important;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: clamp(.95rem, 1.8vw, 1.2rem);
  line-height: 1.15;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.scorebook-team-score strong {
  color: #f7c948 !important;
  font-size: clamp(3rem, 6vw, 4.8rem);
  line-height: .86;
  font-weight: 1000;
  letter-spacing: -.06em;
  font-variant-numeric: tabular-nums;
  text-shadow: 0 8px 22px rgba(0,0,0,.25);
}
.scorebook-inning-card {
  min-height: 116px;
  padding: 1rem 1.2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .22rem;
  color: #fff;
  background:
    radial-gradient(circle at 50% 0%, rgba(247, 201, 72, .24), transparent 48%),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.025));
  border-left: 1px solid rgba(255,255,255,.14);
  border-right: 1px solid rgba(255,255,255,.14);
  text-align: center;
}
.scorebook-inning-card span {
  color: #f7c948 !important;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .8rem;
  font-weight: 1000;
}
.scorebook-inning-card strong {
  color: #fff !important;
  font-size: clamp(2.4rem, 5vw, 4rem);
  line-height: .9;
  font-weight: 1000;
  letter-spacing: -.04em;
  font-variant-numeric: tabular-nums;
}
.scorebook-inning-card small {
  color: #c8d7e8 !important;
  font-size: .9rem;
  font-weight: 800;
}

.scorebook-card,
.control-card-pro,
.scorebook-tool-card {
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035)),
    #111827 !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  color: #f8fbff !important;
  box-shadow: 0 20px 60px rgba(10, 18, 32, .24) !important;
}
.scorebook-card h1,
.scorebook-card h2,
.scorebook-card h3,
.scorebook-card h4,
.scorebook-readable-title,
.scorebook-section-head h2,
.action-group-heading-pro span {
  color: #ffffff !important;
}
.scorebook-readable-muted,
.scorebook-card .ga-muted,
.scorebook-section-head p,
.scorebook-matchup span,
.scorebook-card .small,
.stat-line-pro,
.player-stat-row-pro small {
  color: #c8d7e8 !important;
}
.scorebook-matchup strong,
.stat-line-pro strong,
.player-stat-row-pro strong {
  color: #ffffff !important;
}
.scorebook-lineup-number,
.side-badge-pro {
  color: #111827 !important;
  background: linear-gradient(135deg, #fde68a, #f7c948) !important;
  border-color: rgba(247,201,72,.65) !important;
}
.scorebook-count-grid div,
.count-strip-pro div,
.metric,
.metric-tile,
.action-tile-form-pro {
  background: rgba(255,255,255,.075) !important;
  border-color: rgba(255,255,255,.14) !important;
  color: #f8fbff !important;
}
.scorebook-count-grid span,
.count-strip-pro span,
.metric span,
.metric-tile span {
  color: #d7e4f3 !important;
}
.scorebook-count-grid strong,
.count-strip-pro strong,
.metric strong,
.metric-tile strong {
  color: #ffffff !important;
}
.scorebook-empty-mini {
  background: rgba(255,255,255,.08) !important;
  color: #e6eef8 !important;
  border: 1px dashed rgba(255,255,255,.18) !important;
}
.scorebook-base-field,
.runner-base-map,
.baseball-field-location {
  background:
    radial-gradient(circle at 50% 82%, rgba(167, 139, 88, .38), transparent 30%),
    radial-gradient(circle at 50% 25%, rgba(34, 197, 94, .24), transparent 55%),
    linear-gradient(180deg, rgba(23, 58, 44, .96), rgba(14, 36, 36, .95)) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
}
.form-control,
.form-select {
  color: #111827;
  background-color: #fff;
  border-color: #cbd5e1;
}
.form-control::placeholder { color: #64748b; opacity: 1; }
.form-label { color: #d7e4f3; font-weight: 800; }
.scorebook-card details summary { color: #f7c948; font-weight: 900; }

@media (max-width: 768px) {
  .scorebook-game-strip { grid-template-columns: 1fr; }
  .scorebook-team-score { min-height: 92px; text-align: left !important; }
  .scorebook-inning-card { min-height: 96px; border-left: 0; border-right: 0; border-top: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); }
}

/* SCOREKEEPER FIELD UNIFICATION FIX
   One baseball-field component now powers occupied bases and spray/play location. */
.scorebook-shell {
  --ga-scorekeeper-panel: rgba(9, 18, 32, .94);
  --ga-scorekeeper-panel-soft: rgba(14, 28, 48, .90);
}
.scorebook-topbar .scorebook-title {
  font-size: clamp(2rem, 3.2vw, 3.7rem) !important;
  line-height: .98 !important;
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
  opacity: 1 !important;
}
.scorebook-topbar .ga-muted { color: #d8e6f7 !important; opacity: .95 !important; }
.scorebook-layout-pro { align-items: start; }
.scorebook-left, .scorebook-main, .scorebook-right { min-width: 0; }
.scorebook-card { overflow: hidden; position: relative; isolation: isolate; }

.ga-ballfield {
  --grass1: #2c7a4c;
  --grass2: #123327;
  --dirt1: #ca955c;
  --dirt2: #9a673e;
  position: relative;
  width: 100%;
  min-height: 236px;
  border-radius: 24px;
  overflow: hidden;
  isolation: isolate;
  border: 1px solid rgba(255,255,255,.18);
  background:
    radial-gradient(circle at 50% 84%, rgba(150, 100, 60, .26), transparent 28%),
    linear-gradient(180deg, #175c39 0%, #0f442b 45%, #0a2d1e 100%);
  box-shadow: inset 0 -34px 70px rgba(0,0,0,.32), 0 18px 46px rgba(2,8,23,.22);
}
.ga-ballfield--spray { min-height: 385px; cursor: crosshair; }
.ga-ballfield__grass { position:absolute; inset:0; background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0)); z-index:0; }
.ga-ballfield__outfield-arc { position:absolute; left:6%; right:6%; top:5%; height:58%; border-top:2px solid rgba(230,255,241,.42); border-radius:50% 50% 0 0; z-index:1; }
.ga-ballfield__foul-line { position:absolute; left:50%; bottom:11%; width:2px; height:92%; background:rgba(255,255,255,.78); transform-origin:bottom center; z-index:2; }
.ga-ballfield__foul-line--left { transform:rotate(-43deg); }
.ga-ballfield__foul-line--right { transform:rotate(43deg); }
.ga-ballfield__infield-dirt { position:absolute; left:50%; bottom:13%; width:38%; aspect-ratio:1; transform:translateX(-50%) rotate(45deg); border-radius:18px; background:linear-gradient(135deg,var(--dirt1),var(--dirt2)); border:1px solid rgba(255,255,255,.20); z-index:3; box-shadow: inset 0 0 36px rgba(0,0,0,.16); }
.ga-ballfield__diamond-path { position:absolute; left:50%; bottom:20%; width:26%; aspect-ratio:1; transform:translateX(-50%) rotate(45deg); border:3px solid rgba(255,255,255,.88); z-index:4; box-shadow:0 0 0 1px rgba(15,23,42,.12); }
.ga-ballfield__mound { position:absolute; left:50%; top:66%; transform:translate(-50%,-50%); width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:#8f5f39; color:#fff; font-weight:1000; font-size:.72rem; border:2px solid rgba(255,255,255,.85); z-index:6; }
.ga-ballfield__plate { position:absolute; left:50%; bottom:9%; transform:translateX(-50%); width:46px; height:34px; display:grid; place-items:center; background:#fff; color:#0f172a; border:2px solid rgba(15,23,42,.22); border-radius:11px 11px 18px 18px; font-size:.72rem; font-weight:1000; z-index:7; box-shadow:0 10px 22px rgba(2,8,23,.16); }
.ga-ballfield__base { position:absolute; transform:translate(-50%,-50%); width:68px; min-height:58px; padding:.28rem; display:grid; place-items:center; text-align:center; border-radius:16px; background:rgba(255,255,255,.94); color:#0f172a; border:2px solid rgba(15,23,42,.18); box-shadow:0 12px 26px rgba(2,8,23,.22); z-index:8; }
.ga-ballfield__base strong { font-size:.75rem; font-weight:1000; letter-spacing:.07em; color:#0f172a; }
.ga-ballfield__base span { font-size:.68rem; line-height:1.05; font-weight:900; color:#64748b; max-width:60px; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.ga-ballfield__base.is-occupied { background:linear-gradient(135deg,#ffe17a,#f7c948); border-color:#fff4be; box-shadow:0 0 0 4px rgba(247,201,72,.20), 0 16px 34px rgba(2,8,23,.28); }
.ga-ballfield__base.is-occupied span { color:#2f2410; }
.ga-ballfield__base--second { left:50%; top:28%; }
.ga-ballfield__base--third { left:30%; top:64%; }
.ga-ballfield__base--first { left:70%; top:64%; }
.ga-ballfield__spray-help { position:absolute; left:50%; bottom:14px; transform:translateX(-50%); padding:.35rem .7rem; border-radius:999px; background:rgba(9,18,32,.58); color:rgba(255,255,255,.84); font-size:.72rem; font-weight:800; letter-spacing:.02em; z-index:11; pointer-events:none; }
.ga-ballfield__marker { position:absolute; width:22px; height:22px; border-radius:999px; transform:translate(-50%,-50%); background:#ef4444; border:4px solid #fff; box-shadow:0 0 0 4px rgba(239,68,68,.25),0 12px 22px rgba(2,8,23,.28); z-index:14; pointer-events:none; }

/* Prevent legacy base-map layers from stacking if an older partial is still cached in development. */
.scorebook-base-field:empty,
.runner-base-map:empty { display:none !important; }

@media (max-width: 991px) {
  .scorebook-game-strip { grid-template-columns: 1fr !important; }
  .scorebook-title { font-size: clamp(1.8rem, 8vw, 3rem) !important; }
  .ga-ballfield { min-height: 220px; }
  .ga-ballfield--spray { min-height: 330px; }
}
@media (max-width: 520px) {
  .ga-ballfield__base { width:58px; min-height:52px; border-radius:14px; }
  .ga-ballfield__base--second { top: 30%; }
  .ga-ballfield__infield-dirt { width:48%; }
  .ga-ballfield__diamond-path { width:33%; }
  .ga-ballfield__spray-help { font-size: .66rem; bottom: 10px; }
}
.spray-field-live { position: relative; }
.spray-field-live .spray-dot-live {
  position:absolute;
  width:18px;
  height:18px;
  border-radius:999px;
  background:#ef4444;
  border:3px solid #fff;
  box-shadow:0 0 0 3px rgba(239,68,68,.25), 0 10px 20px rgba(2,8,23,.22);
  transform:translate(-50%,-50%);
  z-index:16;
  pointer-events:none;
}

.scorebook-left .scorebook-card > .mb-3 .ga-ballfield,
.scorebook-runner-quick-card .ga-ballfield {
  margin-inline: auto;
}
.scorebook-runner-quick-card,
.sticky-scorebook,
.scorebook-tool-card {
  background-clip: padding-box;
}
.ga-ballfield--bases {
  min-height: 246px;
}
.ga-ballfield--spray {
  min-height: 390px;
}

/* SCOREKEEPER FIELD POLISH V2
   Fixes hero containment, dark-background bleed, and aligns the shared field component. */
.scorebook-shell.scorebook-pro {
  background: #edf2f7 !important;
  color: #0f172a !important;
}
.scorebook-shell.scorebook-pro .scorebook-topbar {
  background:
    radial-gradient(circle at 18% 0%, rgba(19,111,220,.22), transparent 34%),
    radial-gradient(circle at 88% 6%, rgba(247,201,72,.12), transparent 28%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #162033 100%) !important;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 28px;
  padding: 1.35rem 1.5rem;
  box-shadow: 0 24px 60px rgba(7,17,31,.22);
}
.scorebook-shell.scorebook-pro .scorebook-title,
.scorebook-shell.scorebook-pro .scorebook-topbar h1 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 2px 18px rgba(0,0,0,.22);
  font-size: clamp(2rem, 3vw, 3.6rem) !important;
  line-height: .96 !important;
}
.scorebook-shell.scorebook-pro .scorebook-topbar .ga-kicker {
  color: #2f8fff !important;
}
.scorebook-shell.scorebook-pro .scorebook-topbar .ga-muted,
.scorebook-shell.scorebook-pro .scorebook-topbar p {
  color: #d6e3f2 !important;
}
.scorebook-shell.scorebook-pro .scorebook-layout,
.scorebook-shell.scorebook-pro .scorebook-left,
.scorebook-shell.scorebook-pro .scorebook-main,
.scorebook-shell.scorebook-pro .scorebook-right {
  background: transparent !important;
}
.scorebook-shell.scorebook-pro .scorebook-game-strip {
  box-shadow: 0 18px 40px rgba(7,17,31,.16) !important;
}
.scorebook-shell.scorebook-pro .scorebook-card,
.scorebook-shell.scorebook-pro .scorebook-tool-card,
.scorebook-shell.scorebook-pro .control-card-pro {
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035)),
    #101a2a !important;
  color: #f8fbff !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}
.scorebook-shell.scorebook-pro .scorebook-card .ga-muted,
.scorebook-shell.scorebook-pro .scorebook-card small,
.scorebook-shell.scorebook-pro .scorebook-readable-muted,
.scorebook-shell.scorebook-pro .scorebook-matchup span,
.scorebook-shell.scorebook-pro .lineup-row small,
.scorebook-shell.scorebook-pro .ga-chip {
  color: #c8d7e8 !important;
}
.scorebook-shell.scorebook-pro .ga-chip {
  background: rgba(255,255,255,.08) !important;
  border-color: rgba(255,255,255,.12) !important;
}
.scorebook-shell.scorebook-pro .ga-ballfield,
.scorebook-shell.scorebook-pro .scorebook-base-field,
.scorebook-shell.scorebook-pro .runner-base-map,
.scorebook-shell.scorebook-pro .baseball-field-location {
  background:
    radial-gradient(circle at 50% 96%, rgba(105, 68, 36, .28), transparent 24%),
    linear-gradient(180deg, #17613c 0%, #11482e 46%, #0b2d1e 100%) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
}
.scorebook-shell.scorebook-pro .ga-ballfield__outfield-arc {
  left: 7%;
  right: 7%;
  top: 7%;
  height: 53%;
  border-top: 2px solid rgba(235, 245, 241, .48) !important;
}
.scorebook-shell.scorebook-pro .ga-ballfield__base--second {
  top: 34% !important;
}
.scorebook-shell.scorebook-pro .ga-ballfield__base--third,
.scorebook-shell.scorebook-pro .ga-ballfield__base--first {
  top: 66% !important;
}
.scorebook-shell.scorebook-pro .ga-ballfield__spray-help {
  background: rgba(9,18,32,.68) !important;
}
.scorebook-shell.scorebook-pro .sticky-scorebook,
.scorebook-shell.scorebook-pro .scorebook-left .scorebook-card,
.scorebook-shell.scorebook-pro .scorebook-main .scorebook-card,
.scorebook-shell.scorebook-pro .scorebook-right .scorebook-card {
  overflow: hidden !important;
}
@media (max-width: 520px) {
  .scorebook-shell.scorebook-pro .ga-ballfield__base--second { top: 35% !important; }
  .scorebook-shell.scorebook-pro .ga-ballfield__base--third,
  .scorebook-shell.scorebook-pro .ga-ballfield__base--first { top: 67% !important; }
}

/* SCOREKEEPER + GAMECAST FLOW REFINEMENT
   - shared field between scorekeeper and gamecast
   - precise 5x5 pitch-location picker with centered strike zone
   - stronger score strip contrast and contained light page background */
.scorebook-shell.scorebook-pro {
  background: #edf2f7 !important;
  background-image: none !important;
  color: #0f172a !important;
}
.scorebook-shell.scorebook-pro .scorebook-layout,
.scorebook-shell.scorebook-pro .scorebook-left,
.scorebook-shell.scorebook-pro .scorebook-main,
.scorebook-shell.scorebook-pro .scorebook-right {
  background: transparent !important;
}
.scorebook-shell.scorebook-pro .scorebook-game-strip {
  gap: 0 !important;
  background: linear-gradient(135deg, #0b1322 0%, #111a2b 55%, #182235 100%) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  overflow: hidden;
}
.scorebook-shell.scorebook-pro .scorebook-team-score,
.scorebook-shell.scorebook-pro .scorebook-inning-card {
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02)) !important;
}
.scorebook-shell.scorebook-pro .scorebook-team-score span {
  color: #f7fbff !important;
  opacity: 1 !important;
  text-shadow: 0 1px 8px rgba(0,0,0,.25);
}
.scorebook-shell.scorebook-pro .scorebook-team-score strong {
  color: #d45612 !important;
  text-shadow: 0 10px 24px rgba(0,0,0,.16);
}
.scorebook-shell.scorebook-pro .scorebook-inning-card span,
.scorebook-shell.scorebook-pro .scorebook-inning-card strong,
.scorebook-shell.scorebook-pro .scorebook-inning-card small {
  color: #f3f7fd !important;
}
.scorebook-shell.scorebook-pro .scorebook-card,
.scorebook-shell.scorebook-pro .scorebook-tool-card,
.scorebook-shell.scorebook-pro .control-card-pro {
  overflow: hidden !important;
  contain: paint;
}

.scorebook-zone-picker--precision {
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 8px !important;
  max-width: 380px !important;
  padding: 16px !important;
  background: linear-gradient(180deg, #deebfb, #cfe0f7) !important;
}
.scorebook-zone-picker--precision .zone-cell {
  min-height: 64px;
  display: grid;
  place-items: center;
  border-radius: 14px;
}
.scorebook-zone-picker--precision .zone-cell span {
  display: inline-grid;
  place-items: center;
  min-width: 24px;
  min-height: 24px;
  font-size: .95rem;
  font-weight: 1000;
}
.scorebook-zone-picker--precision .zone-cell--ball {
  background: rgba(255,255,255,.54) !important;
  border: 2px dashed rgba(71, 85, 105, .42) !important;
  color: #64748b !important;
}
.scorebook-zone-picker--precision .zone-cell--strike {
  background: rgba(255,255,255,.94) !important;
  border: 2px solid rgba(15,23,42,.26) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.45);
}
.scorebook-zone-picker--precision .zone-cell--strike span {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: rgba(37,99,235,.08);
  color: #0f172a;
}
.scorebook-zone-picker--precision .zone-cell:hover,
.scorebook-zone-picker--precision .zone-cell.is-selected {
  background: #ffcf3f !important;
  border-color: #b7791f !important;
}
.scorebook-zone-picker--precision .zone-cell.is-selected span,
.scorebook-zone-picker--precision .zone-cell:hover span {
  background: rgba(255,255,255,.32);
}
.scorebook-zone-note {
  max-width: 380px;
  color: #c8d7e8;
  font-size: .8rem;
  font-weight: 800;
  line-height: 1.35;
}

.ga-ballfield,
.scorebook-shell.scorebook-pro .ga-ballfield,
.baseball-field-chart .ga-ballfield,
.baseball-field-chart--gamecast .ga-ballfield {
  background: linear-gradient(180deg, #16623c 0%, #11472d 48%, #0a261a 100%) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: inset 0 -28px 54px rgba(0,0,0,.24), 0 18px 46px rgba(2,8,23,.20) !important;
}
.ga-ballfield__grass { display: none !important; }
.ga-ballfield__outfield-arc {
  border-top-style: solid !important;
  border-top-width: 2px !important;
  border-top-color: rgba(235,245,241,.48) !important;
}
.ga-ballfield__base--second,
.scorebook-shell.scorebook-pro .ga-ballfield__base--second {
  top: 36% !important;
}
.ga-ballfield__base--third,
.ga-ballfield__base--first,
.scorebook-shell.scorebook-pro .ga-ballfield__base--third,
.scorebook-shell.scorebook-pro .ga-ballfield__base--first {
  top: 66% !important;
}
.baseball-field-chart--gamecast {
  background: transparent !important;
}
.baseball-field-chart--gamecast .ga-ballfield {
  min-height: 280px;
}
@media (max-width: 520px) {
  .scorebook-zone-picker--precision .zone-cell { min-height: 54px; }
  .ga-ballfield__base--second,
  .scorebook-shell.scorebook-pro .ga-ballfield__base--second { top: 37% !important; }
  .baseball-field-chart--gamecast .ga-ballfield { min-height: 240px; }
}

/* SCOREKEEPER RUNNER QUICK ACTION EMPTY STATE FIX */
.scorebook-no-runners-note {
  border-radius: 16px;
  padding: .7rem .85rem;
  background: rgba(255,255,255,.08);
  border: 1px dashed rgba(255,255,255,.18);
  color: #d8e6f7;
  font-size: .84rem;
  font-weight: 800;
  line-height: 1.35;
}
.scorebook-runner-quick-card p.scorebook-readable-muted {
  margin-bottom: .75rem !important;
}

/* GAMECAST + SCOREKEEPER CONSISTENCY FIX
   Shared visual grammar for base field, spray chart, and pitch-location chart. */
.scorebook-shell.scorebook-pro {
  background: #edf2f7 !important;
  background-image: none !important;
}
.scorebook-shell.scorebook-pro .scorebook-game-strip,
.scorebook-shell.scorebook-pro .scorebook-team-score,
.scorebook-shell.scorebook-pro .scorebook-inning-card {
  background: linear-gradient(135deg, #0a1220 0%, #111c30 55%, #17233a 100%) !important;
}
.scorebook-shell.scorebook-pro .scorebook-team-score span,
.scorebook-shell.scorebook-pro .scorebook-inning-card span,
.scorebook-shell.scorebook-pro .scorebook-inning-card small {
  color: #f8fbff !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro .scorebook-team-score strong,
.scorebook-shell.scorebook-pro .scorebook-inning-card strong {
  color: #ffd66b !important;
  text-shadow: 0 8px 20px rgba(0,0,0,.35);
}

/* Put 2B at the top edge of the dirt, not floating in the outfield. */
.ga-ballfield__base--second,
.scorebook-shell.scorebook-pro .ga-ballfield__base--second,
.gamecast-page .ga-ballfield__base--second {
  top: 43% !important;
}
.ga-ballfield__base--third,
.ga-ballfield__base--first,
.scorebook-shell.scorebook-pro .ga-ballfield__base--third,
.scorebook-shell.scorebook-pro .ga-ballfield__base--first,
.gamecast-page .ga-ballfield__base--third,
.gamecast-page .ga-ballfield__base--first {
  top: 68% !important;
}
.ga-ballfield,
.scorebook-shell.scorebook-pro .ga-ballfield,
.gamecast-page .ga-ballfield {
  background: linear-gradient(180deg, #16623c 0%, #11462e 48%, #082719 100%) !important;
}
.ga-ballfield__grass { display: none !important; }
.ga-ballfield__outfield-arc {
  border-top-style: solid !important;
  border-top-color: rgba(235,245,241,.50) !important;
}
.ga-ballfield--spray .ga-ballfield__base span,
.gamecast-page .ga-ballfield--spray .ga-ballfield__base span {
  display: none !important;
}
.gamecast-shared-field .ga-ballfield,
.spray-field-live .ga-ballfield {
  min-height: 300px;
}
.spray-field-live {
  position: relative;
}
.spray-field-live .spray-dot-live {
  position: absolute;
}

/* One reusable pitch chart for scorekeeper and GameCast. */
.scorebook-zone-picker--precision {
  position: relative;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 7px !important;
  max-width: 380px !important;
  padding: 16px !important;
  aspect-ratio: 1 / 1;
  background: linear-gradient(180deg, #dce9fb, #c8dbf5) !important;
}
.scorebook-zone-picker--readonly {
  max-width: none !important;
}
.scorebook-zone-picker--precision .zone-cell {
  min-height: 0;
  display: grid;
  place-items: center;
  border-radius: 14px;
}
.scorebook-zone-picker--precision .zone-cell--ball {
  background: rgba(255,255,255,.46) !important;
  border: 2px dashed rgba(71,85,105,.38) !important;
}
.scorebook-zone-picker--precision .zone-cell--strike {
  background: rgba(255,255,255,.95) !important;
  border: 2px solid rgba(15,23,42,.26) !important;
}
.scorebook-zone-picker--precision .zone-cell span {
  display: inline-grid;
  place-items: center;
  min-width: 26px;
  min-height: 26px;
  border-radius: 999px;
  font-weight: 1000;
}
.scorebook-zone-picker--precision .zone-cell--strike span {
  background: rgba(37,99,235,.08);
  color: #0f172a;
}
.scorebook-zone-picker--precision .zone-cell:hover,
.scorebook-zone-picker--precision .zone-cell.is-selected {
  background: #ffcf3f !important;
  border-color: #b7791f !important;
}
.pitch-chart-live--shared .scorebook-zone-picker--precision {
  width: 100%;
}
.pitch-dot-live {
  position: absolute;
  transform: translate(-50%, -50%);
  z-index: 20;
}
@media (max-width: 520px) {
  .ga-ballfield__base--second,
  .scorebook-shell.scorebook-pro .ga-ballfield__base--second,
  .gamecast-page .ga-ballfield__base--second {
    top: 44% !important;
  }
  .gamecast-shared-field .ga-ballfield,
  .spray-field-live .ga-ballfield {
    min-height: 255px;
  }
}


/* Story card readability + overlay visibility fix */
body.ga-light-theme .lead-story-card,
body.ga-light-theme .lead-story-card * {
  color: #f8fbff;
}
body.ga-light-theme .lead-story-card .ga-title,
body.ga-light-theme .lead-story-card h1,
body.ga-light-theme .lead-story-card h2,
body.ga-light-theme .lead-story-card h3,
body.ga-light-theme .lead-story-card h4,
body.ga-light-theme .lead-story-card h5 {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
  text-shadow: 0 12px 24px rgba(0, 0, 0, .22);
}
body.ga-light-theme .lead-story-card .ga-muted,
body.ga-light-theme .lead-story-card p {
  color: rgba(232, 240, 250, .88) !important;
}
body.ga-light-theme .lead-story-card .btn.btn-ga {
  color: #ffffff !important;
}

body.ga-overlay-body .scorebug-broadcast-v2 {
  position: absolute;
  left: 24px;
  bottom: 64px;
  z-index: 20;
}
body.ga-overlay-body .sponsor-strip--v2 {
  position: absolute;
  left: 24px;
  bottom: 20px;
  z-index: 19;
  margin: 0;
}
@media (max-width: 980px) {
  body.ga-overlay-body .scorebug-broadcast-v2 {
    left: 8px;
    right: 8px;
    bottom: 82px;
  }
  body.ga-overlay-body .sponsor-strip--v2 {
    left: 12px;
    right: auto;
    width: auto;
    max-width: calc(100vw - 24px);
    bottom: 26px;
  }
}


/* SCOREKEEPER ALIGNMENT + READABILITY FIX
   - keep current-at-bat aligned with the pitch card
   - make batter/count text readable on dark cards
   - prevent runner quick actions from visually burying count info
   - lower 2B so it slightly overlaps the top of the dirt in scorekeeper + gamecast */
.scorebook-shell.scorebook-pro .scorebook-readable-title,
.scorebook-shell.scorebook-pro .scorebook-card h1,
.scorebook-shell.scorebook-pro .scorebook-card h2,
.scorebook-shell.scorebook-pro .scorebook-card h3,
.scorebook-shell.scorebook-pro .scorebook-card h4,
.scorebook-shell.scorebook-pro .scorebook-card h5,
.scorebook-shell.scorebook-pro .scorebook-matchup strong,
.scorebook-shell.scorebook-pro .lineup-row strong,
.scorebook-shell.scorebook-pro .scorebook-log-row strong,
.scorebook-shell.scorebook-pro .timeline-item strong {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
}
.scorebook-shell.scorebook-pro .scorebook-matchup span,
.scorebook-shell.scorebook-pro .scorebook-readable-muted,
.scorebook-shell.scorebook-pro .scorebook-card .small,
.scorebook-shell.scorebook-pro .scorebook-card small,
.scorebook-shell.scorebook-pro .scorebook-count-grid span,
.scorebook-shell.scorebook-pro .runner-event-base span,
.scorebook-shell.scorebook-pro .ga-muted {
  color: #c8d7e8 !important;
}
.scorebook-shell.scorebook-pro .scorebook-count-grid {
  margin-top: .1rem;
  margin-bottom: .95rem !important;
  position: relative;
  z-index: 2;
}
.scorebook-shell.scorebook-pro .scorebook-count-grid div {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}
.scorebook-shell.scorebook-pro .scorebook-count-grid strong {
  color: #f8fbff !important;
  font-variant-numeric: tabular-nums;
}
.scorebook-shell.scorebook-pro .sticky-scorebook,
.scorebook-shell.scorebook-pro .scorebook-left,
.scorebook-shell.scorebook-pro .scorebook-main {
  align-self: start !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.scorebook-shell.scorebook-pro .scorebook-left > .scorebook-card:first-child,
.scorebook-shell.scorebook-pro .scorebook-main > .scorebook-card:first-child {
  margin-top: 0 !important;
}
.scorebook-shell.scorebook-pro .sticky-scorebook .ga-ballfield--bases {
  min-height: 208px !important;
}
.scorebook-shell.scorebook-pro .scorebook-runner-quick-card {
  margin-top: .95rem !important;
}
.ga-ballfield__base--second,
.scorebook-shell.scorebook-pro .ga-ballfield__base--second,
.gamecast-page .ga-ballfield__base--second {
  top: 46% !important;
}
.ga-ballfield__base--third,
.ga-ballfield__base--first,
.scorebook-shell.scorebook-pro .ga-ballfield__base--third,
.scorebook-shell.scorebook-pro .ga-ballfield__base--first,
.gamecast-page .ga-ballfield__base--third,
.gamecast-page .ga-ballfield__base--first {
  top: 68% !important;
}
@media (max-width: 991px) {
  .scorebook-shell.scorebook-pro .sticky-scorebook .ga-ballfield--bases {
    min-height: 196px !important;
  }
}
@media (max-width: 520px) {
  .ga-ballfield__base--second,
  .scorebook-shell.scorebook-pro .ga-ballfield__base--second,
  .gamecast-page .ga-ballfield__base--second {
    top: 47% !important;
  }
  .scorebook-shell.scorebook-pro .sticky-scorebook .ga-ballfield--bases {
    min-height: 188px !important;
  }
}

/* SCOREKEEPER PLATE APPEARANCE READABILITY + END-INNING LABEL CLEANUP */
.scorebook-shell.scorebook-pro .scorebook-readable-title,
.scorebook-shell.scorebook-pro .scorebook-section-head h1,
.scorebook-shell.scorebook-pro .scorebook-section-head h2,
.scorebook-shell.scorebook-pro .scorebook-section-head h3,
.scorebook-shell.scorebook-pro .scorebook-section-head p,
.scorebook-shell.scorebook-pro .scorebook-right h1,
.scorebook-shell.scorebook-pro .scorebook-right h2,
.scorebook-shell.scorebook-pro .scorebook-right h3,
.scorebook-shell.scorebook-pro .scorebook-right h4,
.scorebook-shell.scorebook-pro .scorebook-right h5,
.scorebook-shell.scorebook-pro .scorebook-left h1,
.scorebook-shell.scorebook-pro .scorebook-left h2,
.scorebook-shell.scorebook-pro .scorebook-left h3,
.scorebook-shell.scorebook-pro .scorebook-left h4,
.scorebook-shell.scorebook-pro .scorebook-left h5 {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
}

.scorebook-shell.scorebook-pro .scorebook-quick-group > .scorebook-quick-heading strong,
.scorebook-shell.scorebook-pro .scorebook-bank-title,
.scorebook-shell.scorebook-pro .advanced-form-head,
.scorebook-shell.scorebook-pro .form-label,
.scorebook-shell.scorebook-pro .scorebook-advanced-play summary {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.scorebook-shell.scorebook-pro .scorebook-quick-heading span,
.scorebook-shell.scorebook-pro .scorebook-pa-quick-card .scorebook-readable-muted,
.scorebook-shell.scorebook-pro .scorebook-play-details .form-label {
  color: #475569 !important;
}

.scorebook-shell.scorebook-pro .scorebook-result-select em,
.scorebook-shell.scorebook-pro .runner-event-button em {
  display: none !important;
}

.scorebook-shell.scorebook-pro .lineup-row {
  background: rgba(255,255,255,.07) !important;
  border-color: rgba(255,255,255,.13) !important;
}

.scorebook-shell.scorebook-pro .lineup-row span,
.scorebook-shell.scorebook-pro .lineup-row small {
  color: #d8e6f7 !important;
}

.scorebook-shell.scorebook-pro .lineup-row strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.scorebook-shell.scorebook-pro .scorebook-card > .ga-kicker + .scorebook-readable-title,
.scorebook-shell.scorebook-pro .scorebook-card > .ga-kicker + h2,
.scorebook-shell.scorebook-pro .scorebook-card > .ga-kicker + h3,
.scorebook-shell.scorebook-pro .scorebook-card > .ga-kicker + h4,
.scorebook-shell.scorebook-pro .scorebook-card > .ga-kicker + h5 {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
}


/* SCOREKEEPER RUNNER / SIDEBAR / SPRAY CHART CLEANUP
   - remove runner quick action heading copy
   - keep runner buttons visually under the base chart
   - make recent scoring log and plate appearances match defense row styling
   - remove spray-chart helper text overlay in scorekeeper + gamecast */
.scorebook-shell.scorebook-pro .scorebook-runner-quick-card {
  margin-top: .9rem !important;
  position: relative;
  z-index: 1;
}
.scorebook-shell.scorebook-pro .scorebook-runner-quick-card .runner-event-stack {
  margin-top: 0 !important;
}
.scorebook-shell.scorebook-pro .scorebook-runner-quick-card .runner-event-row {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}
.scorebook-shell.scorebook-pro .ga-ballfield__spray-help,
.gamecast-page .ga-ballfield__spray-help {
  display: none !important;
}
.scorebook-shell.scorebook-pro .scorebook-log-row--sidebar {
  grid-template-columns: 42px minmax(0,1fr);
  gap: .55rem;
  align-items: center;
  padding: .72rem;
  border-radius: 16px;
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.scorebook-shell.scorebook-pro .scorebook-log-row--sidebar span {
  width: 32px;
  height: 32px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.08) !important;
  color: #ffd66b !important;
  font-size: .88rem;
  line-height: 1;
}
.scorebook-shell.scorebook-pro .scorebook-log-row--sidebar strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.scorebook-shell.scorebook-pro .scorebook-log-row--sidebar small {
  grid-column: 2;
  color: #d8e6f7 !important;
  font-weight: 800;
}
.scorebook-shell.scorebook-pro .scorebook-right > .scorebook-card:last-child,
.scorebook-shell.scorebook-pro .scorebook-right > .scorebook-card:nth-last-child(2) {
  overflow: hidden !important;
}


/* GAMECAST LAYOUT / FIELD / FEED REFRESH */
.gamecast-topper.gamecast-topper--broadcast {
  background:
    radial-gradient(circle at 12% 10%, rgba(255,210,84,.16), transparent 28%),
    radial-gradient(circle at 92% 8%, rgba(25,211,255,.18), transparent 32%),
    linear-gradient(100deg, #081321 0%, #0a2140 48%, #123a58 100%) !important;
  border-bottom: 1px solid rgba(255,255,255,.10);
  color: #f8fbff !important;
}
.gamecast-topper.gamecast-topper--broadcast .ga-kicker,
.gamecast-topper.gamecast-topper--broadcast .gamecast-hero-meta {
  color: #dbeafe !important;
}
.gamecast-hero-title {
  font-size: clamp(2.8rem, 5vw, 5.4rem);
  line-height: .95;
  letter-spacing: -.06em;
  font-weight: 1000;
  color: #ffffff !important;
  max-width: 11ch;
}
.gamecast-hero-meta {
  font-size: 1.1rem;
  font-weight: 600;
}
.gamecast-action-tabs .btn {
  border-radius: 12px;
  font-weight: 900;
  border-width: 1px;
  padding: .75rem 1rem;
}
.gamecast-action-tabs .btn-primary {
  background: linear-gradient(180deg, #2563eb, #1d4ed8) !important;
  border-color: rgba(255,255,255,.18) !important;
  color: #ffffff !important;
  box-shadow: 0 12px 30px rgba(37,99,235,.22);
}
.gamecast-action-tabs .btn-outline-secondary {
  background: rgba(7,17,31,.28) !important;
  color: #dbeafe !important;
  border-color: rgba(255,255,255,.16) !important;
}
.gamecast-feature-band {
  border-radius: 28px;
  padding: 1rem 1rem 1.1rem;
  background: rgba(7,17,31,.36);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 24px 64px rgba(0,0,0,.24);
  backdrop-filter: blur(16px);
}
.gamecast-feature-band__status-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
  margin-bottom: .9rem;
}
.gamecast-status-pills {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}
.gamecast-feature-band .ga-chip {
  background: rgba(255,255,255,.10) !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,.14) !important;
}
.gamecast-feature-band .ga-chip--live {
  background: rgba(239,68,68,.18) !important;
  color: #ffd4d4 !important;
  border-color: rgba(239,68,68,.28) !important;
}
.gamecast-feature-band .ga-chip--onair {
  background: rgba(34,197,94,.16) !important;
  color: #d7ffe5 !important;
  border-color: rgba(34,197,94,.24) !important;
}
.gamecast-feature-band__period {
  color: #ffd66b;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .82rem;
}
.gamecast-feature-band__scoregrid {
  display: grid;
  grid-template-columns: 190px minmax(0,1fr) 190px;
  gap: 1rem;
  align-items: center;
}
.gamecast-team-panel {
  border-radius: 22px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.12);
  padding: 1rem 1.1rem;
  color: #ffffff;
}
.gamecast-team-panel small {
  display: block;
  color: #bfdbfe;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .72rem;
  font-weight: 900;
  margin-bottom: .25rem;
}
.gamecast-team-panel strong {
  display: block;
  color: #ffffff !important;
  font-size: 1.12rem;
}
.gamecast-team-panel span {
  display: block;
  margin-top: .2rem;
  font-size: 3rem;
  line-height: 1;
  font-weight: 1000;
  color: #ffd66b;
}
.gamecast-feature-band__center {
  text-align: center;
}
.gamecast-feature-band__center h2 {
  margin: 0;
  color: #ffffff !important;
  font-size: 1.4rem;
  font-weight: 1000;
}
.gamecast-feature-band__center p {
  margin: .2rem 0 0;
  color: #cfe2f9;
  font-weight: 600;
}
.gamecast-page .network-card {
  background: linear-gradient(180deg, rgba(10,20,36,.94), rgba(20,31,50,.95)) !important;
  color: #e8f1ff !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: 0 20px 48px rgba(0,0,0,.22) !important;
}
.gamecast-page h1,
.gamecast-page h2,
.gamecast-page h3,
.gamecast-page h4,
.gamecast-page strong,
.gamecast-page th,
.gamecast-page td {
  color: #f8fbff !important;
}
.gamecast-page .ga-muted,
.gamecast-page p,
.gamecast-page span,
.gamecast-page small,
.gamecast-page .small {
  color: #c9d7ea;
}
.gamecast-page .ga-kicker { color: #1d8dff !important; }
.gamecast-page .ga-chip {
  background: rgba(255,255,255,.07) !important;
  color: #f8fbff !important;
  border-color: rgba(255,255,255,.12) !important;
}
.gamecast-page .metric {
  border-radius: 16px;
  padding: .7rem .45rem;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
}
.gamecast-page .metric span {
  display: block;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .7rem;
  color: #9cc5ff;
  font-weight: 900;
}
.gamecast-page .metric strong {
  display: block;
  font-size: 1.6rem;
  color: #ffffff !important;
  line-height: 1.1;
}
.gamecast-linescore-card .table {
  margin-bottom: 0;
  color: #f8fbff;
}
.gamecast-linescore-card .table > :not(caption) > * > * {
  background: transparent !important;
  border-color: rgba(255,255,255,.09) !important;
}
.gamecast-linescore-card thead th {
  color: #9cc5ff !important;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .1em;
}
.gamecast-page .pitch-chart-live {
  background: linear-gradient(180deg, rgba(216,228,245,.12), rgba(255,255,255,.06)) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
}
.gamecast-page .scorebook-zone-picker--readonly .zone-cell {
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.12);
}
.gamecast-page .scorebook-zone-picker--readonly .zone-cell--strike {
  background: rgba(255,255,255,.08);
}
.gamecast-page .scorebook-zone-picker--readonly .zone-cell span {
  color: #dce9fb;
}
.gamecast-page .spray-field-live {
  background: none !important;
  border: 0 !important;
  height: auto;
}
.gamecast-page .ga-ballfield {
  min-height: 320px;
}
.gamecast-page .ga-ballfield--spray .ga-ballfield__base span {
  display: block !important;
}
.gamecast-page .ga-ballfield__base {
  background: rgba(255,255,255,.94);
  border-color: rgba(15,23,42,.14);
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
}
.gamecast-page .ga-ballfield__base strong,
.gamecast-page .ga-ballfield__base span {
  color: #334155 !important;
}
.gamecast-page .ga-ballfield__base strong {
  font-size: .98rem;
}
.gamecast-page .ga-ballfield__marker {
  box-shadow: 0 0 0 4px rgba(255,255,255,.26), 0 14px 26px rgba(0,0,0,.34);
}
.gamecast-mini-list {
  display: grid;
  gap: .65rem;
}
.gamecast-mini-list > div,
.gamecast-lineup-row,
.gamecast-timeline .timeline-item {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 16px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.gamecast-mini-list > div {
  display: flex;
  justify-content: space-between;
  gap: .8rem;
  align-items: center;
  padding: .8rem .9rem;
}
.gamecast-mini-list strong,
.gamecast-lineup-row strong,
.gamecast-timeline .timeline-item strong { color: #ffffff !important; }
.gamecast-mini-list span { color: #d4e3f6 !important; text-align: right; font-size: .85rem; }
.gamecast-lineup-list {
  display: grid;
  gap: .65rem;
}
.gamecast-lineup-row {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr) 44px;
  align-items: center;
  gap: .75rem;
  padding: .72rem .8rem;
}
.gamecast-lineup-row__slot {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(255,255,255,.08);
  color: #ffd66b !important;
  font-weight: 1000;
  font-size: .8rem;
}
.gamecast-lineup-row small {
  color: #bcd3ef !important;
  text-align: right;
  font-weight: 900;
  margin: 0;
}
.gamecast-timeline {
  display: grid;
  gap: .75rem;
}
.gamecast-timeline .timeline-item {
  display: grid;
  gap: .25rem;
  padding: .9rem;
}
.gamecast-timeline .badge {
  width: fit-content;
  background: rgba(255,255,255,.10) !important;
  color: #ffd66b !important;
}
.gamecast-empty-action {
  background: rgba(255,255,255,.05) !important;
  border: 1px dashed rgba(255,255,255,.16) !important;
  color: #d8e6f7 !important;
}
.gamecast-page .sponsor-panel img {
  max-height: 68px;
  object-fit: contain;
  background: #ffffff;
  border-radius: 14px;
  padding: .45rem;
}
@media (max-width: 1199px) {
  .gamecast-feature-band__scoregrid {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .gamecast-team-panel,
  .gamecast-team-panel.text-end { text-align: center !important; }
}
@media (max-width: 767px) {
  .gamecast-hero-title { max-width: none; font-size: clamp(2.4rem, 11vw, 3.8rem); }
  .gamecast-lineup-row { grid-template-columns: 40px minmax(0,1fr) 38px; }
  .gamecast-page .ga-ballfield { min-height: 280px; }
}

/* TICKER GAME BUTTON + SEPARATOR FIX */
.ga-ticker--games {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
  padding: .55rem .9rem;
  background:
    radial-gradient(circle at 12% 0%, rgba(11,114,217,.10), transparent 28%),
    linear-gradient(180deg, #ffffff, #f8fbff);
  border-block: 1px solid rgba(15,23,42,.10);
  box-shadow: 0 10px 30px rgba(15,23,42,.05);
}
.ga-ticker-label {
  color: #075ec7;
  font-size: .72rem;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .14em;
  white-space: nowrap;
}
.ga-ticker--games .ga-ticker-track {
  display: flex;
  align-items: center;
  gap: .55rem;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  padding-block: .15rem;
  white-space: nowrap;
}
.ga-ticker--games .ga-ticker-track::-webkit-scrollbar {
  height: 6px;
}
.ga-ticker--games .ga-ticker-track::-webkit-scrollbar-thumb {
  background: rgba(15,23,42,.18);
  border-radius: 999px;
}
.ga-ticker-game {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  min-height: 38px;
  padding: .42rem .48rem .42rem .58rem;
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid rgba(15,23,42,.12);
  color: #0f172a !important;
  text-decoration: none;
  scroll-snap-align: start;
  box-shadow: 0 8px 20px rgba(15,23,42,.055);
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.ga-ticker-game:hover {
  transform: translateY(-1px);
  border-color: rgba(7,94,199,.30);
  box-shadow: 0 12px 28px rgba(7,94,199,.10);
}
.ga-ticker-status {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: .23rem .48rem;
  background: #eef2f7;
  color: #334155 !important;
  font-size: .66rem;
  font-weight: 1000;
  letter-spacing: .07em;
}
.ga-ticker-status.is-live {
  background: #fff1f2;
  color: #be123c !important;
}
.ga-ticker-matchup {
  max-width: 280px;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 900;
}
.ga-ticker-score {
  color: #b45309 !important;
  font-weight: 1000;
  font-variant-numeric: tabular-nums;
}
.ga-ticker-open,
.ga-ticker-all {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: .28rem .62rem;
  background: #075ec7;
  color: #ffffff !important;
  font-size: .72rem;
  font-weight: 1000;
  text-decoration: none;
}
.ga-ticker-separator {
  flex: 0 0 auto;
  width: 1px;
  height: 28px;
  background: linear-gradient(180deg, transparent, rgba(15,23,42,.24), transparent);
}
.ga-ticker-track .ga-ticker-separator:last-child {
  display: none;
}
.ga-ticker-all {
  white-space: nowrap;
  background: #0f172a;
}
@media (max-width: 720px) {
  .ga-ticker--games {
    grid-template-columns: 1fr auto;
  }
  .ga-ticker-label {
    display: none;
  }
  .ga-ticker--games .ga-ticker-track {
    grid-column: 1;
  }
  .ga-ticker-matchup {
    max-width: 170px;
  }
  .ga-ticker-open {
    display: none;
  }
}


/* SCOREKEEPER BASE CHART STACK FIX
   - keep the current-at-bat card and runner actions in a clean vertical stack
   - prevent the runner action card from covering the base chart
   - keep the current-at-bat card pinned to the top of the left column
   - give the base chart more vertical room on narrow screens */
.scorebook-shell.scorebook-pro .scorebook-left {
  display: flex !important;
  flex-direction: column !important;
  align-self: start !important;
  gap: 1rem !important;
}
.scorebook-shell.scorebook-pro .scorebook-left > .scorebook-card,
.scorebook-shell.scorebook-pro .scorebook-left > .scorebook-no-runners-note {
  margin: 0 !important;
}
.scorebook-shell.scorebook-pro .scorebook-current-card {
  align-self: start !important;
  padding-bottom: 1rem !important;
  z-index: 2;
}
.scorebook-shell.scorebook-pro .scorebook-current-card .mb-1 {
  margin-bottom: .7rem !important;
}
.scorebook-shell.scorebook-pro .scorebook-current-card .ga-ballfield--bases {
  min-height: 244px !important;
}
.scorebook-shell.scorebook-pro .scorebook-current-card .ga-ballfield {
  margin-bottom: 0 !important;
}
.scorebook-shell.scorebook-pro .scorebook-runner-quick-card {
  position: static !important;
  clear: both !important;
  z-index: 1 !important;
  margin-top: 0 !important;
}
.scorebook-shell.scorebook-pro .scorebook-runner-quick-card .runner-event-stack {
  gap: .9rem !important;
}
.scorebook-shell.scorebook-pro .scorebook-runner-quick-card .runner-event-row {
  margin: 0 !important;
}
@media (min-width: 992px) {
  .scorebook-shell.scorebook-pro .scorebook-current-card.sticky-scorebook {
    position: sticky !important;
    top: 92px !important;
  }
}
@media (max-width: 991px) {
  .scorebook-shell.scorebook-pro .scorebook-current-card.sticky-scorebook {
    position: static !important;
    top: auto !important;
  }
}
@media (max-width: 520px) {
  .scorebook-shell.scorebook-pro .scorebook-left {
    gap: .9rem !important;
  }
  .scorebook-shell.scorebook-pro .scorebook-current-card {
    padding-bottom: .95rem !important;
  }
  .scorebook-shell.scorebook-pro .scorebook-current-card .ga-ballfield--bases {
    min-height: 268px !important;
  }
  .scorebook-shell.scorebook-pro .ga-ballfield__base--second,
  .scorebook-shell.scorebook-pro .gamecast-page .ga-ballfield__base--second,
  .gamecast-page .ga-ballfield__base--second {
    top: 45% !important;
  }
  .scorebook-shell.scorebook-pro .ga-ballfield__base--third,
  .scorebook-shell.scorebook-pro .ga-ballfield__base--first,
  .gamecast-page .ga-ballfield__base--third,
  .gamecast-page .ga-ballfield__base--first {
    top: 66% !important;
  }
}

/* GAMECAST SCOREKEEPER-STYLE LAYOUT FIX
   A dense, scorekeeper-aligned GameCast surface that uses screen width instead of white boxes. */
.gamecast-shell.gamecast-pro {
  min-height: calc(100vh - 72px);
  padding-inline: clamp(.75rem, 2vw, 1.5rem);
  background:
    radial-gradient(circle at 12% 4%, rgba(37,99,235,.18), transparent 30%),
    radial-gradient(circle at 90% 2%, rgba(25,211,255,.14), transparent 34%),
    linear-gradient(180deg, #edf2f7 0%, #f7fafc 100%) !important;
  color: #0f172a;
}
.gamecast-pro .gamecast-topbar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.25rem;
  flex-wrap: wrap;
  border-radius: 28px;
  padding: 1.35rem 1.5rem;
  background:
    radial-gradient(circle at 18% 0%, rgba(19,111,220,.22), transparent 34%),
    radial-gradient(circle at 88% 6%, rgba(247,201,72,.12), transparent 28%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #162033 100%) !important;
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 24px 60px rgba(7,17,31,.22);
}
.gamecast-pro .gamecast-title {
  max-width: none;
  font-size: clamp(2rem, 3vw, 3.6rem);
  line-height: .96;
  letter-spacing: -.065em;
  font-weight: 1000;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  margin: 0;
}
.gamecast-pro .gamecast-subtitle {
  color: #d8e6f7 !important;
  font-weight: 700;
}
.gamecast-pro .gamecast-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}
.gamecast-pro .gamecast-actions .btn {
  border-radius: 12px;
  font-weight: 900;
}
.gamecast-pro .gamecast-actions .btn-outline-ga {
  color: #dbeafe !important;
  background: rgba(255,255,255,.06) !important;
  border-color: rgba(255,255,255,.18) !important;
}
.gamecast-pro .gamecast-score-strip {
  display: grid;
  grid-template-columns: 1fr 260px 1fr;
  gap: 0;
  border-radius: 26px;
  overflow: hidden;
  background: linear-gradient(135deg, #0a1220 0%, #111c30 55%, #17233a 100%) !important;
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 18px 40px rgba(7,17,31,.16);
}
.gamecast-pro .gamecast-score-team,
.gamecast-pro .gamecast-score-state {
  padding: 1rem 1.25rem;
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  border-right: 1px solid rgba(255,255,255,.09);
}
.gamecast-pro .gamecast-score-team:last-child {
  border-right: 0;
  border-left: 1px solid rgba(255,255,255,.09);
}
.gamecast-pro .gamecast-score-team span,
.gamecast-pro .gamecast-score-state span {
  display: block;
  color: #f8fbff !important;
  opacity: 1;
  font-size: .72rem;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .12em;
}
.gamecast-pro .gamecast-score-team strong {
  display: block;
  color: #ffffff !important;
  font-size: 1.2rem;
  line-height: 1.1;
  margin-top: .22rem;
}
.gamecast-pro .gamecast-score-team b {
  display: block;
  font-size: 3.4rem;
  line-height: .95;
  font-weight: 1000;
  color: #ffd66b;
  font-variant-numeric: tabular-nums;
}
.gamecast-pro .gamecast-score-state {
  display: grid;
  place-items: center;
  text-align: center;
}
.gamecast-pro .gamecast-score-state strong {
  color: #ffffff !important;
  font-size: 2.6rem;
  line-height: 1;
  font-weight: 1000;
}
.gamecast-pro .gamecast-score-state small {
  color: #d8e6f7 !important;
  font-weight: 800;
}
.gamecast-pro .gamecast-layout-pro {
  display: grid;
  grid-template-columns: minmax(230px, 280px) minmax(0, 1fr) minmax(230px, 280px);
  gap: 1.25rem;
  align-items: start;
}
.gamecast-pro .gamecast-card {
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035)),
    #101a2a !important;
  color: #f8fbff !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 20px 52px rgba(7,17,31,.16);
  overflow: hidden;
}
.gamecast-pro .gamecast-card h1,
.gamecast-pro .gamecast-card h2,
.gamecast-pro .gamecast-card h3,
.gamecast-pro .gamecast-card h4,
.gamecast-pro .gamecast-card h5,
.gamecast-pro .gamecast-card strong,
.gamecast-pro .gamecast-card th,
.gamecast-pro .gamecast-card td {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
}
.gamecast-pro .gamecast-card p,
.gamecast-pro .gamecast-card small,
.gamecast-pro .gamecast-card span,
.gamecast-pro .gamecast-card .ga-muted {
  color: #c8d7e8 !important;
}
.gamecast-pro .ga-kicker {
  color: #2f8fff !important;
}
.gamecast-pro .ga-chip {
  background: rgba(255,255,255,.08) !important;
  border-color: rgba(255,255,255,.12) !important;
  color: #d8e6f7 !important;
}
.gamecast-pro .gamecast-main-grid {
  display: grid;
  grid-template-columns: minmax(320px, .95fr) minmax(420px, 1.05fr);
  gap: 1.25rem;
  align-items: stretch;
}
.gamecast-pro .gamecast-feed-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
  gap: 1.25rem;
  align-items: start;
}
.gamecast-pro .gamecast-stack {
  display: grid;
  gap: 1.25rem;
}
.gamecast-pro .gamecast-section-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: .85rem;
}
.gamecast-pro .gamecast-shared-field,
.gamecast-pro .spray-field-live {
  position: relative;
  height: auto !important;
  min-height: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
.gamecast-pro .ga-ballfield {
  min-height: clamp(340px, 38vw, 520px) !important;
  background: linear-gradient(180deg, #16623c 0%, #11462e 48%, #082719 100%) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: inset 0 -28px 54px rgba(0,0,0,.24), 0 18px 46px rgba(2,8,23,.20) !important;
}
.gamecast-pro .ga-ballfield__grass {
  display: none !important;
}
.gamecast-pro .ga-ballfield__outfield-arc {
  border-top-style: solid !important;
  border-top-color: rgba(235,245,241,.50) !important;
}
.gamecast-pro .ga-ballfield--spray .ga-ballfield__base span {
  display: block !important;
}
.gamecast-pro .ga-ballfield__base {
  background: rgba(255,255,255,.94) !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.16) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
}
.gamecast-pro .ga-ballfield__base strong,
.gamecast-pro .ga-ballfield__base span {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
}
.gamecast-pro .ga-ballfield__base.is-occupied {
  background: linear-gradient(135deg,#ffe17a,#f7c948) !important;
  border-color: #fff4be !important;
}
.gamecast-pro .ga-ballfield__base--second {
  top: 46% !important;
}
.gamecast-pro .ga-ballfield__base--third,
.gamecast-pro .ga-ballfield__base--first {
  top: 68% !important;
}
.gamecast-pro .ga-ballfield__plate {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}
.gamecast-pro .spray-dot-live {
  position: absolute;
  width: 18px;
  height: 18px;
  transform: translate(-50%, -50%);
  border-radius: 999px;
  background: #ef4444;
  border: 3px solid #fff;
  box-shadow: 0 0 0 3px rgba(239,68,68,.25), 0 10px 20px rgba(2,8,23,.22);
  z-index: 16;
}
.gamecast-pro .gamecast-linescore {
  color: #f8fbff !important;
}
.gamecast-pro .gamecast-linescore > :not(caption) > * > * {
  background: transparent !important;
  border-color: rgba(255,255,255,.10) !important;
}
.gamecast-pro .gamecast-linescore thead th {
  color: #9cc5ff !important;
  -webkit-text-fill-color: #9cc5ff !important;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .12em;
}
.gamecast-pro .pitch-chart-live {
  height: auto !important;
  min-height: 0 !important;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(216,228,245,.12), rgba(255,255,255,.06)) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  display: block !important;
  padding: .85rem;
}
.gamecast-pro .scorebook-zone-picker--precision {
  width: 100% !important;
  max-width: none !important;
  min-height: 310px;
  background: linear-gradient(180deg, #dce9fb, #c8dbf5) !important;
}
.gamecast-pro .scorebook-zone-picker--readonly .zone-cell {
  background: rgba(255,255,255,.62) !important;
}
.gamecast-pro .scorebook-zone-picker--readonly .zone-cell--strike {
  background: rgba(255,255,255,.95) !important;
}
.gamecast-pro .gamecast-lineup-list,
.gamecast-pro .gamecast-mini-list,
.gamecast-pro .gamecast-timeline {
  display: grid;
  gap: .65rem;
}
.gamecast-pro .gamecast-lineup-row,
.gamecast-pro .gamecast-mini-list > div,
.gamecast-pro .gamecast-timeline .timeline-item {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  border-radius: 16px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.gamecast-pro .gamecast-lineup-row {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 44px;
  gap: .7rem;
  align-items: center;
  padding: .7rem .78rem;
}
.gamecast-pro .gamecast-lineup-row__slot {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.08);
  color: #ffd66b !important;
  -webkit-text-fill-color: #ffd66b !important;
  font-weight: 1000;
  font-size: .78rem;
}
.gamecast-pro .gamecast-lineup-row strong {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.gamecast-pro .gamecast-lineup-row small {
  color: #bcd3ef !important;
  text-align: right;
  font-weight: 900;
}
.gamecast-pro .gamecast-mini-list > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .75rem;
  align-items: center;
  padding: .78rem .85rem;
}
.gamecast-pro .gamecast-mini-list span {
  color: #d4e3f6 !important;
  text-align: right;
  font-size: .85rem;
}
.gamecast-pro .gamecast-timeline .timeline-item {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  gap: .55rem .8rem;
  padding: .85rem;
  align-items: start;
}
.gamecast-pro .gamecast-timeline .badge {
  width: fit-content;
  background: rgba(255,255,255,.10) !important;
  color: #ffd66b !important;
}
.gamecast-pro .gamecast-timeline .timeline-item__body {
  min-width: 0;
  display: grid;
  gap: .28rem;
}
.gamecast-pro .gamecast-timeline .timeline-item__title,
.gamecast-pro .gamecast-timeline .timeline-item__title strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.gamecast-pro .gamecast-timeline .timeline-item__meta,
.gamecast-pro .gamecast-timeline .timeline-item__meta a,
.gamecast-pro .gamecast-timeline .timeline-item__notes,
.gamecast-pro .gamecast-timeline .timeline-item__notes a,
.gamecast-pro .gamecast-timeline .timeline-item .small,
.gamecast-pro .gamecast-timeline .timeline-item small,
.gamecast-pro .gamecast-timeline .timeline-item span.ga-muted {
  color: #d7e4f4 !important;
  -webkit-text-fill-color: #d7e4f4 !important;
}
.gamecast-pro .gamecast-timeline .timeline-item__meta {
  font-size: .92rem;
  font-weight: 700;
}
.gamecast-pro .gamecast-timeline .timeline-item__notes {
  font-size: .92rem;
  line-height: 1.45;
  color: #edf4ff !important;
}
.gamecast-pro .gamecast-empty-action {
  display: grid;
  gap: .35rem;
  padding: 1rem;
  border-radius: 16px;
  background: rgba(255,255,255,.05) !important;
  border: 1px dashed rgba(255,255,255,.16) !important;
  color: #d8e6f7 !important;
}
@media (max-width: 1280px) {
  .gamecast-pro .gamecast-layout-pro {
    grid-template-columns: minmax(220px, 260px) minmax(0, 1fr) minmax(220px, 260px);
    gap: 1rem;
  }
  .gamecast-pro .gamecast-main-grid,
  .gamecast-pro .gamecast-feed-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 991px) {
  .gamecast-pro .gamecast-score-strip,
  .gamecast-pro .gamecast-layout-pro {
    grid-template-columns: 1fr;
  }
  .gamecast-pro .gamecast-score-team,
  .gamecast-pro .gamecast-score-state {
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.09) !important;
  }
  .gamecast-pro .gamecast-title {
    font-size: clamp(2rem, 8vw, 3.2rem);
  }
}
@media (max-width: 575px) {
  .gamecast-shell.gamecast-pro {
    padding-inline: .75rem;
  }
  .gamecast-pro .gamecast-topbar,
  .gamecast-pro .gamecast-card {
    border-radius: 22px;
  }
  .gamecast-pro .ga-ballfield {
    min-height: 300px !important;
  }
  .gamecast-pro .scorebook-zone-picker--precision {
    min-height: 260px;
  }
}


/* SCOREKEEPER CONTROLS + LINESCORE LAYOUT FIX
   - move game controls above current at bat
   - move line score above the pitch box
   - keep current at bat/base chart free of sticky scrolling behavior
   - keep runner action boxes stacked below the base chart */
.scorebook-shell.scorebook-pro .scorebook-controls-card {
  order: 1;
}
.scorebook-shell.scorebook-pro .scorebook-current-card {
  order: 2;
}
.scorebook-shell.scorebook-pro .scorebook-runner-quick-card,
.scorebook-shell.scorebook-pro .scorebook-no-runners-note {
  order: 3;
}
.scorebook-shell.scorebook-pro .scorebook-current-card.sticky-scorebook,
.scorebook-shell.scorebook-pro .scorebook-current-card {
  position: static !important;
  top: auto !important;
}
.scorebook-shell.scorebook-pro .scorebook-linescore-card {
  order: -1;
}
.scorebook-shell.scorebook-pro .scorebook-linescore-card .ga-table > :not(caption) > * > * {
  white-space: nowrap;
}
.scorebook-shell.scorebook-pro .scorebook-left .scorebook-current-card,
.scorebook-shell.scorebook-pro .scorebook-left .scorebook-runner-quick-card {
  overflow: visible !important;
}

/* GAMECAST PITCH LOCATION CLEANUP
   Removes numbered pitch-location marker pills from GameCast so the chart reads as a clean zone map. */
.gamecast-pro .pitch-chart-live .pitch-dot-live,
.gamecast-page .pitch-chart-live .pitch-dot-live {
  display: none !important;
}


/* SCOREBUG OVERLAY SEPARATION + SPONSOR STRIP FIX
   - visually separates away/home scores
   - gives the sponsor strip enough height and width for its copy
   - moves the sponsor strip upward so it sits cleanly under the bug */
.scorebug-broadcast-v2 .bug-side--away,
.scorebug-broadcast-v2 .bug-score--away {
  box-shadow: inset -1px 0 0 rgba(255,255,255,.08);
}
.scorebug-broadcast-v2 .bug-side--home,
.scorebug-broadcast-v2 .bug-score--home {
  box-shadow: inset 1px 0 0 rgba(255,255,255,.08);
}

/* PUBLIC TEAM + LEAGUE STYLE REFRESH
   Cleaner fan-facing team and league pages with stronger contrast, scorekeeper-inspired cards,
   better spacing, and more polished schedules/rosters/news modules. */

/* Shared public fan-page surface */
.team-public-refresh,
.league-public-refresh,
.baseball-team-public-refresh {
  --fan-bg: #eef3f8;
  --fan-ink: #0f172a;
  --fan-muted: #526173;
  --fan-panel: #ffffff;
  --fan-panel-border: rgba(15, 23, 42, .10);
  margin-inline: calc(50% - 50vw);
  padding: clamp(1rem, 2vw, 1.6rem) max(1rem, calc(50vw - 680px)) 2.5rem;
  background:
    radial-gradient(circle at 8% 0%, rgba(37, 99, 235, .10), transparent 32%),
    radial-gradient(circle at 92% 3%, rgba(255, 207, 63, .12), transparent 28%),
    linear-gradient(180deg, #eef3f8 0%, #f8fafc 42%, #eef3f8 100%);
  color: var(--fan-ink);
}
.team-public-refresh a,
.league-public-refresh a,
.baseball-team-public-refresh a {
  text-decoration: none;
}

/* Hero areas */
.team-public-refresh .franchise-hero,
.league-public-refresh .league-hub-hero,
.baseball-team-public-refresh .team-hero {
  border-radius: 34px !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: 0 28px 80px rgba(15, 23, 42, .26) !important;
  background-color: #07111f;
}
.team-public-refresh .franchise-hero {
  background-size: cover;
  background-position: center;
}
.team-public-refresh .franchise-title,
.league-public-refresh .league-hub-title,
.baseball-team-public-refresh .team-hero h1 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 14px 32px rgba(0,0,0,.28);
  letter-spacing: -.065em !important;
}
.team-public-refresh .franchise-title {
  font-size: clamp(2.4rem, 6vw, 6.8rem) !important;
}
.league-public-refresh .league-hub-title {
  font-size: clamp(2.5rem, 5.6vw, 6.2rem) !important;
}
.team-public-refresh .franchise-lead,
.league-public-refresh .league-hub-hero .lead,
.baseball-team-public-refresh .team-hero .lead {
  color: #dce9fb !important;
  max-width: 880px;
  font-weight: 650;
}
.team-public-refresh .franchise-logo,
.baseball-team-public-refresh .team-logo-lg {
  background: rgba(255,255,255,.96) !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  box-shadow: 0 22px 60px rgba(0,0,0,.30) !important;
}
.team-public-refresh .team-command-card,
.league-public-refresh .league-featured-game {
  background: rgba(7, 17, 31, .58) !important;
  border-color: rgba(255,255,255,.16) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 18px 44px rgba(0,0,0,.18);
}

/* Cards and sections */
.team-public-refresh .network-card,
.league-public-refresh .ga-card,
.baseball-team-public-refresh .network-card,
.baseball-team-public-refresh .player-card {
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.96)) !important;
  border: 1px solid var(--fan-panel-border) !important;
  border-radius: 26px !important;
  color: var(--fan-ink) !important;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .08) !important;
}
.team-public-refresh .network-card h1,
.team-public-refresh .network-card h2,
.team-public-refresh .network-card h3,
.team-public-refresh .network-card h4,
.team-public-refresh .network-card h5,
.league-public-refresh .ga-card h1,
.league-public-refresh .ga-card h2,
.league-public-refresh .ga-card h3,
.league-public-refresh .ga-card h4,
.league-public-refresh .ga-card h5,
.baseball-team-public-refresh .network-card h1,
.baseball-team-public-refresh .network-card h2,
.baseball-team-public-refresh .network-card h3,
.baseball-team-public-refresh .network-card h4,
.baseball-team-public-refresh .network-card h5,
.baseball-team-public-refresh .player-card strong {
  color: var(--fan-ink) !important;
  -webkit-text-fill-color: var(--fan-ink) !important;
}
.team-public-refresh .network-card p,
.team-public-refresh .network-card small,
.team-public-refresh .network-card .ga-muted,
.league-public-refresh .ga-card p,
.league-public-refresh .ga-card small,
.baseball-team-public-refresh .network-card p,
.baseball-team-public-refresh .network-card .text-white-50,
.baseball-team-public-refresh .player-card .text-white-50 {
  color: var(--fan-muted) !important;
}
.team-public-refresh .ga-section-title,
.league-public-refresh .ga-section-title,
.baseball-team-public-refresh .section-title {
  color: var(--fan-ink) !important;
  font-size: clamp(1.5rem, 2.2vw, 2.2rem);
  letter-spacing: -.04em;
  font-weight: 1000;
}

/* Season and metrics */
.team-public-refresh .season-switcher,
.league-public-refresh .league-tabbar {
  background: #ffffff !important;
  border: 1px solid rgba(15, 23, 42, .10) !important;
  border-radius: 22px !important;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .06);
}
.team-public-refresh .season-tab,
.league-public-refresh .league-tabbar a {
  color: #0f172a !important;
  background: #f1f5f9 !important;
  border-color: rgba(15, 23, 42, .08) !important;
}
.team-public-refresh .season-tab.active,
.team-public-refresh .season-tab:hover,
.league-public-refresh .league-tabbar a:hover {
  background: linear-gradient(135deg, #0b72d9, #0f8fff) !important;
  color: #ffffff !important;
  border-color: rgba(11, 114, 217, .35) !important;
}
.team-public-refresh .fan-metric {
  background:
    radial-gradient(circle at 85% 12%, rgba(255, 207, 63, .18), transparent 34%),
    linear-gradient(135deg, #0a1220, #17233a) !important;
  border-color: rgba(255,255,255,.13) !important;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .14) !important;
}
.team-public-refresh .fan-metric span { color: #93c5fd !important; }
.team-public-refresh .fan-metric strong { color: #ffffff !important; }
.team-public-refresh .fan-metric small { color: #d6e3f2 !important; }

/* Schedule/tickers */
.team-public-refresh .schedule-row-pro,
.league-public-refresh .league-event-row,
.league-public-refresh .league-score-chip,
.baseball-team-public-refresh .event-strip {
  background: #f8fafc !important;
  border: 1px solid rgba(15, 23, 42, .10) !important;
  border-radius: 18px !important;
  color: var(--fan-ink) !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .045);
}
.team-public-refresh .schedule-row-pro:hover,
.league-public-refresh .league-event-row:hover,
.league-public-refresh .league-score-chip:hover,
.baseball-team-public-refresh .event-strip:hover {
  transform: translateY(-2px);
  border-color: rgba(11, 114, 217, .32) !important;
  box-shadow: 0 16px 34px rgba(11, 114, 217, .10);
}
.team-public-refresh .schedule-date strong,
.team-public-refresh .schedule-status strong,
.team-public-refresh .schedule-matchup strong,
.league-public-refresh .league-event-row strong,
.league-public-refresh .league-score-chip strong,
.baseball-team-public-refresh .event-strip .text-white {
  color: var(--fan-ink) !important;
}
.team-public-refresh .schedule-date small,
.team-public-refresh .schedule-matchup small,
.league-public-refresh .league-event-row span,
.league-public-refresh .league-event-row em,
.baseball-team-public-refresh .event-strip .text-white-50 {
  color: var(--fan-muted) !important;
}

/* Roster and player cards */
.team-public-refresh .roster-card-pro,
.baseball-team-public-refresh .player-card {
  background: #f8fafc !important;
  border-color: rgba(15, 23, 42, .10) !important;
  color: var(--fan-ink) !important;
}
.team-public-refresh .roster-card-pro:hover,
.baseball-team-public-refresh .player-card:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 207, 63, .46) !important;
  box-shadow: 0 16px 38px rgba(15, 23, 42, .10) !important;
}
.team-public-refresh .roster-card-pro strong,
.team-public-refresh .leader-row-pro strong,
.team-public-refresh .story-row-pro h3,
.league-public-refresh .league-standings-team strong,
.league-public-refresh .league-leader-card strong,
.league-public-refresh .league-news-row strong,
.league-public-refresh .league-team-spotlight strong {
  color: var(--fan-ink) !important;
}
.team-public-refresh .roster-card-pro small,
.team-public-refresh .leader-row-pro small,
.team-public-refresh .story-row-pro p,
.league-public-refresh .league-standings-team small,
.league-public-refresh .league-leader-card small,
.league-public-refresh .league-news-row small,
.league-public-refresh .league-team-spotlight p,
.league-public-refresh .league-team-spotlight small {
  color: var(--fan-muted) !important;
}

/* League content modules */
.league-public-refresh .league-standings-table {
  color: var(--fan-ink) !important;
}
.league-public-refresh .league-standings-table > :not(caption) > * > * {
  background: transparent !important;
  border-color: rgba(15, 23, 42, .08) !important;
}
.league-public-refresh .league-standings-table thead th {
  color: #075ec7 !important;
  text-transform: uppercase;
  letter-spacing: .10em;
  font-size: .75rem;
}
.league-public-refresh .league-leader-card,
.league-public-refresh .league-top-story,
.league-public-refresh .league-news-row,
.league-public-refresh .league-team-spotlight,
.team-public-refresh .story-row-pro,
.team-public-refresh .leader-row-pro,
.team-public-refresh .timeline-item-pro,
.team-public-refresh .media-row {
  background: #f8fafc !important;
  border: 1px solid rgba(15, 23, 42, .10) !important;
  border-radius: 18px !important;
  color: var(--fan-ink) !important;
}
.league-public-refresh .league-leader-card b,
.team-public-refresh .leader-row-pro b {
  color: #b45309 !important;
}
.league-public-refresh .league-top-story h3,
.league-public-refresh .league-highlight-caption strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.league-public-refresh .league-highlight-hero {
  border-radius: 22px !important;
  overflow: hidden;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .12);
}

/* Baseball-specific public team page */
.baseball-team-public-refresh .team-hero {
  margin-inline: calc(50% - 50vw);
  padding-inline: max(1rem, calc(50vw - 680px));
  background-size: cover;
  background-position: center;
}
.baseball-team-public-refresh .section-title {
  margin: 1.5rem 0 .9rem;
}
.baseball-team-public-refresh .badge.text-bg-warning {
  background: #ffd66b !important;
  color: #0f172a !important;
}

/* Responsive */
@media (max-width: 991px) {
  .team-public-refresh,
  .league-public-refresh,
  .baseball-team-public-refresh {
    padding-inline: 1rem;
  }
  .team-public-refresh .franchise-hero,
  .league-public-refresh .league-hub-hero,
  .baseball-team-public-refresh .team-hero {
    border-radius: 26px !important;
  }
  .team-public-refresh .franchise-logo,
  .baseball-team-public-refresh .team-logo-lg {
    width: 86px;
    height: 86px;
    border-radius: 22px;
  }
  .team-public-refresh .schedule-row-pro {
    grid-template-columns: 1fr;
    gap: .5rem;
  }
  .team-public-refresh .schedule-status {
    text-align: left;
  }
  .team-public-refresh .roster-grid-pro {
    grid-template-columns: 1fr;
  }
}

/* TOP NAV LOGO + STYLE REFRESH
   Adds the public Game Action 360 logo, restores Leagues in the top nav,
   and modernizes the navigation bar treatment. */
.ga-navbar {
  background:
    radial-gradient(circle at 7% 0%, rgba(255, 207, 63, .15), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.94)) !important;
  border-bottom: 1px solid rgba(15,23,42,.10);
  box-shadow: 0 12px 34px rgba(15,23,42,.08);
  backdrop-filter: blur(18px);
}
.ga-brand-pro {
  min-width: 0;
  padding-block: .3rem;
}
.ga-brand-logo-wrap {
  width: 174px;
  aspect-ratio: 1448 / 973;
  height: auto;
  flex: 0 0 174px;
  display: grid;
  place-items: center;
  background: transparent !important;
  border: 0;
  box-shadow: none;
  overflow: visible;
  padding: 0;
  line-height: 0;
}
.ga-brand-logo {
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  object-position: center;
  display: block;
  border-radius: 0;
}
.ga-brand-copy {
  display: grid;
  gap: .06rem;
}
.ga-brand-name {
  color: #0f172a;
  font-size: 1.02rem;
  font-weight: 1000;
  letter-spacing: -.035em;
}
.ga-brand-subtitle {
  color: #075ec7;
  font-size: .64rem;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .16em;
}
.ga-navbar .navbar-nav {
  gap: .15rem;
}
.ga-navbar .nav-link {
  color: #334155 !important;
  border-radius: 999px;
  padding: .52rem .78rem !important;
  font-weight: 900;
  letter-spacing: -.01em;
  transition: background .15s ease, color .15s ease, transform .15s ease;
}
.ga-navbar .nav-link:hover,
.ga-navbar .nav-link:focus {
  color: #075ec7 !important;
  background: rgba(7,94,199,.08);
  transform: translateY(-1px);
}
.ga-navbar .nav-link.text-warning {
  color: #b45309 !important;
  background: rgba(255,207,63,.18);
}
.ga-navbar .btn-ga,
.ga-navbar .btn-outline-ga {
  border-radius: 999px;
  font-weight: 1000;
  padding-inline: .85rem;
}
.ga-navbar .btn-ga {
  box-shadow: 0 10px 22px rgba(11,114,217,.14);
}
@media (max-width: 991px) {
  .ga-navbar .navbar-collapse {
    padding-top: .8rem;
  }
  .ga-navbar .navbar-nav {
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 18px;
    padding: .55rem;
  }
  .ga-brand-logo-wrap {
    width: 138px;
    aspect-ratio: 1448 / 973;
    height: auto;
    flex-basis: 138px;
    padding: 0;
    overflow: visible;
  }
  .ga-brand-logo {
    width: 100%;
    height: auto;
    max-height: none;
  }
}
@media (max-width: 420px) {
  .ga-brand-name {
    font-size: .9rem;
  }
  .ga-brand-subtitle {
    font-size: .56rem;
  }
}

/* PUBLIC HUBS SCOREKEEPER-STYLE REFRESH + LEAGUE REGISTRATION ROUTE FIX
   Brings team, league, and tournament public pages closer to Scorekeeper Pro:
   dark gradient heroes, dark cards, strong contrast, and consistent fan hub surfaces. */

.team-public-refresh,
.league-public-refresh,
.tournament-public-refresh,
.baseball-team-public-refresh {
  --hub-bg: #edf2f7;
  --hub-dark: #101a2a;
  --hub-dark-2: #07111f;
  --hub-card: #111c2f;
  --hub-card-2: #162235;
  --hub-line: rgba(255,255,255,.12);
  --hub-text: #f8fbff;
  --hub-muted: #c8d7e8;
  --hub-blue: #2f8fff;
  --hub-gold: #ffd66b;
  margin-inline: calc(50% - 50vw);
  padding: clamp(1rem, 2vw, 1.6rem) max(1rem, calc(50vw - 700px)) 2.5rem;
  background:
    radial-gradient(circle at 10% 2%, rgba(47,143,255,.12), transparent 30%),
    radial-gradient(circle at 92% 0%, rgba(255,214,107,.12), transparent 26%),
    linear-gradient(180deg, #edf2f7 0%, #f8fafc 42%, #edf2f7 100%) !important;
  color: #0f172a;
}

/* Dark scorekeeper-like heroes */
.team-public-refresh .franchise-hero,
.league-public-refresh .league-hub-hero,
.tournament-public-refresh .ga-hero,
.tournament-public-refresh .tournament-hero,
.baseball-team-public-refresh .team-hero {
  border-radius: 30px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(19,111,220,.22), transparent 34%),
    radial-gradient(circle at 88% 6%, rgba(247,201,72,.12), transparent 28%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #162033 100%) !important;
  box-shadow: 0 24px 60px rgba(7,17,31,.22) !important;
  overflow: hidden;
}
.team-public-refresh .franchise-hero[style],
.baseball-team-public-refresh .team-hero[style] {
  background-blend-mode: overlay, normal !important;
}
.team-public-refresh .franchise-title,
.league-public-refresh .league-hub-title,
.tournament-public-refresh .ga-title,
.tournament-public-refresh .display-4,
.baseball-team-public-refresh .team-hero h1 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 14px 34px rgba(0,0,0,.28);
  font-size: clamp(2.2rem, 5vw, 5.8rem) !important;
  line-height: .96 !important;
  letter-spacing: -.065em !important;
}
.team-public-refresh .franchise-lead,
.league-public-refresh .league-hub-hero .lead,
.tournament-public-refresh .ga-hero .lead,
.baseball-team-public-refresh .team-hero .lead {
  color: var(--hub-muted) !important;
  font-weight: 650;
}
.team-public-refresh .ga-kicker,
.league-public-refresh .ga-kicker,
.tournament-public-refresh .ga-kicker,
.baseball-team-public-refresh .ga-kicker {
  color: var(--hub-blue) !important;
}

/* Main card style: scorekeeper dark panels */
.team-public-refresh .network-card,
.team-public-refresh .ga-card,
.league-public-refresh .ga-card,
.league-public-refresh .network-card,
.tournament-public-refresh .ga-card,
.tournament-public-refresh .network-card,
.tournament-public-refresh .tournament-control-card,
.baseball-team-public-refresh .network-card,
.baseball-team-public-refresh .player-card {
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035)),
    var(--hub-card) !important;
  color: var(--hub-text) !important;
  border: 1px solid var(--hub-line) !important;
  border-radius: 26px !important;
  box-shadow: 0 20px 52px rgba(7,17,31,.16) !important;
  overflow: hidden;
}
.team-public-refresh .network-card h1,
.team-public-refresh .network-card h2,
.team-public-refresh .network-card h3,
.team-public-refresh .network-card h4,
.team-public-refresh .network-card h5,
.team-public-refresh .ga-card h1,
.team-public-refresh .ga-card h2,
.team-public-refresh .ga-card h3,
.league-public-refresh .ga-card h1,
.league-public-refresh .ga-card h2,
.league-public-refresh .ga-card h3,
.league-public-refresh .ga-card h4,
.tournament-public-refresh .ga-card h1,
.tournament-public-refresh .ga-card h2,
.tournament-public-refresh .ga-card h3,
.tournament-public-refresh .ga-card h4,
.baseball-team-public-refresh .network-card h1,
.baseball-team-public-refresh .network-card h2,
.baseball-team-public-refresh .network-card h3,
.baseball-team-public-refresh .network-card h4,
.baseball-team-public-refresh .player-card strong {
  color: var(--hub-text) !important;
  -webkit-text-fill-color: var(--hub-text) !important;
}
.team-public-refresh .network-card p,
.team-public-refresh .network-card small,
.team-public-refresh .network-card .ga-muted,
.league-public-refresh .ga-card p,
.league-public-refresh .ga-card small,
.tournament-public-refresh .ga-card p,
.tournament-public-refresh .ga-card small,
.tournament-public-refresh .ga-card .ga-muted,
.baseball-team-public-refresh .network-card p,
.baseball-team-public-refresh .network-card .text-white-50,
.baseball-team-public-refresh .player-card .text-white-50 {
  color: var(--hub-muted) !important;
}

/* Metrics and controls */
.team-public-refresh .fan-metric,
.team-public-refresh .team-command-card,
.league-public-refresh .league-featured-game,
.league-public-refresh .league-tabbar,
.team-public-refresh .season-switcher,
.tournament-public-refresh .tournament-ticker {
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035)),
    var(--hub-dark) !important;
  color: var(--hub-text) !important;
  border: 1px solid var(--hub-line) !important;
  border-radius: 24px !important;
  box-shadow: 0 18px 42px rgba(7,17,31,.16) !important;
}
.team-public-refresh .fan-metric strong,
.team-public-refresh .fan-metric small,
.team-public-refresh .fan-metric span {
  color: var(--hub-text) !important;
}
.team-public-refresh .fan-metric span { color: #93c5fd !important; }
.team-public-refresh .fan-metric small { color: var(--hub-muted) !important; }

.team-public-refresh .season-tab,
.league-public-refresh .league-tabbar a,
.tournament-public-refresh .ga-chip,
.team-public-refresh .ga-chip,
.league-public-refresh .ga-chip {
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  color: #d8e6f7 !important;
}
.team-public-refresh .season-tab.active,
.team-public-refresh .season-tab:hover,
.league-public-refresh .league-tabbar a:hover {
  background: linear-gradient(180deg, #2563eb, #1d4ed8) !important;
  color: #fff !important;
}

/* Rows/cards inside hubs */
.team-public-refresh .schedule-row-pro,
.team-public-refresh .roster-card-pro,
.team-public-refresh .story-row-pro,
.team-public-refresh .leader-row-pro,
.team-public-refresh .timeline-item-pro,
.team-public-refresh .media-row,
.league-public-refresh .league-event-row,
.league-public-refresh .league-score-chip,
.league-public-refresh .league-leader-card,
.league-public-refresh .league-news-row,
.league-public-refresh .league-team-spotlight,
.tournament-public-refresh .score-strip-card,
.tournament-public-refresh .pool-card,
.tournament-public-refresh .bracket-card,
.baseball-team-public-refresh .event-strip,
.baseball-team-public-refresh .player-card {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  border-radius: 18px !important;
  color: var(--hub-text) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.team-public-refresh .schedule-row-pro:hover,
.team-public-refresh .roster-card-pro:hover,
.league-public-refresh .league-event-row:hover,
.league-public-refresh .league-score-chip:hover,
.tournament-public-refresh .score-strip-card:hover,
.baseball-team-public-refresh .event-strip:hover {
  transform: translateY(-2px);
  border-color: rgba(47,143,255,.42) !important;
  box-shadow: 0 18px 38px rgba(7,17,31,.20) !important;
}
.team-public-refresh .schedule-date strong,
.team-public-refresh .schedule-status strong,
.team-public-refresh .schedule-matchup strong,
.team-public-refresh .roster-card-pro strong,
.team-public-refresh .leader-row-pro strong,
.team-public-refresh .story-row-pro h3,
.league-public-refresh .league-event-row strong,
.league-public-refresh .league-score-chip strong,
.league-public-refresh .league-standings-team strong,
.league-public-refresh .league-leader-card strong,
.league-public-refresh .league-news-row strong,
.league-public-refresh .league-team-spotlight strong,
.tournament-public-refresh .score-strip-card strong,
.tournament-public-refresh .team-row span,
.baseball-team-public-refresh .event-strip .text-white {
  color: var(--hub-text) !important;
  -webkit-text-fill-color: var(--hub-text) !important;
}
.team-public-refresh .schedule-date small,
.team-public-refresh .schedule-matchup small,
.team-public-refresh .roster-card-pro small,
.team-public-refresh .leader-row-pro small,
.team-public-refresh .story-row-pro p,
.league-public-refresh .league-event-row span,
.league-public-refresh .league-event-row em,
.league-public-refresh .league-standings-team small,
.league-public-refresh .league-news-row small,
.league-public-refresh .league-team-spotlight p,
.league-public-refresh .league-team-spotlight small,
.tournament-public-refresh .score-strip-card .ga-muted,
.baseball-team-public-refresh .event-strip .text-white-50 {
  color: var(--hub-muted) !important;
}

/* Tables closer to scorekeeper */
.league-public-refresh .league-standings-table,
.tournament-public-refresh .tournament-table,
.tournament-public-refresh .table,
.league-public-refresh .table {
  color: var(--hub-text) !important;
}
.league-public-refresh .league-standings-table > :not(caption) > * > *,
.tournament-public-refresh .tournament-table > :not(caption) > * > *,
.tournament-public-refresh .table > :not(caption) > * > *,
.league-public-refresh .table > :not(caption) > * > * {
  background: transparent !important;
  border-color: rgba(255,255,255,.10) !important;
  color: var(--hub-text) !important;
}
.league-public-refresh thead th,
.tournament-public-refresh thead th {
  color: #9cc5ff !important;
  text-transform: uppercase;
  letter-spacing: .10em;
  font-size: .75rem;
}

/* Index pages */
.team-public-index > .mb-4,
.league-public-index > .mb-4,
.tournament-public-refresh > .mb-4:first-child {
  padding: 1.35rem 1.5rem;
  border-radius: 28px;
  background:
    radial-gradient(circle at 18% 0%, rgba(19,111,220,.22), transparent 34%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #162033 100%) !important;
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 24px 60px rgba(7,17,31,.18);
}
.team-public-index .ga-title,
.league-public-index .ga-title,
.tournament-public-refresh > .mb-4:first-child .ga-title {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: clamp(2.2rem, 4vw, 4.6rem);
  line-height: .96;
  letter-spacing: -.065em;
}

/* League registration page route/style */
.league-registration-public-refresh .league-reg-hero,
.league-registration-public-refresh .league-reg-hero-panel {
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035)),
    var(--hub-dark) !important;
  border: 1px solid var(--hub-line) !important;
  color: var(--hub-text) !important;
  box-shadow: 0 20px 52px rgba(7,17,31,.16);
}
.league-registration-public-refresh .league-registration-card,
.league-registration-public-refresh .league-reg-approved-row {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  color: var(--hub-text) !important;
}
.league-registration-public-refresh .league-registration-card h3,
.league-registration-public-refresh .league-reg-price,
.league-registration-public-refresh .league-reg-approved-row strong {
  color: var(--hub-text) !important;
}
.league-registration-public-refresh .league-registration-card p,
.league-registration-public-refresh .league-reg-benefits,
.league-registration-public-refresh .league-reg-approved-row span {
  color: var(--hub-muted) !important;
}

@media (max-width: 991px) {
  .team-public-refresh,
  .league-public-refresh,
  .tournament-public-refresh,
  .baseball-team-public-refresh {
    padding-inline: 1rem;
  }
  .team-public-refresh .franchise-title,
  .league-public-refresh .league-hub-title,
  .tournament-public-refresh .ga-title {
    font-size: clamp(2.1rem, 11vw, 3.6rem) !important;
  }
  .team-public-refresh .schedule-row-pro {
    grid-template-columns: 1fr;
  }
}

/* GLOBAL STYLE CONTRAST CONSISTENCY FIX
   Final-pass contrast guardrails:
   - light surfaces always use dark readable text
   - dark/broadcast surfaces always use light readable text
   - public team/league/tournament hubs use one consistent light-card + dark-hero system
   - avoids the light-on-light regressions seen across league/team/tournament pages */

/* Base readable defaults on the light site shell */
body.ga-light-theme {
  color: #0f172a !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(37,99,235,.08), transparent 28%),
    radial-gradient(circle at 92% 0%, rgba(255,207,63,.10), transparent 28%),
    linear-gradient(180deg, #eef3f8 0%, #f8fafc 48%, #eef3f8 100%) !important;
}

body.ga-light-theme .ga-page {
  color: #0f172a !important;
}

/* Light page cards: readable dark text */
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .ga-card,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .network-card,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .player-card,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .event-strip,
body.ga-light-theme .team-public-refresh .network-card,
body.ga-light-theme .team-public-refresh .ga-card,
body.ga-light-theme .league-public-refresh .ga-card,
body.ga-light-theme .league-public-refresh .network-card,
body.ga-light-theme .tournament-public-refresh .ga-card,
body.ga-light-theme .tournament-public-refresh .network-card,
body.ga-light-theme .baseball-team-public-refresh .network-card,
body.ga-light-theme .baseball-team-public-refresh .player-card {
  background: linear-gradient(180deg, #ffffff, #f8fafc) !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.08) !important;
}

body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .ga-card h1,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .ga-card h2,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .ga-card h3,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .ga-card h4,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .ga-card h5,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .network-card h1,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .network-card h2,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .network-card h3,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .network-card h4,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .network-card h5,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .ga-section-title,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .ga-title,
body.ga-light-theme .team-public-refresh .network-card h1,
body.ga-light-theme .team-public-refresh .network-card h2,
body.ga-light-theme .team-public-refresh .network-card h3,
body.ga-light-theme .team-public-refresh .network-card h4,
body.ga-light-theme .league-public-refresh .ga-card h1,
body.ga-light-theme .league-public-refresh .ga-card h2,
body.ga-light-theme .league-public-refresh .ga-card h3,
body.ga-light-theme .league-public-refresh .ga-card h4,
body.ga-light-theme .tournament-public-refresh .ga-card h1,
body.ga-light-theme .tournament-public-refresh .ga-card h2,
body.ga-light-theme .tournament-public-refresh .ga-card h3,
body.ga-light-theme .tournament-public-refresh .ga-card h4 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}

body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .ga-muted,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .text-white-50,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) p,
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) small,
body.ga-light-theme .team-public-refresh .network-card p,
body.ga-light-theme .team-public-refresh .network-card small,
body.ga-light-theme .league-public-refresh .ga-card p,
body.ga-light-theme .league-public-refresh .ga-card small,
body.ga-light-theme .tournament-public-refresh .ga-card p,
body.ga-light-theme .tournament-public-refresh .ga-card small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* Dark hero/scorekeeper-like areas keep light text */
body.ga-light-theme .franchise-hero,
body.ga-light-theme .league-hub-hero,
body.ga-light-theme .tournament-hero,
body.ga-light-theme .team-hero,
body.ga-light-theme .gamecast-topbar,
body.ga-light-theme .scorebook-topbar,
body.ga-light-theme .scorebook-game-strip,
body.ga-light-theme .gamecast-score-strip,
body.ga-light-theme .lead-story-card {
  color: #f8fbff !important;
}

body.ga-light-theme .franchise-hero h1,
body.ga-light-theme .franchise-hero h2,
body.ga-light-theme .franchise-hero h3,
body.ga-light-theme .franchise-hero p,
body.ga-light-theme .franchise-hero small,
body.ga-light-theme .league-hub-hero h1,
body.ga-light-theme .league-hub-hero h2,
body.ga-light-theme .league-hub-hero h3,
body.ga-light-theme .league-hub-hero p,
body.ga-light-theme .league-hub-hero small,
body.ga-light-theme .tournament-hero h1,
body.ga-light-theme .tournament-hero h2,
body.ga-light-theme .tournament-hero h3,
body.ga-light-theme .tournament-hero p,
body.ga-light-theme .tournament-hero small,
body.ga-light-theme .team-hero h1,
body.ga-light-theme .team-hero h2,
body.ga-light-theme .team-hero h3,
body.ga-light-theme .team-hero p,
body.ga-light-theme .team-hero small,
body.ga-light-theme .lead-story-card h1,
body.ga-light-theme .lead-story-card h2,
body.ga-light-theme .lead-story-card h3,
body.ga-light-theme .lead-story-card p,
body.ga-light-theme .lead-story-card small {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
}

/* League public hero from screenshot: make the copy readable on light hero if image/gradient is light */
body.ga-light-theme .league-public-refresh .league-hub-hero {
  background:
    radial-gradient(circle at 10% 0%, rgba(37,99,235,.12), transparent 34%),
    radial-gradient(circle at 96% 4%, rgba(255,207,63,.18), transparent 28%),
    linear-gradient(180deg, #ffffff, #f8fafc) !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.10) !important;
}

body.ga-light-theme .league-public-refresh .league-hub-hero h1,
body.ga-light-theme .league-public-refresh .league-hub-hero .league-hub-title {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}

body.ga-light-theme .league-public-refresh .league-hub-hero p,
body.ga-light-theme .league-public-refresh .league-hub-hero .lead,
body.ga-light-theme .league-public-refresh .league-hub-hero .lead {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

body.ga-light-theme .league-public-refresh .league-featured-game {
  background: linear-gradient(180deg, #101a2a, #162235) !important;
  color: #f8fbff !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}

/* Rows inside light cards */
body.ga-light-theme .team-public-refresh .schedule-row-pro,
body.ga-light-theme .team-public-refresh .roster-card-pro,
body.ga-light-theme .team-public-refresh .story-row-pro,
body.ga-light-theme .team-public-refresh .leader-row-pro,
body.ga-light-theme .team-public-refresh .timeline-item-pro,
body.ga-light-theme .team-public-refresh .media-row,
body.ga-light-theme .league-public-refresh .league-event-row,
body.ga-light-theme .league-public-refresh .league-score-chip,
body.ga-light-theme .league-public-refresh .league-leader-card,
body.ga-light-theme .league-public-refresh .league-news-row,
body.ga-light-theme .league-public-refresh .league-team-spotlight,
body.ga-light-theme .tournament-public-refresh .score-strip-card,
body.ga-light-theme .tournament-public-refresh .pool-card,
body.ga-light-theme .tournament-public-refresh .bracket-card,
body.ga-light-theme .baseball-team-public-refresh .event-strip {
  background: #f8fafc !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
}

body.ga-light-theme .team-public-refresh .schedule-row-pro *,
body.ga-light-theme .team-public-refresh .roster-card-pro *,
body.ga-light-theme .team-public-refresh .story-row-pro *,
body.ga-light-theme .league-public-refresh .league-event-row *,
body.ga-light-theme .league-public-refresh .league-score-chip *,
body.ga-light-theme .league-public-refresh .league-leader-card *,
body.ga-light-theme .league-public-refresh .league-news-row *,
body.ga-light-theme .league-public-refresh .league-team-spotlight *,
body.ga-light-theme .tournament-public-refresh .score-strip-card *,
body.ga-light-theme .baseball-team-public-refresh .event-strip * {
  text-shadow: none !important;
}

body.ga-light-theme .team-public-refresh .schedule-row-pro strong,
body.ga-light-theme .team-public-refresh .roster-card-pro strong,
body.ga-light-theme .team-public-refresh .story-row-pro h3,
body.ga-light-theme .team-public-refresh .leader-row-pro strong,
body.ga-light-theme .league-public-refresh .league-event-row strong,
body.ga-light-theme .league-public-refresh .league-score-chip strong,
body.ga-light-theme .league-public-refresh .league-leader-card strong,
body.ga-light-theme .league-public-refresh .league-news-row strong,
body.ga-light-theme .league-public-refresh .league-team-spotlight strong,
body.ga-light-theme .tournament-public-refresh .score-strip-card strong,
body.ga-light-theme .baseball-team-public-refresh .event-strip .text-white {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .team-public-refresh .schedule-row-pro small,
body.ga-light-theme .team-public-refresh .roster-card-pro small,
body.ga-light-theme .team-public-refresh .story-row-pro p,
body.ga-light-theme .league-public-refresh .league-event-row span,
body.ga-light-theme .league-public-refresh .league-event-row em,
body.ga-light-theme .league-public-refresh .league-score-chip span,
body.ga-light-theme .league-public-refresh .league-leader-card small,
body.ga-light-theme .league-public-refresh .league-news-row small,
body.ga-light-theme .league-public-refresh .league-team-spotlight p,
body.ga-light-theme .league-public-refresh .league-team-spotlight small,
body.ga-light-theme .baseball-team-public-refresh .event-strip .text-white-50 {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* Tables */
body.ga-light-theme .league-public-refresh table,
body.ga-light-theme .tournament-public-refresh table,
body.ga-light-theme .league-public-refresh table td,
body.ga-light-theme .league-public-refresh table th,
body.ga-light-theme .tournament-public-refresh table td,
body.ga-light-theme .tournament-public-refresh table th {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .league-public-refresh table thead th,
body.ga-light-theme .tournament-public-refresh table thead th {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  background: transparent !important;
}

body.ga-light-theme .league-public-refresh .table > :not(caption) > * > *,
body.ga-light-theme .tournament-public-refresh .table > :not(caption) > * > * {
  border-color: rgba(15,23,42,.12) !important;
}

/* Pills/buttons */
body.ga-light-theme .ga-chip {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  background: #f1f5f9 !important;
  border: 1px solid rgba(15,23,42,.10) !important;
}

body.ga-light-theme .btn-ga,
body.ga-light-theme .ga-navbar .btn-ga {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.ga-light-theme .btn-outline-ga {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  background: #ffffff !important;
  border-color: rgba(7,94,199,.28) !important;
}

/* Preserve scorekeeper and gamecast dark components */
body.ga-light-theme .scorebook-shell.scorebook-pro,
body.ga-light-theme .scorebook-shell.scorebook-pro *,
body.ga-light-theme .gamecast-shell.gamecast-pro,
body.ga-light-theme .gamecast-shell.gamecast-pro * {
  -webkit-text-fill-color: unset;
}

/* PUBLIC HUB READABILITY HARDENING FIX
   This is a final high-specificity pass for the exact team/league/tournament readability issues:
   - no white headings on light hero backgrounds
   - no pale table/link text on white cards
   - no dark text inside dark featured game cards
   - consistent scorekeeper-inspired dark hero + readable light content cards
*/

/* Public hub pages should use light content cards with dark copy */
body.ga-light-theme .team-public-refresh,
body.ga-light-theme .league-public-refresh,
body.ga-light-theme .tournament-public-refresh,
body.ga-light-theme .baseball-team-public-refresh {
  color: #0f172a !important;
}

/* TEAM HERO: keep it light/readable unless it has a true dark image underneath */
body.ga-light-theme .team-public-refresh .franchise-hero {
  background:
    radial-gradient(circle at 7% 0%, rgba(37,99,235,.10), transparent 32%),
    radial-gradient(circle at 95% 5%, rgba(255,207,63,.20), transparent 30%),
    linear-gradient(180deg, #ffffff, #f8fafc) !important;
  border-color: rgba(15,23,42,.10) !important;
}
body.ga-light-theme .team-public-refresh .franchise-hero .franchise-title,
body.ga-light-theme .team-public-refresh .franchise-hero h1,
body.ga-light-theme .team-public-refresh .franchise-hero h2,
body.ga-light-theme .team-public-refresh .franchise-hero h3 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}
body.ga-light-theme .team-public-refresh .franchise-hero .franchise-lead,
body.ga-light-theme .team-public-refresh .franchise-hero p,
body.ga-light-theme .team-public-refresh .franchise-hero small,
body.ga-light-theme .team-public-refresh .franchise-hero .ga-muted {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  text-shadow: none !important;
}
body.ga-light-theme .team-public-refresh .franchise-hero .team-command-card {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
}
body.ga-light-theme .team-public-refresh .franchise-hero .team-command-card *,
body.ga-light-theme .team-public-refresh .franchise-hero .team-command-card .ga-muted {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

/* LEAGUE HERO: light readable heading/copy and dark readable featured game panel */
body.ga-light-theme .league-public-refresh .league-hub-hero {
  background:
    radial-gradient(circle at 7% 0%, rgba(37,99,235,.10), transparent 32%),
    radial-gradient(circle at 95% 5%, rgba(255,207,63,.20), transparent 30%),
    linear-gradient(180deg, #ffffff, #f8fafc) !important;
  border-color: rgba(15,23,42,.10) !important;
}
body.ga-light-theme .league-public-refresh .league-hub-hero .league-hub-title,
body.ga-light-theme .league-public-refresh .league-hub-hero h1,
body.ga-light-theme .league-public-refresh .league-hub-hero h2,
body.ga-light-theme .league-public-refresh .league-hub-hero h3 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}
body.ga-light-theme .league-public-refresh .league-hub-hero p,
body.ga-light-theme .league-public-refresh .league-hub-hero .lead,
body.ga-light-theme .league-public-refresh .league-hub-hero .lead {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  text-shadow: none !important;
}
body.ga-light-theme .league-public-refresh .league-featured-game,
body.ga-light-theme .league-public-refresh .league-featured-game * {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
}
body.ga-light-theme .league-public-refresh .league-featured-game {
  background: linear-gradient(180deg, #101a2a, #162235) !important;
  border-color: rgba(255,255,255,.12) !important;
}
body.ga-light-theme .league-public-refresh .league-featured-game .ga-chip {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  background: #f1f5f9 !important;
}

/* TOURNAMENT HERO: tournament hero is intentionally dark; force light readable text */
body.ga-light-theme .tournament-public-refresh .tournament-hero,
body.ga-light-theme .tournament-public-refresh .ga-hero.tournament-hero {
  background:
    radial-gradient(circle at 15% 0%, rgba(47,143,255,.28), transparent 34%),
    radial-gradient(circle at 82% 8%, rgba(255,214,107,.18), transparent 28%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #162033 100%) !important;
}
body.ga-light-theme .tournament-public-refresh .tournament-hero .ga-title,
body.ga-light-theme .tournament-public-refresh .tournament-hero h1,
body.ga-light-theme .tournament-public-refresh .tournament-hero h2,
body.ga-light-theme .tournament-public-refresh .tournament-hero h3,
body.ga-light-theme .tournament-public-refresh .tournament-hero p,
body.ga-light-theme .tournament-public-refresh .tournament-hero .ga-muted,
body.ga-light-theme .tournament-public-refresh .tournament-hero small {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
  text-shadow: 0 8px 24px rgba(0,0,0,.28) !important;
}
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card {
  background: #ffffff !important;
  color: #0f172a !important;
}
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card h1,
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card h2,
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card h3,
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card p,
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card .ga-muted,
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card small {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}

/* All public hub content cards are light with dark text */
body.ga-light-theme .team-public-refresh .network-card,
body.ga-light-theme .team-public-refresh .ga-card,
body.ga-light-theme .league-public-refresh .ga-card,
body.ga-light-theme .league-public-refresh .network-card,
body.ga-light-theme .tournament-public-refresh .ga-card,
body.ga-light-theme .tournament-public-refresh .network-card,
body.ga-light-theme .baseball-team-public-refresh .network-card,
body.ga-light-theme .baseball-team-public-refresh .player-card {
  background: #ffffff !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.10) !important;
}

body.ga-light-theme .team-public-refresh .network-card *,
body.ga-light-theme .team-public-refresh .ga-card *,
body.ga-light-theme .league-public-refresh .ga-card *,
body.ga-light-theme .league-public-refresh .network-card *,
body.ga-light-theme .tournament-public-refresh .ga-card *,
body.ga-light-theme .tournament-public-refresh .network-card *,
body.ga-light-theme .baseball-team-public-refresh .network-card *,
body.ga-light-theme .baseball-team-public-refresh .player-card * {
  text-shadow: none !important;
}

/* Strong dark copy for headings/labels/links inside light cards */
body.ga-light-theme .team-public-refresh .network-card h1,
body.ga-light-theme .team-public-refresh .network-card h2,
body.ga-light-theme .team-public-refresh .network-card h3,
body.ga-light-theme .team-public-refresh .network-card h4,
body.ga-light-theme .team-public-refresh .network-card h5,
body.ga-light-theme .team-public-refresh .network-card strong,
body.ga-light-theme .team-public-refresh .network-card a,
body.ga-light-theme .league-public-refresh .ga-card h1,
body.ga-light-theme .league-public-refresh .ga-card h2,
body.ga-light-theme .league-public-refresh .ga-card h3,
body.ga-light-theme .league-public-refresh .ga-card h4,
body.ga-light-theme .league-public-refresh .ga-card h5,
body.ga-light-theme .league-public-refresh .ga-card strong,
body.ga-light-theme .league-public-refresh .ga-card a,
body.ga-light-theme .tournament-public-refresh .ga-card h1,
body.ga-light-theme .tournament-public-refresh .ga-card h2,
body.ga-light-theme .tournament-public-refresh .ga-card h3,
body.ga-light-theme .tournament-public-refresh .ga-card h4,
body.ga-light-theme .tournament-public-refresh .ga-card h5,
body.ga-light-theme .tournament-public-refresh .ga-card strong,
body.ga-light-theme .tournament-public-refresh .ga-card a {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

/* Muted text inside light cards */
body.ga-light-theme .team-public-refresh .network-card p,
body.ga-light-theme .team-public-refresh .network-card small,
body.ga-light-theme .team-public-refresh .network-card .ga-muted,
body.ga-light-theme .league-public-refresh .ga-card p,
body.ga-light-theme .league-public-refresh .ga-card small,
body.ga-light-theme body.ga-light-theme .tournament-public-refresh .ga-card p,
body.ga-light-theme .tournament-public-refresh .ga-card small,
body.ga-light-theme .tournament-public-refresh .ga-card .ga-muted {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* Row components inside public hub cards */
body.ga-light-theme .team-public-refresh .schedule-row-pro,
body.ga-light-theme .team-public-refresh .roster-card-pro,
body.ga-light-theme .team-public-refresh .story-row-pro,
body.ga-light-theme .team-public-refresh .leader-row-pro,
body.ga-light-theme .team-public-refresh .timeline-item-pro,
body.ga-light-theme .team-public-refresh .media-row,
body.ga-light-theme .league-public-refresh .league-event-row,
body.ga-light-theme .league-public-refresh .league-score-chip,
body.ga-light-theme .league-public-refresh .league-leader-card,
body.ga-light-theme .league-public-refresh .league-news-row,
body.ga-light-theme .league-public-refresh .league-team-spotlight,
body.ga-light-theme .tournament-public-refresh .score-strip-card,
body.ga-light-theme .tournament-public-refresh .pool-card,
body.ga-light-theme .tournament-public-refresh .bracket-card,
body.ga-light-theme .baseball-team-public-refresh .event-strip,
body.ga-light-theme .baseball-team-public-refresh .player-card {
  background: #f8fafc !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.12) !important;
}

body.ga-light-theme .team-public-refresh .schedule-row-pro strong,
body.ga-light-theme .team-public-refresh .roster-card-pro strong,
body.ga-light-theme .team-public-refresh .story-row-pro h3,
body.ga-light-theme .team-public-refresh .leader-row-pro strong,
body.ga-light-theme .team-public-refresh .media-row strong,
body.ga-light-theme .league-public-refresh .league-event-row strong,
body.ga-light-theme .league-public-refresh .league-score-chip strong,
body.ga-light-theme .league-public-refresh .league-leader-card strong,
body.ga-light-theme .league-public-refresh .league-news-row strong,
body.ga-light-theme .league-public-refresh .league-team-spotlight strong,
body.ga-light-theme .tournament-public-refresh .score-strip-card strong,
body.ga-light-theme .tournament-public-refresh .pool-card strong,
body.ga-light-theme .tournament-public-refresh .bracket-card strong,
body.ga-light-theme .baseball-team-public-refresh .event-strip .text-white,
body.ga-light-theme .baseball-team-public-refresh .player-card strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .team-public-refresh .schedule-row-pro small,
body.ga-light-theme .team-public-refresh .roster-card-pro small,
body.ga-light-theme .team-public-refresh .story-row-pro p,
body.ga-light-theme .team-public-refresh .leader-row-pro small,
body.ga-light-theme .team-public-refresh .media-row small,
body.ga-light-theme .league-public-refresh .league-event-row span,
body.ga-light-theme .league-public-refresh .league-event-row em,
body.ga-light-theme .league-public-refresh .league-score-chip span,
body.ga-light-theme .league-public-refresh .league-leader-card small,
body.ga-light-theme .league-public-refresh .league-news-row small,
body.ga-light-theme .league-public-refresh .league-team-spotlight p,
body.ga-light-theme .league-public-refresh .league-team-spotlight small,
body.ga-light-theme .tournament-public-refresh .score-strip-card .ga-muted,
body.ga-light-theme .baseball-team-public-refresh .event-strip .text-white-50,
body.ga-light-theme .baseball-team-public-refresh .player-card .text-white-50 {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* Make stat/metric cards readable if they are light */
body.ga-light-theme .team-public-refresh .fan-metric {
  background: #ffffff !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.10) !important;
}
body.ga-light-theme .team-public-refresh .fan-metric span {
  color: #0b72d9 !important;
  -webkit-text-fill-color: #0b72d9 !important;
}
body.ga-light-theme .team-public-refresh .fan-metric strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
body.ga-light-theme .team-public-refresh .fan-metric small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* Tables in light public cards */
body.ga-light-theme .league-public-refresh .league-standings-table,
body.ga-light-theme .league-public-refresh table,
body.ga-light-theme .tournament-public-refresh .tournament-table,
body.ga-light-theme .tournament-public-refresh table {
  color: #0f172a !important;
}
body.ga-light-theme .league-public-refresh table th,
body.ga-light-theme .league-public-refresh table td,
body.ga-light-theme .tournament-public-refresh table th,
body.ga-light-theme .tournament-public-refresh table td {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  background: transparent !important;
  border-color: rgba(15,23,42,.12) !important;
}
body.ga-light-theme .league-public-refresh table small,
body.ga-light-theme .tournament-public-refresh table small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* Video/story overlays that sit on images should remain white */
body.ga-light-theme .league-public-refresh .league-top-story h3,
body.ga-light-theme .league-public-refresh .league-top-story p,
body.ga-light-theme .league-public-refresh .league-highlight-caption,
body.ga-light-theme .league-public-refresh .league-highlight-caption *,
body.ga-light-theme .tournament-public-refresh .league-highlight-caption,
body.ga-light-theme .tournament-public-refresh .league-highlight-caption * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Navbar/ticker stay readable */
body.ga-light-theme .ga-navbar .nav-link,
body.ga-light-theme .ga-ticker--games,
body.ga-light-theme .ga-ticker--games * {
  text-shadow: none !important;
}

/* GAMECENTER READABILITY FIX
   The public Event/GameCenter hero uses a dark broadcast background,
   so force hero title/subtitle/buttons/stat cards to readable colors. */
body.ga-light-theme .gamecenter-hero {
  background:
    radial-gradient(circle at 15% 0%, rgba(47,143,255,.22), transparent 34%),
    radial-gradient(circle at 90% 8%, rgba(25,211,255,.16), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #10263f 100%) !important;
  color: #f8fbff !important;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 24px 60px rgba(7,17,31,.22);
}

body.ga-light-theme .gamecenter-hero .ga-title,
body.ga-light-theme .gamecenter-hero h1,
body.ga-light-theme .gamecenter-hero h2,
body.ga-light-theme .gamecenter-hero h3 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 12px 30px rgba(0,0,0,.32) !important;
}

body.ga-light-theme .gamecenter-hero .lead,
body.ga-light-theme .gamecenter-hero p,
body.ga-light-theme .gamecenter-hero .ga-muted {
  color: #d8e6f7 !important;
  -webkit-text-fill-color: #d8e6f7 !important;
}

body.ga-light-theme .gamecenter-hero .ga-kicker {
  color: #2f8fff !important;
  -webkit-text-fill-color: #2f8fff !important;
}

body.ga-light-theme .gamecenter-hero .btn-ga {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: linear-gradient(180deg, #198cff, #075ec7) !important;
  border-color: rgba(255,255,255,.16) !important;
}

body.ga-light-theme .gamecenter-hero .btn-outline-ga,
body.ga-light-theme .gamecenter-hero .btn-outline-warning,
body.ga-light-theme .gamecenter-hero .btn-outline-info {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  background: #ffffff !important;
  border-color: rgba(255,255,255,.58) !important;
  font-weight: 900;
}

body.ga-light-theme .gamecenter-hero .ga-stat {
  background: rgba(255,255,255,.95) !important;
  color: #0f172a !important;
  border: 1px solid rgba(255,255,255,.55) !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 36px rgba(0,0,0,.16);
}

body.ga-light-theme .gamecenter-hero .ga-stat strong,
body.ga-light-theme .gamecenter-hero .ga-stat h1,
body.ga-light-theme .gamecenter-hero .ga-stat h2,
body.ga-light-theme .gamecenter-hero .ga-stat h3 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}

body.ga-light-theme .gamecenter-hero .ga-stat .ga-kicker {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
}

/* Public scoreboard panel within GameCenter hero */
body.ga-light-theme .gamecenter-hero .scoreboard-panel,
body.ga-light-theme .gamecenter-hero .gamecenter-scorecard,
body.ga-light-theme .gamecenter-hero .live-score-card {
  color: #0f172a !important;
}

body.ga-light-theme .gamecenter-hero .scoreboard-panel strong,
body.ga-light-theme .gamecenter-hero .scoreboard-panel span,
body.ga-light-theme .gamecenter-hero .scoreboard-panel small,
body.ga-light-theme .gamecenter-hero .gamecenter-scorecard strong,
body.ga-light-theme .gamecenter-hero .gamecenter-scorecard span,
body.ga-light-theme .gamecenter-hero .gamecenter-scorecard small,
body.ga-light-theme .gamecenter-hero .live-score-card strong,
body.ga-light-theme .gamecenter-hero .live-score-card span,
body.ga-light-theme .gamecenter-hero .live-score-card small {
  -webkit-text-fill-color: unset;
}

/* TOURNAMENT PUBLIC READABILITY FIX
   Fixes tournament hub dark hero and scoreboard contrast from latest screenshot. */
body.ga-light-theme .tournament-public-refresh .ga-hero.tournament-hero,
body.ga-light-theme .tournament-public-refresh .tournament-hero {
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.24), transparent 34%),
    radial-gradient(circle at 88% 8%, rgba(255,214,107,.14), transparent 28%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #162033 100%) !important;
  color: #f8fbff !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 24px 60px rgba(7,17,31,.22) !important;
}

body.ga-light-theme .tournament-public-refresh .tournament-hero .ga-title,
body.ga-light-theme .tournament-public-refresh .tournament-hero h1,
body.ga-light-theme .tournament-public-refresh .tournament-hero h2,
body.ga-light-theme .tournament-public-refresh .tournament-hero h3 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 14px 34px rgba(0,0,0,.36) !important;
}

body.ga-light-theme .tournament-public-refresh .tournament-hero p,
body.ga-light-theme .tournament-public-refresh .tournament-hero .lead,
body.ga-light-theme .tournament-public-refresh .tournament-hero .ga-muted,
body.ga-light-theme .tournament-public-refresh .tournament-hero small {
  color: #d8e6f7 !important;
  -webkit-text-fill-color: #d8e6f7 !important;
  text-shadow: 0 8px 24px rgba(0,0,0,.26) !important;
}

body.ga-light-theme .tournament-public-refresh .tournament-hero .ga-kicker {
  color: #2f8fff !important;
  -webkit-text-fill-color: #2f8fff !important;
}

body.ga-light-theme .tournament-public-refresh .tournament-hero .ga-chip {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  background: #f8fafc !important;
  border: 1px solid rgba(255,255,255,.65) !important;
  text-shadow: none !important;
}

body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card,
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card * {
  text-shadow: none !important;
}

body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(255,255,255,.58) !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.24) !important;
}

body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card h1,
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card h2,
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card h3,
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card p,
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card .ga-muted,
body.ga-light-theme .tournament-public-refresh .tournament-hero .tournament-control-card small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* Tournament scoreboard strip */
body.ga-light-theme .tournament-public-refresh .tournament-ticker,
body.ga-light-theme .tournament-public-refresh .tournament-ticker.ga-card {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
}

body.ga-light-theme .tournament-public-refresh .tournament-ticker .ga-kicker {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
}

body.ga-light-theme .tournament-public-refresh .tournament-ticker .ga-muted,
body.ga-light-theme .tournament-public-refresh .tournament-ticker small,
body.ga-light-theme .tournament-public-refresh .tournament-ticker span {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

body.ga-light-theme .tournament-public-refresh .score-strip-card {
  background: #f8fafc !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.12) !important;
}

body.ga-light-theme .tournament-public-refresh .score-strip-card strong,
body.ga-light-theme .tournament-public-refresh .score-strip-card .team-row span,
body.ga-light-theme .tournament-public-refresh .score-strip-card .team-row strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .tournament-public-refresh .score-strip-card .badge {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: #334155 !important;
}

body.ga-light-theme .tournament-public-refresh .score-strip-card .badge.text-bg-dark,
body.ga-light-theme .tournament-public-refresh .score-strip-card .badge.text-bg-secondary {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* PLAYER PUBLIC PAGE STYLE + READABILITY FIX
   Brings the player hub in line with the team/league/tournament fan pages and fixes unreadable
   light-on-light schedule/status text. */

body.ga-light-theme .player-public-refresh {
  --player-bg: #edf2f7;
  --player-ink: #0f172a;
  --player-muted: #475569;
  --player-blue: #075ec7;
  --player-gold: #ffd66b;
  margin-inline: calc(50% - 50vw);
  padding: clamp(1rem, 2vw, 1.6rem) max(1rem, calc(50vw - 700px)) 2.5rem;
  background:
    radial-gradient(circle at 8% 0%, rgba(37,99,235,.10), transparent 30%),
    radial-gradient(circle at 92% 2%, rgba(255,207,63,.12), transparent 28%),
    linear-gradient(180deg, #edf2f7 0%, #f8fafc 46%, #edf2f7 100%);
  color: var(--player-ink) !important;
}

/* Player hero */
body.ga-light-theme .player-public-refresh .athlete-hero {
  border-radius: 32px !important;
  padding: clamp(1.25rem, 3vw, 2.5rem);
  background:
    radial-gradient(circle at 8% 0%, rgba(37,99,235,.14), transparent 34%),
    radial-gradient(circle at 94% 6%, rgba(255,214,107,.18), transparent 30%),
    linear-gradient(180deg, #ffffff, #f8fafc) !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: 0 24px 60px rgba(15,23,42,.10) !important;
  overflow: hidden;
}

body.ga-light-theme .player-public-refresh .athlete-title,
body.ga-light-theme .player-public-refresh .athlete-hero h1,
body.ga-light-theme .player-public-refresh .athlete-hero h2,
body.ga-light-theme .player-public-refresh .athlete-hero h3 {
  color: var(--player-ink) !important;
  -webkit-text-fill-color: var(--player-ink) !important;
  text-shadow: none !important;
  font-size: clamp(2.5rem, 6vw, 6.4rem) !important;
  line-height: .94 !important;
  letter-spacing: -.065em !important;
  font-weight: 1000;
}

body.ga-light-theme .player-public-refresh .athlete-hero .lead,
body.ga-light-theme .player-public-refresh .athlete-hero p,
body.ga-light-theme .player-public-refresh .athlete-hero .ga-muted,
body.ga-light-theme .player-public-refresh .athlete-hero small {
  color: var(--player-muted) !important;
  -webkit-text-fill-color: var(--player-muted) !important;
  text-shadow: none !important;
  font-weight: 650;
}

body.ga-light-theme .player-public-refresh .athlete-hero .ga-kicker,
body.ga-light-theme .player-public-refresh .ga-kicker {
  color: var(--player-blue) !important;
  -webkit-text-fill-color: var(--player-blue) !important;
}

body.ga-light-theme .player-public-refresh .athlete-photo-wrap,
body.ga-light-theme .player-public-refresh .athlete-photo,
body.ga-light-theme .player-public-refresh .athlete-number {
  background: #0f172a !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 6px solid #ffffff !important;
  box-shadow: 0 22px 50px rgba(15,23,42,.18) !important;
}

body.ga-light-theme .player-public-refresh .athlete-number {
  display: grid;
  place-items: center;
  min-height: 150px;
  border-radius: 30px;
  font-size: 3rem;
  font-weight: 1000;
}

/* Season switcher and metrics */
body.ga-light-theme .player-public-refresh .season-switcher {
  background: #ffffff !important;
  color: var(--player-ink) !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 26px !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.08) !important;
  padding: 1rem !important;
}

body.ga-light-theme .player-public-refresh .season-tab {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  background: #f8fafc !important;
  border: 1px solid rgba(7,94,199,.16) !important;
}
body.ga-light-theme .player-public-refresh .season-tab.active,
body.ga-light-theme .player-public-refresh .season-tab:hover {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: linear-gradient(180deg, #2563eb, #075ec7) !important;
}

body.ga-light-theme .player-public-refresh .fan-metric {
  background: #ffffff !important;
  color: var(--player-ink) !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 24px !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.08) !important;
}
body.ga-light-theme .player-public-refresh .fan-metric span {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
}
body.ga-light-theme .player-public-refresh .fan-metric strong {
  color: var(--player-ink) !important;
  -webkit-text-fill-color: var(--player-ink) !important;
}
body.ga-light-theme .player-public-refresh .fan-metric small {
  color: var(--player-muted) !important;
  -webkit-text-fill-color: var(--player-muted) !important;
}

/* Main player cards */
body.ga-light-theme .player-public-refresh .network-card,
body.ga-light-theme .player-public-refresh .ga-card {
  background: #ffffff !important;
  color: var(--player-ink) !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 26px !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.08) !important;
}

body.ga-light-theme .player-public-refresh .network-card *,
body.ga-light-theme .player-public-refresh .ga-card * {
  text-shadow: none !important;
}

body.ga-light-theme .player-public-refresh .network-card h1,
body.ga-light-theme .player-public-refresh .network-card h2,
body.ga-light-theme .player-public-refresh .network-card h3,
body.ga-light-theme .player-public-refresh .network-card h4,
body.ga-light-theme .player-public-refresh .network-card h5,
body.ga-light-theme .player-public-refresh .network-card strong,
body.ga-light-theme .player-public-refresh .ga-section-title {
  color: var(--player-ink) !important;
  -webkit-text-fill-color: var(--player-ink) !important;
}

body.ga-light-theme .player-public-refresh .network-card p,
body.ga-light-theme .player-public-refresh .network-card small,
body.ga-light-theme .player-public-refresh .network-card .ga-muted {
  color: var(--player-muted) !important;
  -webkit-text-fill-color: var(--player-muted) !important;
}

/* Schedule context rows */
body.ga-light-theme .player-public-refresh .schedule-row-pro {
  background: #f8fafc !important;
  color: var(--player-ink) !important;
  border: 1px solid rgba(15,23,42,.12) !important;
  border-radius: 18px !important;
  box-shadow: none !important;
}
body.ga-light-theme .player-public-refresh .schedule-row-pro:hover {
  transform: translateY(-2px);
  border-color: rgba(7,94,199,.30) !important;
  box-shadow: 0 16px 34px rgba(7,94,199,.10) !important;
}
body.ga-light-theme .player-public-refresh .schedule-row-pro strong,
body.ga-light-theme .player-public-refresh .schedule-date strong,
body.ga-light-theme .player-public-refresh .schedule-matchup strong,
body.ga-light-theme .player-public-refresh .schedule-status strong {
  color: var(--player-ink) !important;
  -webkit-text-fill-color: var(--player-ink) !important;
}
body.ga-light-theme .player-public-refresh .schedule-row-pro small,
body.ga-light-theme .player-public-refresh .schedule-date small,
body.ga-light-theme .player-public-refresh .schedule-matchup small {
  color: var(--player-muted) !important;
  -webkit-text-fill-color: var(--player-muted) !important;
}
body.ga-light-theme .player-public-refresh .schedule-status span,
body.ga-light-theme .team-public-refresh .schedule-status span,
body.ga-light-theme .league-public-refresh .schedule-status span,
body.ga-light-theme .tournament-public-refresh .schedule-status span {
  color: #92400e !important;
  -webkit-text-fill-color: #92400e !important;
  background: #fff7d6 !important;
  border: 1px solid rgba(217,119,6,.18) !important;
  border-radius: 999px;
  padding: .28rem .58rem;
  font-weight: 1000;
}

/* Tables, bio rows, tools, awards, milestones */
body.ga-light-theme .player-public-refresh .ga-table,
body.ga-light-theme .player-public-refresh .ga-table th,
body.ga-light-theme .player-public-refresh .ga-table td {
  color: var(--player-ink) !important;
  -webkit-text-fill-color: var(--player-ink) !important;
  background: transparent !important;
  border-color: rgba(15,23,42,.12) !important;
}

body.ga-light-theme .player-public-refresh .bio-card-row,
body.ga-light-theme .player-public-refresh .timeline-item-pro,
body.ga-light-theme .player-public-refresh .award-pill-pro,
body.ga-light-theme .player-public-refresh .goal-chip,
body.ga-light-theme .player-public-refresh .tool-grid-pro > div {
  background: #f8fafc !important;
  color: var(--player-ink) !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 16px !important;
}

body.ga-light-theme .player-public-refresh .bio-card-row span,
body.ga-light-theme .player-public-refresh .timeline-item-pro span,
body.ga-light-theme .player-public-refresh .tool-grid-pro span {
  color: var(--player-muted) !important;
  -webkit-text-fill-color: var(--player-muted) !important;
}

body.ga-light-theme .player-public-refresh .bio-card-row strong,
body.ga-light-theme .player-public-refresh .timeline-item-pro strong,
body.ga-light-theme .player-public-refresh .tool-grid-pro strong,
body.ga-light-theme .player-public-refresh .award-pill-pro,
body.ga-light-theme .player-public-refresh .goal-chip {
  color: var(--player-ink) !important;
  -webkit-text-fill-color: var(--player-ink) !important;
}

/* Media cards remain image-forward but readable */
body.ga-light-theme .player-public-refresh .media-card-pro {
  background: #ffffff !important;
  color: var(--player-ink) !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 22px !important;
  box-shadow: 0 16px 34px rgba(15,23,42,.08);
  overflow: hidden;
}
body.ga-light-theme .player-public-refresh .media-card-pro h3 {
  color: var(--player-ink) !important;
  -webkit-text-fill-color: var(--player-ink) !important;
}
body.ga-light-theme .player-public-refresh .media-card-pro small {
  color: var(--player-muted) !important;
  -webkit-text-fill-color: var(--player-muted) !important;
}

@media (max-width: 991px) {
  body.ga-light-theme .player-public-refresh {
    padding-inline: 1rem;
  }
  body.ga-light-theme .player-public-refresh .athlete-title {
    font-size: clamp(2.2rem, 12vw, 4rem) !important;
  }
}

/* PLAYER PHOTO PRESENTATION FIX
   Improves the public player page photo treatment:
   - removes the awkward double-frame look
   - uses a clean athlete-card crop
   - keeps headshots/action photos consistently framed
   - improves fallback number card */

body.ga-light-theme .player-public-refresh .athlete-photo-wrap {
  width: min(220px, 82vw) !important;
  aspect-ratio: 1 / 1 !important;
  margin-inline: auto;
  padding: 8px !important;
  border-radius: 34px !important;
  background:
    radial-gradient(circle at 25% 10%, rgba(255,255,255,.18), transparent 32%),
    linear-gradient(145deg, #07111f, #17233a) !important;
  border: 1px solid rgba(15,23,42,.12) !important;
  box-shadow: 0 24px 60px rgba(15,23,42,.22) !important;
  overflow: hidden !important;
  display: grid;
  place-items: stretch;
}

body.ga-light-theme .player-public-refresh .athlete-photo {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  display: block;
  object-fit: cover !important;
  object-position: center 28% !important;
  border-radius: 26px !important;
  border: 0 !important;
  background: #0f172a !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08) !important;
}

body.ga-light-theme .player-public-refresh .athlete-photo-wrap::after {
  content: "";
  position: absolute;
}

body.ga-light-theme .player-public-refresh .athlete-hero .col-lg-3 {
  display: flex;
  justify-content: center;
}

body.ga-light-theme .player-public-refresh .athlete-number {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  border: 0 !important;
  border-radius: 26px !important;
  background:
    radial-gradient(circle at 30% 8%, rgba(47,143,255,.22), transparent 32%),
    linear-gradient(145deg, #07111f, #17233a) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
}

body.ga-light-theme .player-public-refresh .athlete-hero {
  align-items: center;
}

body.ga-light-theme .player-public-refresh .athlete-hero .row {
  align-items: center !important;
}

@media (min-width: 992px) {
  body.ga-light-theme .player-public-refresh .athlete-photo-wrap {
    width: 232px !important;
  }
}

@media (max-width: 575px) {
  body.ga-light-theme .player-public-refresh .athlete-photo-wrap {
    width: 168px !important;
    border-radius: 28px !important;
    padding: 6px !important;
  }
  body.ga-light-theme .player-public-refresh .athlete-photo,
  body.ga-light-theme .player-public-refresh .athlete-number {
    border-radius: 22px !important;
  }
}

/* UNIFIED GAME SCORECARDS FIX
   One shared event scorecard used by league, tournament, team, and player pages. */
.ga-gamecard {
  --gamecard-bg: #ffffff;
  --gamecard-ink: #0f172a;
  --gamecard-muted: #475569;
  --gamecard-line: rgba(15,23,42,.12);
  display: grid;
  gap: .62rem;
  padding: .86rem .95rem;
  border-radius: 18px;
  background: var(--gamecard-bg) !important;
  color: var(--gamecard-ink) !important;
  border: 1px solid var(--gamecard-line) !important;
  box-shadow: 0 10px 24px rgba(15,23,42,.055);
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
  min-width: 0;
}
.ga-gamecard:hover {
  transform: translateY(-2px);
  border-color: rgba(7,94,199,.32) !important;
  box-shadow: 0 16px 34px rgba(7,94,199,.10);
}
.ga-gamecard * {
  text-shadow: none !important;
}
.ga-gamecard__meta,
.ga-gamecard__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .65rem;
  min-width: 0;
}
.ga-gamecard__meta time,
.ga-gamecard__footer,
.ga-gamecard__footer span {
  color: var(--gamecard-muted) !important;
  -webkit-text-fill-color: var(--gamecard-muted) !important;
  font-size: .76rem;
  font-weight: 800;
}
.ga-gamecard__status {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  width: fit-content;
  padding: .24rem .55rem;
  border-radius: 999px;
  background: #eef2f7 !important;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  font-size: .68rem;
  line-height: 1;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .06em;
  border: 1px solid rgba(15,23,42,.10);
}
.ga-gamecard__status.is-live {
  background: #fff1f2 !important;
  color: #be123c !important;
  -webkit-text-fill-color: #be123c !important;
  border-color: rgba(225,29,72,.18);
}
.ga-gamecard__status.is-final {
  background: #f1f5f9 !important;
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}
.ga-gamecard__matchup {
  display: grid;
  gap: .45rem;
}
.ga-gamecard__team {
  display: grid;
  grid-template-columns: 34px minmax(0,1fr) auto;
  align-items: center;
  gap: .62rem;
}
.ga-gamecard__logo {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #dbeafe, #eff6ff) !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10);
  font-size: .72rem;
  font-weight: 1000;
}
.ga-gamecard__name {
  color: var(--gamecard-ink) !important;
  -webkit-text-fill-color: var(--gamecard-ink) !important;
  font-weight: 950;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ga-gamecard__score {
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
  font-size: 1.35rem;
  line-height: 1;
  font-weight: 1000;
  font-variant-numeric: tabular-nums;
}
.ga-gamecard__count {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 1000;
}
.ga-gamecard__bases {
  position: relative;
  width: 28px;
  height: 20px;
  display: inline-block;
}
.ga-gamecard__bases .base {
  position: absolute;
  width: 9px;
  height: 9px;
  transform: rotate(45deg);
  border-radius: 2px;
  background: #e2e8f0;
  border: 1px solid #94a3b8;
}
.ga-gamecard__bases .base.occupied {
  background: #ffd66b;
  border-color: #b45309;
}
.ga-gamecard__bases .second { left: 10px; top: 0; }
.ga-gamecard__bases .third { left: 2px; top: 9px; }
.ga-gamecard__bases .first { right: 2px; top: 9px; }

.ga-gamecard--ticker {
  width: 100%;
  min-width: 0;
  max-width: none;
  min-height: 198px;
  height: 100%;
  padding: .86rem .9rem;
  border-radius: 18px;
}
.ga-gamecard--ticker .ga-gamecard__team {
  grid-template-columns: 28px minmax(0,1fr) auto;
  gap: .5rem;
}
.ga-gamecard--ticker .ga-gamecard__logo {
  width: 28px;
  height: 28px;
  border-radius: 10px;
  font-size: .64rem;
}
.ga-gamecard--ticker .ga-gamecard__name {
  font-size: .84rem;
}
.ga-gamecard--ticker .ga-gamecard__score {
  font-size: 1.05rem;
}
.ga-gamecard--compact {
  padding: .6rem;
  border-radius: 14px;
}
.ga-gamecard--compact .ga-gamecard__meta {
  display: none;
}
.ga-gamecard--compact .ga-gamecard__logo {
  width: 28px;
  height: 28px;
}
.ga-gamecard--compact .ga-gamecard__team {
  grid-template-columns: 28px minmax(0,1fr) auto;
}

/* Put all legacy scorecard containers on the same grid rhythm. */
.schedule-board,
.league-score-ticker,
.tournament-score-strip {
  display: grid !important;
  gap: .75rem !important;
}
.league-score-ticker,
.tournament-score-strip {
  grid-template-columns: repeat(auto-fit, minmax(205px, 1fr));
  overflow: visible !important;
}
.team-public-refresh .schedule-board .ga-gamecard,
.player-public-refresh .schedule-board .ga-gamecard {
  margin-bottom: 0 !important;
}

/* Protect unified scorecards from older public-page contrast overrides. */
body.ga-light-theme .team-public-refresh .ga-gamecard,
body.ga-light-theme .league-public-refresh .ga-gamecard,
body.ga-light-theme .tournament-public-refresh .ga-gamecard,
body.ga-light-theme .player-public-refresh .ga-gamecard,
body.ga-light-theme .baseball-team-public-refresh .ga-gamecard {
  background: #ffffff !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.12) !important;
}
body.ga-light-theme .team-public-refresh .ga-gamecard .ga-gamecard__name,
body.ga-light-theme .league-public-refresh .ga-gamecard .ga-gamecard__name,
body.ga-light-theme .tournament-public-refresh .ga-gamecard .ga-gamecard__name,
body.ga-light-theme .player-public-refresh .ga-gamecard .ga-gamecard__name,
body.ga-light-theme .baseball-team-public-refresh .ga-gamecard .ga-gamecard__name {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
body.ga-light-theme .team-public-refresh .ga-gamecard .ga-gamecard__score,
body.ga-light-theme .league-public-refresh .ga-gamecard .ga-gamecard__score,
body.ga-light-theme .tournament-public-refresh .ga-gamecard .ga-gamecard__score,
body.ga-light-theme .player-public-refresh .ga-gamecard .ga-gamecard__score,
body.ga-light-theme .baseball-team-public-refresh .ga-gamecard .ga-gamecard__score {
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
}
@media (max-width: 640px) {
  .league-score-ticker,
  .tournament-score-strip {
    grid-template-columns: 1fr;
  }
}

/* LEAGUE LEADERS READABILITY FIX
   Fixes pale/washed-out league leader rows on light public league cards. */
body.ga-light-theme .league-public-refresh #leaders.ga-card,
body.ga-light-theme .league-public-refresh section#leaders {
  background: #ffffff !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.10) !important;
}

body.ga-light-theme .league-public-refresh #leaders .ga-section-title,
body.ga-light-theme .league-public-refresh #leaders h1,
body.ga-light-theme .league-public-refresh #leaders h2,
body.ga-light-theme .league-public-refresh #leaders h3 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .league-public-refresh #leaders .league-leader-card {
  background: #f8fafc !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.12) !important;
  box-shadow: 0 10px 24px rgba(15,23,42,.045) !important;
}

body.ga-light-theme .league-public-refresh #leaders .league-leader-card > .d-flex span,
body.ga-light-theme .league-public-refresh #leaders .league-leader-card span:first-child {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
}

body.ga-light-theme .league-public-refresh #leaders .league-leader-card strong,
body.ga-light-theme .league-public-refresh #leaders .league-leader-card .league-leader-row strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .league-public-refresh #leaders .league-leader-card small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

body.ga-light-theme .league-public-refresh #leaders .league-leader-card b {
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
}

body.ga-light-theme .league-public-refresh #leaders .league-leader-row {
  border-top-color: rgba(15,23,42,.10) !important;
}

body.ga-light-theme .league-public-refresh #leaders .league-leader-row span {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 850 !important;
}

body.ga-light-theme .league-public-refresh #leaders .league-leader-row:hover {
  background: rgba(7,94,199,.045) !important;
  border-radius: 12px;
  margin-inline: -.35rem;
  padding-inline: .35rem;
}

/* TOURNAMENT HERO CONTRAST FINAL FIX
   Fixes tournament hero title/description showing dark on dark background.
   Uses high-specificity selectors late in the cascade so older hub overrides cannot win. */
body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero,
body.ga-light-theme .tournament-public-refresh .ga-hero.tournament-hero,
body.ga-light-theme .tournament-public-refresh .tournament-hero {
  background:
    radial-gradient(circle at 16% 0%, rgba(47,143,255,.28), transparent 34%),
    radial-gradient(circle at 88% 8%, rgba(255,214,107,.14), transparent 28%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #162033 100%) !important;
  color: #f8fbff !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 24px 60px rgba(7,17,31,.24) !important;
}

body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .ga-kicker {
  color: #2f8fff !important;
  -webkit-text-fill-color: #2f8fff !important;
  text-shadow: none !important;
}

body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .ga-title,
body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero h1.display-4.ga-title,
body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero h1,
body.ga-light-theme .tournament-public-refresh .tournament-hero .ga-title,
body.ga-light-theme .tournament-public-refresh .tournament-hero h1 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 14px 34px rgba(0,0,0,.42) !important;
  opacity: 1 !important;
}

body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero p.lead,
body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .lead,
body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero p,
body.ga-light-theme .tournament-public-refresh .tournament-hero p.lead,
body.ga-light-theme .tournament-public-refresh .tournament-hero .lead,
body.ga-light-theme .tournament-public-refresh .tournament-hero .ga-muted {
  color: #d8e6f7 !important;
  -webkit-text-fill-color: #d8e6f7 !important;
  text-shadow: 0 8px 24px rgba(0,0,0,.34) !important;
  opacity: 1 !important;
}

body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .ga-chip,
body.ga-light-theme .tournament-public-refresh .tournament-hero .ga-chip {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  background: rgba(255,255,255,.96) !important;
  border: 1px solid rgba(255,255,255,.72) !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .tournament-control-card {
  background: #ffffff !important;
  color: #0f172a !important;
  border-color: rgba(255,255,255,.62) !important;
}

body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .tournament-control-card h1,
body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .tournament-control-card h2,
body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .tournament-control-card h3,
body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .tournament-control-card strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}

body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .tournament-control-card p,
body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .tournament-control-card .ga-muted,
body.ga-light-theme .tournament-public-refresh section.ga-hero.tournament-hero .tournament-control-card small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  text-shadow: none !important;
}


/* GAMECARD STATE VISIBILITY FIX
   Makes balls, strikes, outs, and bases much more visible across league, tournament,
   team, and player pages by upgrading the shared game scorecard footer. */
.ga-gamecard__footer {
  flex-wrap: wrap;
}
.ga-gamecard__footer > :first-child {
  flex: 1 1 auto;
}
.ga-gamecard__state {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  flex-wrap: nowrap;
}
.ga-gamecard__count-group {
  display: inline-flex;
  align-items: center;
  gap: .28rem;
}
.ga-gamecard__count-pill {
  display: inline-flex;
  align-items: center;
  gap: .22rem;
  padding: .22rem .42rem;
  min-height: 26px;
  border-radius: 999px;
  background: #eff6ff !important;
  border: 1px solid rgba(7,94,199,.18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 1px 2px rgba(15,23,42,.05);
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
.ga-gamecard__count-pill em {
  margin: 0;
  font-style: normal;
  font-size: .54rem;
  font-weight: 1000;
  line-height: 1;
  letter-spacing: .07em;
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
}
.ga-gamecard__count-pill strong {
  margin: 0;
  font-size: .78rem;
  font-weight: 1000;
  line-height: 1;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-variant-numeric: tabular-nums;
}
.ga-gamecard__count-pill--outs {
  background: #fff7ed !important;
  border-color: rgba(180,83,9,.22) !important;
}
.ga-gamecard__count-pill--outs em {
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
}
.ga-gamecard__bases-shell {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 26px;
  padding: .2rem .42rem;
  border-radius: 999px;
  background: #f8fafc !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.92), 0 1px 2px rgba(15,23,42,.04);
}
.ga-gamecard__bases {
  position: relative;
  width: 32px;
  height: 22px;
  display: inline-block;
}
.ga-gamecard__bases .base {
  width: 10px;
  height: 10px;
  border-radius: 2px;
  background: #dbe4ef !important;
  border: 1px solid #94a3b8 !important;
  box-shadow: 0 1px 2px rgba(15,23,42,.08);
}
.ga-gamecard__bases .base.occupied {
  background: #ffd66b !important;
  border-color: #b45309 !important;
  box-shadow: 0 0 0 1px rgba(180,83,9,.08), 0 2px 4px rgba(180,83,9,.18);
}
.ga-gamecard__bases .second { left: 11px; top: 0; }
.ga-gamecard__bases .third { left: 2px; top: 10px; }
.ga-gamecard__bases .first { right: 2px; top: 10px; }

/* Keep ticker / compact scorecards readable without crowding. */
.ga-gamecard--ticker .ga-gamecard__state,
.ga-gamecard--compact .ga-gamecard__state {
  gap: .34rem;
}
.ga-gamecard--ticker .ga-gamecard__count-group,
.ga-gamecard--compact .ga-gamecard__count-group {
  gap: .18rem;
}
.ga-gamecard--ticker .ga-gamecard__count-pill,
.ga-gamecard--compact .ga-gamecard__count-pill {
  min-height: 22px;
  padding: .16rem .3rem;
}
.ga-gamecard--ticker .ga-gamecard__count-pill em,
.ga-gamecard--compact .ga-gamecard__count-pill em {
  font-size: .56rem;
}
.ga-gamecard--ticker .ga-gamecard__count-pill strong,
.ga-gamecard--compact .ga-gamecard__count-pill strong {
  font-size: .68rem;
}
.ga-gamecard--ticker .ga-gamecard__bases-shell,
.ga-gamecard--compact .ga-gamecard__bases-shell {
  min-height: 22px;
  padding: .14rem .28rem;
}
.ga-gamecard--ticker .ga-gamecard__bases,
.ga-gamecard--compact .ga-gamecard__bases {
  width: 26px;
  height: 18px;
}
.ga-gamecard--ticker .ga-gamecard__bases .base,
.ga-gamecard--compact .ga-gamecard__bases .base {
  width: 8px;
  height: 8px;
}
.ga-gamecard--ticker .ga-gamecard__bases .second,
.ga-gamecard--compact .ga-gamecard__bases .second { left: 9px; top: 0; }
.ga-gamecard--ticker .ga-gamecard__bases .third,
.ga-gamecard--compact .ga-gamecard__bases .third { left: 1px; top: 8px; }
.ga-gamecard--ticker .ga-gamecard__bases .first,
.ga-gamecard--compact .ga-gamecard__bases .first { right: 1px; top: 8px; }
/* v0.1.694 scoreboard ticker layout hardening: cards fill their grid columns and no longer clip dates, venues, or status text. */
.league-show-scoreboard-broadcast .row > [class*="col-"],
.tournament-public-refresh .row > [class*="col-"] {
  min-width: 0;
}
.league-show-scoreboard-broadcast .ga-gamecard--ticker,
.tournament-public-refresh .ga-gamecard--ticker {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  width: 100%;
  min-width: 0;
  max-width: none;
  min-height: 210px;
}
.ga-gamecard--ticker .ga-gamecard__meta {
  align-items: flex-start;
  flex-wrap: wrap;
  gap: .42rem .55rem;
}
.ga-gamecard--ticker .ga-gamecard__meta time {
  margin-left: auto;
  white-space: nowrap;
  text-align: right;
  line-height: 1.1;
  max-width: 52%;
}
.ga-gamecard--ticker .ga-gamecard__status,
.ga-gamecard--ticker .ga-gamecard__sport {
  flex: 0 1 auto;
  max-width: 100%;
}
.ga-gamecard--ticker .ga-gamecard__matchup {
  align-content: center;
  min-width: 0;
}
.ga-gamecard--ticker .ga-gamecard__name {
  min-width: 0;
  font-size: clamp(.84rem, .9vw, .98rem);
  line-height: 1.05;
}
.ga-gamecard--ticker .ga-gamecard__score {
  font-size: clamp(1.35rem, 1.8vw, 2rem);
  min-width: 2ch;
  text-align: right;
}
.ga-gamecard--ticker .ga-gamecard__footer {
  display: grid;
  grid-template-columns: 1fr;
  gap: .24rem;
  align-items: start;
}
.ga-gamecard--ticker .ga-gamecard__footer > :first-child {
  min-width: 0;
}
.ga-gamecard--ticker .ga-gamecard__footer span {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.15;
}
.ga-gamecard--ticker .ga-gamecard__footer span:last-child {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media (max-width: 1199px) {
  .league-show-scoreboard-broadcast .ga-gamecard--ticker,
  .tournament-public-refresh .ga-gamecard--ticker { min-height: 190px; }
}


/* ROTATING LEAGUE + TOURNAMENT SCOREBOARDS
   League scoreboard now uses the same card/header treatment as tournament.
   Both scoreboards rotate game pages instead of horizontal scrolling. */
.league-ticker,
.league-scoreboard-rotator,
.tournament-ticker {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 26px !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.08) !important;
}
.league-ticker .ga-kicker,
.tournament-ticker .ga-kicker {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
}
.tournament-ticker .ga-muted {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}
.scoreboard-rotator {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .75rem !important;
  overflow: hidden !important;
  scroll-snap-type: none !important;
}
.scoreboard-rotator-item {
  min-width: 0;
  animation: scoreboardFadeIn .22s ease both;
}
.scoreboard-rotator-item[hidden] {
  display: none !important;
}
.scoreboard-rotator-item .ga-gamecard {
  height: 100%;
  min-width: 0;
  max-width: none;
}
.scoreboard-rotator-controls {
  display: flex;
  align-items: center;
  gap: .42rem;
}
.scoreboard-rotator-btn {
  width: 34px;
  height: 34px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(15,23,42,.12);
  background: #f8fafc;
  color: #0f172a;
  font-size: 1.18rem;
  line-height: 1;
  font-weight: 1000;
  box-shadow: 0 8px 18px rgba(15,23,42,.06);
}
.scoreboard-rotator-btn:hover {
  background: #0b72d9;
  color: #ffffff;
  border-color: rgba(11,114,217,.38);
}
.league-score-ticker,
.tournament-score-strip {
  overflow: hidden !important;
}
@keyframes scoreboardFadeIn {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 1280px) {
  .scoreboard-rotator {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 991px) {
  .scoreboard-rotator {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .scoreboard-rotator {
    grid-template-columns: 1fr;
  }
}

/* GAMECENTER HERO CONTRAST FINAL FIX
   Late, high-specificity GameCenter override. The Event/GameCenter hero is dark,
   so title, subtitle, buttons, and stat labels must not inherit dark/light-card rules. */
body.ga-light-theme section.gamecenter-hero,
body.ga-light-theme .gamecenter-hero {
  background:
    radial-gradient(circle at 14% 0%, rgba(47,143,255,.24), transparent 34%),
    radial-gradient(circle at 90% 7%, rgba(25,211,255,.16), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #10263f 100%) !important;
  color: #f8fbff !important;
  border-radius: 0 0 24px 24px;
  border-bottom: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 24px 60px rgba(7,17,31,.20);
}

body.ga-light-theme section.gamecenter-hero .ga-kicker {
  color: #2f8fff !important;
  -webkit-text-fill-color: #2f8fff !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

body.ga-light-theme section.gamecenter-hero h1.ga-title,
body.ga-light-theme section.gamecenter-hero .ga-title,
body.ga-light-theme section.gamecenter-hero h1,
body.ga-light-theme section.gamecenter-hero h2,
body.ga-light-theme section.gamecenter-hero h3 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 14px 34px rgba(0,0,0,.42) !important;
  opacity: 1 !important;
}

body.ga-light-theme section.gamecenter-hero p.lead,
body.ga-light-theme section.gamecenter-hero .lead,
body.ga-light-theme section.gamecenter-hero p,
body.ga-light-theme section.gamecenter-hero .ga-muted {
  color: #d8e6f7 !important;
  -webkit-text-fill-color: #d8e6f7 !important;
  text-shadow: 0 8px 24px rgba(0,0,0,.24) !important;
  opacity: 1 !important;
}

body.ga-light-theme section.gamecenter-hero .btn-ga {
  background: linear-gradient(180deg, #198cff, #075ec7) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: rgba(255,255,255,.16) !important;
  font-weight: 1000;
}

body.ga-light-theme section.gamecenter-hero .btn-outline-ga,
body.ga-light-theme section.gamecenter-hero .btn-outline-warning,
body.ga-light-theme section.gamecenter-hero .btn-outline-info {
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: rgba(255,255,255,.72) !important;
  font-weight: 1000;
  box-shadow: 0 10px 24px rgba(0,0,0,.14);
}

body.ga-light-theme section.gamecenter-hero .ga-stat {
  background: rgba(255,255,255,.96) !important;
  color: #0f172a !important;
  border: 1px solid rgba(255,255,255,.62) !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 36px rgba(0,0,0,.16);
}

body.ga-light-theme section.gamecenter-hero .ga-stat .ga-kicker {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  text-shadow: none !important;
}

body.ga-light-theme section.gamecenter-hero .ga-stat strong,
body.ga-light-theme section.gamecenter-hero .ga-stat span,
body.ga-light-theme section.gamecenter-hero .ga-stat small {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

/* Keep the scoreboard panel readable while it sits on the dark GameCenter hero. */
body.ga-light-theme section.gamecenter-hero .scoreboard-panel,
body.ga-light-theme section.gamecenter-hero .gamecenter-scorecard,
body.ga-light-theme section.gamecenter-hero .live-score-card {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(255,255,255,.62) !important;
  box-shadow: 0 20px 48px rgba(0,0,0,.20);
}

body.ga-light-theme section.gamecenter-hero .scoreboard-panel h1,
body.ga-light-theme section.gamecenter-hero .scoreboard-panel h2,
body.ga-light-theme section.gamecenter-hero .scoreboard-panel h3,
body.ga-light-theme section.gamecenter-hero .scoreboard-panel strong,
body.ga-light-theme section.gamecenter-hero .scoreboard-panel span,
body.ga-light-theme section.gamecenter-hero .scoreboard-panel small,
body.ga-light-theme section.gamecenter-hero .gamecenter-scorecard strong,
body.ga-light-theme section.gamecenter-hero .gamecenter-scorecard span,
body.ga-light-theme section.gamecenter-hero .gamecenter-scorecard small,
body.ga-light-theme section.gamecenter-hero .live-score-card strong,
body.ga-light-theme section.gamecenter-hero .live-score-card span,
body.ga-light-theme section.gamecenter-hero .live-score-card small {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}

/* Baseball diamond inside the hero score panel should still show bases clearly. */
body.ga-light-theme section.gamecenter-hero .base.on,
body.ga-light-theme section.gamecenter-hero .base.occupied {
  background: #ffd66b !important;
  border-color: #b45309 !important;
}

/* LINKED TEAM STORIES + GLOBAL STYLE HARDENING FIX
   This removes placeholder-looking storylines from the team sidebar and makes them
   actual links to published articles. It also hardens common contrast problems caused by
   blue labels/badges or dark text being inherited onto dark panels. */

/* Small blue labels should be labels, not unreadable blue boxes. */
body.ga-light-theme main:not(.scorebook-shell):not(.gamecast-shell) .ga-kicker,
body.ga-light-theme .team-public-refresh .ga-kicker,
body.ga-light-theme .league-public-refresh .ga-kicker,
body.ga-light-theme .tournament-public-refresh .ga-kicker,
body.ga-light-theme .player-public-refresh .ga-kicker {
  display: inline-block;
  background: transparent !important;
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  text-shadow: none !important;
  letter-spacing: .16em;
  font-weight: 1000;
}

/* Anything intentionally blue/dark must carry light text. */
body.ga-light-theme .bg-primary,
body.ga-light-theme .text-bg-primary,
body.ga-light-theme .badge.text-bg-primary,
body.ga-light-theme .btn-primary,
body.ga-light-theme .btn-ga,
body.ga-light-theme .ga-chip.bg-primary,
body.ga-light-theme [class*="--primary"],
body.ga-light-theme .is-active {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Dark/broadcast panels should never inherit dark page text. */
body.ga-light-theme .scorebook-topbar,
body.ga-light-theme .scorebook-game-strip,
body.ga-light-theme .gamecast-topbar,
body.ga-light-theme .gamecast-score-strip,
body.ga-light-theme .gamecenter-hero,
body.ga-light-theme .league-featured-game,
body.ga-light-theme .scorebug-broadcast-v2,
body.ga-light-theme .tournament-hero {
  color: #f8fbff !important;
}
body.ga-light-theme .scorebook-topbar h1,
body.ga-light-theme .scorebook-topbar h2,
body.ga-light-theme .scorebook-topbar h3,
body.ga-light-theme .scorebook-game-strip h1,
body.ga-light-theme .scorebook-game-strip h2,
body.ga-light-theme .gamecast-topbar h1,
body.ga-light-theme .gamecast-topbar h2,
body.ga-light-theme .gamecenter-hero h1,
body.ga-light-theme .gamecenter-hero h2,
body.ga-light-theme .gamecenter-hero h3,
body.ga-light-theme .league-featured-game h1,
body.ga-light-theme .league-featured-game h2,
body.ga-light-theme .league-featured-game h3,
body.ga-light-theme .tournament-hero h1,
body.ga-light-theme .tournament-hero h2,
body.ga-light-theme .tournament-hero h3 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Team article links replacing placeholder storylines. */
body.ga-light-theme .team-public-refresh .linked-story-list {
  display: grid;
  gap: .65rem;
}
body.ga-light-theme .team-public-refresh .linked-story-chip,
body.ga-light-theme .team-public-refresh .timeline-item-pro--article {
  display: grid;
  gap: .24rem;
  padding: .85rem .95rem;
  border-radius: 16px;
  background: #f8fafc !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.12) !important;
  text-decoration: none !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.045);
}
body.ga-light-theme .team-public-refresh .linked-story-chip:hover,
body.ga-light-theme .team-public-refresh .timeline-item-pro--article:hover {
  transform: translateY(-2px);
  border-color: rgba(7,94,199,.30) !important;
  box-shadow: 0 16px 34px rgba(7,94,199,.10);
}
body.ga-light-theme .team-public-refresh .linked-story-chip span,
body.ga-light-theme .team-public-refresh .timeline-item-pro--article span {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  font-size: .68rem;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .12em;
}
body.ga-light-theme .team-public-refresh .linked-story-chip strong,
body.ga-light-theme .team-public-refresh .timeline-item-pro--article strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 1000;
}
body.ga-light-theme .team-public-refresh .timeline-item-pro--article p {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  margin: 0;
}
body.ga-light-theme .team-public-refresh .timeline-item-pro--article b {
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .07em;
}

/* If a blue heading pill/button is nested in a light card, keep text readable. */
body.ga-light-theme .network-card .badge,
body.ga-light-theme .ga-card .badge {
  font-weight: 900;
}
body.ga-light-theme .network-card .badge.text-bg-primary,
body.ga-light-theme .ga-card .badge.text-bg-primary {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: #075ec7 !important;
}

/* INDEX LAYOUT + COPY REMOVAL STYLE FIX
   Fixes team / league / tournament index pages:
   - no dark text on blue hero boxes
   - uses browser width better
   - removes placeholder/marketing descriptions from cards
   - keeps all index cards linkable and consistent */

.public-index-refresh {
  max-width: none !important;
  width: 100%;
}

body.ga-light-theme .public-index-refresh .public-index-hero {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  padding: clamp(1.25rem, 2.6vw, 2.25rem);
  border-radius: 28px;
  background:
    radial-gradient(circle at 13% 0%, rgba(47,143,255,.22), transparent 34%),
    radial-gradient(circle at 88% 8%, rgba(255,214,107,.13), transparent 28%),
    linear-gradient(135deg, #07111f 0%, #0b1830 54%, #162033 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 22px 56px rgba(7,17,31,.20);
}

body.ga-light-theme .public-index-refresh .public-index-hero .ga-title,
body.ga-light-theme .public-index-refresh .public-index-hero h1,
body.ga-light-theme .team-public-index > .mb-4 .ga-title,
body.ga-light-theme .league-public-index > .mb-4 .ga-title,
body.ga-light-theme .tournament-public-index > .mb-4 .ga-title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 14px 34px rgba(0,0,0,.35) !important;
  opacity: 1 !important;
}

body.ga-light-theme .public-index-refresh .public-index-hero .ga-kicker,
body.ga-light-theme .team-public-index > .mb-4 .ga-kicker,
body.ga-light-theme .league-public-index > .mb-4 .ga-kicker,
body.ga-light-theme .tournament-public-index > .mb-4 .ga-kicker {
  color: #2f8fff !important;
  -webkit-text-fill-color: #2f8fff !important;
  background: transparent !important;
  text-shadow: none !important;
}

.public-index-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: .5rem .85rem;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
  border: 1px solid rgba(255,255,255,.16);
  font-weight: 1000;
  white-space: nowrap;
}

.public-index-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
  gap: 1rem;
}

.public-index-grid--teams {
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
}

body.ga-light-theme .public-index-card {
  min-height: 150px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  padding: 1rem;
  border-radius: 24px;
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.075);
  text-decoration: none !important;
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

body.ga-light-theme .public-index-card:hover {
  transform: translateY(-3px);
  border-color: rgba(7,94,199,.30) !important;
  box-shadow: 0 22px 48px rgba(7,94,199,.12);
}

.public-index-team-card {
  grid-template-columns: 84px minmax(0, 1fr) auto;
}

.public-index-logo {
  width: 72px;
  height: 72px;
  border-radius: 18px;
  object-fit: contain;
  padding: .35rem;
  background: #0f172a;
  border: 1px solid rgba(15,23,42,.12);
}

.public-index-card-main {
  min-width: 0;
}

body.ga-light-theme .public-index-card h2 {
  margin: 0;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-size: clamp(1.25rem, 1.6vw, 1.65rem);
  line-height: 1.05;
  letter-spacing: -.035em;
  font-weight: 1000;
}

.public-index-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-top: .65rem;
}

body.ga-light-theme .public-index-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: .28rem .55rem;
  border-radius: 999px;
  background: #f1f5f9 !important;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  border: 1px solid rgba(15,23,42,.08);
  font-size: .78rem;
  font-weight: 850;
}

.public-index-open {
  align-self: center;
  justify-self: end;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: .5rem .75rem;
  border-radius: 999px;
  background: #075ec7 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: .78rem;
  font-weight: 1000;
  white-space: nowrap;
}

body.ga-light-theme .public-index-card .ga-kicker {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  background: transparent !important;
}

body.ga-light-theme .public-index-card .badge,
body.ga-light-theme .public-index-card .ga-chip {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  background: #f1f5f9 !important;
  border: 1px solid rgba(15,23,42,.08) !important;
}

/* Team page copy removal support */
body.ga-light-theme .team-public-refresh .franchise-hero .franchise-lead {
  display: none !important;
}

/* Keep article links readable in the replacement Team Articles card. */
body.ga-light-theme .team-public-refresh .linked-story-chip {
  background: #f8fafc !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.12) !important;
}

@media (min-width: 1440px) {
  .public-index-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .public-index-grid--teams {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  body.ga-light-theme .public-index-refresh .public-index-hero {
    align-items: start;
    flex-direction: column;
    border-radius: 22px;
  }
  .public-index-grid,
  .public-index-grid--teams {
    grid-template-columns: 1fr;
  }
  .public-index-card,
  .public-index-team-card {
    grid-template-columns: 1fr !important;
  }
  .public-index-open {
    justify-self: stretch;
  }
}

/* INDEX CARD CAPACITY + LAYOUT FIX
   Replaces undersized index tiles with wider, content-aware list cards for team,
   league, and tournament indexes. Prevents text overflow and uses browser width better. */

.public-index-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}

.public-index-list--teams {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.ga-light-theme .public-index-card.public-index-card--wide {
  min-height: 174px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
  gap: 1.25rem;
  padding: 1.25rem;
  border-radius: 26px;
}

.public-index-identity {
  min-width: 0;
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 1rem;
  align-items: center;
}

.public-index-card--wide .public-index-logo {
  width: 92px;
  height: 92px;
  border-radius: 22px;
  padding: .45rem;
}

.public-index-card--wide .public-index-card-main {
  min-width: 0;
  align-self: center;
}

body.ga-light-theme .public-index-card--wide h2 {
  max-width: 100%;
  white-space: normal !important;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
  font-size: clamp(1.45rem, 2vw, 2rem);
  line-height: 1.04;
  margin-bottom: .55rem;
}

.public-index-card-side {
  min-width: 150px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  align-self: stretch;
  border-left: 1px solid rgba(15,23,42,.08);
  padding-left: 1rem;
}

.public-index-card--wide .public-index-open {
  white-space: nowrap;
}

.public-index-card--wide .public-index-meta {
  gap: .45rem .5rem;
  max-width: 100%;
}

body.ga-light-theme .public-index-card--wide .public-index-meta span {
  max-width: 100%;
  white-space: normal;
  line-height: 1.15;
  min-height: 30px;
}

/* Override the earlier auto-fit tile grid on these pages. */
.public-index-refresh .public-index-grid {
  display: none !important;
}

/* Prevent old `.text-white` utility on index links from causing unreadable text. */
body.ga-light-theme .team-public-index a.text-white,
body.ga-light-theme .league-public-index a.text-white,
body.ga-light-theme .tournament-public-index a.text-white,
body.ga-light-theme .public-index-card a.text-white {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

@media (min-width: 1500px) {
  .public-index-list,
  .public-index-list--teams {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1180px) {
  .public-index-list,
  .public-index-list--teams {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  body.ga-light-theme .public-index-card.public-index-card--wide {
    grid-template-columns: 1fr;
    min-height: 0;
    gap: 1rem;
  }

  .public-index-identity {
    grid-template-columns: 76px minmax(0, 1fr);
  }

  .public-index-card--wide .public-index-logo {
    width: 72px;
    height: 72px;
    border-radius: 18px;
  }

  .public-index-card-side {
    min-width: 0;
    justify-content: stretch;
    border-left: 0;
    border-top: 1px solid rgba(15,23,42,.08);
    padding-left: 0;
    padding-top: 1rem;
  }

  .public-index-card--wide .public-index-open {
    width: 100%;
  }
}

@media (max-width: 460px) {
  .public-index-identity {
    grid-template-columns: 1fr;
  }

  .public-index-card--wide .public-index-logo {
    width: 76px;
    height: 76px;
  }
}

/* INDEX HERO TITLE CONTRAST FIX
   Final high-specificity override for Teams / Leagues / Tournaments index hero titles.
   The hero boxes are dark gradients, so headings must always be white. */

body.ga-light-theme .public-index-refresh section.public-index-hero,
body.ga-light-theme .team-public-index section.public-index-hero,
body.ga-light-theme .league-public-index section.public-index-hero,
body.ga-light-theme .tournament-public-index section.public-index-hero {
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.24), transparent 34%),
    radial-gradient(circle at 90% 8%, rgba(255,214,107,.12), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 55%, #162033 100%) !important;
  color: #ffffff !important;
}

body.ga-light-theme .public-index-refresh section.public-index-hero h1.ga-title,
body.ga-light-theme .public-index-refresh section.public-index-hero .ga-title,
body.ga-light-theme .team-public-index section.public-index-hero h1.ga-title,
body.ga-light-theme .league-public-index section.public-index-hero h1.ga-title,
body.ga-light-theme .tournament-public-index section.public-index-hero h1.ga-title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 16px 36px rgba(0,0,0,.38) !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

body.ga-light-theme .public-index-refresh section.public-index-hero .ga-kicker,
body.ga-light-theme .team-public-index section.public-index-hero .ga-kicker,
body.ga-light-theme .league-public-index section.public-index-hero .ga-kicker,
body.ga-light-theme .tournament-public-index section.public-index-hero .ga-kicker {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  background: transparent !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

body.ga-light-theme .public-index-refresh section.public-index-hero .public-index-count {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: rgba(255,255,255,.16) !important;
  border-color: rgba(255,255,255,.28) !important;
  text-shadow: none !important;
}

/* LEAGUE LEADER PLAYER LINKS FIX
   Makes every player shown in League Leaders an actual link to the player hub. */
.league-leader-feature {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  color: inherit !important;
}

.league-leader-feature:hover strong,
.league-leader-row--link:hover span {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.league-leader-row--link {
  color: inherit !important;
  cursor: pointer;
}

body.ga-light-theme .league-public-refresh #leaders .league-leader-feature strong,
body.ga-light-theme .league-public-refresh #leaders .league-leader-row--link span {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .league-public-refresh #leaders .league-leader-feature small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

body.ga-light-theme .league-public-refresh #leaders .league-leader-feature b,
body.ga-light-theme .league-public-refresh #leaders .league-leader-row--link strong {
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
}

/* PLAYER PUBLIC COPY REMOVAL + CONFIGURABLE ATTRIBUTES FIX */
body.ga-light-theme .player-public-refresh .network-card .bio-card-row strong:empty {
  display: none;
}

.admin-form-card {
  background: #ffffff;
  color: #0f172a;
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 22px;
  box-shadow: 0 16px 34px rgba(15,23,42,.06);
}
.admin-form-card h2,
.admin-form-card label {
  color: #0f172a;
}

/* CARD LAYOUT + GLOBAL DARK-HERO CONTRAST FIX
   Fixes:
   - index cards being too narrow / text wrapping one word per line
   - dark text on dark GameCenter and home hero backgrounds
   - stat-card label/value spacing in GameCenter cards
   - front-page hero muted copy being unreadable */

/* 1) Public index card layout: bigger cards, no side column squeezing content. */
.public-index-list,
.public-index-list--teams {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 520px), 1fr)) !important;
  gap: 1.15rem !important;
  align-items: stretch;
}

body.ga-light-theme .public-index-card.public-index-card--wide,
body.ga-light-theme .public-index-card,
.public-index-card.public-index-card--wide {
  min-height: 164px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  align-items: stretch !important;
  gap: 1rem !important;
  padding: 1.25rem !important;
  border-radius: 26px !important;
  overflow: hidden !important;
}

.public-index-identity {
  display: grid !important;
  grid-template-columns: 96px minmax(0, 1fr) !important;
  gap: 1.05rem !important;
  align-items: center !important;
  min-width: 0 !important;
}

.public-index-card-main {
  min-width: 0 !important;
  width: 100% !important;
}

body.ga-light-theme .public-index-card h2,
body.ga-light-theme .public-index-card--wide h2,
.public-index-card h2,
.public-index-card--wide h2 {
  display: block !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  line-height: 1.08 !important;
  font-size: clamp(1.55rem, 2vw, 2.15rem) !important;
  letter-spacing: -.045em !important;
}

.public-index-card-side {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  align-self: auto !important;
  border-left: 0 !important;
  border-top: 1px solid rgba(15,23,42,.08) !important;
  padding-left: 0 !important;
  padding-top: .85rem !important;
}

.public-index-open {
  width: auto !important;
  max-width: 100% !important;
  white-space: normal !important;
  text-align: center !important;
  line-height: 1.1 !important;
}

.public-index-meta {
  gap: .45rem !important;
}

body.ga-light-theme .public-index-meta span {
  white-space: normal !important;
  max-width: 100% !important;
}

/* Keep ultra-wide pages from creating tiny three-column cards. */
@media (min-width: 1500px) {
  .public-index-list,
  .public-index-list--teams {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  .public-index-identity {
    grid-template-columns: 76px minmax(0, 1fr) !important;
  }
  .public-index-card--wide .public-index-logo,
  .public-index-logo {
    width: 72px !important;
    height: 72px !important;
  }
}

/* 2) GameCenter dark hero: force readable typography and clean stat cards. */
body.ga-light-theme .gamecenter-hero,
body.ga-light-theme section.gamecenter-hero,
.gamecenter-hero {
  background:
    radial-gradient(circle at 14% 0%, rgba(47,143,255,.24), transparent 34%),
    radial-gradient(circle at 90% 7%, rgba(25,211,255,.16), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #10263f 100%) !important;
  color: #f8fbff !important;
}

body.ga-light-theme .gamecenter-hero h1,
body.ga-light-theme .gamecenter-hero h2,
body.ga-light-theme .gamecenter-hero h3,
body.ga-light-theme .gamecenter-hero .ga-title,
.gamecenter-hero h1,
.gamecenter-hero h2,
.gamecenter-hero h3,
.gamecenter-hero .ga-title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 14px 34px rgba(0,0,0,.42) !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

body.ga-light-theme .gamecenter-hero p,
body.ga-light-theme .gamecenter-hero .lead,
body.ga-light-theme .gamecenter-hero .ga-muted,
.gamecenter-hero p,
.gamecenter-hero .lead,
.gamecenter-hero .ga-muted {
  color: #d8e6f7 !important;
  -webkit-text-fill-color: #d8e6f7 !important;
  opacity: 1 !important;
}

body.ga-light-theme .gamecenter-hero .ga-kicker,
.gamecenter-hero .ga-kicker {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  background: transparent !important;
}

/* Hero stat cards should be light cards with stacked label/value, not concatenated text. */
body.ga-light-theme .gamecenter-hero .ga-stat,
.gamecenter-hero .ga-stat {
  display: block !important;
  min-height: 78px !important;
  padding: 1rem !important;
  background: rgba(255,255,255,.96) !important;
  color: #0f172a !important;
  border: 1px solid rgba(255,255,255,.65) !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 36px rgba(0,0,0,.16) !important;
}

body.ga-light-theme .gamecenter-hero .ga-stat .ga-kicker,
.gamecenter-hero .ga-stat .ga-kicker {
  display: block !important;
  margin: 0 0 .35rem 0 !important;
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  line-height: 1 !important;
}

body.ga-light-theme .gamecenter-hero .ga-stat strong,
body.ga-light-theme .gamecenter-hero .ga-stat span,
body.ga-light-theme .gamecenter-hero .ga-stat small,
.gamecenter-hero .ga-stat strong,
.gamecenter-hero .ga-stat span,
.gamecenter-hero .ga-stat small {
  display: block !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  opacity: 1 !important;
  line-height: 1.25 !important;
}

/* 3) Front page dark hero readability. */
body.ga-light-theme .network-hero-pro,
.network-hero-pro {
  color: #f8fbff !important;
}

body.ga-light-theme .network-hero-pro .network-headline,
body.ga-light-theme .network-hero-pro h1,
body.ga-light-theme .network-hero-pro h2,
.network-hero-pro .network-headline,
.network-hero-pro h1,
.network-hero-pro h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 14px 34px rgba(0,0,0,.34) !important;
}

body.ga-light-theme .network-hero-pro p,
body.ga-light-theme .network-hero-pro .lead,
body.ga-light-theme .network-hero-pro .ga-muted,
.network-hero-pro p,
.network-hero-pro .lead,
.network-hero-pro .ga-muted {
  color: #d8e6f7 !important;
  -webkit-text-fill-color: #d8e6f7 !important;
  opacity: 1 !important;
}

body.ga-light-theme .network-hero-pro .ga-kicker,
.network-hero-pro .ga-kicker {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
}

body.ga-light-theme .network-hero-pro .hero-game-card,
.network-hero-pro .hero-game-card {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(255,255,255,.66) !important;
}

body.ga-light-theme .network-hero-pro .hero-game-card h1,
body.ga-light-theme .network-hero-pro .hero-game-card h2,
body.ga-light-theme .network-hero-pro .hero-game-card h3,
body.ga-light-theme .network-hero-pro .hero-game-card strong,
body.ga-light-theme .network-hero-pro .hero-game-card a,
.network-hero-pro .hero-game-card h1,
.network-hero-pro .hero-game-card h2,
.network-hero-pro .hero-game-card h3,
.network-hero-pro .hero-game-card strong,
.network-hero-pro .hero-game-card a {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}

body.ga-light-theme .network-hero-pro .hero-game-card .ga-muted,
body.ga-light-theme .network-hero-pro .hero-game-card small,
.network-hero-pro .hero-game-card .ga-muted,
.network-hero-pro .hero-game-card small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* 4) Generic guardrail: dark gradient surfaces should not inherit dark text. */
body.ga-light-theme .public-index-hero .ga-title,
body.ga-light-theme .public-index-hero h1,
body.ga-light-theme .tournament-hero .ga-title,
body.ga-light-theme .tournament-hero h1 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* GAMECENTER FONT VISIBILITY HARD FIX
   A final, ultra-specific GameCenter override. Earlier global card rules were still winning
   against the dark hero, so this targets the exact Event show hero structure and every likely
   Bootstrap/display utility inside it. */

html body.ga-light-theme main .gamecenter-hero,
html body.ga-light-theme main section.gamecenter-hero,
html body main .gamecenter-hero,
html body main section.gamecenter-hero {
  background:
    radial-gradient(circle at 15% 0%, rgba(47,143,255,.26), transparent 34%),
    radial-gradient(circle at 92% 6%, rgba(25,211,255,.18), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #10263f 100%) !important;
  color: #f8fbff !important;
}

/* Force the matchup title and subtitle readable on the dark GameCenter hero. */
html body.ga-light-theme main section.gamecenter-hero .ga-title,
html body.ga-light-theme main section.gamecenter-hero h1.ga-title,
html body.ga-light-theme main section.gamecenter-hero h1.display-4,
html body.ga-light-theme main section.gamecenter-hero h1,
html body main section.gamecenter-hero .ga-title,
html body main section.gamecenter-hero h1.ga-title,
html body main section.gamecenter-hero h1.display-4,
html body main section.gamecenter-hero h1 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 18px 42px rgba(0,0,0,.46) !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
}

html body.ga-light-theme main section.gamecenter-hero p.lead,
html body.ga-light-theme main section.gamecenter-hero .lead,
html body.ga-light-theme main section.gamecenter-hero p.ga-muted,
html body.ga-light-theme main section.gamecenter-hero .ga-muted,
html body main section.gamecenter-hero p.lead,
html body main section.gamecenter-hero .lead,
html body main section.gamecenter-hero p.ga-muted,
html body main section.gamecenter-hero .ga-muted {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  text-shadow: 0 10px 28px rgba(0,0,0,.30) !important;
  opacity: 1 !important;
}

/* Kicker remains blue, but bright enough to read on dark. */
html body.ga-light-theme main section.gamecenter-hero .ga-kicker,
html body main section.gamecenter-hero .ga-kicker {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  background: transparent !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

/* Buttons inside dark GameCenter hero. */
html body.ga-light-theme main section.gamecenter-hero .btn-ga,
html body main section.gamecenter-hero .btn-ga {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: linear-gradient(180deg, #198cff, #075ec7) !important;
  border-color: rgba(255,255,255,.18) !important;
}

html body.ga-light-theme main section.gamecenter-hero .btn-outline-ga,
html body.ga-light-theme main section.gamecenter-hero .btn-outline-warning,
html body.ga-light-theme main section.gamecenter-hero .btn-outline-info,
html body main section.gamecenter-hero .btn-outline-ga,
html body main section.gamecenter-hero .btn-outline-warning,
html body main section.gamecenter-hero .btn-outline-info {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  background: #ffffff !important;
  border-color: rgba(255,255,255,.72) !important;
  text-shadow: none !important;
}

/* GameCenter hero stat cards: label/value readable and separated. */
html body.ga-light-theme main section.gamecenter-hero .ga-stat,
html body main section.gamecenter-hero .ga-stat {
  display: block !important;
  padding: 1rem !important;
  min-height: 82px !important;
  background: rgba(255,255,255,.97) !important;
  color: #0f172a !important;
  border: 1px solid rgba(255,255,255,.70) !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 36px rgba(0,0,0,.16) !important;
}

html body.ga-light-theme main section.gamecenter-hero .ga-stat .ga-kicker,
html body main section.gamecenter-hero .ga-stat .ga-kicker {
  display: block !important;
  margin: 0 0 .4rem 0 !important;
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  letter-spacing: .14em !important;
  line-height: 1 !important;
}

html body.ga-light-theme main section.gamecenter-hero .ga-stat strong,
html body.ga-light-theme main section.gamecenter-hero .ga-stat span,
html body.ga-light-theme main section.gamecenter-hero .ga-stat small,
html body main section.gamecenter-hero .ga-stat strong,
html body main section.gamecenter-hero .ga-stat span,
html body main section.gamecenter-hero .ga-stat small {
  display: block !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  opacity: 1 !important;
  line-height: 1.25 !important;
}

/* If any text-white/text-muted utilities are nested in the hero, correct them by context. */
html body main section.gamecenter-hero .text-dark,
html body main section.gamecenter-hero .text-body,
html body main section.gamecenter-hero .text-black,
html body main section.gamecenter-hero .text-muted {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
}

html body main section.gamecenter-hero .ga-stat .text-dark,
html body main section.gamecenter-hero .ga-stat .text-body,
html body main section.gamecenter-hero .ga-stat .text-black,
html body main section.gamecenter-hero .ga-stat .text-muted {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

/* VIEW-LEVEL CONTRAST SUPPORT
   These classes support the inline GameCenter markup changes and remain safe even if CSS is cached. */
.gamecenter-stat-card {
  display: block !important;
  background: rgba(255,255,255,.97) !important;
  color: #0f172a !important;
  border-radius: 18px !important;
  padding: 1rem !important;
}
.gamecenter-stat-label {
  display: block !important;
  margin-bottom: .4rem !important;
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  line-height: 1 !important;
}
.gamecenter-stat-value {
  display: block !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  line-height: 1.25 !important;
}

/* PROMINENT GAMECARD STATE FIX
   Makes balls, strikes, outs, and the bases indicator visibly important in all unified
   public game cards, especially compact ticker cards. */
.ga-gamecard__footer {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: .75rem !important;
}

.ga-gamecard__state {
  justify-self: end !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: .6rem !important;
  padding: .34rem .42rem !important;
  border-radius: 999px !important;
  background: #f8fafc !important;
  border: 1px solid rgba(15,23,42,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.95), 0 4px 10px rgba(15,23,42,.07) !important;
}

.ga-gamecard__count-group {
  display: inline-flex !important;
  align-items: center !important;
  gap: .34rem !important;
}

.ga-gamecard__count-pill {
  display: inline-grid !important;
  grid-template-columns: auto auto !important;
  align-items: center !important;
  gap: .24rem !important;
  min-width: 34px !important;
  min-height: 30px !important;
  padding: .26rem .46rem !important;
  border-radius: 999px !important;
  background: #eaf4ff !important;
  border: 1px solid rgba(7,94,199,.26) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.98), 0 2px 5px rgba(7,94,199,.10) !important;
}

.ga-gamecard__count-pill em {
  margin: 0 !important;
  font-style: normal !important;
  font-size: .68rem !important;
  line-height: 1 !important;
  font-weight: 1000 !important;
  letter-spacing: .04em !important;
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
}

.ga-gamecard__count-pill strong {
  margin: 0 !important;
  font-size: .9rem !important;
  line-height: 1 !important;
  font-weight: 1000 !important;
  font-variant-numeric: tabular-nums !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.ga-gamecard__count-pill--outs {
  background: #fff3df !important;
  border-color: rgba(180,83,9,.34) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.98), 0 2px 5px rgba(180,83,9,.13) !important;
}

.ga-gamecard__count-pill--outs em {
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
}

.ga-gamecard__bases-shell {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 34px !important;
  padding: 0 !important;
  border-radius: 16px !important;
  background: #eef2f7 !important;
  border: 1px solid rgba(15,23,42,.16) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.95), 0 3px 8px rgba(15,23,42,.08) !important;
}

.ga-gamecard__bases {
  position: relative !important;
  display: inline-block !important;
  width: 34px !important;
  height: 26px !important;
}

.ga-gamecard__bases .base {
  position: absolute !important;
  width: 12px !important;
  height: 12px !important;
  transform: rotate(45deg) !important;
  border-radius: 3px !important;
  background: #dbe4ef !important;
  border: 2px solid #94a3b8 !important;
  box-shadow: 0 1px 2px rgba(15,23,42,.12) !important;
}

.ga-gamecard__bases .base.occupied {
  background: #ffd66b !important;
  border-color: #b45309 !important;
  box-shadow: 0 0 0 2px rgba(255,214,107,.22), 0 3px 8px rgba(180,83,9,.22) !important;
}

.ga-gamecard__bases .second { left: 11px !important; top: 0 !important; }
.ga-gamecard__bases .third { left: 1px !important; top: 12px !important; }
.ga-gamecard__bases .first { right: 1px !important; top: 12px !important; }

/* Ticker cards still need prominence, not tiny icons. */
.ga-gamecard--ticker .ga-gamecard__footer,
.ga-gamecard--compact .ga-gamecard__footer {
  gap: .5rem !important;
}

.ga-gamecard--ticker .ga-gamecard__state,
.ga-gamecard--compact .ga-gamecard__state {
  gap: .42rem !important;
  padding: .26rem .34rem !important;
}

.ga-gamecard--ticker .ga-gamecard__count-pill,
.ga-gamecard--compact .ga-gamecard__count-pill {
  min-width: 30px !important;
  min-height: 27px !important;
  padding: .2rem .36rem !important;
}

.ga-gamecard--ticker .ga-gamecard__count-pill em,
.ga-gamecard--compact .ga-gamecard__count-pill em {
  font-size: .62rem !important;
}

.ga-gamecard--ticker .ga-gamecard__count-pill strong,
.ga-gamecard--compact .ga-gamecard__count-pill strong {
  font-size: .82rem !important;
}

.ga-gamecard--ticker .ga-gamecard__bases-shell,
.ga-gamecard--compact .ga-gamecard__bases-shell {
  width: 40px !important;
  height: 31px !important;
  border-radius: 14px !important;
}

.ga-gamecard--ticker .ga-gamecard__bases,
.ga-gamecard--compact .ga-gamecard__bases {
  width: 31px !important;
  height: 23px !important;
}

.ga-gamecard--ticker .ga-gamecard__bases .base,
.ga-gamecard--compact .ga-gamecard__bases .base {
  width: 10px !important;
  height: 10px !important;
  border-width: 2px !important;
}

.ga-gamecard--ticker .ga-gamecard__bases .second,
.ga-gamecard--compact .ga-gamecard__bases .second { left: 10px !important; top: 0 !important; }
.ga-gamecard--ticker .ga-gamecard__bases .third,
.ga-gamecard--compact .ga-gamecard__bases .third { left: 1px !important; top: 10px !important; }
.ga-gamecard--ticker .ga-gamecard__bases .first,
.ga-gamecard--compact .ga-gamecard__bases .first { right: 1px !important; top: 10px !important; }

@media (max-width: 480px) {
  .ga-gamecard__footer {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }
  .ga-gamecard__state {
    justify-self: start !important;
  }
}

/* FRONT PAGE GUTTERS + WIDTH LIMIT FIX
   Limits the public front page to a readable max width with left/right gutters instead
   of letting hero/content stretch edge-to-edge on wide screens. */

body.ga-light-theme .network-home-page,
body.ga-light-theme .home-public-refresh {
  max-width: 1480px;
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(1rem, 3vw, 2.5rem);
  padding-right: clamp(1rem, 3vw, 2.5rem);
}

/* Apply even when the home view does not have a dedicated wrapper. */
body.ga-light-theme main > .network-hero-pro,
body.ga-light-theme main > .home-section-pro,
body.ga-light-theme main > .network-section,
body.ga-light-theme main > .featured-section,
body.ga-light-theme main > .containerless-home-section {
  max-width: 1480px;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* The main hero should have visible page gutters and not touch viewport edges. */
body.ga-light-theme main > .network-hero-pro {
  width: calc(100% - clamp(2rem, 6vw, 5rem)) !important;
  max-width: 1480px !important;
  border-radius: 30px !important;
  overflow: hidden;
}

/* Follow-up direct children on the front page get the same gutter rhythm. */
body.ga-light-theme main > .network-hero-pro ~ *:not(script):not(style) {
  max-width: 1480px;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - clamp(2rem, 6vw, 5rem));
}

/* Avoid double gutters for Bootstrap containers inside the front-page sections. */
body.ga-light-theme main > .network-hero-pro .container,
body.ga-light-theme main > .network-hero-pro .container-fluid {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

@media (max-width: 768px) {
  body.ga-light-theme main > .network-hero-pro,
  body.ga-light-theme main > .network-hero-pro ~ *:not(script):not(style) {
    width: calc(100% - 1.5rem) !important;
  }

  body.ga-light-theme main > .network-hero-pro {
    border-radius: 22px !important;
  }
}

/* GAMECENTER GUTTERS + WIDTH LIMIT FIX
   Gives GameCenter/Event pages the same left/right gutters and readable max width
   used on the front page. */

body.ga-light-theme main > .gamecenter-hero {
  width: calc(100% - clamp(2rem, 6vw, 5rem)) !important;
  max-width: 1480px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  border-radius: 30px !important;
  overflow: hidden;
}

body.ga-light-theme main > .gamecenter-hero ~ *:not(script):not(style) {
  width: calc(100% - clamp(2rem, 6vw, 5rem)) !important;
  max-width: 1480px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Event/GameCenter content rows should align with the hero gutters. */
body.ga-light-theme main > .gamecenter-hero + .row,
body.ga-light-theme main > .gamecenter-hero + .container,
body.ga-light-theme main > .gamecenter-hero + .container-fluid {
  width: calc(100% - clamp(2rem, 6vw, 5rem)) !important;
  max-width: 1480px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Avoid nested Bootstrap container padding fighting the page gutters. */
body.ga-light-theme main > .gamecenter-hero .container,
body.ga-light-theme main > .gamecenter-hero .container-fluid {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

@media (max-width: 768px) {
  body.ga-light-theme main > .gamecenter-hero,
  body.ga-light-theme main > .gamecenter-hero ~ *:not(script):not(style),
  body.ga-light-theme main > .gamecenter-hero + .row,
  body.ga-light-theme main > .gamecenter-hero + .container,
  body.ga-light-theme main > .gamecenter-hero + .container-fluid {
    width: calc(100% - 1.5rem) !important;
  }

  body.ga-light-theme main > .gamecenter-hero {
    border-radius: 22px !important;
  }
}

/* FRONT PAGE LAYOUT + DARK BACKGROUND CONTRAST FIX
   Improves the front page layout and removes dark-font-on-dark-background issues,
   especially the large lead story card shown in the screenshot. */

/* Overall front-page container: readable gutters and centered content. */
body.ga-light-theme .network-home-page {
  max-width: 1480px !important;
  margin-inline: auto !important;
  padding-inline: clamp(1rem, 3vw, 2.5rem) !important;
}

/* Make front-page sections use a stable content width. */
body.ga-light-theme .network-home-page > * {
  max-width: 1480px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Main front-page hero should be a contained card, not edge-to-edge. */
body.ga-light-theme .network-home-page .network-hero-pro {
  width: 100% !important;
  max-width: 1480px !important;
  margin-inline: auto !important;
  border-radius: 32px !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.24), transparent 34%),
    radial-gradient(circle at 92% 8%, rgba(25,211,255,.15), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #10263f 100%) !important;
}

/* Front-page dark hero typography. */
body.ga-light-theme .network-home-page .network-hero-pro,
body.ga-light-theme .network-home-page .network-hero-pro * {
  text-shadow: none;
}

body.ga-light-theme .network-home-page .network-hero-pro .network-headline,
body.ga-light-theme .network-home-page .network-hero-pro h1,
body.ga-light-theme .network-home-page .network-hero-pro h2:not(.h3),
body.ga-light-theme .network-home-page .network-hero-pro .ga-title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 16px 38px rgba(0,0,0,.36) !important;
}

body.ga-light-theme .network-home-page .network-hero-pro p,
body.ga-light-theme .network-home-page .network-hero-pro .lead,
body.ga-light-theme .network-home-page .network-hero-pro .ga-muted {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
}

body.ga-light-theme .network-home-page .network-hero-pro .ga-kicker {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
}

/* Featured game card inside hero is a light card with dark readable text. */
body.ga-light-theme .network-home-page .network-hero-pro .hero-game-card,
body.ga-light-theme .network-home-page .network-hero-pro .scoreboard-panel {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(255,255,255,.68) !important;
}

body.ga-light-theme .network-home-page .network-hero-pro .hero-game-card h1,
body.ga-light-theme .network-home-page .network-hero-pro .hero-game-card h2,
body.ga-light-theme .network-home-page .network-hero-pro .hero-game-card h3,
body.ga-light-theme .network-home-page .network-hero-pro .hero-game-card strong,
body.ga-light-theme .network-home-page .network-hero-pro .hero-game-card a,
body.ga-light-theme .network-home-page .network-hero-pro .scoreboard-panel strong,
body.ga-light-theme .network-home-page .network-hero-pro .scoreboard-panel span {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}

body.ga-light-theme .network-home-page .network-hero-pro .hero-game-card .ga-muted,
body.ga-light-theme .network-home-page .network-hero-pro .hero-game-card small,
body.ga-light-theme .network-home-page .network-hero-pro .scoreboard-panel small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* Front-page story area: better use of browser space. */
body.ga-light-theme .network-home-page .front-page-grid,
body.ga-light-theme .network-home-page .story-grid,
body.ga-light-theme .network-home-page .news-grid,
body.ga-light-theme .network-home-page .content-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(340px, .75fr) !important;
  gap: 1.25rem !important;
  align-items: stretch !important;
}

/* Large lead story should not be unreadable dark text on a dark image/gradient. */
body.ga-light-theme .network-home-page .front-lead-story-card,
body.ga-light-theme .network-home-page .lead-story-card,
body.ga-light-theme .network-home-page .story-lead-card,
body.ga-light-theme .network-home-page .featured-story-card {
  position: relative !important;
  min-height: clamp(380px, 48vw, 620px) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  padding: clamp(1.25rem, 3vw, 2rem) !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(7,17,31,.08) 0%, rgba(7,17,31,.42) 48%, rgba(7,17,31,.90) 100%),
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.20), transparent 34%),
    linear-gradient(135deg, #07111f, #10263f) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: 0 22px 56px rgba(7,17,31,.22) !important;
}

body.ga-light-theme .network-home-page .front-lead-story-card *,
body.ga-light-theme .network-home-page .lead-story-card *,
body.ga-light-theme .network-home-page .story-lead-card *,
body.ga-light-theme .network-home-page .featured-story-card * {
  text-shadow: 0 8px 24px rgba(0,0,0,.40) !important;
}

body.ga-light-theme .network-home-page .front-lead-story-card .ga-kicker,
body.ga-light-theme .network-home-page .lead-story-card .ga-kicker,
body.ga-light-theme .network-home-page .story-lead-card .ga-kicker,
body.ga-light-theme .network-home-page .featured-story-card .ga-kicker,
body.ga-light-theme .network-home-page .front-lead-story-card span,
body.ga-light-theme .network-home-page .lead-story-card span {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  background: transparent !important;
}

body.ga-light-theme .network-home-page .front-lead-story-card h1,
body.ga-light-theme .network-home-page .front-lead-story-card h2,
body.ga-light-theme .network-home-page .front-lead-story-card h3,
body.ga-light-theme .network-home-page .front-lead-story-card strong,
body.ga-light-theme .network-home-page .front-lead-story-card a,
body.ga-light-theme .network-home-page .lead-story-card h1,
body.ga-light-theme .network-home-page .lead-story-card h2,
body.ga-light-theme .network-home-page .lead-story-card h3,
body.ga-light-theme .network-home-page .lead-story-card strong,
body.ga-light-theme .network-home-page .lead-story-card a,
body.ga-light-theme .network-home-page .story-lead-card h1,
body.ga-light-theme .network-home-page .story-lead-card h2,
body.ga-light-theme .network-home-page .story-lead-card h3,
body.ga-light-theme .network-home-page .story-lead-card strong,
body.ga-light-theme .network-home-page .story-lead-card a,
body.ga-light-theme .network-home-page .featured-story-card h1,
body.ga-light-theme .network-home-page .featured-story-card h2,
body.ga-light-theme .network-home-page .featured-story-card h3,
body.ga-light-theme .network-home-page .featured-story-card strong,
body.ga-light-theme .network-home-page .featured-story-card a {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.ga-light-theme .network-home-page .front-lead-story-card p,
body.ga-light-theme .network-home-page .front-lead-story-card .ga-muted,
body.ga-light-theme .network-home-page .front-lead-story-card small,
body.ga-light-theme .network-home-page .lead-story-card p,
body.ga-light-theme .network-home-page .lead-story-card .ga-muted,
body.ga-light-theme .network-home-page .lead-story-card small,
body.ga-light-theme .network-home-page .story-lead-card p,
body.ga-light-theme .network-home-page .story-lead-card .ga-muted,
body.ga-light-theme .network-home-page .story-lead-card small,
body.ga-light-theme .network-home-page .featured-story-card p,
body.ga-light-theme .network-home-page .featured-story-card .ga-muted,
body.ga-light-theme .network-home-page .featured-story-card small {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
}

/* Secondary story cards: keep them clean/readable and avoid squeezed text. */
body.ga-light-theme .network-home-page .front-story-card,
body.ga-light-theme .network-home-page .story-card,
body.ga-light-theme .network-home-page .article-card,
body.ga-light-theme .network-home-page .news-card {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  box-shadow: 0 16px 36px rgba(15,23,42,.08) !important;
}

body.ga-light-theme .network-home-page .front-story-card h1,
body.ga-light-theme .network-home-page .front-story-card h2,
body.ga-light-theme .network-home-page .front-story-card h3,
body.ga-light-theme .network-home-page .front-story-card strong,
body.ga-light-theme .network-home-page .front-story-card a,
body.ga-light-theme .network-home-page .story-card h1,
body.ga-light-theme .network-home-page .story-card h2,
body.ga-light-theme .network-home-page .story-card h3,
body.ga-light-theme .network-home-page .story-card strong,
body.ga-light-theme .network-home-page .story-card a,
body.ga-light-theme .network-home-page .article-card h1,
body.ga-light-theme .network-home-page .article-card h2,
body.ga-light-theme .network-home-page .article-card h3,
body.ga-light-theme .network-home-page .article-card strong,
body.ga-light-theme .network-home-page .article-card a,
body.ga-light-theme .network-home-page .news-card h1,
body.ga-light-theme .network-home-page .news-card h2,
body.ga-light-theme .network-home-page .news-card h3,
body.ga-light-theme .network-home-page .news-card strong,
body.ga-light-theme .network-home-page .news-card a {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}

body.ga-light-theme .network-home-page .front-story-card p,
body.ga-light-theme .network-home-page .front-story-card small,
body.ga-light-theme .network-home-page .front-story-card .ga-muted,
body.ga-light-theme .network-home-page .story-card p,
body.ga-light-theme .network-home-page .story-card small,
body.ga-light-theme .network-home-page .story-card .ga-muted,
body.ga-light-theme .network-home-page .article-card p,
body.ga-light-theme .network-home-page .article-card small,
body.ga-light-theme .network-home-page .article-card .ga-muted,
body.ga-light-theme .network-home-page .news-card p,
body.ga-light-theme .network-home-page .news-card small,
body.ga-light-theme .network-home-page .news-card .ga-muted {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  text-shadow: none !important;
}

/* Prevent giant empty dark story panels from hiding the CTA button. */
body.ga-light-theme .network-home-page .lead-story-card .btn,
body.ga-light-theme .network-home-page .front-lead-story-card .btn,
body.ga-light-theme .network-home-page .story-lead-card .btn,
body.ga-light-theme .network-home-page .featured-story-card .btn {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: linear-gradient(180deg, #198cff, #075ec7) !important;
  border-color: rgba(255,255,255,.18) !important;
  text-shadow: none !important;
}

/* Responsive layout */
@media (max-width: 1100px) {
  body.ga-light-theme .network-home-page .front-page-grid,
  body.ga-light-theme .network-home-page .story-grid,
  body.ga-light-theme .network-home-page .news-grid,
  body.ga-light-theme .network-home-page .content-grid {
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme .network-home-page .front-lead-story-card,
  body.ga-light-theme .network-home-page .lead-story-card,
  body.ga-light-theme .network-home-page .story-lead-card,
  body.ga-light-theme .network-home-page .featured-story-card {
    min-height: 420px !important;
  }
}

@media (max-width: 768px) {
  body.ga-light-theme .network-home-page {
    padding-inline: .75rem !important;
  }

  body.ga-light-theme .network-home-page .network-hero-pro {
    border-radius: 22px !important;
  }

  body.ga-light-theme .network-home-page .front-lead-story-card,
  body.ga-light-theme .network-home-page .lead-story-card,
  body.ga-light-theme .network-home-page .story-lead-card,
  body.ga-light-theme .network-home-page .featured-story-card {
    min-height: 340px !important;
    border-radius: 22px !important;
  }
}

/* FRONT PAGE ACTUAL LAYOUT FIX
   This targets the real front page markup instead of relying on generic story-grid selectors. */
body.ga-light-theme .network-home-page {
  max-width: 1480px !important;
  margin-inline: auto !important;
  padding-inline: clamp(1rem, 3vw, 2.5rem) !important;
}

body.ga-light-theme .network-home-page .network-hero-pro {
  width: 100% !important;
  margin-inline: auto !important;
  border-radius: 32px !important;
  overflow: hidden !important;
}

/* Real stories section layout */
.front-stories-section {
  width: 100%;
}

.front-stories-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr);
  gap: 1.25rem;
  align-items: stretch;
}

.front-stories-lead-column,
.front-stories-side-column {
  min-width: 0;
}

.front-stories-side-column {
  display: grid;
  gap: 1rem;
  align-content: start;
}

/* Real lead story card. White text is applied inline in the ERB too. */
body.ga-light-theme .network-home-page .front-lead-story-card {
  min-height: clamp(380px, 40vw, 560px) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  padding: clamp(1.25rem, 3vw, 2.25rem) !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(7,17,31,.06) 0%, rgba(7,17,31,.38) 48%, rgba(7,17,31,.92) 100%),
    radial-gradient(circle at 10% 0%, rgba(47,143,255,.22), transparent 34%),
    linear-gradient(135deg, #07111f, #10263f) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: 0 22px 56px rgba(7,17,31,.20) !important;
}

body.ga-light-theme .network-home-page .front-lead-story-card h1,
body.ga-light-theme .network-home-page .front-lead-story-card h2,
body.ga-light-theme .network-home-page .front-lead-story-card h3,
body.ga-light-theme .network-home-page .front-lead-story-card strong,
body.ga-light-theme .network-home-page .front-lead-story-card a {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.ga-light-theme .network-home-page .front-lead-story-card p,
body.ga-light-theme .network-home-page .front-lead-story-card .ga-muted,
body.ga-light-theme .network-home-page .front-lead-story-card small {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
}

/* Secondary story cards in the real right column: light cards, dark text. */
body.ga-light-theme .network-home-page .front-stories-side-column .article-card-pro,
body.ga-light-theme .network-home-page .front-stories-side-column .article-card,
body.ga-light-theme .network-home-page .front-stories-side-column .network-card,
body.ga-light-theme .network-home-page .front-stories-side-column a {
  min-width: 0 !important;
}

body.ga-light-theme .network-home-page .front-stories-side-column .article-card-pro,
body.ga-light-theme .network-home-page .front-stories-side-column .article-card {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  box-shadow: 0 16px 36px rgba(15,23,42,.08) !important;
}

body.ga-light-theme .network-home-page .front-stories-side-column h1,
body.ga-light-theme .network-home-page .front-stories-side-column h2,
body.ga-light-theme .network-home-page .front-stories-side-column h3,
body.ga-light-theme .network-home-page .front-stories-side-column h4,
body.ga-light-theme .network-home-page .front-stories-side-column strong,
body.ga-light-theme .network-home-page .front-stories-side-column a {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}

body.ga-light-theme .network-home-page .front-stories-side-column p,
body.ga-light-theme .network-home-page .front-stories-side-column small,
body.ga-light-theme .network-home-page .front-stories-side-column .ga-muted {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  text-shadow: none !important;
}

@media (max-width: 1120px) {
  .front-stories-layout {
    grid-template-columns: 1fr;
  }
  body.ga-light-theme .network-home-page .front-lead-story-card {
    min-height: 380px !important;
  }
}

@media (max-width: 768px) {
  body.ga-light-theme .network-home-page {
    padding-inline: .75rem !important;
  }
  body.ga-light-theme .network-home-page .network-hero-pro,
  body.ga-light-theme .network-home-page .front-lead-story-card {
    border-radius: 22px !important;
  }
  body.ga-light-theme .network-home-page .front-lead-story-card {
    min-height: 320px !important;
  }
}

/* SPORTS INDEX / SHOW GUTTERS + LAYOUT FIX
   Gives sports pages the same left/right gutters and max width as the front page/GameCenter,
   and fixes dark hero text / cramped cards. */

body.ga-light-theme .sports-public-refresh {
  max-width: 1480px !important;
  margin-inline: auto !important;
  padding-inline: clamp(1rem, 3vw, 2.5rem) !important;
  padding-block: 1rem 2.5rem;
}

body.ga-light-theme .sports-page-hero {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  padding: clamp(1.35rem, 2.8vw, 2.5rem);
  border-radius: 30px;
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.24), transparent 34%),
    radial-gradient(circle at 90% 8%, rgba(255,214,107,.12), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 55%, #162033 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 22px 56px rgba(7,17,31,.20);
}

body.ga-light-theme .sports-page-hero .ga-title,
body.ga-light-theme .sports-page-hero h1 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 16px 36px rgba(0,0,0,.38) !important;
  opacity: 1 !important;
}

body.ga-light-theme .sports-page-hero .ga-kicker {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  background: transparent !important;
}

body.ga-light-theme .sports-page-lead {
  max-width: 860px;
  margin: .75rem 0 0;
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  font-size: clamp(1rem, 1.25vw, 1.18rem);
  line-height: 1.5;
}

.sports-page-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: .5rem .85rem;
  border-radius: 999px;
  background: rgba(255,255,255,.16);
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.28);
  font-weight: 1000;
  white-space: nowrap;
}

.sports-index-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
  gap: 1rem;
}

body.ga-light-theme .sports-index-card,
body.ga-light-theme .sports-panel {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 24px !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.075);
}

body.ga-light-theme .sports-index-card {
  min-height: 210px;
  display: flex;
  flex-direction: column;
  gap: .75rem;
  padding: 1.25rem;
}

body.ga-light-theme .sports-index-card:hover {
  transform: translateY(-3px);
  border-color: rgba(7,94,199,.30) !important;
  box-shadow: 0 22px 48px rgba(7,94,199,.12);
}

body.ga-light-theme .sports-index-card h2,
body.ga-light-theme .sports-panel h2 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  margin: 0;
  font-weight: 1000;
  letter-spacing: -.04em;
  line-height: 1.05;
}

body.ga-light-theme .sports-index-card h2 {
  font-size: clamp(1.6rem, 2vw, 2.1rem);
}

body.ga-light-theme .sports-index-card p {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  margin: 0;
  line-height: 1.45;
}

body.ga-light-theme .sports-index-card .ga-kicker,
body.ga-light-theme .sports-panel .ga-kicker {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  background: transparent !important;
}

.sports-index-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-top: auto;
}

body.ga-light-theme .sports-index-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: .3rem .6rem;
  border-radius: 999px;
  background: #f1f5f9 !important;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  border: 1px solid rgba(15,23,42,.08);
  font-weight: 850;
}

.sports-show-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 390px);
  gap: 1.25rem;
  align-items: start;
}

body.ga-light-theme .sports-panel {
  padding: clamp(1.1rem, 2vw, 1.5rem);
}

.sports-events-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: .85rem;
}

.sports-team-list {
  display: grid;
  gap: .6rem;
  margin-top: 1rem;
}

body.ga-light-theme .sports-team-link {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: .75rem .9rem;
  border-radius: 14px;
  background: #f8fafc !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10);
  text-decoration: none;
  font-weight: 900;
}

body.ga-light-theme .sports-team-link:hover {
  background: #eef6ff !important;
  border-color: rgba(7,94,199,.24);
}

@media (max-width: 1000px) {
  .sports-show-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  body.ga-light-theme .sports-public-refresh {
    padding-inline: .75rem !important;
  }

  body.ga-light-theme .sports-page-hero {
    flex-direction: column;
    align-items: start;
    border-radius: 22px;
  }
}

/* SPORTS PAGES CONTRAST HARD FIX
   View-level inline styles handle the hero titles. This CSS adds high-specificity
   backup selectors and fixes any remaining dark-on-dark sports page text. */

html body.ga-light-theme main .sports-public-refresh .sports-page-hero,
html body main .sports-public-refresh .sports-page-hero {
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.24), transparent 34%),
    radial-gradient(circle at 90% 8%, rgba(255,214,107,.12), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 55%, #162033 100%) !important;
  color: #ffffff !important;
}

html body.ga-light-theme main .sports-public-refresh .sports-page-hero h1,
html body.ga-light-theme main .sports-public-refresh .sports-page-hero .ga-title,
html body main .sports-public-refresh .sports-page-hero h1,
html body main .sports-public-refresh .sports-page-hero .ga-title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 16px 36px rgba(0,0,0,.38) !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

html body.ga-light-theme main .sports-public-refresh .sports-page-hero .ga-kicker,
html body main .sports-public-refresh .sports-page-hero .ga-kicker {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  background: transparent !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

html body.ga-light-theme main .sports-public-refresh .sports-page-hero p,
html body.ga-light-theme main .sports-public-refresh .sports-page-hero .sports-page-lead,
html body.ga-light-theme main .sports-public-refresh .sports-page-hero .ga-muted,
html body main .sports-public-refresh .sports-page-hero p,
html body main .sports-public-refresh .sports-page-hero .sports-page-lead,
html body main .sports-public-refresh .sports-page-hero .ga-muted {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
  text-shadow: 0 8px 24px rgba(0,0,0,.24) !important;
}

html body.ga-light-theme main .sports-public-refresh .sports-page-count,
html body main .sports-public-refresh .sports-page-count {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: rgba(255,255,255,.16) !important;
  border-color: rgba(255,255,255,.28) !important;
}

/* Sports cards/panels are light cards, so force readable dark text inside them. */
html body.ga-light-theme main .sports-public-refresh .sports-index-card,
html body.ga-light-theme main .sports-public-refresh .sports-panel,
html body main .sports-public-refresh .sports-index-card,
html body main .sports-public-refresh .sports-panel {
  background: #ffffff !important;
  color: #0f172a !important;
}

html body.ga-light-theme main .sports-public-refresh .sports-index-card h1,
html body.ga-light-theme main .sports-public-refresh .sports-index-card h2,
html body.ga-light-theme main .sports-public-refresh .sports-index-card h3,
html body.ga-light-theme main .sports-public-refresh .sports-index-card strong,
html body.ga-light-theme main .sports-public-refresh .sports-index-card a,
html body.ga-light-theme main .sports-public-refresh .sports-panel h1,
html body.ga-light-theme main .sports-public-refresh .sports-panel h2,
html body.ga-light-theme main .sports-public-refresh .sports-panel h3,
html body.ga-light-theme main .sports-public-refresh .sports-panel strong,
html body.ga-light-theme main .sports-public-refresh .sports-panel a {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
}

html body.ga-light-theme main .sports-public-refresh .sports-index-card p,
html body.ga-light-theme main .sports-public-refresh .sports-index-card small,
html body.ga-light-theme main .sports-public-refresh .sports-index-card .ga-muted,
html body.ga-light-theme main .sports-public-refresh .sports-panel p,
html body.ga-light-theme main .sports-public-refresh .sports-panel small,
html body.ga-light-theme main .sports-public-refresh .sports-panel .ga-muted {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  text-shadow: none !important;
}

html body.ga-light-theme main .sports-public-refresh .sports-index-card .ga-kicker,
html body.ga-light-theme main .sports-public-refresh .sports-panel .ga-kicker {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  background: transparent !important;
}

/* SCOREKEEPER CONTRAST HARD FIX
   Final scorekeeper-specific contrast pass. The global light-theme rules were turning
   the current batter row into a light row while later scorekeeper rules kept the text
   white. This pins the scorekeeper console to a deliberate dark-card system and gives
   active rows their own readable active treatment. */

/* Scorekeeper is a dark console even under the site light theme. */
html body.ga-light-theme .scorebook-shell.scorebook-pro,
html body .scorebook-shell.scorebook-pro {
  color: #f8fbff !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card,
html body .scorebook-shell.scorebook-pro .scorebook-card {
  background:
    linear-gradient(180deg, rgba(42, 54, 72, .96), rgba(26, 38, 55, .96)) !important;
  color: #f8fbff !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 18px 48px rgba(2, 8, 23, .28) !important;
}

/* Section titles and labels on dark scorekeeper cards. */
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card h1,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card h2,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card h3,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card h4,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card h5,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-readable-title,
html body .scorebook-shell.scorebook-pro .scorebook-card h1,
html body .scorebook-shell.scorebook-pro .scorebook-card h2,
html body .scorebook-shell.scorebook-pro .scorebook-card h3,
html body .scorebook-shell.scorebook-pro .scorebook-card h4,
html body .scorebook-shell.scorebook-pro .scorebook-card h5,
html body .scorebook-shell.scorebook-pro .scorebook-readable-title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: none !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card .ga-kicker,
html body .scorebook-shell.scorebook-pro .scorebook-card .ga-kicker {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  background: transparent !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-readable-muted,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card small,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card .small,
html body .scorebook-shell.scorebook-pro .scorebook-readable-muted,
html body .scorebook-shell.scorebook-pro .scorebook-card small,
html body .scorebook-shell.scorebook-pro .scorebook-card .small {
  color: #cbd5e1 !important;
  -webkit-text-fill-color: #cbd5e1 !important;
  opacity: 1 !important;
}

/* Batting order / defense rows. */
html body.ga-light-theme .scorebook-shell.scorebook-pro .lineup-row,
html body .scorebook-shell.scorebook-pro .lineup-row {
  background: rgba(255,255,255,.075) !important;
  color: #f8fbff !important;
  border: 1px solid rgba(255,255,255,.16) !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .lineup-row span,
html body .scorebook-shell.scorebook-pro .lineup-row span {
  background: rgba(255,255,255,.12) !important;
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
  border: 1px solid rgba(255,255,255,.10) !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .lineup-row strong,
html body .scorebook-shell.scorebook-pro .lineup-row strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .lineup-row small,
html body .scorebook-shell.scorebook-pro .lineup-row small {
  color: #b7c7da !important;
  -webkit-text-fill-color: #b7c7da !important;
  opacity: 1 !important;
}

/* Current batter row: no light-on-light. Active row uses gold with dark readable text. */
html body.ga-light-theme .scorebook-shell.scorebook-pro .lineup-row.current,
html body .scorebook-shell.scorebook-pro .lineup-row.current {
  background: linear-gradient(180deg, #ffe08a, #ffd15a) !important;
  color: #0f172a !important;
  border-color: rgba(180,83,9,.46) !important;
  box-shadow: 0 0 0 2px rgba(255, 209, 90, .16), 0 10px 24px rgba(180,83,9,.20) !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .lineup-row.current span,
html body .scorebook-shell.scorebook-pro .lineup-row.current span {
  background: rgba(15,23,42,.10) !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: rgba(15,23,42,.14) !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .lineup-row.current strong,
html body.ga-light-theme .scorebook-shell.scorebook-pro .lineup-row.current small,
html body .scorebook-shell.scorebook-pro .lineup-row.current strong,
html body .scorebook-shell.scorebook-pro .lineup-row.current small {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  opacity: 1 !important;
}

/* Matchup/count cards inside the current-at-bat panel. */
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-matchup div,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-count-grid div,
html body .scorebook-shell.scorebook-pro .scorebook-matchup div,
html body .scorebook-shell.scorebook-pro .scorebook-count-grid div {
  background: rgba(255,255,255,.075) !important;
  border-color: rgba(255,255,255,.16) !important;
  color: #f8fbff !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-matchup span,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-count-grid span,
html body .scorebook-shell.scorebook-pro .scorebook-matchup span,
html body .scorebook-shell.scorebook-pro .scorebook-count-grid span {
  color: #cbd5e1 !important;
  -webkit-text-fill-color: #cbd5e1 !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-matchup strong,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-count-grid strong,
html body .scorebook-shell.scorebook-pro .scorebook-matchup strong,
html body .scorebook-shell.scorebook-pro .scorebook-count-grid strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Log rows / plate appearance rows on dark sidebars. */
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-log-row,
html body .scorebook-shell.scorebook-pro .scorebook-log-row {
  background: rgba(255,255,255,.075) !important;
  color: #f8fbff !important;
  border-color: rgba(255,255,255,.16) !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-log-row strong,
html body .scorebook-shell.scorebook-pro .scorebook-log-row strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-log-row small,
html body .scorebook-shell.scorebook-pro .scorebook-log-row small {
  color: #cbd5e1 !important;
  -webkit-text-fill-color: #cbd5e1 !important;
}

/* White/manual cards inside the scorekeeper should stay intentionally light with dark text. */
html body.ga-light-theme .scorebook-shell.scorebook-pro details,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-result-bank,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-result-chip,
html body .scorebook-shell.scorebook-pro details,
html body .scorebook-shell.scorebook-pro .scorebook-result-bank,
html body .scorebook-shell.scorebook-pro .scorebook-result-chip {
  color: #0f172a !important;
}

html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-result-chip strong,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-result-chip span,
html body .scorebook-shell.scorebook-pro .scorebook-result-chip strong,
html body .scorebook-shell.scorebook-pro .scorebook-result-chip span {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

/* SCOREKEEPER VISIBILITY FINAL FIX
   Fixes the remaining low-contrast text in the screenshots:
   - header subtitle
   - score strip team labels and inning metadata
   - pitch card helper text
   - line score context chips
   - any muted text inside dark scorekeeper panels
*/

html body .scorebook-shell.scorebook-pro {
  background:
    radial-gradient(circle at 18% 0%, rgba(19,111,220,.24), transparent 32%),
    radial-gradient(circle at 90% 5%, rgba(255,196,57,.16), transparent 34%),
    linear-gradient(180deg, #07111f 0%, #101827 45%, #f6f8fb 45%, #eef3f8 100%) !important;
}

/* Top header */
html body .scorebook-shell.scorebook-pro .scorebook-topbar,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-topbar {
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.20), transparent 34%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #162033 100%) !important;
  color: #ffffff !important;
}

html body .scorebook-shell.scorebook-pro .scorebook-topbar .scorebook-title,
html body .scorebook-shell.scorebook-pro .scorebook-topbar h1,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-topbar .scorebook-title,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-topbar h1 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: 0 16px 38px rgba(0,0,0,.40) !important;
}

html body .scorebook-shell.scorebook-pro .scorebook-topbar .ga-muted,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-topbar .ga-muted {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
}

/* Score strip: make all metadata visible. */
html body .scorebook-shell.scorebook-pro .scorebook-game-strip {
  background:
    linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.035)),
    linear-gradient(135deg, #111827 0%, #0b1220 48%, #162033 100%) !important;
  color: #ffffff !important;
}

html body .scorebook-shell.scorebook-pro .scorebook-team-score,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-team-score,
html body .scorebook-shell.scorebook-pro .scorebook-inning-card,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-inning-card {
  background: transparent !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,.14) !important;
}

html body .scorebook-shell.scorebook-pro .scorebook-team-label,
html body .scorebook-shell.scorebook-pro .scorebook-team-score span,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-team-label,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-team-score span {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

html body .scorebook-shell.scorebook-pro .scorebook-team-score strong,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-team-score strong,
html body .scorebook-shell.scorebook-pro .scorebook-inning-card strong,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-inning-card strong {
  color: #ffd66b !important;
  -webkit-text-fill-color: #ffd66b !important;
  opacity: 1 !important;
  text-shadow: 0 10px 24px rgba(0,0,0,.30) !important;
}

html body .scorebook-shell.scorebook-pro .scorebook-inning-card span,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-inning-card span {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
}

html body .scorebook-shell.scorebook-pro .scorebook-inning-meta,
html body .scorebook-shell.scorebook-pro .scorebook-inning-card small,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-inning-meta,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-inning-card small {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
}

/* Main dark panels */
html body .scorebook-shell.scorebook-pro .scorebook-card {
  color: #ffffff !important;
}

html body .scorebook-shell.scorebook-pro .scorebook-card .scorebook-panel-kicker,
html body .scorebook-shell.scorebook-pro .scorebook-card .ga-kicker,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card .scorebook-panel-kicker,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card .ga-kicker {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  opacity: 1 !important;
  background: transparent !important;
}

html body .scorebook-shell.scorebook-pro .scorebook-card .scorebook-panel-copy,
html body .scorebook-shell.scorebook-pro .scorebook-card .ga-muted,
html body .scorebook-shell.scorebook-pro .scorebook-card p,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card .scorebook-panel-copy,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card .ga-muted,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card p {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
}

html body .scorebook-shell.scorebook-pro .scorebook-card .scorebook-context-chip,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card .scorebook-context-chip {
  background: rgba(255,255,255,.14) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: rgba(255,255,255,.24) !important;
  opacity: 1 !important;
}

/* Line score table stays light/readable, with strong dark text. */
html body .scorebook-shell.scorebook-pro .line-score-table,
html body.ga-light-theme .scorebook-shell.scorebook-pro .line-score-table {
  background: #ffffff !important;
  color: #0f172a !important;
}

html body .scorebook-shell.scorebook-pro .line-score-table th,
html body .scorebook-shell.scorebook-pro .line-score-table td,
html body.ga-light-theme .scorebook-shell.scorebook-pro .line-score-table th,
html body.ga-light-theme .scorebook-shell.scorebook-pro .line-score-table td {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  opacity: 1 !important;
}

/* SCOREKEEPER ROGUE BACKGROUND FIX
   Removes the hard mid-page background split/box that was showing behind the scorekeeper.
   The scorekeeper console now uses one continuous dark broadcast surface, while individual
   cards/panels carry their own contrast. */

html body .scorebook-shell.scorebook-pro,
html body.ga-light-theme .scorebook-shell.scorebook-pro {
  min-height: 100vh !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(47,143,255,.22), transparent 34%),
    radial-gradient(circle at 92% 6%, rgba(255,214,107,.10), transparent 32%),
    linear-gradient(135deg, #07111f 0%, #0b1830 45%, #101827 100%) !important;
  background-color: #07111f !important;
  color: #f8fbff !important;
  overflow-x: hidden !important;
}

/* Make sure no older 45% light/dark split leaks through under the main scorekeeper grid. */
html body .scorebook-shell.scorebook-pro::before,
html body .scorebook-shell.scorebook-pro::after,
html body.ga-light-theme .scorebook-shell.scorebook-pro::before,
html body.ga-light-theme .scorebook-shell.scorebook-pro::after {
  content: none !important;
  display: none !important;
}

/* The three main scorekeeper regions should sit directly on the continuous background. */
html body .scorebook-shell.scorebook-pro .scorebook-layout-pro,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-layout-pro {
  position: relative !important;
  z-index: 1 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Remove accidental horizontal strips caused by inherited section/container backgrounds. */
html body .scorebook-shell.scorebook-pro .scorebook-left,
html body .scorebook-shell.scorebook-pro .scorebook-main,
html body .scorebook-shell.scorebook-pro .scorebook-right,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-left,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-main,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-right {
  background: transparent !important;
}

/* Cards keep the dark panel look, without an enclosing rogue box behind them. */
html body .scorebook-shell.scorebook-pro .scorebook-card,
html body.ga-light-theme .scorebook-shell.scorebook-pro .scorebook-card {
  background:
    linear-gradient(180deg, rgba(42,54,72,.96), rgba(25,38,55,.96)) !important;
  color: #f8fbff !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 18px 48px rgba(2,8,23,.28) !important;
}

/* Line score remains readable as its own light table inside a dark card. */
html body .scorebook-shell.scorebook-pro .line-score-table,
html body.ga-light-theme .scorebook-shell.scorebook-pro .line-score-table,
html body .scorebook-shell.scorebook-pro table.line-score-table,
html body.ga-light-theme .scorebook-shell.scorebook-pro table.line-score-table {
  background: #ffffff !important;
  color: #0f172a !important;
  border-radius: 0 !important;
}

/* Keep any light forms/actions contained inside their own cards; they should not become page backgrounds. */
html body .scorebook-shell.scorebook-pro input,
html body .scorebook-shell.scorebook-pro select,
html body .scorebook-shell.scorebook-pro textarea,
html body.ga-light-theme .scorebook-shell.scorebook-pro input,
html body.ga-light-theme .scorebook-shell.scorebook-pro select,
html body.ga-light-theme .scorebook-shell.scorebook-pro textarea {
  background-color: #ffffff !important;
  color: #0f172a !important;
}

/* SPORTS INDEX + BASEBALL HUB CLEANUP FIX
   - sport index cards explicitly link to each sport hub
   - baseball sport opens the baseball hub
   - baseball hub removes placeholder feature-stack card
   - baseball hub fixes dark text on dark hero/background
   - baseball hub uses consistent gutters/max width */

body.ga-light-theme .sports-index-card.sports-hub-card {
  min-height: 230px !important;
  justify-content: space-between !important;
}

body.ga-light-theme .sports-index-card.sports-hub-card h2 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.sports-open-hub {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: .5rem .75rem;
  border-radius: 999px;
  background: #075ec7 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: .8rem;
  font-weight: 1000;
}

/* Baseball hub page shell */
body.ga-light-theme .baseball-hub-page {
  max-width: 1480px !important;
  margin-inline: auto !important;
  padding-inline: clamp(1rem, 3vw, 2.5rem) !important;
  padding-block: 1rem 2.5rem !important;
}

body.ga-light-theme .baseball-hub-page .baseball-hero {
  border-radius: 32px !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.24), transparent 34%),
    radial-gradient(circle at 92% 8%, rgba(25,211,255,.15), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #10263f 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 24px 60px rgba(7,17,31,.20);
}

body.ga-light-theme .baseball-hub-page .baseball-hero h1,
body.ga-light-theme .baseball-hub-page .baseball-hero h2,
body.ga-light-theme .baseball-hub-page .baseball-hero h3 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.ga-light-theme .baseball-hub-page .baseball-hero p,
body.ga-light-theme .baseball-hub-page .baseball-hero .lead,
body.ga-light-theme .baseball-hub-page .baseball-hero .text-white-50 {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
}

/* Featured score card in baseball hero */
body.ga-light-theme .baseball-feature-card {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(255,255,255,.68) !important;
  border-radius: 24px !important;
  box-shadow: 0 20px 48px rgba(0,0,0,.18) !important;
}

body.ga-light-theme .baseball-feature-card span,
body.ga-light-theme .baseball-feature-card small,
body.ga-light-theme .baseball-feature-card .small {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
}

body.ga-light-theme .baseball-feature-card .score-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .55rem 0;
  color: #0f172a !important;
  border-bottom: 1px solid rgba(15,23,42,.10);
}

body.ga-light-theme .baseball-feature-card .score-row span {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .baseball-feature-card .score-row strong {
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
  font-size: 2.2rem;
  font-weight: 1000;
  line-height: 1;
}

/* Baseball content cards */
body.ga-light-theme .baseball-hub-page .section-title {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .baseball-hub-page .club-card {
  background:
    linear-gradient(180deg, rgba(42,54,72,.96), rgba(25,38,55,.96)) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.12) !important;
}

body.ga-light-theme .baseball-hub-page .club-card .text-white,
body.ga-light-theme .baseball-hub-page .club-card .fw-bold {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.ga-light-theme .baseball-hub-page .club-card .text-white-50,
body.ga-light-theme .baseball-hub-page .club-card small {
  color: #cbd5e1 !important;
  -webkit-text-fill-color: #cbd5e1 !important;
  opacity: 1 !important;
}

body.ga-light-theme .baseball-hub-page .headline-link {
  display: block;
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 16px;
  padding: .85rem .95rem;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(15,23,42,.07);
}

@media (max-width: 768px) {
  body.ga-light-theme .baseball-hub-page {
    padding-inline: .75rem !important;
  }
  body.ga-light-theme .baseball-hub-page .baseball-hero {
    border-radius: 22px !important;
  }
}

/* NAV + TICKER + CLUBHOUSE READABILITY FIX
   - Removes Baseball from primary nav; sport-specific hubs live under Sports.
   - Fixes ticker clipping/cut-off game cards and scores.
   - Fixes clubhouse dark-font-on-dark-card text on baseball hub. */

/* Primary nav should not have a one-off Baseball item unless all sports use the same structure. */
body.ga-light-theme .ga-navbar .navbar-nav .nav-link {
  white-space: nowrap;
}

/* Game ticker: no vertical clipping; each item has enough room for status, matchup, score, button. */
.ga-ticker.ga-ticker--games {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  min-height: 46px !important;
  height: auto !important;
  overflow: visible !important;
  background: #ffffff !important;
  border-block: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.045) !important;
  white-space: normal !important;
}

.ga-ticker--games .ga-ticker-label,
.ga-ticker--games .ga-ticker-all {
  align-self: stretch !important;
  display: inline-flex !important;
  align-items: center !important;
  min-height: 46px !important;
  padding-inline: .9rem !important;
  font-weight: 1000 !important;
  white-space: nowrap !important;
}

.ga-ticker--games .ga-ticker-track {
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 46px !important;
  display: flex !important;
  align-items: center !important;
  gap: .65rem !important;
  padding: .38rem .75rem !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  animation: none !important;
  transform: none !important;
  scrollbar-width: thin;
}

.ga-ticker--games .ga-ticker-game {
  flex: 0 0 auto !important;
  min-width: 330px !important;
  max-width: 420px !important;
  min-height: 34px !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto auto !important;
  align-items: center !important;
  gap: .48rem !important;
  padding: .34rem .45rem .34rem .55rem !important;
  border-radius: 999px !important;
  background: #f8fafc !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  text-decoration: none !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9) !important;
}

.ga-ticker--games .ga-ticker-status {
  min-width: 74px !important;
  text-align: center !important;
  padding: .22rem .45rem !important;
  border-radius: 999px !important;
  background: #e2e8f0 !important;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  font-size: .68rem !important;
  font-weight: 1000 !important;
  letter-spacing: .08em !important;
}

.ga-ticker--games .ga-ticker-status.is-live {
  background: #fee2e2 !important;
  color: #b91c1c !important;
  -webkit-text-fill-color: #b91c1c !important;
}

.ga-ticker--games .ga-ticker-matchup {
  min-width: 0 !important;
  max-width: none !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 900 !important;
}

.ga-ticker--games .ga-ticker-score {
  min-width: 46px !important;
  justify-self: end !important;
  text-align: right !important;
  color: #c2410c !important;
  -webkit-text-fill-color: #c2410c !important;
  font-weight: 1000 !important;
  font-variant-numeric: tabular-nums !important;
  white-space: nowrap !important;
}

.ga-ticker--games .ga-ticker-open {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: .25rem .55rem !important;
  border-radius: 999px !important;
  background: #075ec7 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-weight: 1000 !important;
  font-size: .72rem !important;
  white-space: nowrap !important;
}

.ga-ticker--games .ga-ticker-separator {
  flex: 0 0 1px !important;
  width: 1px !important;
  min-height: 30px !important;
  background: rgba(15,23,42,.14) !important;
  margin: 0 .1rem !important;
}

.ga-ticker--games .ga-ticker-all {
  background: #0f172a !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration: none !important;
}

/* Baseball clubhouse cards: dark panel with intentionally light text. */
html body.ga-light-theme .baseball-hub-page .club-card,
html body .baseball-hub-page .club-card {
  background:
    linear-gradient(180deg, rgba(42,54,72,.98), rgba(25,38,55,.98)) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.16) !important;
}

html body.ga-light-theme .baseball-hub-page .club-card *,
html body .baseball-hub-page .club-card * {
  text-shadow: none !important;
}

html body.ga-light-theme .baseball-hub-page .club-card .fw-bold,
html body.ga-light-theme .baseball-hub-page .club-card .text-white,
html body.ga-light-theme .baseball-hub-page .club-card strong,
html body.ga-light-theme .baseball-hub-page .club-card div,
html body .baseball-hub-page .club-card .fw-bold,
html body .baseball-hub-page .club-card .text-white,
html body .baseball-hub-page .club-card strong,
html body .baseball-hub-page .club-card div {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
}

html body.ga-light-theme .baseball-hub-page .club-card .text-white-50,
html body.ga-light-theme .baseball-hub-page .club-card .small,
html body.ga-light-theme .baseball-hub-page .club-card small,
html body .baseball-hub-page .club-card .text-white-50,
html body .baseball-hub-page .club-card .small,
html body .baseball-hub-page .club-card small {
  color: #cbd5e1 !important;
  -webkit-text-fill-color: #cbd5e1 !important;
  opacity: 1 !important;
}

@media (max-width: 860px) {
  .ga-ticker.ga-ticker--games {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }
  .ga-ticker--games .ga-ticker-label {
    display: none !important;
  }
  .ga-ticker--games .ga-ticker-game {
    min-width: 280px !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
  }
  .ga-ticker--games .ga-ticker-open {
    display: none !important;
  }
}

/* SPORTS HUB + TICKER LANGUAGE FIX
   - Ticker cards link directly to games; no GameCenter button.
   - Ticker rotates games without clipping scores.
   - Baseball hub no longer uses GameCenter naming.
   - Sports index now uses a generic hub landing layout.
   - Featured game card status/date text remains readable on light card. */

/* Ticker: auto-rotate game cards, no cut-off score/button. */
.ga-ticker.ga-ticker--games {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  min-height: 48px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border-block: 1px solid rgba(15,23,42,.10) !important;
  white-space: nowrap !important;
}

.ga-ticker--games .ga-ticker-label,
.ga-ticker--games .ga-ticker-all {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 48px !important;
  padding-inline: .9rem !important;
  font-weight: 1000 !important;
  white-space: nowrap !important;
}

.ga-ticker--games .ga-ticker-track {
  min-width: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: .8rem !important;
  padding: .4rem .75rem !important;
  overflow: visible !important;
  animation: gaTickerRotate 42s linear infinite !important;
  will-change: transform;
}

.ga-ticker--games .ga-ticker-track:hover {
  animation-play-state: paused !important;
}

@keyframes gaTickerRotate {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.ga-ticker--games .ga-ticker-game {
  flex: 0 0 390px !important;
  width: 390px !important;
  min-height: 36px !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: .5rem !important;
  padding: .36rem .55rem !important;
  border-radius: 999px !important;
  background: #f8fafc !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  text-decoration: none !important;
}

.ga-ticker--games .ga-ticker-status {
  min-width: 74px !important;
  text-align: center !important;
  padding: .22rem .45rem !important;
  border-radius: 999px !important;
  background: #e2e8f0 !important;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  font-size: .68rem !important;
  font-weight: 1000 !important;
  letter-spacing: .08em !important;
}

.ga-ticker--games .ga-ticker-status.is-live {
  background: #fee2e2 !important;
  color: #b91c1c !important;
  -webkit-text-fill-color: #b91c1c !important;
}

.ga-ticker--games .ga-ticker-matchup {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 900 !important;
}

.ga-ticker--games .ga-ticker-score {
  min-width: 52px !important;
  text-align: right !important;
  color: #c2410c !important;
  -webkit-text-fill-color: #c2410c !important;
  font-weight: 1000 !important;
  font-variant-numeric: tabular-nums !important;
  white-space: nowrap !important;
}

.ga-ticker--games .ga-ticker-open {
  display: none !important;
}

.ga-ticker--games .ga-ticker-separator {
  flex: 0 0 1px !important;
  width: 1px !important;
  min-height: 30px !important;
  background: rgba(15,23,42,.14) !important;
}

.ga-ticker--games .ga-ticker-all {
  background: #0f172a !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration: none !important;
}

/* Baseball hub featured game card: no light-on-light text. */
html body.ga-light-theme .baseball-feature-card,
html body .baseball-feature-card {
  background: #ffffff !important;
  color: #0f172a !important;
}

html body.ga-light-theme .baseball-feature-card .small,
html body.ga-light-theme .baseball-feature-card small,
html body.ga-light-theme .baseball-feature-card span:not(.badge),
html body .baseball-feature-card .small,
html body .baseball-feature-card small,
html body .baseball-feature-card span:not(.badge) {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  opacity: 1 !important;
}

html body.ga-light-theme .baseball-feature-card .badge,
html body .baseball-feature-card .badge {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body.ga-light-theme .baseball-feature-card .score-row span,
html body .baseball-feature-card .score-row span {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

html body.ga-light-theme .baseball-feature-card .score-row strong,
html body .baseball-feature-card .score-row strong {
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
}

/* Generic sports hub landing */
body.ga-light-theme .sports-hub-index-page {
  max-width: 1480px !important;
  margin-inline: auto !important;
  padding-inline: clamp(1rem, 3vw, 2.5rem) !important;
  padding-block: 1rem 2.5rem !important;
}

body.ga-light-theme .sports-hub-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 1.5rem;
  padding: clamp(2rem, 4vw, 3.5rem);
  border-radius: 32px;
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.24), transparent 34%),
    radial-gradient(circle at 92% 8%, rgba(25,211,255,.15), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #10263f 100%) !important;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 24px 60px rgba(7,17,31,.20);
}

body.ga-light-theme .sports-hub-hero h1 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.ga-light-theme .sports-hub-hero p {
  max-width: 760px;
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
}

.sports-hub-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: .5rem .85rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.28);
  font-weight: 1000;
  white-space: nowrap;
}

.sports-hub-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr));
  gap: 1rem;
}

body.ga-light-theme .sports-hub-tile {
  min-height: 220px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem;
  border-radius: 26px;
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.075);
}

body.ga-light-theme .sports-hub-tile:hover {
  transform: translateY(-3px);
  border-color: rgba(7,94,199,.30) !important;
  box-shadow: 0 22px 48px rgba(7,94,199,.12);
}

body.ga-light-theme .sports-hub-tile .ga-kicker {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  background: transparent !important;
}

body.ga-light-theme .sports-hub-tile h2 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  margin: 0;
  font-size: clamp(1.8rem, 2.3vw, 2.4rem);
  line-height: 1.02;
  letter-spacing: -.05em;
  font-weight: 1000;
}

.sports-hub-tile-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}

body.ga-light-theme .sports-hub-tile-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: .3rem .6rem;
  border-radius: 999px;
  background: #f1f5f9 !important;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  border: 1px solid rgba(15,23,42,.08);
  font-weight: 850;
}

body.ga-light-theme .sports-hub-tile strong {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: .5rem .75rem;
  border-radius: 999px;
  background: #075ec7 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: .8rem;
  font-weight: 1000;
}

@media (max-width: 860px) {
  .ga-ticker--games .ga-ticker-game {
    flex-basis: 300px !important;
    width: 300px !important;
  }

  body.ga-light-theme .sports-hub-hero {
    grid-template-columns: 1fr;
    border-radius: 22px;
  }
}

/* SPORTS INDEX CONTENT HUB FIX
   Converts Sports index from a list of sport cards into an actual sports hub with
   scores, sport hubs, articles, highlights, and photos. Avoids placeholder feature copy. */

body.ga-light-theme .sports-hub-index-page {
  max-width: 1480px !important;
  margin-inline: auto !important;
  padding-inline: clamp(1rem, 3vw, 2.5rem) !important;
  padding-block: 1rem 2.5rem !important;
}

body.ga-light-theme .sports-hub-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 480px);
  align-items: center;
  gap: 1.5rem;
  padding: clamp(2rem, 4vw, 3.5rem);
  border-radius: 32px;
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.24), transparent 34%),
    radial-gradient(circle at 92% 8%, rgba(25,211,255,.15), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #10263f 100%) !important;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 24px 60px rgba(7,17,31,.20);
  color: #ffffff !important;
}

body.ga-light-theme .sports-hub-hero h1 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.ga-light-theme .sports-hub-feature-game {
  display: block;
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border: 1px solid rgba(255,255,255,.70);
  border-radius: 24px;
  padding: 1.25rem;
  box-shadow: 0 20px 48px rgba(0,0,0,.18);
}

body.ga-light-theme .sports-hub-feature-game .badge {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.ga-light-theme .sports-hub-feature-time,
body.ga-light-theme .sports-hub-feature-game small,
body.ga-light-theme .sports-hub-feature-game span:not(.badge) {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  opacity: 1 !important;
}

body.ga-light-theme .sports-hub-feature-game .score-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .55rem 0;
  border-bottom: 1px solid rgba(15,23,42,.10);
}

body.ga-light-theme .sports-hub-feature-game .score-row span {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 850;
}

body.ga-light-theme .sports-hub-feature-game .score-row strong {
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
  font-size: 2.25rem;
  font-weight: 1000;
  line-height: 1;
}

body.ga-light-theme .sports-hub-scoreboard,
body.ga-light-theme .sports-hub-sports,
body.ga-light-theme .sports-content-panel {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 26px !important;
  padding: clamp(1.1rem, 2vw, 1.5rem);
  box-shadow: 0 18px 42px rgba(15,23,42,.075);
}

body.ga-light-theme .sports-hub-scoreboard h2,
body.ga-light-theme .sports-hub-sports h2,
body.ga-light-theme .sports-content-panel h2 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  margin: 0;
  font-weight: 1000;
  letter-spacing: -.04em;
}

body.ga-light-theme .sports-hub-scoreboard .ga-kicker,
body.ga-light-theme .sports-hub-sports .ga-kicker,
body.ga-light-theme .sports-content-panel .ga-kicker {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  background: transparent !important;
}

.sports-hub-score-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 290px), 1fr));
  gap: .9rem;
}

.sports-hub-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: .85rem;
}

body.ga-light-theme .sports-hub-tile {
  min-height: 155px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: .9rem;
  padding: 1rem;
  border-radius: 20px;
  background: #f8fafc !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
}

body.ga-light-theme .sports-hub-tile h3 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-size: 1.55rem;
  line-height: 1.05;
  margin: 0;
  font-weight: 1000;
}

.sports-hub-tile-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
}

body.ga-light-theme .sports-hub-tile-meta span {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  padding: .28rem .55rem;
  border-radius: 999px;
  background: #eef2f7 !important;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  border: 1px solid rgba(15,23,42,.08);
  font-weight: 850;
}

.sports-content-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1.25rem;
}

.sports-content-panel--wide {
  grid-column: 1 / -1;
}

.sports-list-stack {
  display: grid;
  gap: .65rem;
}

body.ga-light-theme .sports-story-row {
  display: grid;
  grid-template-columns: minmax(90px, auto) minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
  padding: .8rem .9rem;
  border-radius: 16px;
  background: #f8fafc !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10);
}

body.ga-light-theme .sports-story-row span {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  font-size: .72rem;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .07em;
}

body.ga-light-theme .sports-story-row strong {
  min-width: 0;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.ga-light-theme .sports-story-row small {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
}

.sports-media-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
  gap: .85rem;
}

body.ga-light-theme .sports-media-card {
  display: grid;
  gap: .6rem;
  padding: .75rem;
  border-radius: 18px;
  background: #f8fafc !important;
  color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10);
}

.sports-media-thumb {
  min-height: 135px;
  border-radius: 14px;
  background-size: cover;
  background-position: center;
  background-color: #0f172a;
}

body.ga-light-theme .sports-media-card strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  line-height: 1.15;
}

body.ga-light-theme .sports-media-card span {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
  font-size: .82rem;
  font-weight: 800;
}

@media (max-width: 980px) {
  body.ga-light-theme .sports-hub-hero,
  .sports-content-grid {
    grid-template-columns: 1fr;
  }

  .sports-content-panel--wide {
    grid-column: auto;
  }
}

@media (max-width: 720px) {
  body.ga-light-theme .sports-hub-index-page {
    padding-inline: .75rem !important;
  }

  body.ga-light-theme .sports-hub-hero,
  body.ga-light-theme .sports-hub-scoreboard,
  body.ga-light-theme .sports-hub-sports,
  body.ga-light-theme .sports-content-panel {
    border-radius: 22px !important;
  }

  body.ga-light-theme .sports-story-row {
    grid-template-columns: 1fr;
  }

  body.ga-light-theme .sports-story-row strong {
    white-space: normal;
  }
}

/* TICKER ROTATION + ALL SCORES VISIBILITY FIX
   Rebuilds the top ticker as a real viewport + duplicated rail animation.
   The All Scores button is outside the clipping viewport, so scorecards cannot cover it. */

html body .ga-ticker.ga-ticker--games,
html body.ga-light-theme .ga-ticker.ga-ticker--games {
  position: relative !important;
  z-index: 20 !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: stretch !important;
  width: 100% !important;
  min-height: 50px !important;
  height: auto !important;
  overflow: visible !important;
  background: #ffffff !important;
  border-block: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.045) !important;
  white-space: nowrap !important;
}

html body .ga-ticker--games .ga-ticker-label,
html body .ga-ticker--games .ga-ticker-all,
html body.ga-light-theme .ga-ticker--games .ga-ticker-label,
html body.ga-light-theme .ga-ticker--games .ga-ticker-all {
  position: relative !important;
  z-index: 5 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 50px !important;
  padding-inline: .95rem !important;
  white-space: nowrap !important;
  font-weight: 1000 !important;
  line-height: 1 !important;
}

html body .ga-ticker--games .ga-ticker-label {
  background: #0f172a !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  font-size: .74rem !important;
}

html body .ga-ticker--games .ga-ticker-all,
html body.ga-light-theme .ga-ticker--games .ga-ticker-all {
  background: #075ec7 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration: none !important;
  border-left: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: -12px 0 18px rgba(255,255,255,.96) !important;
}

/* Viewport clips only the rail, not the All Scores button. */
html body .ga-ticker--games .ga-ticker-track,
html body.ga-light-theme .ga-ticker--games .ga-ticker-track {
  position: relative !important;
  z-index: 1 !important;
  min-width: 0 !important;
  width: 100% !important;
  min-height: 50px !important;
  overflow: hidden !important;
  padding: .38rem .75rem !important;
  background: #ffffff !important;
}

/* Duplicated rail gives smooth continuous rotation. */
html body .ga-ticker--games .ga-ticker-rail,
html body.ga-light-theme .ga-ticker--games .ga-ticker-rail {
  display: inline-flex !important;
  align-items: center !important;
  gap: .75rem !important;
  width: max-content !important;
  min-height: 38px !important;
  animation: gaTickerRailScroll 46s linear infinite !important;
  will-change: transform !important;
}

html body .ga-ticker--games .ga-ticker-track:hover .ga-ticker-rail,
html body.ga-light-theme .ga-ticker--games .ga-ticker-track:hover .ga-ticker-rail {
  animation-play-state: paused !important;
}

@keyframes gaTickerRailScroll {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(-50%, 0, 0); }
}

html body .ga-ticker--games .ga-ticker-game,
html body.ga-light-theme .ga-ticker--games .ga-ticker-game {
  flex: 0 0 390px !important;
  width: 390px !important;
  min-height: 36px !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: .5rem !important;
  padding: .36rem .55rem !important;
  border-radius: 999px !important;
  background: #f8fafc !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  text-decoration: none !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.92) !important;
}

html body .ga-ticker--games .ga-ticker-status,
html body.ga-light-theme .ga-ticker--games .ga-ticker-status {
  min-width: 74px !important;
  max-width: 92px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-align: center !important;
  padding: .22rem .45rem !important;
  border-radius: 999px !important;
  background: #e2e8f0 !important;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  font-size: .68rem !important;
  font-weight: 1000 !important;
  letter-spacing: .08em !important;
}

html body .ga-ticker--games .ga-ticker-status.is-live,
html body.ga-light-theme .ga-ticker--games .ga-ticker-status.is-live {
  background: #fee2e2 !important;
  color: #b91c1c !important;
  -webkit-text-fill-color: #b91c1c !important;
}

html body .ga-ticker--games .ga-ticker-matchup,
html body.ga-light-theme .ga-ticker--games .ga-ticker-matchup {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 900 !important;
}

html body .ga-ticker--games .ga-ticker-score,
html body.ga-light-theme .ga-ticker--games .ga-ticker-score {
  min-width: 54px !important;
  text-align: right !important;
  color: #c2410c !important;
  -webkit-text-fill-color: #c2410c !important;
  font-weight: 1000 !important;
  font-variant-numeric: tabular-nums !important;
  white-space: nowrap !important;
}

html body .ga-ticker--games .ga-ticker-separator,
html body.ga-light-theme .ga-ticker--games .ga-ticker-separator {
  flex: 0 0 1px !important;
  width: 1px !important;
  min-height: 30px !important;
  background: rgba(15,23,42,.14) !important;
}

/* Remove older ticker animation targets that could conflict. */
html body .ga-ticker--games .ga-ticker-track {
  transform: none !important;
  animation: none !important;
}

/* Ensure old button class never appears visually if cached markup exists. */
html body .ga-ticker--games .ga-ticker-open {
  display: none !important;
}

@media (max-width: 860px) {
  html body .ga-ticker.ga-ticker--games,
  html body.ga-light-theme .ga-ticker.ga-ticker--games {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }

  html body .ga-ticker--games .ga-ticker-label,
  html body.ga-light-theme .ga-ticker--games .ga-ticker-label {
    display: none !important;
  }

  html body .ga-ticker--games .ga-ticker-game,
  html body.ga-light-theme .ga-ticker--games .ga-ticker-game {
    flex-basis: 300px !important;
    width: 300px !important;
  }

  html body .ga-ticker--games .ga-ticker-all,
  html body.ga-light-theme .ga-ticker--games .ga-ticker-all {
    padding-inline: .7rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .ga-ticker--games .ga-ticker-rail {
    animation: none !important;
  }
}

/* LEAGUE STANDINGS NATURAL HEIGHT FIX
   Standings should only occupy the height required by the table. The prior Bootstrap
   h-100 made the standings card stretch to match the taller leaders column, leaving
   a large empty white area under the table. */

body.ga-light-theme .league-public-refresh #standings.league-standings-card,
body.ga-light-theme .league-public-refresh .league-standings-card {
  height: auto !important;
  min-height: 0 !important;
  align-self: flex-start !important;
}

body.ga-light-theme .league-public-refresh #leaders.league-leaders-card,
body.ga-light-theme .league-public-refresh .league-leaders-card {
  height: auto !important;
  min-height: 0 !important;
  align-self: flex-start !important;
}

/* Do not let the first league content row force equal-height cards. */
body.ga-light-theme .league-public-refresh #standings.league-standings-card {
  display: block !important;
}

/* Keep the standings table compact and remove extra table spacing. */
body.ga-light-theme .league-public-refresh .league-standings-card .table-responsive {
  margin-bottom: 0 !important;
}

body.ga-light-theme .league-public-refresh .league-standings-card table {
  margin-bottom: 0 !important;
}

body.ga-light-theme .league-public-refresh .league-standings-card tbody tr:last-child td {
  border-bottom-width: 0 !important;
}

/* When the leaders column is taller, it should not create visual height in the standings column. */
@media (min-width: 1200px) {
  body.ga-light-theme .league-public-refresh .row:has(#standings.league-standings-card) {
    align-items: flex-start !important;
  }
}

/* PLAYER CONFIGURABLE PROFILE BOXES FIX
   - Player season buttons show season + team.
   - Milestones, awards, and scouting boxes only render when real configured content exists.
   - Adds readable styling for multiline profile content configured in Admin. */

.player-season-chip {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: .12rem !important;
  min-width: 150px !important;
  line-height: 1.05 !important;
}

.player-season-chip strong {
  font-weight: 1000 !important;
}

.player-season-chip small {
  font-size: .72rem !important;
  font-weight: 850 !important;
  opacity: .78 !important;
}

body.ga-light-theme .player-public-refresh .player-season-chip small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

body.ga-light-theme .player-public-refresh .player-season-chip.active small,
body.ga-light-theme .player-public-refresh .player-season-chip.btn-ga small {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: .9 !important;
}

body.ga-light-theme .player-public-refresh .player-profile-box {
  height: auto !important;
  min-height: 0 !important;
}

body.ga-light-theme .player-public-refresh .timeline-item-pro strong,
body.ga-light-theme .player-public-refresh .award-pill-pro {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .player-public-refresh .timeline-item-pro p {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* AI GAME COMMENTARY WORKFLOW
   Adds a live commentary rail that periodically sends baseball game activity to an
   OpenAI-backed workflow/API endpoint and renders generated play-by-play commentary. */

.ai-commentary-card {
  border: 1px solid rgba(7, 94, 199, .14) !important;
}

.ai-commentary-feed {
  display: grid;
  gap: .85rem;
}

.ai-commentary-empty {
  padding: 1rem;
  border-radius: 16px;
  background: #f8fafc;
  color: #475569;
  font-weight: 800;
}

.ai-commentary-item {
  padding: 1rem;
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(239,246,255,.95), rgba(255,255,255,.98));
  border: 1px solid rgba(7, 94, 199, .14);
}

.ai-commentary-meta {
  margin-bottom: .35rem;
  color: #075ec7;
  font-size: .74rem;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.ai-commentary-item strong {
  display: block;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-size: 1.05rem;
  line-height: 1.15;
}

.ai-commentary-item p {
  margin: .45rem 0 0;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  line-height: 1.45;
}

/* GAMECENTER AUDIO TRANSCRIPT CONTRAST FIX
   Keeps the broadcast voice transcript visually aligned with the written call card
   while remaining separate from written GameCenter commentary. */
.live-pbp-audio-card {
  border: 1px solid rgba(7, 94, 199, .14) !important;
}

.live-pbp-audio-transcript {
  margin: 0 !important;
  background: linear-gradient(180deg, rgba(239,246,255,.95), rgba(255,255,255,.98)) !important;
  border: 1px solid rgba(7, 94, 199, .14) !important;
}

.live-pbp-audio-transcript .live-pbp-audio-text {
  margin: .45rem 0 0 !important;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  opacity: 1 !important;
  font-size: .98rem;
  line-height: 1.45;
  font-weight: 700;
}

.live-pbp-audio-card .ga-muted,
.live-pbp-audio-card label,
.live-pbp-audio-card span {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  opacity: 1 !important;
}

.live-pbp-audio-card .ga-kicker,
.live-pbp-audio-card .ai-commentary-meta {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
}

.live-pbp-audio-card h3,
.live-pbp-audio-transcript strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

/* SCOREKEEPER PLATE APPEARANCE BUTTON FUNCTION FIX
   Quick result buttons now submit the selected plate appearance directly and sync all
   hidden metadata before Rails receives the form. */
.scorebook-result-select {
  cursor: pointer !important;
}

.scorebook-result-select.is-selected {
  outline: 3px solid rgba(255, 214, 107, .72) !important;
  box-shadow: 0 0 0 1px rgba(15,23,42,.18), 0 10px 24px rgba(255,214,107,.18) !important;
}

.scorebook-result-select::after {
  content: "Record";
  display: block;
  margin-top: .2rem;
  font-size: .54rem;
  font-weight: 1000;
  letter-spacing: .07em;
  text-transform: uppercase;
  opacity: .75;
}

/* SCOREKEEPER REMOVE RECORD TEXT FIX
   Removes the injected "Record" pseudo-label from plate appearance buttons. */
.scorebook-result-select::after {
  content: none !important;
  display: none !important;
}

/* SCOREKEEPER GAME CONTROLS FIX
   Uses explicit non-Turbo forms and full-width buttons for scorekeeper controls. */
.scorebook-game-control-stack,
.scorebook-control-form {
  width: 100% !important;
}

.scorebook-control-form {
  margin: 0 !important;
}

.scorebook-control-form .btn {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  min-height: 42px !important;
}

/* ADMIN PLAYER EVALUATION PANEL VISIBILITY FIX */
.admin-player-evaluation-panel {
  border: 2px solid rgba(245, 158, 11, .45) !important;
  background: linear-gradient(180deg, #fffdf5, #ffffff) !important;
  box-shadow: 0 18px 38px rgba(15, 23, 42, .08) !important;
}

.admin-player-evaluation-panel h2 {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

.admin-player-evaluation-panel .form-label,
.admin-player-evaluation-panel .form-check-label {
  color: #1f2937 !important;
  -webkit-text-fill-color: #1f2937 !important;
}

/* ADMIN TEAM EVALUATION + SCOUTING FIX */
.admin-team-evaluation-panel {
  border: 2px solid rgba(245, 158, 11, .45) !important;
  background: linear-gradient(180deg, rgba(255,253,245,.98), rgba(255,255,255,.96)) !important;
  color: #111827 !important;
}

.admin-team-evaluation-panel .ga-kicker,
.admin-team-evaluation-panel h2,
.admin-team-evaluation-panel .form-label,
.admin-team-evaluation-panel .form-check-label {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

.admin-team-evaluation-panel .ga-muted {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

.admin-team-ai-results ul {
  padding-left: 1.1rem !important;
}

/* OPENAI GAME ACTIVITY VIDEO CLIPS FIX */
.admin-game-clip-panel {
  border: 2px solid rgba(245, 158, 11, .45) !important;
  background: linear-gradient(180deg, rgba(255,253,245,.98), rgba(255,255,255,.96)) !important;
  color: #111827 !important;
}

.admin-game-clip-panel .ga-kicker,
.admin-game-clip-panel h2,
.admin-game-clip-panel .form-label,
.admin-game-clip-panel .form-check-label {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

.admin-game-clip-panel .ga-muted {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* OPENAI GAME NEWS GENERATION FIX */
.admin-game-news-panel {
  border: 2px solid rgba(59, 130, 246, .35) !important;
  background: linear-gradient(180deg, rgba(239,246,255,.98), rgba(255,255,255,.96)) !important;
  color: #111827 !important;
}

.admin-game-news-panel .ga-kicker,
.admin-game-news-panel h2,
.admin-game-news-panel .form-label,
.admin-game-news-panel .form-check-label {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

.admin-game-news-panel .ga-muted {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

/* PLAYER PROFILE OFFENSIVE + DEFENSIVE STATS FIX */
.player-public-refresh .ga-table th,
.player-public-refresh .ga-table td {
  white-space: nowrap;
}

.player-public-refresh .fan-metric small {
  min-height: 1.1em;
}

/* OPENAI WIN PROBABILITY GAMECENTER FIX */
.win-probability-card {
  border: 1px solid rgba(56, 189, 248, .3) !important;
}

.win-probability-track {
  height: 14px;
  border-radius: 999px;
  background: rgba(148, 163, 184, .25);
  overflow: hidden;
}

.win-probability-fill {
  height: 100%;
  border-radius: inherit;
  transition: width .35s ease;
}

.win-away-fill {
  background: linear-gradient(90deg, #38bdf8, #60a5fa);
}

.win-home-fill {
  background: linear-gradient(90deg, #facc15, #f97316);
}

.win-probability-row strong,
.win-probability-row span {
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
}

/* WIN PROBABILITY CONTRAST FIX
   The GameCenter win probability card can render on a light card, so force readable dark text. */
.win-probability-card,
.win-probability-card * {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.win-probability-card .ga-kicker {
  color: #1d4ed8 !important;
  -webkit-text-fill-color: #1d4ed8 !important;
  letter-spacing: .16em;
}

.win-probability-card .ga-muted,
.win-probability-card .win-probability-summary {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
}

.win-probability-card .ga-chip,
.win-probability-card .win-probability-provider {
  color: #1e293b !important;
  -webkit-text-fill-color: #1e293b !important;
  background: rgba(241, 245, 249, .95) !important;
  border-color: rgba(148, 163, 184, .45) !important;
}

.win-probability-row strong,
.win-probability-row span {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  opacity: 1 !important;
}

.win-probability-track {
  background: rgba(203, 213, 225, .75) !important;
}

/* WIN PROBABILITY RECALCULATE ON STATE CHANGE FIX */
.win-probability-provider {
  min-width: 72px;
  text-align: center;
}

/* MULTICAMERA AUTO CLIP SOURCES FIX */
.admin-video-feeds-panel {
  border: 2px solid rgba(34, 197, 94, .35) !important;
}

.admin-video-feeds-panel .form-label,
.admin-video-feeds-panel .form-check-label,
.auto-clip-feed-check .form-check-label {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.auto-clip-feed-check {
  border: 1px solid rgba(148, 163, 184, .35);
  border-radius: 14px;
  padding: .85rem .85rem .85rem 2.35rem;
  background: rgba(248, 250, 252, .9);
}

.auto-clip-feed-check small {
  display: block;
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  overflow-wrap: anywhere;
}

/* GENERAL CHECKBOX INTERACTION/VISIBILITY FIX */
.form-check-input,
.form-check-label,
.form-check,
.form-switch {
  cursor: pointer;
}

.form-check-input {
  position: relative;
  z-index: 2;
  pointer-events: auto !important;
  flex-shrink: 0;
}

.form-check-input:checked,
.form-check-input[type="checkbox"]:checked,
.form-check-input[type="radio"]:checked,
body.ga-light-theme .form-check-input:checked,
body.ga-light-theme .form-check-input[type="checkbox"]:checked,
body.ga-light-theme .form-check-input[type="radio"]:checked,
.studio-config-form .form-check-input:checked,
body.ga-light-theme .studio-config-form .form-check-input:checked {
  background-color: #0d6efd !important;
  border-color: #0d6efd !important;
  background-image: var(--bs-form-check-bg-image) !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}

.form-switch .form-check-input:checked,
body.ga-light-theme .form-switch .form-check-input:checked,
.studio-config-form .form-switch .form-check-input:checked,
body.ga-light-theme .studio-config-form .form-switch .form-check-input:checked {
  background-color: #0d6efd !important;
  border-color: #0d6efd !important;
  background-position: right center;
}

.form-check-input:focus,
body.ga-light-theme .form-check-input:focus {
  border-color: rgba(13, 110, 253, .72) !important;
  box-shadow: 0 0 0 .22rem rgba(13, 110, 253, .22) !important;
}

/* PRODUCTION TRUCK AND CAMERA MAP */
.production-map-card {
  overflow: hidden;
}

.production-map-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  align-items: center;
}

.production-map-legend {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  background: rgba(248, 250, 252, .95);
  border: 1px solid rgba(148, 163, 184, .35);
  border-radius: 999px;
  padding: .35rem .65rem;
  font-size: .85rem;
  font-weight: 700;
}

.production-map-legend::before {
  content: "";
  width: .75rem;
  height: .75rem;
  border-radius: 50%;
  display: inline-block;
}

.production-map-legend.truck::before { background: #f97316; }
.production-map-legend.camera::before { background: #0ea5e9; }

.production-map-canvas {
  position: relative;
  min-height: 540px;
  border: 1px solid rgba(148, 163, 184, .35);
  border-radius: 24px;
  background:
    radial-gradient(circle at 20% 20%, rgba(14, 165, 233, .18), transparent 28%),
    radial-gradient(circle at 78% 70%, rgba(34, 197, 94, .16), transparent 32%),
    linear-gradient(135deg, rgba(15, 23, 42, .92), rgba(30, 41, 59, .88));
  overflow: hidden;
}

.production-map-grid {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: .75;
}

.production-map-marker {
  position: absolute;
  transform: translate(-50%, -50%);
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  border-radius: 999px;
  padding: .35rem .55rem;
  text-decoration: none;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .32);
  border: 1px solid rgba(255, 255, 255, .45);
  max-width: 220px;
  z-index: 2;
}

.production-map-marker.truck {
  background: rgba(251, 146, 60, .94);
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-weight: 800;
}

.production-map-marker.camera {
  background: rgba(14, 165, 233, .92);
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-weight: 700;
}

.production-map-marker:hover {
  transform: translate(-50%, -50%) scale(1.04);
  z-index: 4;
}

.production-map-marker .marker-dot {
  flex: 0 0 auto;
}

.production-map-marker .marker-label {
  display: inline-block;
  max-width: 150px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ga-map-list .list-group-item {
  display: flex;
  flex-direction: column;
  gap: .2rem;
  background: rgba(248, 250, 252, .96) !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: rgba(148, 163, 184, .25) !important;
}

.ga-map-list .list-group-item span,
.ga-map-list .list-group-item small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

.production-map-empty {
  background: rgba(248, 250, 252, .96);
  border: 1px dashed rgba(148, 163, 184, .45);
  border-radius: 20px;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}


.ga-map-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px;
  border: 2px solid rgba(255,255,255,.9);
  box-shadow: 0 10px 28px rgba(15,23,42,.35);
  font-size: 18px;
}
.ga-map-icon-truck { background: #f59e0b; }
.ga-map-icon-camera { background: #2563eb; }


/* Baseball overlay system */
.overlay-shell{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:42px}.overlay-board{width:min(1600px,92vw);border-radius:34px;padding:28px 32px;background:linear-gradient(180deg,rgba(4,12,28,.90),rgba(6,20,43,.84));border:1px solid rgba(255,255,255,.15);box-shadow:0 30px 90px rgba(0,0,0,.42);backdrop-filter:blur(18px)}.overlay-kicker{display:inline-flex;align-items:center;padding:.4rem .8rem;border-radius:999px;background:rgba(25,211,255,.14);color:#89eeff;font-size:.78rem;font-weight:1000;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem}.overlay-title-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.2rem}.overlay-title-row h1,.overlay-board h1{margin:0;font-size:clamp(2rem,4vw,3.6rem);font-weight:1000;letter-spacing:-.05em;color:#fff}.overlay-pill{display:inline-flex;align-items:center;padding:.55rem .9rem;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);font-weight:900;color:#dff7ff}.overlay-two-column,.overlay-break-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.15rem}.overlay-team-card,.overlay-info-card,.overlay-player-panel{border-radius:26px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);padding:1.1rem 1.15rem;color:#fff}.overlay-team-heading{display:flex;align-items:center;gap:.85rem;margin-bottom:1rem}.overlay-team-heading strong{display:block;font-size:1.1rem;color:#fff}.overlay-team-heading small{display:block;color:#9fc0db}.overlay-team-badge{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,#ffcf3f,#19d3ff);display:grid;place-items:center;font-size:1.05rem;font-weight:1000;color:#08111f}.overlay-lineup-list{list-style:none;padding:0;margin:0;display:grid;gap:.72rem}.overlay-lineup-list li{display:grid;grid-template-columns:44px 1fr;gap:.75rem;align-items:start}.overlay-lineup-order{width:44px;height:44px;border-radius:14px;background:rgba(25,211,255,.15);border:1px solid rgba(25,211,255,.22);display:grid;place-items:center;font-weight:1000;color:#fff}.overlay-lineup-player strong{display:block;color:#fff;font-size:1rem}.overlay-lineup-player small{color:#b8d3e8}.overlay-versus-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:1.1rem;align-items:center}.overlay-versus-mark{font-size:clamp(1.6rem,4vw,3.4rem);font-weight:1000;color:#ffcf3f;letter-spacing:.14em}.overlay-player-panel h2{margin:.1rem 0 .3rem;font-size:clamp(1.8rem,4vw,3rem);font-weight:1000;color:#fff}.overlay-player-panel p{margin:0;color:#b8d3e8;font-size:1rem}.overlay-score-strip{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0 1.2rem}.overlay-score-strip--compact{grid-template-columns:1fr 1fr 1fr}.overlay-score-strip div{border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:1rem 1.1rem}.overlay-score-strip small{display:block;color:#99b4c9;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.overlay-score-strip strong{display:block;color:#fff;font-size:2.3rem;font-weight:1000;line-height:1.05}.overlay-linescore-table-wrap{overflow:auto}.overlay-linescore-table{width:100%;border-collapse:separate;border-spacing:0 .55rem;color:#fff}.overlay-linescore-table th{font-size:.82rem;color:#9fc0db;text-transform:uppercase;letter-spacing:.12em;font-weight:900;padding:.3rem .55rem;text-align:center}.overlay-linescore-table th:first-child,.overlay-linescore-table td:first-child{text-align:left}.overlay-linescore-table td{background:rgba(255,255,255,.05);border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);padding:.75rem .55rem;text-align:center}.overlay-linescore-table td:first-child{border-left:1px solid rgba(255,255,255,.08);border-radius:16px 0 0 16px;padding-left:1rem}.overlay-linescore-table td:last-child{border-right:1px solid rgba(255,255,255,.08);border-radius:0 16px 16px 0}.overlay-emphasis{font-weight:1000;color:#ffcf3f}.overlay-alert-title{font-size:clamp(2.4rem,5vw,4.4rem)!important;margin-bottom:.8rem}.overlay-alert-detail{font-size:1.18rem;color:#d9eefc;max-width:66ch;margin:.4rem 0 1rem}.overlay-footer-meta{margin-top:1rem;color:#b7d0e4;font-size:.92rem}.ga-lower-third-card{position:absolute;left:40px;right:auto;bottom:40px;display:inline-block;min-width:min(980px,88vw);padding:20px 26px;border-radius:24px;background:linear-gradient(90deg,rgba(5,13,33,.92),rgba(15,38,71,.84));border:1px solid rgba(255,255,255,.13);box-shadow:0 24px 60px rgba(0,0,0,.34)}.ga-lower-third-card .label{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:#89eeff;font-weight:1000}.ga-lower-third-card .name{font-size:2rem;font-weight:1000;color:#fff;line-height:1.05;margin-top:.2rem}.ga-lower-third-card .subline{font-size:1rem;color:#c9e1f3;margin-top:.35rem}.linescore-overlay-card,.lineup-overlay-card,.pitcher-overlay-card,.inning-overlay-card,.postgame-overlay-card,.matchup-overlay-card,.alert-overlay-card{max-width:1600px}body.ga-overlay-body .overlay-board{background:linear-gradient(180deg,rgba(4,12,28,.82),rgba(6,20,43,.76))}@media (max-width: 980px){.overlay-shell{padding:18px}.overlay-board{padding:20px}.overlay-two-column,.overlay-break-grid,.overlay-versus-grid{grid-template-columns:1fr}.overlay-score-strip,.overlay-score-strip--compact{grid-template-columns:1fr}.ga-lower-third-card{left:12px;right:12px;bottom:12px;min-width:0}.ga-lower-third-card .name{font-size:1.4rem}}


/* Admin overlay preview wall */
.admin-overlay-preview-card{border-radius:24px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);padding:1rem;box-shadow:0 22px 50px rgba(0,0,0,.22)}.admin-overlay-preview-frame-wrap{position:relative;width:100%;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#050b16;border:1px solid rgba(255,255,255,.12)}.admin-overlay-preview-frame{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent}.admin-overlay-preview-card code{color:#9eefff;word-break:break-all}

/* Game Action 360 overlay branding + configurable color schemes */
.ga360-angular-overlay-v3 {
  --ga-overlay-primary: #312e81;
  --ga-overlay-secondary: #4c1d95;
  --ga-overlay-accent: #f97316;
  --ga-overlay-surface: #0b1020;
  --ga-overlay-text: #f8fbff;
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2,
.ga360-angular-overlay-v3 .overlay-board,
.ga360-angular-overlay-v3 .ga-lower-third-card {
  color: var(--ga-overlay-text);
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 {
  background: var(--ga-overlay-surface);
  border-color: rgba(255,255,255,.18);
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-side,
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-status-panel,
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-count-panel,
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-bases-panel,
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-outs-panel {
  background: var(--ga-overlay-surface);
  color: var(--ga-overlay-text);
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-logo,
.ga360-angular-overlay-v3 .overlay-team-badge,
.ga360-angular-overlay-v3 .ga360-overlay-brand__badge {
  background: linear-gradient(135deg, var(--ga-overlay-primary), var(--ga-overlay-secondary));
  color: #08111f;
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-score {
  background: linear-gradient(180deg, var(--ga-overlay-accent), var(--ga-overlay-primary));
  color: #08111f;
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-inning,
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-final-label,
.ga360-angular-overlay-v3 .overlay-title-row h1,
.ga360-angular-overlay-v3 .overlay-board h1,
.ga360-angular-overlay-v3 .overlay-team-heading strong,
.ga360-angular-overlay-v3 .overlay-player-panel h2,
.ga360-angular-overlay-v3 .overlay-lineup-player strong,
.ga360-angular-overlay-v3 .overlay-score-strip strong,
.ga360-angular-overlay-v3 .ga-lower-third-card .name {
  color: var(--ga-overlay-text);
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-live,
.ga360-angular-overlay-v3 .overlay-kicker,
.ga360-angular-overlay-v3 .ga-lower-third-card .label {
  color: var(--ga-overlay-primary);
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-panel-label,
.ga360-angular-overlay-v3 .overlay-team-heading small,
.ga360-angular-overlay-v3 .overlay-lineup-player small,
.ga360-angular-overlay-v3 .overlay-player-panel p,
.ga360-angular-overlay-v3 .overlay-score-strip small,
.ga360-angular-overlay-v3 .overlay-footer-meta,
.ga360-angular-overlay-v3 .ga-lower-third-card .subline,
.ga360-angular-overlay-v3 .overlay-alert-detail {
  color: rgba(248,251,255,.84);
}
.ga360-angular-overlay-v3 .overlay-emphasis,
.ga360-angular-overlay-v3 .overlay-versus-mark {
  color: var(--ga-overlay-accent);
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-bases-v2 .base.on,
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-out-dots i.is-on {
  background-color: var(--ga-overlay-accent);
  border-color: rgba(255,255,255,.22);
  box-shadow: 0 0 0 2px rgba(255,255,255,.12);
}
.ga360-angular-overlay-v3 .sponsor-strip--v2 {
  color: var(--ga-overlay-accent);
  border-color: rgba(255,255,255,.18);
}
.ga360-angular-overlay-v3 .overlay-board {
  background: linear-gradient(180deg, rgba(4,12,28,.80), var(--ga-overlay-surface));
  border-color: rgba(255,255,255,.14);
}
.ga360-angular-overlay-v3 .overlay-kicker,
.ga360-angular-overlay-v3 .overlay-lineup-order {
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.15);
}
.ga360-angular-overlay-v3 .overlay-pill,
.ga360-angular-overlay-v3 .ga360-overlay-brand {
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.16);
  color: var(--ga-overlay-text);
}
.ga360-angular-overlay-v3 .overlay-team-card,
.ga360-angular-overlay-v3 .overlay-info-card,
.ga360-angular-overlay-v3 .overlay-player-panel,
.ga360-angular-overlay-v3 .overlay-score-strip div,
.ga360-angular-overlay-v3 .overlay-linescore-table td,
.ga360-angular-overlay-v3 .ga-lower-third-card {
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.12);
}
.ga360-angular-overlay-v3 .overlay-linescore-table th { color: rgba(248,251,255,.76); }
.ga360-angular-overlay-v3 .ga-lower-third-card {
  background: linear-gradient(90deg, rgba(5,13,33,.92), var(--ga-overlay-surface));
}
.ga360-overlay-brand-row {
  display: flex;
  justify-content: flex-end;
  margin-top: .9rem;
}
.ga360-overlay-brand {
  display: inline-flex;
  align-items: center;
  gap: .7rem;
  border-radius: 999px;
  padding: .48rem .9rem;
  box-shadow: 0 10px 24px rgba(0,0,0,.22);
}
.ga360-overlay-brand--compact {
  padding: .38rem .75rem;
  font-size: .82rem;
}
.ga360-overlay-brand__badge {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  overflow: hidden;
  flex: 0 0 38px;
}
.ga360-overlay-brand--compact .ga360-overlay-brand__badge {
  width: 32px;
  height: 32px;
  flex-basis: 32px;
}
.ga360-overlay-brand__logo-text {
  font-size: .78rem;
  line-height: 1;
  font-weight: 1000;
  letter-spacing: -.03em;
}
.ga360-overlay-brand__logo-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.ga360-overlay-brand__label {
  font-weight: 900;
  letter-spacing: .02em;
}

/* v0.1.146 System Studio Admin recreation: light, high-contrast, no white-on-light text */
body.ga-light-theme .system-studio-admin,
.system-studio-admin {
  color: #0f172a !important;
}
body.ga-light-theme .system-studio-admin *,
.system-studio-admin * {
  -webkit-text-fill-color: initial;
}
.system-studio-admin h1,
.system-studio-admin h2,
.system-studio-admin h3,
.system-studio-admin h4,
.system-studio-admin h5,
.system-studio-admin h6,
.system-studio-admin strong,
body.ga-light-theme .system-studio-admin h1,
body.ga-light-theme .system-studio-admin h2,
body.ga-light-theme .system-studio-admin h3,
body.ga-light-theme .system-studio-admin h4,
body.ga-light-theme .system-studio-admin h5,
body.ga-light-theme .system-studio-admin h6,
body.ga-light-theme .system-studio-admin strong {
  color: #0f172a !important;
}
.system-studio-admin p,
.system-studio-admin small,
.system-studio-admin span,
.system-studio-admin td,
.system-studio-admin th,
.system-studio-admin label,
.system-studio-admin .form-text,
body.ga-light-theme .system-studio-admin p,
body.ga-light-theme .system-studio-admin small,
body.ga-light-theme .system-studio-admin span,
body.ga-light-theme .system-studio-admin td,
body.ga-light-theme .system-studio-admin th,
body.ga-light-theme .system-studio-admin label,
body.ga-light-theme .system-studio-admin .form-text {
  color: #334155 !important;
}
.system-studio-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 1.25rem;
  align-items: stretch;
}
.system-studio-hero__copy,
.system-studio-hero__panel,
.system-studio-panel,
.system-studio-stat-card {
  background: #ffffff;
  border: 1px solid #dbe5f0;
  box-shadow: 0 18px 50px rgba(15, 23, 42, .08);
}
.system-studio-hero__copy {
  border-radius: 32px;
  padding: clamp(1.5rem, 3vw, 2.5rem);
  background:
    radial-gradient(circle at 4% 6%, rgba(25, 211, 255, .16), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}
.system-studio-hero__copy h1 {
  margin: .35rem 0 .65rem;
  font-size: clamp(2.25rem, 5vw, 4.8rem);
  line-height: .92;
  font-weight: 1000;
  letter-spacing: -.075em;
}
.system-studio-hero__copy p {
  max-width: 920px;
  font-size: 1.08rem;
  line-height: 1.55;
  margin: 0;
}
.system-studio-hero__panel {
  border-radius: 30px;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: linear-gradient(180deg, #eef8ff, #ffffff);
}
.system-studio-hero__panel span,
.system-studio-eyebrow {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  border-radius: 999px;
  padding: .35rem .7rem;
  background: #e0f2fe;
  color: #075985 !important;
  font-size: .72rem;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .12em;
}
.system-studio-hero__panel strong {
  display: block;
  margin: .85rem 0 .35rem;
  font-size: 2rem;
  line-height: 1.05;
  font-weight: 1000;
}
.system-studio-hero__panel small {
  font-size: .92rem;
  line-height: 1.45;
}
.system-studio-actions {
  display: flex;
  gap: .65rem;
  flex-wrap: wrap;
  margin-top: 1.25rem;
}
.system-studio-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}
.system-studio-stat-card {
  border-radius: 24px;
  padding: 1.15rem;
  min-height: 188px;
  display: flex;
  flex-direction: column;
}
.system-studio-stat-card > span {
  font-size: .78rem;
  font-weight: 1000;
  color: #0369a1 !important;
  text-transform: uppercase;
  letter-spacing: .1em;
}
.system-studio-stat-card > strong {
  display: block;
  margin: .4rem 0 .2rem;
  font-size: 2.5rem;
  line-height: 1;
  font-weight: 1000;
  font-variant-numeric: tabular-nums;
}
.system-studio-stat-card p {
  margin: 0 0 1rem;
  flex: 1;
  font-size: .92rem;
}
.system-studio-panel {
  border-radius: 28px;
  padding: clamp(1rem, 2vw, 1.5rem);
}
.system-studio-panel--warning {
  border-color: #facc15;
  background: #fffdf2;
}
.system-studio-section-head {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
  margin-bottom: 1rem;
}
.system-studio-section-head h2,
.system-studio-panel > h2 {
  margin: .45rem 0 .25rem;
  font-size: clamp(1.35rem, 2vw, 1.9rem);
  font-weight: 1000;
  letter-spacing: -.04em;
}
.system-studio-section-head p {
  margin: 0;
  max-width: 820px;
}
.system-studio-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: .35rem .68rem;
  border: 1px solid #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8 !important;
  font-size: .78rem;
  font-weight: 900;
  white-space: nowrap;
}
.system-studio-badge--success {
  background: #dcfce7;
  border-color: #86efac;
  color: #166534 !important;
}
.system-studio-badge--warning {
  background: #fef3c7;
  border-color: #facc15;
  color: #92400e !important;
}
.system-studio-badge--muted {
  background: #f1f5f9;
  border-color: #cbd5e1;
  color: #475569 !important;
}
.system-studio-risk-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
}
.system-studio-risk {
  border-radius: 16px;
  border: 1px solid #fde68a;
  background: #fffbeb;
  color: #78350f !important;
  padding: .8rem .95rem;
  font-weight: 800;
}
.system-studio-settings-group,
.system-studio-subpanel {
  border: 1px solid #dbe5f0;
  background: #f8fbff;
  border-radius: 22px;
  padding: 1rem;
  margin-bottom: 1rem;
}
.system-studio-settings-group h3,
.system-studio-subpanel h3 {
  margin: 0 0 .9rem;
  font-size: 1.05rem;
  font-weight: 1000;
}
.system-studio-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .9rem;
}
.system-studio-field-card {
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #ffffff;
  padding: .95rem;
}
.system-studio-label {
  display: block;
  margin-bottom: .45rem;
  font-weight: 900;
  color: #0f172a !important;
}
.system-studio-field-card small {
  display: block;
  margin-top: .4rem;
  line-height: 1.38;
}
.system-studio-form .form-control,
.system-studio-form .form-select,
.system-studio-admin .form-control,
.system-studio-admin .form-select {
  background-color: #ffffff !important;
  border-color: #cbd5e1 !important;
  color: #0f172a !important;
  box-shadow: none;
}
.system-studio-form .form-control:focus,
.system-studio-form .form-select:focus,
.system-studio-admin .form-control:focus,
.system-studio-admin .form-select:focus {
  border-color: #0ea5e9 !important;
  box-shadow: 0 0 0 .2rem rgba(14, 165, 233, .14);
}
.system-studio-switch {
  display: flex;
  gap: .7rem;
  align-items: center;
}
.system-studio-switch .form-check-label {
  font-weight: 800;
}
.system-studio-submit-row {
  display: flex;
  justify-content: flex-end;
}
.system-studio-table-wrap {
  width: 100%;
  overflow-x: auto;
  border: 1px solid #dbe5f0;
  border-radius: 20px;
  background: #ffffff;
}
.system-studio-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin: 0;
  color: #0f172a;
}
.system-studio-table thead th {
  background: #f1f7ff;
  color: #334155 !important;
  padding: .85rem .95rem;
  font-size: .76rem;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .07em;
  border-bottom: 1px solid #dbe5f0;
  white-space: nowrap;
}
.system-studio-table tbody td {
  padding: .9rem .95rem;
  border-bottom: 1px solid #e2e8f0;
  vertical-align: middle;
  background: #ffffff;
}
.system-studio-table tbody tr:last-child td {
  border-bottom: 0;
}
.system-studio-table code {
  color: #075985 !important;
  background: #e0f2fe;
  border-radius: 8px;
  padding: .15rem .35rem;
  white-space: nowrap;
}
.system-studio-edit-row td {
  background: #f8fbff !important;
}
.system-studio-row-actions {
  display: flex;
  gap: .4rem;
  justify-content: flex-end;
  flex-wrap: wrap;
}
.system-studio-inline-form,
.system-studio-add-credential {
  display: grid;
  grid-template-columns: repeat(6, minmax(130px, 1fr));
  gap: .75rem;
  align-items: end;
}
.system-studio-add-credential {
  grid-template-columns: repeat(7, minmax(125px, 1fr));
}
.system-studio-inline-check {
  min-height: 38px;
  display: flex;
  align-items: center;
  gap: .5rem;
  margin-bottom: 0;
}
.system-studio-empty {
  color: #64748b !important;
  font-weight: 700;
}
.system-studio-split-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(360px, .85fr);
  gap: 1rem;
  align-items: start;
}
.system-studio-split-grid--even {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.system-studio-plan-stack {
  display: grid;
  gap: .8rem;
}
.system-studio-plan-row,
.system-studio-resource-row {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: .85rem 0;
  border-top: 1px solid #e2e8f0;
}
.system-studio-plan-row:first-of-type,
.system-studio-resource-row:first-of-type {
  border-top: 0;
  padding-top: 0;
}
.system-studio-plan-row small,
.system-studio-resource-row small {
  display: block;
  margin-top: .2rem;
}
.system-studio-mini-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
  margin-top: 1rem;
}
.system-studio-mini-card {
  border: 1px solid #dbe5f0;
  background: #f8fbff;
  border-radius: 20px;
  padding: 1rem;
}
.system-studio-mini-card strong {
  display: block;
  font-size: 2.2rem;
  line-height: 1;
  font-weight: 1000;
}
.system-studio-mini-card span {
  display: block;
  margin: .35rem 0 .75rem;
  font-weight: 800;
}
.system-studio-link {
  color: #0369a1 !important;
  font-weight: 900;
  text-decoration: none;
}
.system-studio-link:hover {
  color: #075985 !important;
  text-decoration: underline;
}
body.ga-light-theme .system-studio-admin .btn-ga,
.system-studio-admin .btn-ga {
  color: #06111f !important;
  -webkit-text-fill-color: #06111f !important;
}
body.ga-light-theme .system-studio-admin .btn-outline-ga,
.system-studio-admin .btn-outline-ga {
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
  border-color: #93c5fd !important;
  background: #ffffff !important;
}
body.ga-light-theme .system-studio-admin .btn-outline-ga:hover,
.system-studio-admin .btn-outline-ga:hover {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: #0ea5e9 !important;
  border-color: #0ea5e9 !important;
}
@media (max-width: 1200px) {
  .system-studio-hero,
  .system-studio-split-grid,
  .system-studio-split-grid--even {
    grid-template-columns: 1fr;
  }
  .system-studio-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .system-studio-inline-form,
  .system-studio-add-credential {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .system-studio-stat-grid,
  .system-studio-settings-grid,
  .system-studio-risk-grid,
  .system-studio-mini-grid,
  .system-studio-inline-form,
  .system-studio-add-credential {
    grid-template-columns: 1fr;
  }
  .system-studio-section-head {
    flex-direction: column;
  }
}

/* v0.1.147 System Studio Admin layout visibility hardening */
body.ga-light-theme .system-studio-page-shell,
.system-studio-page-shell {
  display: grid !important;
  grid-template-columns: 280px minmax(0, 1fr) !important;
  gap: 1.5rem !important;
  align-items: start !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 60vh !important;
}
.system-studio-page-shell > .ga-sidebar {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
}
.system-studio-page-shell > .system-studio-content,
.system-studio-content.system-studio-admin {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow: visible !important;
  background: transparent !important;
  position: relative !important;
  z-index: 1 !important;
}
.system-studio-page-shell .ga-sidebar,
body.ga-light-theme .system-studio-page-shell .ga-sidebar {
  background: #ffffff !important;
  border: 1px solid #dbe5f0 !important;
  box-shadow: 0 18px 50px rgba(15,23,42,.07) !important;
}
.system-studio-page-shell .ga-sidebar a,
body.ga-light-theme .system-studio-page-shell .ga-sidebar a {
  color: #1e293b !important;
  -webkit-text-fill-color: #1e293b !important;
}
.system-studio-page-shell .ga-sidebar a:hover,
body.ga-light-theme .system-studio-page-shell .ga-sidebar a:hover {
  background: #e0f2fe !important;
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
}
.system-studio-page-shell .studio-sidebar-label-pro,
body.ga-light-theme .system-studio-page-shell .studio-sidebar-label-pro {
  color: #0369a1 !important;
  -webkit-text-fill-color: #0369a1 !important;
}
.system-studio-page-shell .studio-sidebar-brand-pro strong,
body.ga-light-theme .system-studio-page-shell .studio-sidebar-brand-pro strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
.system-studio-page-shell .studio-sidebar-brand-pro span,
.system-studio-page-shell .studio-sidebar-hint,
body.ga-light-theme .system-studio-page-shell .studio-sidebar-brand-pro span,
body.ga-light-theme .system-studio-page-shell .studio-sidebar-hint {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
}
@media (max-width: 991px) {
  body.ga-light-theme .system-studio-page-shell,
  .system-studio-page-shell {
    grid-template-columns: 1fr !important;
  }
  .system-studio-page-shell > .ga-sidebar,
  .system-studio-page-shell > .system-studio-content,
  .system-studio-content.system-studio-admin {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}

/* Geographic discovery */
.ga-location-result{display:flex;justify-content:space-between;gap:1rem;align-items:center;text-decoration:none;color:#142033;background:#fff;border:1px solid rgba(20,32,51,.1);border-radius:18px;padding:.85rem 1rem;box-shadow:0 8px 20px rgba(15,23,42,.05)}
.ga-location-result:hover{border-color:#0ea5e9;box-shadow:0 12px 28px rgba(14,165,233,.14);transform:translateY(-1px)}
.ga-location-result strong{display:block;color:#0f172a}.ga-location-result small{display:block;color:#64748b}.fw-black{font-weight:900}

/* Geographic location directory */
.geo-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:1.25rem;align-items:stretch;border-radius:32px;padding:1.4rem;background:linear-gradient(135deg,#f8fbff,#eef6ff);border:1px solid #dbeafe;box-shadow:0 24px 70px rgba(15,23,42,.08)}
.geo-hero__copy{border-radius:26px;padding:1.4rem;background:#fff;border:1px solid #e5eefb}.geo-hero__copy h1{font-weight:1000;letter-spacing:-.05em;color:#0f172a;font-size:clamp(2.25rem,5vw,4.8rem);margin:.2rem 0 .8rem}.geo-hero__copy p{font-size:1.06rem;color:#475569;max-width:74ch}.geo-search-panel,.geo-scoreboard-card{border-radius:26px;background:#fff;border:1px solid #e5eefb;padding:1.15rem;box-shadow:0 16px 45px rgba(15,23,42,.06)}.geo-scoreboard-card{display:grid;align-content:center;text-align:center}.geo-scoreboard-card span,.geo-scoreboard-card small{color:#64748b;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:900}.geo-scoreboard-card strong{font-size:4rem;line-height:1;color:#0f172a}.geo-location-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.geo-location-card{display:grid;gap:1rem;text-decoration:none;border-radius:24px;background:#fff;border:1px solid #e2e8f0;padding:1rem;box-shadow:0 14px 38px rgba(15,23,42,.06);color:#0f172a}.geo-location-card:hover{transform:translateY(-2px);box-shadow:0 20px 54px rgba(15,23,42,.10)}.geo-location-card__top{display:flex;gap:.85rem;align-items:center}.geo-location-card__top strong{display:block;font-size:1.15rem;color:#0f172a}.geo-location-card__top small{color:#64748b}.geo-location-pin{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#19d3ff,#0b5fb7);color:#fff;font-weight:1000}.geo-count-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.geo-count-grid span{border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0;padding:.65rem;text-align:center}.geo-count-grid strong{display:block;color:#0f172a}.geo-count-grid small{display:block;color:#64748b;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.geo-chip-row{display:flex;gap:.35rem;flex-wrap:wrap}.geo-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.geo-list{display:grid;gap:.7rem}.geo-list--compact{max-height:640px;overflow:auto;padding-right:.25rem}.geo-list-row{display:block;text-decoration:none;border:1px solid #e2e8f0;background:#fff;border-radius:18px;padding:.8rem .9rem;color:#0f172a}.geo-list-row strong{display:block;color:#0f172a}.geo-list-row span{display:block;color:#64748b;font-size:.9rem}.geo-list-row:hover{border-color:#93c5fd;box-shadow:0 10px 24px rgba(15,23,42,.08)}
@media(max-width:1100px){.geo-hero,.geo-detail-grid{grid-template-columns:1fr}.geo-scoreboard-card{text-align:left}.geo-scoreboard-card strong{font-size:3rem}}

/* Geographic context chips embedded in core sports pages */
.geo-context-chip {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  border-radius: 999px;
  border: 1px solid rgba(14, 165, 233, .28);
  background: rgba(14, 165, 233, .10);
  color: #dff7ff;
  font-weight: 900;
  text-decoration: none;
  padding: .38rem .7rem;
  line-height: 1.1;
}
.geo-context-chip:hover,
.geo-context-chip:focus-visible {
  color: #fff;
  border-color: rgba(25, 211, 255, .55);
  background: rgba(14, 165, 233, .18);
}
.geo-context-chip--compact {
  font-size: .82rem;
  padding: .28rem .58rem;
}
.geo-context-chip__icon { color: #7dd3fc; }
.geo-context-chip__text { max-width: 18rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.public-index-meta .geo-context-chip { color: #0f172a; background: #e0f2fe; border-color: #bae6fd; }
.gamecenter-stat-card .geo-context-chip { max-width: 100%; color: #0f172a; background: #e0f2fe; border-color: #bae6fd; }

/* Branded scoped team/league/tournament microsites */
.branded-hub-shell{--brand-primary:#0b5cff;--brand-secondary:#ffcf3f;--brand-surface:#07111f;--brand-text:#f8fbff;background:#edf2f7;min-height:100vh;padding:1.25rem;color:#122033}.branded-hub-hero{border-radius:34px;min-height:360px;background-size:cover;background-position:center;display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;padding:2rem;border:1px solid rgba(10,24,46,.12);box-shadow:0 28px 80px rgba(15,23,42,.22);color:var(--brand-text)}.branded-hub-identity{display:flex;gap:1.2rem;align-items:center}.branded-hub-logo{width:118px;height:118px;border-radius:28px;object-fit:cover;background:#fff;border:3px solid rgba(255,255,255,.6);box-shadow:0 18px 44px rgba(0,0,0,.25)}.branded-hub-hero h1{font-size:clamp(2.8rem,6vw,6.2rem);font-weight:1000;letter-spacing:-.075em;line-height:.9;margin:0;color:#fff}.branded-hub-hero p{max-width:850px;color:rgba(248,251,255,.86);font-size:1.1rem;margin:.8rem 0 0}.branded-chip-row{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:1rem}.branded-chip-row span,.branded-section-head span{display:inline-flex;align-items:center;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);padding:.45rem .75rem;color:#fff;font-weight:800}.branded-hub-actions{display:flex;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}.branded-hub-nav{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0;padding:.45rem;border-radius:999px;background:#fff;border:1px solid #dbe5f0;box-shadow:0 16px 34px rgba(15,23,42,.08)}.branded-hub-nav a{padding:.65rem 1rem;border-radius:999px;color:#102033;font-weight:900}.branded-hub-nav a:hover{background:color-mix(in srgb,var(--brand-primary) 14%,white);color:var(--brand-primary)}.branded-hub-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:1rem}.branded-card{background:#fff;border:1px solid #d9e4ef;border-radius:26px;padding:1.25rem;box-shadow:0 16px 38px rgba(15,23,42,.08);margin-bottom:1rem;color:#142033}.branded-card h2{font-weight:1000;letter-spacing:-.035em;color:#101827}.branded-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1rem}.branded-section-head span{background:color-mix(in srgb,var(--brand-primary) 10%,white);color:var(--brand-primary);border-color:color-mix(in srgb,var(--brand-primary) 20%,white)}.branded-list{display:grid;gap:.65rem}.branded-game-row,.branded-link-row,.branded-player-card{display:flex;justify-content:space-between;gap:1rem;border:1px solid #dbe6f2;background:#f8fafc;border-radius:18px;padding:.9rem;color:#102033;transition:.15s ease}.branded-game-row:hover,.branded-link-row:hover,.branded-player-card:hover{transform:translateY(-2px);border-color:var(--brand-primary);box-shadow:0 12px 28px rgba(15,23,42,.08)}.branded-game-row strong,.branded-link-row strong,.branded-player-card strong{display:block;color:#0f172a}.branded-game-row small,.branded-link-row small,.branded-player-card small{display:block;color:#64748b}.branded-game-row b{color:var(--brand-primary);font-size:1.15rem}.branded-roster-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.branded-player-card{display:block}.branded-table{--bs-table-bg:transparent;color:#102033}.branded-table th{color:#475569;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em}.branded-table td,.branded-table th{border-color:#e2e8f0}.branded-meta-stack{display:grid;gap:.6rem}.branded-meta-stack span{display:flex;justify-content:space-between;gap:1rem;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0;padding:.7rem;color:#475569}.branded-meta-stack strong{color:#0f172a;text-align:right}@media(max-width:1100px){.branded-hub-hero{align-items:flex-start;flex-direction:column}.branded-hub-grid{grid-template-columns:1fr}.branded-hub-identity{align-items:flex-start}.branded-hub-logo{width:84px;height:84px}.branded-hub-actions{justify-content:flex-start}}

/* v0.1.158 branded hub top navigation and real checkout cards */
.branded-site-topnav{position:sticky;top:.75rem;z-index:40;display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:0 0 1rem;padding:.6rem .75rem;border-radius:22px;background:rgba(255,255,255,.94);border:1px solid #dbe5f0;box-shadow:0 18px 44px rgba(15,23,42,.14);backdrop-filter:blur(12px)}
.branded-site-lockup{display:flex;align-items:center;gap:.7rem;color:#0f172a;font-weight:1000;min-width:0}.branded-site-lockup:hover{color:var(--brand-primary)}
.branded-site-lockup img,.branded-site-lockup span{width:42px;height:42px;border-radius:14px;object-fit:cover;display:inline-grid;place-items:center;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));color:#fff;font-weight:1000;box-shadow:0 12px 30px rgba(15,23,42,.15)}
.branded-site-lockup strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:340px}.branded-site-topnav-links{display:flex;align-items:center;justify-content:flex-end;gap:.3rem;flex-wrap:wrap}
.branded-site-topnav-links a{padding:.58rem .78rem;border-radius:999px;color:#334155;font-weight:900;font-size:.92rem}.branded-site-topnav-links a:hover{background:color-mix(in srgb,var(--brand-primary) 12%,white);color:var(--brand-primary)}
.branded-access-card .ga-muted{color:#64748b!important}.branded-offering-card{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:1rem;align-items:center;border:1px solid #dbe6f2;background:#f8fafc;border-radius:20px;padding:1rem;margin:.75rem 0;color:#102033}.branded-offering-card strong{display:block;font-size:1.02rem;color:#0f172a}.branded-offering-card small{display:block;color:#64748b;font-weight:800;margin:.15rem 0}.branded-offering-card p{margin:.45rem 0;color:#475569}.branded-offering-card em{display:block;color:#475569;font-size:.82rem;font-style:normal}.branded-offering-action{display:grid;gap:.6rem;text-align:right}.branded-offering-action b{font-size:1.35rem;color:var(--brand-primary)}
@media(max-width:860px){.branded-site-topnav{position:relative;top:auto;align-items:flex-start;flex-direction:column}.branded-site-lockup strong{max-width:70vw}.branded-site-topnav-links{justify-content:flex-start}.branded-offering-card{grid-template-columns:1fr}.branded-offering-action{text-align:left}}

/* GAMECENTER TOTALS/LEADERS DRILLDOWN + RICH PBP FIX */
.gamecenter-box-score .box-score-summary-panel,
.gamecenter-box-score-preview,
.gamecenter-pbp-card {
  background: rgba(15,23,42,.92) !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  border: 1px solid rgba(148,163,184,.24) !important;
}
.gamecenter-box-score .box-score-summary-panel .ga-muted,
.gamecenter-pbp-card .ga-muted,
.gamecenter-box-score-preview .ga-muted {
  color: #cbd5e1 !important;
  -webkit-text-fill-color: #cbd5e1 !important;
}
.gamecenter-box-score .ga-table th,
.gamecenter-box-score .ga-table td,
.gamecenter-pbp-card .ga-table th,
.gamecenter-pbp-card .ga-table td {
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
}
.inning-filter-btn {
  border: 1px solid rgba(56,189,248,.36);
  background: rgba(15,23,42,.78);
  color: #e0f2fe !important;
  -webkit-text-fill-color: #e0f2fe !important;
  border-radius: 999px;
  padding: .55rem .85rem;
  font-weight: 900;
}
.inning-filter-btn:hover,
.inning-filter-btn.active {
  background: #38bdf8;
  color: #06243a !important;
  -webkit-text-fill-color: #06243a !important;
  border-color: #7dd3fc;
}
.inning-pbp-heading {
  background: rgba(56,189,248,.12);
  border: 1px solid rgba(56,189,248,.24);
  border-radius: 16px;
  padding: .75rem 1rem;
  color: #e0f2fe !important;
  -webkit-text-fill-color: #e0f2fe !important;
}
.rich-pbp-row strong,
.rich-pbp-row div,
.rich-pbp-row .small {
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
}
body.ga-light-theme .gamecenter-box-score .box-score-summary-panel,
body.ga-light-theme .gamecenter-box-score-preview,
body.ga-light-theme .gamecenter-pbp-card {
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: rgba(15,23,42,.12) !important;
}
body.ga-light-theme .gamecenter-box-score .ga-table th,
body.ga-light-theme .gamecenter-box-score .ga-table td,
body.ga-light-theme .gamecenter-pbp-card .ga-table th,
body.ga-light-theme .gamecenter-pbp-card .ga-table td,
body.ga-light-theme .gamecenter-box-score .box-score-summary-panel .ga-muted,
body.ga-light-theme .gamecenter-pbp-card .ga-muted,
body.ga-light-theme .gamecenter-box-score-preview .ga-muted {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
body.ga-light-theme .inning-filter-btn {
  background: #f8fafc;
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
  border-color: rgba(14,165,233,.28);
}
body.ga-light-theme .inning-filter-btn.active,
body.ga-light-theme .inning-filter-btn:hover {
  background: #bae6fd;
  color: #082f49 !important;
  -webkit-text-fill-color: #082f49 !important;
}
body.ga-light-theme .inning-pbp-heading,
body.ga-light-theme .rich-pbp-row,
body.ga-light-theme .rich-pbp-row strong,
body.ga-light-theme .rich-pbp-row div,
body.ga-light-theme .rich-pbp-row .small {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.callaba-video-card{background:#111827;border:1px solid rgba(148,163,184,.28);border-radius:18px;overflow:hidden;box-shadow:0 16px 36px rgba(15,23,42,.28)}
.callaba-video-frame{position:relative;aspect-ratio:16/9;background:#020617;display:flex;align-items:center;justify-content:center}
.callaba-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#020617}
.callaba-video-placeholder{display:flex;flex-direction:column;gap:.35rem;align-items:center;justify-content:center;text-align:center;color:#e5e7eb;padding:1.25rem;max-width:100%}
.callaba-video-placeholder span{color:#94a3b8;font-size:.875rem}.callaba-video-placeholder code{max-width:100%;white-space:normal;word-break:break-all;color:#bae6fd;background:rgba(14,165,233,.12);border:1px solid rgba(14,165,233,.24);border-radius:10px;padding:.35rem .5rem}
.callaba-video-meta{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;color:#f8fafc;background:#0f172a}.callaba-video-meta strong{display:block;color:#fff}.callaba-video-meta small{display:block;color:#cbd5e1}

/* v0.1.165 - Play-by-play inning filter presented as a compact line score */
.pbp-linescore-filter {
  border: 1px solid rgba(56,189,248,.28);
  border-radius: 18px;
  overflow: hidden;
  background: rgba(2,6,23,.45);
}
.pbp-linescore-table {
  margin: 0;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
}
.pbp-linescore-table th,
.pbp-linescore-table td {
  text-align: center;
  border-color: rgba(148,163,184,.2) !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  font-weight: 800;
  min-width: 3rem;
}
.pbp-linescore-table .team-col,
.pbp-linescore-table tbody th {
  text-align: left;
  min-width: 8rem;
  color: #e0f2fe !important;
  -webkit-text-fill-color: #e0f2fe !important;
}
.pbp-linescore-table thead th {
  background: rgba(15,23,42,.86);
  color: #bfdbfe !important;
  -webkit-text-fill-color: #bfdbfe !important;
}
.inning-score-filter {
  width: 100%;
  min-width: 2.4rem;
  border: 1px solid rgba(56,189,248,.28);
  background: rgba(15,23,42,.7);
  color: #e0f2fe !important;
  -webkit-text-fill-color: #e0f2fe !important;
  border-radius: 12px;
  padding: .35rem .45rem;
  font-weight: 950;
  line-height: 1.1;
}
.inning-score-filter:hover,
.inning-score-filter.active {
  background: #38bdf8;
  border-color: #7dd3fc;
  color: #082f49 !important;
  -webkit-text-fill-color: #082f49 !important;
}
.pbp-linescore-table .total-col {
  color: #facc15 !important;
  -webkit-text-fill-color: #facc15 !important;
  font-weight: 950;
}
body.ga-light-theme .pbp-linescore-filter {
  background: #f8fafc;
  border-color: rgba(14,165,233,.26);
}
body.ga-light-theme .pbp-linescore-table th,
body.ga-light-theme .pbp-linescore-table td {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: rgba(15,23,42,.12) !important;
}
body.ga-light-theme .pbp-linescore-table .team-col,
body.ga-light-theme .pbp-linescore-table tbody th {
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
}
body.ga-light-theme .pbp-linescore-table thead th {
  background: #e0f2fe;
  color: #082f49 !important;
  -webkit-text-fill-color: #082f49 !important;
}
body.ga-light-theme .inning-score-filter {
  background: #ffffff;
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
  border-color: rgba(14,165,233,.32);
}
body.ga-light-theme .inning-score-filter:hover,
body.ga-light-theme .inning-score-filter.active {
  background: #bae6fd;
  color: #082f49 !important;
  -webkit-text-fill-color: #082f49 !important;
}
body.ga-light-theme .pbp-linescore-table .total-col {
  color: #92400e !important;
  -webkit-text-fill-color: #92400e !important;
}

/* v0.1.167 Guided scorekeeper workflow */
.scorebook-workflow-card { border: 1px solid rgba(56,189,248,.22); box-shadow: 0 18px 48px rgba(2,8,23,.18); }
.scorebook-stepper { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; margin: 1rem 0 1.25rem; }
.scorebook-step-tab { border: 1px solid rgba(15,23,42,.12); background: #f8fafc; color: #0f172a; border-radius: 20px; padding: .85rem; display: grid; grid-template-columns: 44px 1fr; column-gap: .75rem; row-gap: .1rem; text-align: left; align-items: center; }
.scorebook-step-tab span { grid-row: 1 / span 2; width: 44px; height: 44px; border-radius: 15px; display: grid; place-items: center; background: #e0f2fe; color: #075985; font-weight: 1000; }
.scorebook-step-tab strong { font-size: .96rem; font-weight: 1000; }
.scorebook-step-tab small { color: #64748b; font-weight: 800; line-height: 1.15; }
.scorebook-step-tab.is-active { background: #fff7dc; border-color: #f0b429; box-shadow: 0 12px 28px rgba(217,119,6,.16); }
.scorebook-step-tab.is-active span { background: #ffcf3f; color: #7c4a00; }
.scorebook-step-panel { display: none; }
.scorebook-step-panel.is-active { display: block; }
.scorebook-step-header { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; padding: 1rem; margin-bottom: 1rem; border-radius: 22px; background: linear-gradient(135deg, #eff6ff, #ffffff); border: 1px solid rgba(37,99,235,.12); }
.scorebook-step-header h3 { color: #0f172a; font-weight: 1000; margin: .2rem 0 0; }
.scorebook-step-header p { color: #475569; font-weight: 800; max-width: 620px; margin: 0; }
.scorebook-step-badge { display: inline-flex; align-items: center; border-radius: 999px; padding: .25rem .55rem; background: #dbeafe; color: #1d4ed8; font-size: .74rem; font-weight: 1000; text-transform: uppercase; letter-spacing: .07em; }
.scorebook-guided-grid { align-items: stretch; }
.scorebook-guided-pane { background: #ffffff; border: 1px solid rgba(15,23,42,.10); border-radius: 22px; padding: 1rem; box-shadow: 0 10px 28px rgba(15,23,42,.05); }
.scorebook-guided-label { display: inline-flex; align-items: center; gap: .5rem; margin-bottom: .8rem; color: #0f172a; }
.scorebook-guided-label strong { width: 34px; height: 34px; border-radius: 12px; display: grid; place-items: center; background: #0f172a; color: #ffffff; font-size: .82rem; }
.scorebook-guided-label span { font-weight: 1000; }
.scorebook-selected-summary { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; border: 1px solid rgba(37,99,235,.14); background: #eff6ff; color: #0f172a; border-radius: 18px; padding: .9rem 1rem; }
.scorebook-selected-summary strong { font-weight: 1000; }
.scorebook-selected-summary span { color: #475569; font-weight: 850; }
.scorebook-step-actions { display: flex; justify-content: flex-end; gap: .75rem; flex-wrap: wrap; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid rgba(15,23,42,.10); }
.scorebook-step-actions--final { justify-content: space-between; }
.scorebook-guided-play-form { margin: 0; }
.scorebook-workflow-card .scorebook-result-select { cursor: pointer; }
.scorebook-workflow-card .scorebook-result-select.will-end-inning { border-color: rgba(220,38,38,.35); }
.scorebook-workflow-card .scorebook-result-select.will-end-inning span:after { content: " · ends inning"; color: #b91c1c; font-weight: 1000; }
@media (max-width: 860px) {
  .scorebook-stepper { grid-template-columns: 1fr; }
  .scorebook-step-header { display: block; }
  .scorebook-step-header p { margin-top: .65rem; }
  .scorebook-step-actions,
  .scorebook-step-actions--final { justify-content: stretch; }
  .scorebook-step-actions .btn { width: 100%; }
}

/* v0.1.170 Scorekeeper guided workflow contrast hardening
   The guided scorekeeper panels intentionally sit on light cards. Keep every
   label, helper line, step chip, result button, and form control readable even
   when older dark-scorebook rules or browser autofill styles are loaded above. */
.scorebook-shell.scorebook-pro .scorebook-workflow-card,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-step-panel,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-guided-pane,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-quick-group,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-step-header,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-selected-summary {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-section-head h1,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-section-head h2,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-section-head h3,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-section-head p,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-readable-title,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-step-header h3,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-quick-heading strong,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-guided-label span,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-selected-summary strong,
.scorebook-shell.scorebook-pro .scorebook-workflow-card label,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .form-label,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-zone-note,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .small,
.scorebook-shell.scorebook-pro .scorebook-workflow-card small {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-readable-muted,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-step-header p,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-quick-heading span,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-selected-summary span,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-step-tab small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  opacity: 1 !important;
}

.scorebook-shell.scorebook-pro .scorebook-workflow-card .ga-kicker,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-panel-kicker {
  color: #0369a1 !important;
  -webkit-text-fill-color: #0369a1 !important;
  opacity: 1 !important;
}

.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-step-tab {
  background: #ffffff !important;
  border-color: #cbd5e1 !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-step-tab strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-step-tab span {
  background: #e0f2fe !important;
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-step-tab.is-active {
  background: #fff7dc !important;
  border-color: #f59e0b !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-step-tab.is-active span {
  background: #fbbf24 !important;
  color: #78350f !important;
  -webkit-text-fill-color: #78350f !important;
}

.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-step-badge {
  background: #dbeafe !important;
  color: #1d4ed8 !important;
  -webkit-text-fill-color: #1d4ed8 !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-guided-label strong {
  background: #0f172a !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.scorebook-shell.scorebook-pro .scorebook-workflow-card .pitch-result-button,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-result-select {
  background: #f8fafc !important;
  border-color: #cbd5e1 !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card .pitch-result-button span,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-result-select span {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card .pitch-result-button strong,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-result-select strong {
  background: #e0f2fe !important;
  border: 1px solid #bae6fd !important;
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-result-select.is-selected,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .pitch-result-button:hover,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-result-select:hover {
  background: #fff7dc !important;
  border-color: #f59e0b !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-result-select.will-end-inning {
  background: #fff7f7 !important;
  border-color: #fca5a5 !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card .scorebook-result-select.will-end-inning span:after {
  color: #b91c1c !important;
  -webkit-text-fill-color: #b91c1c !important;
}

.scorebook-shell.scorebook-pro .scorebook-workflow-card .form-control,
.scorebook-shell.scorebook-pro .scorebook-workflow-card .form-select,
.scorebook-shell.scorebook-pro .scorebook-workflow-card input,
.scorebook-shell.scorebook-pro .scorebook-workflow-card select,
.scorebook-shell.scorebook-pro .scorebook-workflow-card textarea {
  background-color: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: #cbd5e1 !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card .form-control::placeholder,
.scorebook-shell.scorebook-pro .scorebook-workflow-card input::placeholder,
.scorebook-shell.scorebook-pro .scorebook-workflow-card textarea::placeholder {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro .scorebook-workflow-card option {
  color: #0f172a !important;
  background: #ffffff !important;
}


/* LEAGUE PAGE WHITE SPACE UTILIZATION FIX v0.1.172
   Widen the public league hub, use balanced CSS-grid sections on large screens,
   and let leader/news/highlight modules fill available horizontal space instead
   of stacking into narrow columns with unused gutters. */
.league-public-refresh {
  padding-inline: max(1rem, calc(50vw - 760px)) !important;
}
.league-public-refresh .league-hub-hero--wide {
  padding: clamp(1.35rem, 2.2vw, 2.4rem) !important;
}
.league-public-refresh .league-scoreboard-rotator,
.league-public-refresh .league-tabbar,
.league-public-refresh .ga-card {
  width: 100%;
}
.league-public-refresh .league-main-content-row,
.league-public-refresh .league-media-content-row,
.league-public-refresh .league-schedule-content-row {
  align-items: stretch;
}
.league-public-refresh .league-leaders-stack {
  grid-template-columns: repeat(auto-fit, minmax(235px, 1fr));
  align-items: stretch;
}
.league-public-refresh .league-leader-card {
  min-height: 100%;
}
.league-public-refresh .league-team-spotlight p {
  min-height: 0 !important;
}
.league-public-refresh .league-top-story {
  grid-template-columns: minmax(220px, 34%) minmax(0, 1fr);
}
.league-public-refresh .league-news-row,
.league-public-refresh .league-event-row {
  grid-template-columns: minmax(72px, .45fr) minmax(220px, 1.5fr) minmax(90px, .55fr);
}
.league-public-refresh .league-highlight-img {
  height: clamp(230px, 22vw, 340px);
}
.league-public-refresh .league-gallery-tile img {
  height: clamp(120px, 10vw, 165px);
}
.league-public-refresh .league-sponsor-strip {
  justify-content: space-between;
}
.league-public-refresh .league-sponsor-card {
  flex: 1 1 220px;
  min-width: 220px;
}

@media (min-width: 1400px) {
  .league-public-refresh {
    padding-inline: max(1.25rem, calc(50vw - 820px)) !important;
  }
  .league-public-refresh .league-main-content-row,
  .league-public-refresh .league-media-content-row,
  .league-public-refresh .league-schedule-content-row {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(380px, .85fr);
  }
  .league-public-refresh .league-main-content-row > *,
  .league-public-refresh .league-media-content-row > *,
  .league-public-refresh .league-schedule-content-row > * {
    width: auto !important;
    max-width: none !important;
  }
  .league-public-refresh .league-standings-card .table-responsive {
    min-height: 100%;
  }
  .league-public-refresh .league-leaders-card {
    display: flex;
    flex-direction: column;
  }
  .league-public-refresh .league-leaders-card .league-leaders-stack {
    flex: 1;
  }
}

@media (min-width: 1700px) {
  .league-public-refresh {
    padding-inline: max(1.5rem, calc(50vw - 900px)) !important;
  }
  .league-public-refresh .league-main-content-row,
  .league-public-refresh .league-media-content-row,
  .league-public-refresh .league-schedule-content-row {
    grid-template-columns: minmax(0, 1.7fr) minmax(430px, .9fr);
  }
  .league-public-refresh .league-leaders-stack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991px) {
  .league-public-refresh .league-top-story,
  .league-public-refresh .league-news-row,
  .league-public-refresh .league-event-row {
    grid-template-columns: 1fr;
  }
  .league-public-refresh .league-news-row small,
  .league-public-refresh .league-event-row em {
    text-align: left;
  }
}

/* PLAYER STUDIO READABILITY FIX v0.1.173
   Player Studio uses the light admin theme, but some inherited studio/admin
   components were still carrying dark-theme white foregrounds. Scope a hard
   contrast reset to this page so form labels, cards, checklist rows, report
   panels, disabled buttons, and generated output remain readable on white. */
body.ga-light-theme .player-studio-admin,
body.ga-light-theme .player-studio-admin .ga-card,
body.ga-light-theme .player-studio-admin .row,
body.ga-light-theme .player-studio-admin p,
body.ga-light-theme .player-studio-admin div,
body.ga-light-theme .player-studio-admin span,
body.ga-light-theme .player-studio-admin label,
body.ga-light-theme .player-studio-admin strong,
body.ga-light-theme .player-studio-admin h1,
body.ga-light-theme .player-studio-admin h2,
body.ga-light-theme .player-studio-admin h3,
body.ga-light-theme .player-studio-admin h4,
body.ga-light-theme .player-studio-admin h5,
body.ga-light-theme .player-studio-admin h6 {
  color: #0f172a;
  -webkit-text-fill-color: #0f172a;
}
body.ga-light-theme .player-studio-admin .ga-card {
  background: #ffffff !important;
  border-color: rgba(15, 23, 42, .10) !important;
  box-shadow: var(--ga-shadow-soft);
}
body.ga-light-theme .player-studio-admin .ga-muted,
body.ga-light-theme .player-studio-admin .small,
body.ga-light-theme .player-studio-admin small,
body.ga-light-theme .player-studio-admin .text-muted {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
}
body.ga-light-theme .player-studio-admin .ga-kicker {
  color: #0b72d9 !important;
  -webkit-text-fill-color: #0b72d9 !important;
}
body.ga-light-theme .player-studio-admin .ga-chip {
  background: #eef6ff !important;
  border-color: rgba(11, 114, 217, .18) !important;
  color: #17446d !important;
  -webkit-text-fill-color: #17446d !important;
}
body.ga-light-theme .player-studio-admin .rounded-4.bg-white,
body.ga-light-theme .player-studio-admin .border-bottom,
body.ga-light-theme .player-studio-admin .form-check,
body.ga-light-theme .player-studio-admin .form-check-label {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
body.ga-light-theme .player-studio-admin .rounded-4.bg-white {
  background: #ffffff !important;
  border-color: rgba(15, 23, 42, .12) !important;
}
body.ga-light-theme .player-studio-admin .form-label,
body.ga-light-theme .player-studio-admin .form-check-label {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
}
body.ga-light-theme .player-studio-admin .form-control,
body.ga-light-theme .player-studio-admin .form-select,
body.ga-light-theme .player-studio-admin textarea,
body.ga-light-theme .player-studio-admin input,
body.ga-light-theme .player-studio-admin select {
  background-color: #ffffff !important;
  border-color: rgba(15, 23, 42, .18) !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  opacity: 1 !important;
}
body.ga-light-theme .player-studio-admin .form-control::placeholder,
body.ga-light-theme .player-studio-admin textarea::placeholder,
body.ga-light-theme .player-studio-admin input::placeholder {
  color: #94a3b8 !important;
  -webkit-text-fill-color: #94a3b8 !important;
  opacity: 1 !important;
}
body.ga-light-theme .player-studio-admin option {
  background: #ffffff !important;
  color: #0f172a !important;
}
body.ga-light-theme .player-studio-admin .btn-ga,
body.ga-light-theme .player-studio-admin .btn-primary {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
body.ga-light-theme .player-studio-admin .btn-outline-ga,
body.ga-light-theme .player-studio-admin .btn-outline-secondary {
  background: #ffffff !important;
  color: #0b72d9 !important;
  -webkit-text-fill-color: #0b72d9 !important;
  border-color: rgba(11, 114, 217, .32) !important;
}
body.ga-light-theme .player-studio-admin .btn-outline-secondary.disabled,
body.ga-light-theme .player-studio-admin .btn-outline-secondary:disabled,
body.ga-light-theme .player-studio-admin button:disabled {
  background: #f1f5f9 !important;
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
  border-color: rgba(100, 116, 139, .24) !important;
  opacity: 1 !important;
}

/* SCOREKEEPER GUIDED WORKFLOW CONTRAST FIX v0.1.174
   The scorekeeper workflow can sit inside a dark broadcast shell while its active
   cards are light. This final scoped reset uses the workflow data attribute so
   global dark overlay typography cannot make step headings/helper copy white on
   white panels. */
.scorebook-shell.scorebook-pro [data-scorebook-workflow],
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-step-panel,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-step-header,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-guided-pane,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-quick-group,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-selected-summary {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro [data-scorebook-workflow] h1,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] h2,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] h3,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] h4,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] h5,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] h6,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] p,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] label,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .form-label,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-guided-label span,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-zone-note,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-quick-heading strong,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-selected-summary strong,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-step-tab strong,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .pitch-result-button span,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-result-select span,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-step-actions,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .small,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] small {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-readable-muted,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-step-header p,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-quick-heading span,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-selected-summary span,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-step-tab small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .ga-kicker,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-panel-kicker {
  color: #0284c7 !important;
  -webkit-text-fill-color: #0284c7 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-step-badge,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-step-tab > span,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .pitch-result-button strong,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-result-select strong {
  background: #e0f2fe !important;
  border-color: #bae6fd !important;
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-step-tab.is-active > span {
  background: #fbbf24 !important;
  color: #78350f !important;
  -webkit-text-fill-color: #78350f !important;
}
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-guided-label strong {
  background: #0f172a !important;
  border-color: #0f172a !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .form-control,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .form-select,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] input,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] select,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] textarea {
  background-color: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: #cbd5e1 !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .btn-outline-ga {
  background: #ffffff !important;
  color: #0b5ed7 !important;
  -webkit-text-fill-color: #0b5ed7 !important;
  border-color: rgba(11, 94, 215, .35) !important;
}

/* Sports Hub monetization layout + badge/location hardening v0.1.175 */
.sports-hub-plans-page .plan-scope-badge,
.sports-hub-plans-page .badge.bg-dark,
.sports-hub-plans-page .text-bg-dark,
.card .badge.bg-dark.plan-scope-badge {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background-color: #111827 !important;
  border: 1px solid rgba(255,255,255,.16);
}
.sports-hub-plan-experience-stack {
  display: grid;
  gap: 1.25rem;
}
.sports-hub-plan-experience {
  background: #fff;
  color: #0f172a;
  border: 1px solid #e2e8f0;
  box-shadow: 0 18px 45px rgba(15,23,42,.06);
}
.sports-hub-plan-experience .ga-kicker,
.sports-hub-plan-experience h2,
.sports-hub-plan-experience p,
.sports-hub-plan-experience .ga-muted {
  color: #0f172a !important;
  -webkit-text-fill-color: currentColor !important;
}
.sports-hub-plan-experience .ga-muted {
  color: #475569 !important;
}
.sports-hub-plan-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1rem;
  align-items: stretch;
}
.sports-hub-plan-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #dbe3ef;
}
.sports-hub-plan-card .card-body,
.sports-hub-plan-card h3,
.sports-hub-plan-card p,
.sports-hub-plan-card li,
.sports-hub-plan-card small,
.sports-hub-plan-card .display-6 {
  color: #111827;
  -webkit-text-fill-color: currentColor;
}
.sports-hub-plan-card .text-muted,
.sports-hub-plan-card small.text-muted {
  color: #475569 !important;
}
.sports-hub-plan-card .small.text-muted {
  overflow-wrap: anywhere;
  word-break: normal;
}
.geo-location-card,
.ga-location-result,
.geo-list-row {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.geo-location-card *,
.ga-location-result *,
.geo-list-row * {
  min-width: 0;
}
.geo-location-card__top {
  min-width: 0;
}
.geo-location-card__top > div,
.ga-location-result > span,
.geo-list-row strong,
.geo-list-row span {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: normal;
}
.geo-location-card__top strong,
.geo-location-card__top small,
.ga-location-result strong,
.ga-location-result small,
.geo-list-row strong,
.geo-list-row span {
  white-space: normal;
  overflow-wrap: anywhere;
}
.geo-count-grid {
  grid-template-columns: repeat(auto-fit, minmax(72px, 1fr));
}
.geo-count-grid span {
  min-width: 0;
  overflow: hidden;
}
.geo-count-grid strong,
.geo-count-grid small {
  overflow-wrap: anywhere;
}
@media (max-width: 575.98px) {
  .geo-location-grid { grid-template-columns: minmax(0, 1fr); }
  .geo-detail-grid { grid-template-columns: minmax(0, 1fr); }
  .ga-location-result { align-items: flex-start; flex-direction: column; }
  .sports-hub-plan-grid { grid-template-columns: minmax(0, 1fr); }
}

/* v0.1.176 Facility Administrator operations */
.facility-admin-shell .ga-card,
.facility-admin-form {
  color: #e5eefb;
}
.facility-admin-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1rem;
}
.facility-admin-card {
  display: flex;
  flex-direction: column;
  gap: .9rem;
  min-height: 210px;
  padding: 1.15rem;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
  color: #f8fafc;
  text-decoration: none;
  box-shadow: 0 20px 50px rgba(2,6,23,.24);
}
.facility-admin-card:hover {
  border-color: rgba(56,189,248,.45);
  transform: translateY(-1px);
}
.facility-admin-card strong { color: #f8fafc; font-size: 1.05rem; }
.facility-admin-card small,
.facility-admin-card p,
.facility-admin-card em { color: #cbd5e1; }
.facility-admin-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .5rem;
}
.facility-admin-metrics span {
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 14px;
  padding: .65rem .45rem;
  text-align: center;
  background: rgba(15,23,42,.42);
}
.facility-admin-metrics b { display:block; color:#fff; font-size:1.15rem; }
.facility-admin-metrics small { display:block; font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; }
.facility-command-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.facility-linked-list h3 { color: #f8fafc; font-size: .95rem; }
.facility-linked-pill {
  display: inline-flex;
  margin: .25rem .35rem .25rem 0;
  padding: .45rem .7rem;
  border-radius: 999px;
  border: 1px solid rgba(125,211,252,.35);
  color: #e0f2fe;
  text-decoration: none;
  background: rgba(14,165,233,.12);
}
.facility-admin-form .form-label,
.facility-admin-form .form-check-label { color: #0f172a; }
.facility-admin-form .border-top { border-color: rgba(148,163,184,.35) !important; }

.branded-facility-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.branded-facility-metrics > div {
  border: 1px solid rgba(15,23,42,.12);
  border-radius: 18px;
  padding: 1rem;
  background: rgba(255,255,255,.72);
}
.branded-facility-metrics span,
.branded-facility-metrics small { display:block; color:#475569; }
.branded-facility-metrics strong { display:block; color:#0f172a; font-size:1.15rem; margin:.2rem 0; }
.branded-facility-alert {
  margin-top: 1rem;
  padding: 1rem;
  border-radius: 16px;
  background: rgba(255,207,63,.16);
  border: 1px solid rgba(255,207,63,.42);
  color: #0f172a;
  font-weight: 700;
}
@media (max-width: 992px) {
  .facility-command-grid,
  .branded-facility-metrics { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .facility-admin-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* PLAYER STUDIO + SCOREKEEPER READABILITY HARD LOCK v0.1.177
   Some admin/studio and scorekeeper pages inherit white overlay typography from
   broadcast shells even when their cards are light. These rules are intentionally
   late in the cascade and avoid body-theme assumptions so admin pages remain
   readable whether the body is using light, dark, or mixed studio shells. */
.player-studio-admin,
.player-studio-admin .ga-card,
.player-studio-admin .card,
.player-studio-admin .bg-white,
.player-studio-admin .rounded-4,
.player-studio-admin .border,
.player-studio-admin .row,
.player-studio-admin .col,
.player-studio-admin .col-md-4,
.player-studio-admin .col-md-6,
.player-studio-admin .col-lg-6,
.player-studio-admin .col-xl-3,
.player-studio-admin .col-xl-5,
.player-studio-admin .col-xl-7 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.player-studio-admin .ga-card,
.player-studio-admin .card,
.player-studio-admin .bg-white,
.player-studio-admin .rounded-4.bg-white,
.player-studio-admin .border.bg-white {
  background-color: #ffffff !important;
  border-color: rgba(15, 23, 42, .12) !important;
}
.player-studio-admin h1,
.player-studio-admin h2,
.player-studio-admin h3,
.player-studio-admin h4,
.player-studio-admin h5,
.player-studio-admin h6,
.player-studio-admin p,
.player-studio-admin div,
.player-studio-admin span,
.player-studio-admin strong,
.player-studio-admin label,
.player-studio-admin li,
.player-studio-admin td,
.player-studio-admin th,
.player-studio-admin .h1,
.player-studio-admin .h2,
.player-studio-admin .h3,
.player-studio-admin .h4,
.player-studio-admin .h5,
.player-studio-admin .h6,
.player-studio-admin .display-6,
.player-studio-admin .fw-black,
.player-studio-admin .fw-bold {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.player-studio-admin .ga-muted,
.player-studio-admin .text-muted,
.player-studio-admin .small,
.player-studio-admin small,
.player-studio-admin .form-text {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.player-studio-admin .ga-kicker {
  color: #0b72d9 !important;
  -webkit-text-fill-color: #0b72d9 !important;
}
.player-studio-admin .ga-chip,
.player-studio-admin .badge:not(.bg-dark):not(.text-bg-dark) {
  background: #eef6ff !important;
  border-color: rgba(11, 114, 217, .18) !important;
  color: #17446d !important;
  -webkit-text-fill-color: #17446d !important;
}
.player-studio-admin .badge.bg-dark,
.player-studio-admin .text-bg-dark {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.player-studio-admin .form-label,
.player-studio-admin .form-check-label,
.player-studio-admin .form-check,
.player-studio-admin .form-check span {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
}
.player-studio-admin .form-control,
.player-studio-admin .form-select,
.player-studio-admin input,
.player-studio-admin select,
.player-studio-admin textarea {
  background-color: #ffffff !important;
  border-color: rgba(15, 23, 42, .22) !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.player-studio-admin input::placeholder,
.player-studio-admin textarea::placeholder,
.player-studio-admin .form-control::placeholder {
  color: #94a3b8 !important;
  -webkit-text-fill-color: #94a3b8 !important;
  opacity: 1 !important;
}
.player-studio-admin option {
  background: #ffffff !important;
  color: #0f172a !important;
}
.player-studio-admin .btn-ga,
.player-studio-admin .btn-primary {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.player-studio-admin .btn-outline-ga,
.player-studio-admin .btn-outline-secondary,
.player-studio-admin .btn-light {
  background: #ffffff !important;
  color: #0b5ed7 !important;
  -webkit-text-fill-color: #0b5ed7 !important;
  border-color: rgba(11, 94, 215, .35) !important;
}
.player-studio-admin button:disabled,
.player-studio-admin .btn.disabled,
.player-studio-admin .btn:disabled {
  background: #f1f5f9 !important;
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
  border-color: rgba(100, 116, 139, .24) !important;
  opacity: 1 !important;
}

.scorebook-shell.scorebook-pro [data-scorebook-workflow],
.scorebook-shell.scorebook-pro [data-scorebook-workflow] *:not(.scorebook-guided-label > strong):not(.scorebook-panel-kicker):not(.ga-kicker):not(.scorebook-step-badge):not(.btn-ga):not(.btn-primary),
[data-scorebook-workflow],
[data-scorebook-workflow] *:not(.scorebook-guided-label > strong):not(.scorebook-panel-kicker):not(.ga-kicker):not(.scorebook-step-badge):not(.btn-ga):not(.btn-primary) {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-workflow-card,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-step-panel,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-step-header,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-guided-pane,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-quick-group,
.scorebook-shell.scorebook-pro [data-scorebook-workflow] .scorebook-selected-summary,
[data-scorebook-workflow] .scorebook-step-panel,
[data-scorebook-workflow] .scorebook-step-header,
[data-scorebook-workflow] .scorebook-guided-pane,
[data-scorebook-workflow] .scorebook-quick-group,
[data-scorebook-workflow] .scorebook-selected-summary {
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: rgba(15, 23, 42, .12) !important;
}
[data-scorebook-workflow] .scorebook-step-header p,
[data-scorebook-workflow] .scorebook-readable-muted,
[data-scorebook-workflow] .scorebook-step-tab small,
[data-scorebook-workflow] .scorebook-quick-heading span,
[data-scorebook-workflow] .scorebook-selected-summary span,
[data-scorebook-workflow] small,
[data-scorebook-workflow] .small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  opacity: 1 !important;
}
[data-scorebook-workflow] .ga-kicker,
[data-scorebook-workflow] .scorebook-panel-kicker {
  color: #0284c7 !important;
  -webkit-text-fill-color: #0284c7 !important;
  text-shadow: none !important;
}
[data-scorebook-workflow] .scorebook-guided-label strong,
[data-scorebook-workflow] .scorebook-step-badge {
  background: #0f172a !important;
  border-color: #0f172a !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
[data-scorebook-workflow] .scorebook-step-tab > span,
[data-scorebook-workflow] .pitch-result-button strong,
[data-scorebook-workflow] .scorebook-result-select strong {
  background: #e0f2fe !important;
  border-color: #bae6fd !important;
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
}
[data-scorebook-workflow] .scorebook-step-tab.is-active {
  background: #fff7d6 !important;
  border-color: #f59e0b !important;
}
[data-scorebook-workflow] .scorebook-step-tab.is-active > span {
  background: #fbbf24 !important;
  color: #78350f !important;
  -webkit-text-fill-color: #78350f !important;
}
[data-scorebook-workflow] .pitch-result-button,
[data-scorebook-workflow] .scorebook-result-select,
[data-scorebook-workflow] .btn-outline-ga {
  background: #f8fafc !important;
  border-color: #cbd5e1 !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
[data-scorebook-workflow] .form-label,
[data-scorebook-workflow] label {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
}
[data-scorebook-workflow] .form-control,
[data-scorebook-workflow] .form-select,
[data-scorebook-workflow] input,
[data-scorebook-workflow] select,
[data-scorebook-workflow] textarea {
  background-color: #ffffff !important;
  border-color: #cbd5e1 !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  opacity: 1 !important;
}
[data-scorebook-workflow] .btn-ga,
[data-scorebook-workflow] .btn-primary {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* NEWS CHANNEL ARTICLES EXPERIENCE v0.1.178
   Converts the public Articles route into a channel-style news page with featured, latest, and archive sections. */
.ga-news-nav-link {
  position: relative;
  font-weight: 900 !important;
}
.ga-news-nav-link::after {
  content: "";
  position: absolute;
  left: .75rem;
  right: .75rem;
  bottom: .25rem;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #0b72d9, #22d3ee);
  opacity: .72;
}
.news-channel-hero,
.news-channel-grid,
.news-side-panel,
.news-archive-panel,
.news-story-card,
.news-empty-box {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
.news-live-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .75rem;
  padding: .8rem 1rem;
  margin-bottom: 1rem;
  border-radius: 1rem;
  background: #07111f;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 18px 48px rgba(15, 23, 42, .12);
  font-size: .84rem;
  font-weight: 900;
  letter-spacing: .02em;
  text-transform: uppercase;
}
.news-live-strip span {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}
.news-live-strip span:last-child {
  color: rgba(255,255,255,.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,.72) !important;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 700;
}
.news-live-dot {
  width: .65rem;
  height: .65rem;
  border-radius: 999px;
  background: #ef4444;
  box-shadow: 0 0 0 .25rem rgba(239, 68, 68, .22);
}
.news-lead-card,
.news-feature-row,
.news-story-card,
.news-archive-link {
  display: block;
  text-decoration: none !important;
}
.news-lead-media {
  min-height: 520px;
  border-radius: 1.4rem;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: flex-end;
  border: 1px solid rgba(15, 23, 42, .12);
  box-shadow: 0 24px 70px rgba(15, 23, 42, .18);
}
.news-lead-content {
  max-width: 760px;
  padding: clamp(1.4rem, 4vw, 3rem);
}
.news-lead-content h1 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: clamp(2.2rem, 5vw, 4.9rem);
  line-height: .92;
  letter-spacing: -.075em;
  font-weight: 950;
  margin-bottom: 1rem;
}
.news-lead-content p,
.news-byline,
.news-byline span {
  color: rgba(255,255,255,.86) !important;
  -webkit-text-fill-color: rgba(255,255,255,.86) !important;
}
.news-lead-content p {
  font-size: 1.08rem;
  max-width: 700px;
}
.news-byline {
  display: flex;
  flex-wrap: wrap;
  gap: .85rem;
  font-weight: 800;
  font-size: .92rem;
}
.news-pill,
.news-chip {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.26);
  padding: .35rem .65rem;
  background: rgba(255,255,255,.14);
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.news-pill-live {
  background: #dc2626;
  border-color: #dc2626;
}
.news-pill-premium {
  background: #f59e0b;
  border-color: #f59e0b;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
.news-side-panel,
.news-archive-panel {
  background: #ffffff;
  border: 1px solid rgba(15, 23, 42, .1);
  border-radius: 1.4rem;
  padding: 1.25rem;
  box-shadow: 0 18px 54px rgba(15, 23, 42, .08);
}
.news-side-panel h2,
.news-section-heading h2,
.news-story-card h3,
.news-feature-row strong,
.news-archive-link strong,
.news-empty-lead h1 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
.news-feature-row {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: .9rem;
  align-items: center;
  padding: .7rem;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 1rem;
}
.news-feature-thumb {
  width: 100%;
  aspect-ratio: 16 / 10;
  border-radius: .8rem;
  background-size: cover;
  background-position: center;
}
.news-feature-body {
  display: grid;
  gap: .18rem;
  min-width: 0;
}
.news-feature-row strong,
.news-archive-link strong {
  overflow-wrap: anywhere;
}
.news-row-kicker,
.news-feature-row small,
.news-meta,
.news-meta span,
.news-section-heading span {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
}
.news-row-kicker {
  font-size: .68rem;
  letter-spacing: .07em;
  text-transform: uppercase;
  font-weight: 950;
}
.news-channel-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 390px);
  gap: 1.25rem;
  align-items: start;
}
.news-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}
.news-section-heading h2 {
  margin: 0;
  font-size: clamp(1.55rem, 2vw, 2.35rem);
  font-weight: 950;
  letter-spacing: -.04em;
}
.news-story-card {
  height: 100%;
  overflow: hidden;
  border-radius: 1.2rem;
  background: #ffffff;
  border: 1px solid rgba(15, 23, 42, .1);
  box-shadow: 0 15px 46px rgba(15, 23, 42, .07);
}
.news-story-image {
  min-height: 210px;
  background-size: cover;
  background-position: center;
}
.news-story-body {
  padding: 1rem;
}
.news-story-card h3 {
  font-size: 1.25rem;
  font-weight: 950;
  letter-spacing: -.025em;
  margin-bottom: .45rem;
}
.news-story-card p,
.news-empty-box,
.news-empty-lead p {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}
.news-chip {
  background: #e0f2fe;
  border-color: #bae6fd;
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
}
.news-meta {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  font-size: .82rem;
  font-weight: 800;
}
.news-archive-panel {
  position: sticky;
  top: 7rem;
}
.news-archive-link {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: .75rem;
  align-items: baseline;
  padding: .75rem 0;
  border-bottom: 1px solid rgba(15, 23, 42, .08);
}
.news-archive-link span {
  color: #0b72d9 !important;
  -webkit-text-fill-color: #0b72d9 !important;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .07em;
}
.news-empty-box,
.news-empty-lead {
  background: #f8fafc;
  border: 1px dashed rgba(15, 23, 42, .18);
  border-radius: 1rem;
  padding: 1rem;
}
@media (max-width: 991.98px) {
  .news-channel-grid {
    grid-template-columns: 1fr;
  }
  .news-archive-panel {
    position: static;
  }
  .news-lead-media {
    min-height: 430px;
  }
}
@media (max-width: 575.98px) {
  .news-feature-row {
    grid-template-columns: 82px 1fr;
  }
  .news-lead-media {
    min-height: 360px;
  }
  .news-meta,
  .news-section-heading {
    align-items: start;
    flex-direction: column;
  }
}

/* v0.1.180 Facility scoped operations and card overflow hardening */
.facility-admin-shell .facility-admin-grid {
  grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
  align-items: stretch;
}
.facility-admin-shell .facility-admin-card,
.facility-admin-shell .facility-admin-card * {
  min-width: 0;
}
.facility-admin-shell .facility-admin-card strong,
.facility-admin-shell .facility-admin-card small,
.facility-admin-shell .facility-admin-card p,
.facility-admin-shell .facility-admin-card em {
  overflow-wrap: anywhere;
  word-break: normal;
  line-height: 1.25;
}
.facility-admin-shell .facility-admin-metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (min-width: 1280px) {
  .facility-admin-shell .facility-admin-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.facility-admin-shell .facility-admin-metrics span {
  min-width: 0;
  overflow: hidden;
}
.facility-admin-shell .facility-admin-metrics small {
  white-space: normal;
  overflow-wrap: anywhere;
  letter-spacing: .04em;
}
.facility-admin-shell .table td,
.facility-admin-shell .table th {
  white-space: normal;
  overflow-wrap: anywhere;
}
.facility-admin-weather-note {
  display: block;
  margin-top: .5rem;
  color: #64748b;
  font-size: .82rem;
}


/* NEWS CHANNEL GUTTERS + SNAP v0.1.181
   Gives the News route deliberate editorial gutters and a faster, tighter channel feel. */
.news-page-shell {
  width: min(100%, 1560px);
  margin-inline: auto;
  padding-inline: clamp(1rem, 3.5vw, 4.5rem);
  padding-block: clamp(1rem, 2vw, 2rem) 2.5rem;
}
.news-page-shell .news-channel-hero,
.news-page-shell .news-channel-grid {
  margin-inline: auto;
}
.news-page-shell .news-live-strip {
  border-radius: 999px;
  padding: .62rem .95rem;
  margin-bottom: .85rem;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .10);
}
.news-page-shell .news-lead-media {
  min-height: clamp(390px, 43vw, 560px);
  border-radius: 1.15rem;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.news-page-shell .news-lead-card:hover .news-lead-media {
  transform: translateY(-3px);
  border-color: rgba(11, 114, 217, .35);
  box-shadow: 0 28px 82px rgba(15, 23, 42, .22);
}
.news-page-shell .news-lead-content {
  padding: clamp(1.25rem, 3vw, 2.6rem);
}
.news-page-shell .news-lead-content h1 {
  max-width: 980px;
}
.news-page-shell .news-side-panel,
.news-page-shell .news-archive-panel,
.news-page-shell .news-story-card {
  border-radius: 1.05rem;
}
.news-page-shell .news-side-panel,
.news-page-shell .news-archive-panel {
  padding: clamp(1rem, 1.6vw, 1.35rem);
}
.news-page-shell .news-feature-row,
.news-page-shell .news-story-card,
.news-page-shell .news-archive-link {
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease, background-color .14s ease;
}
.news-page-shell .news-feature-row:hover,
.news-page-shell .news-story-card:hover {
  transform: translateY(-3px);
  border-color: rgba(11, 114, 217, .26);
  box-shadow: 0 18px 45px rgba(15, 23, 42, .12);
}
.news-page-shell .news-archive-link:hover {
  transform: translateX(3px);
  background: #f8fafc;
}
.news-page-shell .news-story-image {
  min-height: 190px;
}
.news-page-shell .news-channel-grid {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: clamp(1rem, 2vw, 1.8rem);
}
.news-page-shell .news-main-feed .row {
  --bs-gutter-x: 1rem;
  --bs-gutter-y: 1rem;
}
@media (min-width: 1400px) {
  .news-page-shell .news-main-feed .col-md-6 {
    width: 33.333333%;
  }
}
@media (max-width: 991.98px) {
  .news-page-shell {
    padding-inline: clamp(.85rem, 4vw, 1.5rem);
  }
  .news-page-shell .news-channel-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 575.98px) {
  .news-page-shell {
    padding-inline: .75rem;
  }
  .news-page-shell .news-live-strip {
    border-radius: 1rem;
  }
}

/* WATCH + PHOTOS CHANNEL FACELIFT v0.1.182
   Gives the top-nav Watch and Photos destinations the same deliberate gutters and editorial polish as News. */
.media-channel-shell {
  width: min(100%, 1560px);
  margin-inline: auto;
  padding-inline: clamp(1rem, 3.5vw, 4.5rem);
  padding-block: clamp(1rem, 2vw, 2rem) 2.5rem;
}
.media-channel-hero,
.media-channel-grid {
  margin-inline: auto;
}
.media-live-strip {
  display: flex;
  align-items: center;
  gap: .72rem;
  flex-wrap: wrap;
  width: fit-content;
  max-width: 100%;
  border-radius: 999px;
  padding: .62rem .95rem;
  margin-bottom: .9rem;
  background: #07111f;
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, .14);
  box-shadow: 0 14px 38px rgba(15, 23, 42, .16);
  font-weight: 900;
  letter-spacing: .03em;
}
.media-live-strip span:last-child {
  color: #cbd5e1;
  font-size: .86rem;
  font-weight: 700;
  letter-spacing: 0;
}
.media-live-dot {
  width: .62rem;
  height: .62rem;
  border-radius: 999px;
  background: #22c55e;
  box-shadow: 0 0 0 6px rgba(34, 197, 94, .15);
}
.media-lead-card,
.media-feature-row,
.media-rail-panel,
.media-side-panel {
  display: block;
  text-decoration: none;
}
.media-lead-media {
  position: relative;
  min-height: clamp(390px, 43vw, 560px);
  border-radius: 1.15rem;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 24px 70px rgba(15, 23, 42, .22);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.media-lead-card:hover .media-lead-media {
  transform: translateY(-3px);
  border-color: rgba(11, 114, 217, .38);
  box-shadow: 0 30px 88px rgba(15, 23, 42, .28);
}
.media-lead-content {
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  padding: clamp(1.25rem, 3vw, 2.7rem);
  color: #ffffff;
}
.media-lead-content h1 {
  max-width: 980px;
  margin: 0 0 .8rem;
  font-size: clamp(2.2rem, 4.5vw, 4.9rem);
  line-height: .92;
  letter-spacing: -.075em;
  color: #ffffff;
}
.media-lead-content p {
  max-width: 780px;
  margin: 0;
  color: #e2e8f0;
  font-weight: 700;
}
.media-pill {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  border-radius: 999px;
  padding: .42rem .7rem;
  background: rgba(255, 255, 255, .14);
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, .22);
  backdrop-filter: blur(10px);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.media-pill-live { background: rgba(34, 197, 94, .22); border-color: rgba(34, 197, 94, .42); }
.media-pill-premium { background: rgba(251, 191, 36, .22); border-color: rgba(251, 191, 36, .5); }
.media-meta {
  display: flex;
  gap: .75rem;
  flex-wrap: wrap;
  margin-top: 1rem;
  color: #cbd5e1;
  font-size: .85rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.media-play-burst {
  position: absolute;
  top: 1.2rem;
  right: 1.2rem;
  width: clamp(3.4rem, 6vw, 5.4rem);
  height: clamp(3.4rem, 6vw, 5.4rem);
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(255, 255, 255, .18);
  border: 1px solid rgba(255, 255, 255, .32);
  color: #ffffff;
  backdrop-filter: blur(12px);
  font-size: 1.45rem;
  box-shadow: 0 16px 44px rgba(0,0,0,.24);
}
.media-side-panel,
.media-rail-panel,
.media-empty-lead,
.media-empty-box {
  background: #ffffff;
  color: #0f172a;
  border: 1px solid #dbe6f3;
  border-radius: 1.05rem;
  box-shadow: 0 18px 45px rgba(15, 23, 42, .10);
}
.media-side-panel,
.media-rail-panel {
  padding: clamp(1rem, 1.6vw, 1.35rem);
}
.media-side-panel h2,
.media-rail-panel h2,
.media-section-heading h2,
.media-empty-lead h1 {
  color: #0f172a;
  font-weight: 950;
  letter-spacing: -.04em;
}
.media-feature-row {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: .85rem;
  align-items: center;
  padding: .65rem;
  border-radius: .9rem;
  background: #f8fafc;
  border: 1px solid #dbe6f3;
  color: #0f172a;
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease, background-color .14s ease;
}
.media-feature-row:hover {
  transform: translateY(-3px);
  border-color: rgba(11, 114, 217, .28);
  box-shadow: 0 18px 45px rgba(15, 23, 42, .12);
  background: #ffffff;
}
.media-feature-thumb {
  position: relative;
  display: block;
  width: 88px;
  height: 62px;
  border-radius: .72rem;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.media-feature-thumb span {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background: rgba(3,7,18,.22);
  color: #fff;
  font-weight: 900;
}
.media-feature-body {
  min-width: 0;
  display: grid;
  gap: .15rem;
}
.media-feature-body strong {
  color: #0f172a;
  line-height: 1.08;
  font-size: .96rem;
  overflow-wrap: anywhere;
}
.media-feature-body small,
.media-row-kicker {
  color: #64748b;
  font-weight: 800;
}
.media-row-kicker {
  text-transform: uppercase;
  letter-spacing: .07em;
  font-size: .68rem;
  color: #0b72d9;
}
.media-channel-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: clamp(1rem, 2vw, 1.8rem);
}
.media-main-feed .row {
  --bs-gutter-x: 1rem;
  --bs-gutter-y: 1rem;
}
.media-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}
.media-section-heading > span {
  color: #64748b;
  font-weight: 900;
  white-space: nowrap;
}
.media-guide-list {
  display: grid;
  gap: .75rem;
}
.media-guide-list span {
  display: grid;
  gap: .14rem;
  padding: .85rem;
  border-radius: .85rem;
  background: #f8fafc;
  border: 1px solid #dbe6f3;
}
.media-guide-list strong {
  color: #0f172a;
  font-size: 1rem;
}
.media-guide-list small {
  color: #64748b;
  font-weight: 750;
}
.media-empty-box {
  padding: 1rem;
  color: #475569;
  font-weight: 800;
}
.photo-strip .media-live-dot { background: #f59e0b; box-shadow: 0 0 0 6px rgba(245, 158, 11, .16); }
.photo-lead-media { background-position: center 35%; }
.photo-thumb::after {
  content: "";
  position: absolute;
  inset: auto .35rem .35rem auto;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: .45rem;
  background: rgba(255,255,255,.82);
  box-shadow: -.28rem -.28rem 0 rgba(255,255,255,.42);
}
.media-channel-shell .ga-card {
  border-radius: 1.05rem;
  overflow: hidden;
}
.media-channel-shell .ga-card .ga-section-title a {
  text-decoration: none;
}
.media-channel-shell .ga-card:hover .ga-section-title a {
  text-decoration: underline;
}
@media (min-width: 1400px) {
  .media-main-feed .col-xxl-4 {
    width: 33.333333%;
  }
}
@media (max-width: 991.98px) {
  .media-channel-shell {
    padding-inline: clamp(.85rem, 4vw, 1.5rem);
  }
  .media-channel-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 575.98px) {
  .media-channel-shell {
    padding-inline: .75rem;
  }
  .media-live-strip {
    border-radius: 1rem;
  }
  .media-feature-row {
    grid-template-columns: 72px minmax(0, 1fr);
  }
  .media-feature-thumb {
    width: 72px;
    height: 56px;
  }
  .media-lead-media {
    min-height: 430px;
  }
}


/* v0.1.736 public video detail gutters
   Keeps highlight/replay watch pages aligned with the Watch, Photos, News, and public hub gutters. */
.video-detail-shell {
  width: min(100%, 1560px) !important;
  margin-inline: auto !important;
  padding-inline: clamp(1rem, 3.5vw, 4.5rem) !important;
  padding-block: clamp(1rem, 2vw, 2rem) 2.5rem !important;
}
.video-detail-shell > .row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.video-detail-shell .ga-title {
  overflow-wrap: anywhere;
}

.video-detail-shell .ga-card:has(.video-player-frame) {
  overflow: hidden !important;
}
.video-player-frame {
  width: 100%;
  max-width: 100%;
  border-radius: 1rem;
  overflow: hidden !important;
  background: #020617;
}
.video-player-frame iframe,
.video-player-frame video,
.video-player-native {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  border: 0;
  overflow: hidden !important;
}
.video-player-native {
  object-fit: contain;
  background: #020617;
}
.video-detail-shell .ga-card {
  max-width: 100%;
}

@media (max-width: 575.98px) {
  .video-detail-shell {
    padding-inline: .75rem !important;
  }
}

/* MAIN SPORTS HUB FACELIFT v0.1.183
   Brings the root hub page in line with News, Watch, and Photos: deliberate gutters,
   sharper channel structure, faster hover states, and a premium sports-network homepage. */
.home-channel-shell {
  width: min(100%, 1560px) !important;
  margin-inline: auto !important;
  padding-inline: clamp(1rem, 3.5vw, 4.5rem) !important;
  padding-block: clamp(1rem, 2vw, 2rem) 2.5rem !important;
}
.home-channel-shell > * {
  max-width: none !important;
}
.home-channel-hero {
  padding: clamp(1rem, 1.8vw, 1.4rem);
  border-radius: 1.35rem !important;
  box-shadow: 0 26px 82px rgba(15, 23, 42, .22) !important;
}
.home-live-strip {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: .72rem;
  flex-wrap: wrap;
  width: fit-content;
  max-width: 100%;
  border-radius: 999px;
  padding: .62rem .95rem;
  margin-bottom: .9rem;
  background: rgba(255,255,255,.10);
  color: #ffffff;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 14px 38px rgba(0,0,0,.16);
  backdrop-filter: blur(14px);
  font-weight: 950;
  letter-spacing: .03em;
}
.home-live-strip span:last-child {
  color: #cbd5e1;
  font-size: .86rem;
  font-weight: 750;
  letter-spacing: 0;
}
.home-hero-copy {
  min-height: clamp(430px, 44vw, 620px);
}
.home-channel-shell .network-headline {
  max-width: 980px;
  font-size: clamp(3rem, 6vw, 6.9rem);
  line-height: .86;
  letter-spacing: -.085em;
}
.home-feature-panel {
  min-width: 0;
}
.home-metric-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
}
.home-command-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .85rem;
}
.home-command-strip a {
  display: grid;
  gap: .15rem;
  min-width: 0;
  min-height: 100px;
  padding: 1rem;
  border-radius: 1rem;
  text-decoration: none;
  background: #ffffff;
  color: #0f172a;
  border: 1px solid #dbe6f3;
  box-shadow: 0 16px 42px rgba(15, 23, 42, .09);
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}
.home-command-strip a:hover {
  transform: translateY(-3px);
  border-color: rgba(11, 114, 217, .32);
  box-shadow: 0 22px 54px rgba(15, 23, 42, .13);
}
.home-command-strip span {
  color: #0b72d9;
  font-size: .72rem;
  font-weight: 1000;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.home-command-strip strong {
  color: #0f172a;
  font-size: clamp(1.7rem, 2vw, 2.25rem);
  line-height: 1;
  letter-spacing: -.055em;
  font-weight: 1000;
}
.home-command-strip small {
  color: #64748b;
  font-weight: 800;
  overflow-wrap: anywhere;
}
.home-channel-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: clamp(1rem, 2vw, 1.8rem);
  align-items: start;
}
.home-main-feed,
.home-side-rail,
.home-scoreboard-panel,
.home-news-panel,
.home-media-block {
  min-width: 0;
}
.home-scoreboard-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.home-stories-layout {
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr);
  gap: 1rem;
}
.home-media-duo {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  gap: 1rem;
}
.home-media-block,
.home-scoreboard-panel,
.home-news-panel,
.home-rail-card {
  background: #ffffff;
  color: #0f172a;
  border: 1px solid #dbe6f3;
  border-radius: 1.05rem;
  box-shadow: 0 18px 45px rgba(15, 23, 42, .10);
  padding: clamp(1rem, 1.6vw, 1.35rem);
}
.home-media-block .section-header,
.home-scoreboard-panel .section-header,
.home-news-panel .section-header {
  margin-bottom: 1rem;
}
.home-channel-shell .ga-card {
  border-radius: 1.05rem;
  overflow: hidden;
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}
.home-channel-shell .ga-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 45px rgba(15, 23, 42, .12);
}
.home-channel-shell .front-lead-story-card {
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.home-channel-shell .front-lead-story-card:hover {
  transform: translateY(-3px);
  border-color: rgba(11,114,217,.38) !important;
  box-shadow: 0 30px 88px rgba(15,23,42,.25) !important;
}
.home-side-rail {
  position: sticky;
  top: 1rem;
}
.home-rail-card h2 {
  color: #0f172a;
  font-weight: 950;
  letter-spacing: -.04em;
}
.home-rail-card .media-guide-list a,
.home-rail-card .media-guide-list span {
  display: grid;
  gap: .14rem;
  padding: .85rem;
  border-radius: .85rem;
  background: #f8fafc;
  border: 1px solid #dbe6f3;
  text-decoration: none;
  transition: transform .14s ease, background-color .14s ease, border-color .14s ease;
}
.home-rail-card .media-guide-list a:hover {
  transform: translateX(3px);
  background: #ffffff;
  border-color: rgba(11,114,217,.26);
}
.home-rail-card .media-guide-list strong,
.home-sport-list span {
  color: #0f172a;
  font-size: 1rem;
  font-weight: 950;
}
.home-rail-card .media-guide-list small {
  color: #64748b;
  font-weight: 750;
}
.home-sport-list {
  display: grid;
  gap: .65rem;
}
.home-sport-list a {
  display: flex;
  justify-content: space-between;
  gap: .75rem;
  align-items: center;
  text-decoration: none;
  padding: .78rem .85rem;
  border-radius: .85rem;
  background: #f8fafc;
  border: 1px solid #dbe6f3;
  transition: transform .14s ease, background-color .14s ease, border-color .14s ease;
}
.home-sport-list a:hover {
  transform: translateX(3px);
  background: #ffffff;
  border-color: rgba(11,114,217,.26);
}
.home-sport-list strong {
  flex: 0 0 auto;
  color: #0b72d9;
  font-size: .72rem;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.home-partner-strip {
  background:
    radial-gradient(circle at 10% 5%, rgba(255,207,63,.18), transparent 30%),
    linear-gradient(135deg, #07111f, #10263f) !important;
  color: #ffffff !important;
  border-radius: 1.25rem !important;
  box-shadow: 0 26px 82px rgba(15,23,42,.22) !important;
}
.home-partner-strip .ga-title,
.home-partner-strip h2,
.home-partner-strip strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.home-partner-strip .ga-muted,
.home-partner-strip p,
.home-partner-strip small {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
}
.home-partner-strip .ga-kicker {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
}
@media (min-width: 1400px) {
  .home-scoreboard-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .home-stories-layout { grid-template-columns: minmax(0, 1.18fr) minmax(360px, .82fr); }
}
@media (max-width: 1199.98px) {
  .home-channel-grid,
  .home-media-duo,
  .home-stories-layout {
    grid-template-columns: 1fr;
  }
  .home-side-rail { position: static; }
  .home-command-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .home-channel-shell { padding-inline: .75rem !important; }
  .home-live-strip { border-radius: 1rem; }
  .home-command-strip,
  .home-scoreboard-grid,
  .home-metric-grid {
    grid-template-columns: 1fr;
  }
  .home-hero-copy { min-height: auto; }
  .home-channel-shell .network-headline { font-size: clamp(2.45rem, 13vw, 4rem); }
}

/* MAIN HUB READABILITY HARDENING v0.1.184
   Fixes muted text and dark-on-dark copy introduced by the v0.1.183 homepage facelift. */
.home-channel-shell,
.home-channel-shell .home-media-block,
.home-channel-shell .home-scoreboard-panel,
.home-channel-shell .home-news-panel,
.home-channel-shell .home-rail-card,
.home-channel-shell .ga-card,
.home-channel-shell .media-empty-box {
  color: #0f172a !important;
}

.home-channel-hero,
.home-channel-hero .home-hero-copy,
.home-channel-hero .network-headline,
.home-channel-hero h1,
.home-channel-hero h2,
.home-channel-hero h3 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.home-channel-hero .ga-muted,
.home-channel-hero p,
.home-channel-hero .lead,
.home-channel-hero small,
.home-channel-hero .home-live-strip span:last-child {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
}

.home-channel-hero .ga-chip {
  color: #1e293b !important;
  -webkit-text-fill-color: #1e293b !important;
  background: #ffffff !important;
  border-color: #dbe6f3 !important;
}

.home-channel-shell .front-lead-story-card,
.home-channel-shell .media-empty-lead {
  background: linear-gradient(135deg, #07111f, #10263f) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.home-channel-shell .front-lead-story-card h1,
.home-channel-shell .front-lead-story-card h2,
.home-channel-shell .front-lead-story-card h3,
.home-channel-shell .front-lead-story-card .ga-kicker,
.home-channel-shell .media-empty-lead h1,
.home-channel-shell .media-empty-lead h2,
.home-channel-shell .media-empty-lead h3,
.home-channel-shell .media-empty-lead .ga-kicker {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.home-channel-shell .front-lead-story-card p,
.home-channel-shell .front-lead-story-card .ga-muted,
.home-channel-shell .front-lead-story-card small,
.home-channel-shell .media-empty-lead p,
.home-channel-shell .media-empty-lead .ga-muted,
.home-channel-shell .media-empty-lead small {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
}

.home-channel-shell .home-news-panel .ga-section-title,
.home-channel-shell .home-news-panel .ga-section-title h1,
.home-channel-shell .home-news-panel .ga-section-title h2,
.home-channel-shell .home-news-panel .ga-section-title h3,
.home-channel-shell .home-news-panel .section-header h1,
.home-channel-shell .home-news-panel .section-header h2,
.home-channel-shell .home-news-panel .section-header h3,
.home-channel-shell .home-media-block .section-header h1,
.home-channel-shell .home-media-block .section-header h2,
.home-channel-shell .home-media-block .section-header h3,
.home-channel-shell .home-scoreboard-panel .section-header h1,
.home-channel-shell .home-scoreboard-panel .section-header h2,
.home-channel-shell .home-scoreboard-panel .section-header h3 {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.home-channel-shell .home-news-panel .ga-muted,
.home-channel-shell .home-news-panel p,
.home-channel-shell .home-media-block .ga-muted,
.home-channel-shell .home-media-block p,
.home-channel-shell .home-scoreboard-panel .ga-muted,
.home-channel-shell .home-scoreboard-panel p,
.home-channel-shell .home-rail-card .ga-muted,
.home-channel-shell .home-rail-card small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

.home-channel-shell .home-news-panel .ga-kicker,
.home-channel-shell .home-media-block .ga-kicker,
.home-channel-shell .home-scoreboard-panel .ga-kicker,
.home-channel-shell .home-rail-card .ga-kicker,
.home-channel-shell .partner-strip-pro .ga-kicker {
  color: #0b72d9 !important;
  -webkit-text-fill-color: #0b72d9 !important;
}

.home-partner-strip,
.home-partner-strip .row,
.home-partner-strip .col-lg-5,
.home-partner-strip .col-lg-7 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.home-partner-strip .ga-title,
.home-partner-strip h1,
.home-partner-strip h2,
.home-partner-strip h3,
.home-partner-strip strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.30);
}

.home-partner-strip .ga-muted,
.home-partner-strip p,
.home-partner-strip small {
  color: #e0f2fe !important;
  -webkit-text-fill-color: #e0f2fe !important;
}

.home-partner-strip .media-empty-box {
  background: #ffffff !important;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  border-color: rgba(255,255,255,.38) !important;
}

/* MAIN HUB HARD CONTRAST + STRAY STICKY CARD FIX v0.1.185
   Targets the exact homepage facelift sections where prior generic overrides could be beaten by legacy
   gradient/text-fill styles. Also removes the sticky right rail that created a stray floating white card
   while scrolling near the sponsor/revenue strip. */
html body.ga-light-theme .network-home-page.home-channel-shell .home-side-rail,
html body .network-home-page.home-channel-shell .home-side-rail {
  position: static !important;
  top: auto !important;
  align-self: start !important;
  z-index: auto !important;
}

html body.ga-light-theme .network-home-page.home-channel-shell .home-channel-hero,
html body .network-home-page.home-channel-shell .home-channel-hero {
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.24), transparent 34%),
    radial-gradient(circle at 92% 8%, rgba(25,211,255,.15), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 52%, #10263f 100%) !important;
  color: #ffffff !important;
}

html body.ga-light-theme .network-home-page.home-channel-shell .home-channel-hero .network-headline,
html body.ga-light-theme .network-home-page.home-channel-shell .home-channel-hero h1.network-headline,
html body .network-home-page.home-channel-shell .home-channel-hero .network-headline,
html body .network-home-page.home-channel-shell .home-channel-hero h1.network-headline {
  background: none !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  text-shadow: 0 18px 42px rgba(0,0,0,.34) !important;
}

html body.ga-light-theme .network-home-page.home-channel-shell .home-channel-hero p.lead.ga-muted,
html body.ga-light-theme .network-home-page.home-channel-shell .home-channel-hero .home-hero-copy p,
html body .network-home-page.home-channel-shell .home-channel-hero p.lead.ga-muted,
html body .network-home-page.home-channel-shell .home-channel-hero .home-hero-copy p {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
}

html body.ga-light-theme .network-home-page.home-channel-shell .front-lead-story-card,
html body .network-home-page.home-channel-shell .front-lead-story-card {
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.22), transparent 34%),
    linear-gradient(135deg, #07111f 0%, #0b1830 55%, #10263f 100%) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body.ga-light-theme .network-home-page.home-channel-shell .front-lead-story-card h1,
html body.ga-light-theme .network-home-page.home-channel-shell .front-lead-story-card h2,
html body.ga-light-theme .network-home-page.home-channel-shell .front-lead-story-card h3,
html body .network-home-page.home-channel-shell .front-lead-story-card h1,
html body .network-home-page.home-channel-shell .front-lead-story-card h2,
html body .network-home-page.home-channel-shell .front-lead-story-card h3 {
  background: none !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
}

html body.ga-light-theme .network-home-page.home-channel-shell .front-lead-story-card p,
html body.ga-light-theme .network-home-page.home-channel-shell .front-lead-story-card .ga-muted,
html body .network-home-page.home-channel-shell .front-lead-story-card p,
html body .network-home-page.home-channel-shell .front-lead-story-card .ga-muted {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

html body.ga-light-theme .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro,
html body .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro {
  background:
    radial-gradient(circle at 10% 5%, rgba(255,207,63,.20), transparent 30%),
    linear-gradient(135deg, #07111f 0%, #0b1830 55%, #10263f 100%) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  overflow: hidden !important;
}

html body.ga-light-theme .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro .ga-title,
html body.ga-light-theme .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro h2.display-6.ga-title,
html body.ga-light-theme .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro h1,
html body.ga-light-theme .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro h2,
html body.ga-light-theme .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro h3,
html body .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro .ga-title,
html body .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro h2.display-6.ga-title,
html body .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro h1,
html body .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro h2,
html body .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro h3 {
  background: none !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  text-shadow: 0 18px 44px rgba(0,0,0,.48) !important;
}

html body.ga-light-theme .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro p.ga-muted,
html body.ga-light-theme .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro p,
html body .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro p.ga-muted,
html body .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro p {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

html body.ga-light-theme .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro .media-empty-box,
html body .network-home-page.home-channel-shell .home-partner-strip.partner-strip-pro .media-empty-box {
  background: #ffffff !important;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  border: 1px solid rgba(255,255,255,.45) !important;
  box-shadow: 0 18px 48px rgba(0,0,0,.20) !important;
}

/* BROADCAST OVERLAY FACELIFT v0.1.186
   High-contrast OBS-safe overlay layer with animated entrances, logo-aware badges,
   and new batter/pitcher stat-card treatments. */
body.ga-overlay-body,
body.ga-overlay-body * {
  text-shadow: none;
}
.ga360-angular-overlay-v3,
.ga360-angular-overlay-v3 * {
  box-sizing: border-box;
}
.ga360-angular-overlay-v3 {
  --ga-overlay-safe-dark: #06111f;
  --ga-overlay-safe-panel: rgba(8, 18, 34, .94);
  --ga-overlay-safe-text: #f8fbff;
  --ga-overlay-safe-muted: #d6e8f7;
  --ga-overlay-safe-label: #82eaff;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ga-overlay-safe-text) !important;
}
.ga360-angular-overlay-v3 .overlay-fullscreen {
  background: transparent !important;
}
.ga360-angular-overlay-v3 .overlay-board,
.ga360-angular-overlay-v3 .scorebug-broadcast-v2,
.ga360-angular-overlay-v3 .ga-lower-third-card,
.ga360-angular-overlay-v3 .broadcast-card {
  background:
    radial-gradient(circle at 0% 0%, color-mix(in srgb, var(--ga-overlay-primary) 24%, transparent), transparent 34%),
    linear-gradient(135deg, rgba(3, 10, 24, .96), rgba(7, 22, 42, .94) 58%, rgba(9, 32, 58, .92)) !important;
  border: 1px solid rgba(255,255,255,.24) !important;
  color: var(--ga-overlay-safe-text) !important;
  -webkit-text-fill-color: var(--ga-overlay-safe-text) !important;
  box-shadow: 0 32px 94px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.10) !important;
}
.ga360-angular-overlay-v3 .overlay-board *,
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 *,
.ga360-angular-overlay-v3 .ga-lower-third-card * {
  -webkit-text-fill-color: currentColor !important;
}
.ga360-angular-overlay-v3 .overlay-board h1,
.ga360-angular-overlay-v3 .overlay-board h2,
.ga360-angular-overlay-v3 .overlay-board h3,
.ga360-angular-overlay-v3 .overlay-title-row h1,
.ga360-angular-overlay-v3 .overlay-player-panel h2,
.ga360-angular-overlay-v3 .ga-lower-third-card .name,
.ga360-angular-overlay-v3 .player-feature-id h1,
.ga360-angular-overlay-v3 .bug-team-text,
.ga360-angular-overlay-v3 .bug-score,
.ga360-angular-overlay-v3 .broadcast-stat strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  text-shadow: 0 10px 28px rgba(0,0,0,.32) !important;
}
.ga360-angular-overlay-v3 .bug-score {
  color: #06111f !important;
  -webkit-text-fill-color: #06111f !important;
  text-shadow: none !important;
}
.ga360-angular-overlay-v3 .overlay-kicker,
.ga360-angular-overlay-v3 .ga-lower-third-card .label,
.ga360-angular-overlay-v3 .broadcast-stat span,
.ga360-angular-overlay-v3 .bug-panel-label {
  color: var(--ga-overlay-safe-label) !important;
  -webkit-text-fill-color: var(--ga-overlay-safe-label) !important;
  opacity: 1 !important;
}
.ga360-angular-overlay-v3 .overlay-team-heading small,
.ga360-angular-overlay-v3 .overlay-lineup-player small,
.ga360-angular-overlay-v3 .overlay-player-panel p,
.ga360-angular-overlay-v3 .overlay-score-strip small,
.ga360-angular-overlay-v3 .overlay-footer-meta,
.ga360-angular-overlay-v3 .ga-lower-third-card .subline,
.ga360-angular-overlay-v3 .overlay-alert-detail,
.ga360-angular-overlay-v3 .player-feature-id p,
.ga360-angular-overlay-v3 .player-feature-id small {
  color: var(--ga-overlay-safe-muted) !important;
  -webkit-text-fill-color: var(--ga-overlay-safe-muted) !important;
  opacity: 1 !important;
}
.ga360-angular-overlay-v3 .overlay-pill,
.ga360-angular-overlay-v3 .overlay-team-card,
.ga360-angular-overlay-v3 .overlay-info-card,
.ga360-angular-overlay-v3 .overlay-player-panel,
.ga360-angular-overlay-v3 .overlay-score-strip div,
.ga360-angular-overlay-v3 .overlay-linescore-table td,
.ga360-angular-overlay-v3 .broadcast-stat {
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  color: #f8fbff !important;
}
.ga360-angular-overlay-v3 .overlay-linescore-table th {
  color: #cde8ff !important;
  -webkit-text-fill-color: #cde8ff !important;
}
.ga360-angular-overlay-v3 .bug-logo,
.ga360-angular-overlay-v3 .overlay-team-badge,
.ga360-angular-overlay-v3 .player-team-logo {
  overflow: hidden;
  display: inline-grid;
  place-items: center;
  background: linear-gradient(135deg, var(--ga-overlay-primary), var(--ga-overlay-accent)) !important;
  color: #06111f !important;
  -webkit-text-fill-color: #06111f !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.28);
}
.ga360-angular-overlay-v3 .bug-logo img,
.ga360-angular-overlay-v3 .overlay-team-badge img,
.ga360-angular-overlay-v3 .player-team-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 8%;
  background: #ffffff;
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 {
  animation: gaOverlaySlideUp .42s cubic-bezier(.2, .9, .2, 1) both;
}
.ga360-angular-overlay-v3 .overlay-board,
.ga360-angular-overlay-v3 .ga-lower-third-card,
.ga360-angular-overlay-v3 .animate-overlay-in {
  animation: gaOverlayPopIn .48s cubic-bezier(.16, 1, .3, 1) both;
}
.broadcast-topline {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1.3rem;
}
.player-feature-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr);
  gap: 1.2rem;
  align-items: stretch;
}
.player-feature-id {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  min-width: 0;
  border-radius: 30px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
  padding: 1.25rem;
}
.player-team-logo {
  width: clamp(92px, 9vw, 142px);
  height: clamp(92px, 9vw, 142px);
  border-radius: 30px;
  flex: 0 0 auto;
  font-size: clamp(1.7rem, 3vw, 3rem);
  font-weight: 1000;
}
.player-feature-id h1 {
  margin: .12rem 0 .4rem;
  font-size: clamp(2.4rem, 5vw, 5.4rem) !important;
  line-height: .86;
  letter-spacing: -.075em;
  overflow-wrap: anywhere;
}
.player-feature-id small {
  display: block;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-weight: 950;
}
.broadcast-stat-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .8rem;
}
.broadcast-stat {
  min-height: 112px;
  border-radius: 24px;
  padding: .9rem 1rem;
  display: grid;
  align-content: center;
  gap: .18rem;
}
.broadcast-stat span {
  text-transform: uppercase;
  letter-spacing: .14em;
  font-weight: 1000;
  font-size: .72rem;
}
.broadcast-stat strong {
  font-size: clamp(2rem, 4vw, 4.2rem);
  line-height: .95;
  font-variant-numeric: tabular-nums;
}
@keyframes gaOverlayPopIn {
  0% { opacity: 0; transform: translateY(22px) scale(.985); filter: blur(5px); }
  100% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}
@keyframes gaOverlaySlideUp {
  0% { opacity: 0; transform: translateY(34px); }
  100% { opacity: 1; transform: translateY(0); }
}
@media (max-width: 980px) {
  .player-feature-grid { grid-template-columns: 1fr; }
  .broadcast-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .broadcast-topline { flex-direction: column; }
}

/* MAIN HUB FEATURED GAME CONTRAST LOCK v0.1.186
   Fixes light-on-light copy inside the featured game card on the hub hero. */
html body .network-home-page.home-channel-shell .home-feature-panel,
html body .network-home-page.home-channel-shell .hero-game-card {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
html body .network-home-page.home-channel-shell .hero-game-card {
  background: #ffffff !important;
  border: 1px solid #dbe6f3 !important;
  box-shadow: 0 26px 76px rgba(15,23,42,.20) !important;
}
html body .network-home-page.home-channel-shell .hero-game-card h1,
html body .network-home-page.home-channel-shell .hero-game-card h2,
html body .network-home-page.home-channel-shell .hero-game-card h3,
html body .network-home-page.home-channel-shell .hero-game-card h2 a,
html body .network-home-page.home-channel-shell .hero-game-card strong,
html body .network-home-page.home-channel-shell .hero-game-card .mini-metric strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  opacity: 1 !important;
  text-shadow: none !important;
}
html body .network-home-page.home-channel-shell .hero-game-card .ga-kicker,
html body .network-home-page.home-channel-shell .hero-game-card .mini-metric span,
html body .network-home-page.home-channel-shell .hero-game-card .scoreboard-card-pro .ga-kicker {
  color: #0b72d9 !important;
  -webkit-text-fill-color: #0b72d9 !important;
}
html body .network-home-page.home-channel-shell .hero-game-card .ga-muted,
html body .network-home-page.home-channel-shell .hero-game-card small,
html body .network-home-page.home-channel-shell .hero-game-card p,
html body .network-home-page.home-channel-shell .hero-game-card .scoreboard-card-pro small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  opacity: 1 !important;
}
html body .network-home-page.home-channel-shell .hero-game-card .scoreboard-card-pro,
html body .network-home-page.home-channel-shell .hero-game-card .mini-metric {
  background: #f8fafc !important;
  border: 1px solid #dbe6f3 !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
html body .network-home-page.home-channel-shell .hero-game-card .badge-live {
  color: #7f1d1d !important;
  -webkit-text-fill-color: #7f1d1d !important;
  background: #fff1f2 !important;
  border: 1px solid #fecdd3 !important;
}

/* v0.1.187 Scorekeeper hero/header contrast final lock
   The guided workflow header sits on the dark scorekeeper shell, while the
   step panels below are light cards. Split the typography intentionally so
   the shell header is bright and the light work panels stay dark/readable. */
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head {
  background: linear-gradient(135deg, rgba(6, 17, 31, .92), rgba(15, 35, 58, .86)) !important;
  border: 1px solid rgba(148, 197, 255, .24) !important;
  border-radius: 24px !important;
  padding: 1rem 1.1rem !important;
  box-shadow: 0 18px 44px rgba(2, 8, 23, .28) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head .scorebook-panel-kicker,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head .ga-kicker {
  color: #67e8f9 !important;
  -webkit-text-fill-color: #67e8f9 !important;
  opacity: 1 !important;
  text-shadow: 0 0 18px rgba(34, 211, 238, .20) !important;
}
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head .scorebook-readable-title,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head h1,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head h2,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head h3 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: 0 14px 34px rgba(0,0,0,.42) !important;
}
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head .scorebook-readable-muted,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head p {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
  opacity: 1 !important;
  text-shadow: 0 10px 28px rgba(0,0,0,.25) !important;
}
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head .scorebook-context-chip,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head .ga-chip {
  background: rgba(226, 242, 255, .96) !important;
  border: 1px solid rgba(186, 230, 253, .9) !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  box-shadow: none !important;
}
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .scorebook-step-header,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .scorebook-guided-pane,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .scorebook-step-panel.is-active {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .scorebook-step-header h1,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .scorebook-step-header h2,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .scorebook-step-header h3,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .scorebook-guided-pane strong:not(.scorebook-guided-label strong),
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .scorebook-guided-pane span,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .scorebook-guided-pane label {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  opacity: 1 !important;
  text-shadow: none !important;
}
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .scorebook-step-header p,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .scorebook-zone-note,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] .form-label.small {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  opacity: 1 !important;
}

/* v0.1.187 OBS overlay no-refresh live-update state */
.ga360-angular-overlay-v3[data-live-update-mode="fetch-patch-no-refresh"] [data-overlay-render-target] {
  will-change: contents;
}
.ga360-angular-overlay-v3 .overlay-soft-swap-enter {
  animation: gaOverlaySoftSwap .22s ease-out both;
}
@keyframes gaOverlaySoftSwap {
  0% { opacity: .84; transform: translateY(2px); }
  100% { opacity: 1; transform: translateY(0); }
}


/* LEAGUE INDEX GUTTER FIX
   Keeps the public league directory off the viewport edge on every breakpoint. */
.league-public-index.public-index-refresh {
  padding-left: clamp(1rem, 4vw, 2.5rem) !important;
  padding-right: clamp(1rem, 4vw, 2.5rem) !important;
  box-sizing: border-box !important;
}

.league-public-index .public-index-hero,
.league-public-index .public-index-list {
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}


/* v0.1.193 directory channel hero refresh
   Matches League and Tournament directories to the News, Watch, and Photos channel presentation. */
.directory-channel-shell {
  width: min(100%, 1560px);
  margin-inline: auto;
  padding-inline: clamp(1rem, 3.5vw, 4.5rem);
  padding-block: clamp(1rem, 2vw, 2rem) 2.5rem;
}
.directory-channel-hero,
.directory-channel-shell .media-channel-grid {
  margin-inline: auto;
}
.directory-live-strip .media-live-dot {
  background: #0b72d9;
  box-shadow: 0 0 0 6px rgba(11, 114, 217, .15);
}
.tournament-strip .media-live-dot {
  background: #f59e0b;
  box-shadow: 0 0 0 6px rgba(245, 158, 11, .16);
}
.directory-lead-card {
  display: block;
  text-decoration: none;
}
.directory-lead-media {
  position: relative;
  min-height: clamp(390px, 43vw, 560px);
  border-radius: 1.15rem;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 24px 70px rgba(15, 23, 42, .22);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.directory-lead-card:hover .directory-lead-media {
  transform: translateY(-3px);
  border-color: rgba(11, 114, 217, .38);
  box-shadow: 0 30px 88px rgba(15, 23, 42, .28);
}
.league-lead-media {
  background:
    radial-gradient(circle at 15% 25%, rgba(11, 114, 217, .52), transparent 34%),
    radial-gradient(circle at 80% 20%, rgba(34, 197, 94, .24), transparent 28%),
    linear-gradient(120deg, rgba(3, 7, 18, .98), rgba(7, 17, 31, .82) 54%, rgba(15, 23, 42, .94));
}
.tournament-lead-media {
  background:
    radial-gradient(circle at 14% 24%, rgba(245, 158, 11, .48), transparent 32%),
    radial-gradient(circle at 82% 18%, rgba(11, 114, 217, .30), transparent 31%),
    linear-gradient(120deg, rgba(3, 7, 18, .98), rgba(26, 14, 3, .78) 54%, rgba(15, 23, 42, .94));
}
.directory-lead-media::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(4, 9, 20, .96), rgba(4, 9, 20, .42)),
    repeating-linear-gradient(135deg, rgba(255,255,255,.055) 0 1px, transparent 1px 18px);
}
.directory-lead-content {
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  z-index: 1;
  padding: clamp(1.25rem, 3vw, 2.7rem);
}
.directory-lead-content h1 {
  max-width: 980px;
  margin: 0 0 .8rem;
  font-size: clamp(2.2rem, 4.5vw, 4.9rem);
  line-height: .92;
  letter-spacing: -.075em;
  font-weight: 950;
}
.directory-lead-content p {
  max-width: 780px;
  margin: 0;
  font-weight: 800;
}
.directory-feature-mark {
  background:
    radial-gradient(circle at 25% 25%, rgba(11, 114, 217, .50), transparent 34%),
    linear-gradient(135deg, #07111f, #0f172a);
}
.tournament-feature-mark {
  background:
    radial-gradient(circle at 25% 25%, rgba(245, 158, 11, .52), transparent 34%),
    linear-gradient(135deg, #07111f, #0f172a);
}
.directory-feature-mark span {
  background: rgba(3, 7, 18, .18);
  text-transform: uppercase;
  letter-spacing: .07em;
}
.directory-channel-shell .public-index-list {
  display: grid;
  gap: .85rem;
}
.directory-channel-shell .public-index-card {
  background: #ffffff;
  border-color: #dbe6f3;
  box-shadow: 0 18px 45px rgba(15, 23, 42, .08);
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}
.directory-channel-shell .public-index-card:hover {
  transform: translateY(-3px);
  border-color: rgba(11, 114, 217, .28);
  box-shadow: 0 22px 58px rgba(15, 23, 42, .13);
}
@media (max-width: 991.98px) {
  .directory-channel-shell {
    padding-inline: clamp(.85rem, 4vw, 1.5rem);
  }
}
@media (max-width: 575.98px) {
  .directory-channel-shell {
    padding-inline: .75rem;
  }
  .directory-lead-media {
    min-height: 430px;
  }
}

/* v0.1.208 RESPONSIVE PAGE GUTTERS
   Page-level left/right gutters should only appear once the browser is wide enough.
   Smaller and mid-sized browsers use the full viewport; individual cards keep their own internal padding. */
@media (max-width: 1279.98px) {
  body.ga-light-theme .ga-navbar > .container-fluid,
  body.ga-light-theme main.ga-page,
  body.ga-light-theme footer.container-fluid,
  body.ga-light-theme .network-home-page,
  body.ga-light-theme .home-public-refresh,
  body.ga-light-theme .home-channel-shell,
  body.ga-light-theme .news-page-shell,
  body.ga-light-theme .media-channel-shell,
  body.ga-light-theme .directory-channel-shell,
  body.ga-light-theme .sports-public-refresh,
  body.ga-light-theme .sports-hub-index-page,
  body.ga-light-theme .baseball-public-refresh,
  body.ga-light-theme .league-public-refresh,
  body.ga-light-theme .tournament-public-refresh,
  body.ga-light-theme .league-public-index.public-index-refresh {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.ga-light-theme main > .network-hero-pro,
  body.ga-light-theme main > .network-hero-pro ~ *:not(script):not(style),
  body.ga-light-theme main > .gamecenter-hero,
  body.ga-light-theme main > .gamecenter-hero ~ *:not(script):not(style),
  body.ga-light-theme main > .gamecenter-hero + .row,
  body.ga-light-theme main > .gamecenter-hero + .container,
  body.ga-light-theme main > .gamecenter-hero + .container-fluid {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.ga-light-theme .news-page-shell .news-channel-grid,
  body.ga-light-theme .media-channel-grid,
  body.ga-light-theme .directory-channel-shell .media-channel-grid,
  body.ga-light-theme .league-public-index .public-index-hero,
  body.ga-light-theme .league-public-index .public-index-list {
    max-width: none !important;
  }
}

@media (min-width: 1280px) {
  body.ga-light-theme .ga-navbar > .container-fluid,
  body.ga-light-theme main.ga-page,
  body.ga-light-theme footer.container-fluid {
    padding-left: clamp(1rem, 2.4vw, 2.5rem) !important;
    padding-right: clamp(1rem, 2.4vw, 2.5rem) !important;
  }

  body.ga-light-theme .network-home-page,
  body.ga-light-theme .home-public-refresh,
  body.ga-light-theme .home-channel-shell,
  body.ga-light-theme .news-page-shell,
  body.ga-light-theme .media-channel-shell,
  body.ga-light-theme .directory-channel-shell,
  body.ga-light-theme .sports-public-refresh,
  body.ga-light-theme .sports-hub-index-page,
  body.ga-light-theme .baseball-public-refresh,
  body.ga-light-theme .league-public-refresh,
  body.ga-light-theme .tournament-public-refresh,
  body.ga-light-theme .league-public-index.public-index-refresh {
    width: min(100%, 1560px) !important;
    max-width: 1560px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: clamp(1rem, 3vw, 3rem) !important;
    padding-right: clamp(1rem, 3vw, 3rem) !important;
    box-sizing: border-box !important;
  }
}

/* v0.1.212 collapsed public navigation hardening */
@media (max-width: 991.98px) {
  body.ga-light-theme .ga-public-nav-groups {
    width: 100% !important;
    margin-left: 0 !important;
    padding-top: .75rem !important;
    gap: .72rem !important;
  }
  body.ga-light-theme .ga-public-nav-media,
  body.ga-light-theme .ga-public-nav-directory {
    width: 100% !important;
    max-width: none !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    border-radius: 1rem !important;
    padding: .65rem !important;
    box-sizing: border-box !important;
  }
  body.ga-light-theme .ga-public-nav-directory {
    background: #ffffff !important;
    border: 1px solid #d7e2ef !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .06) !important;
    gap: .45rem !important;
  }
  body.ga-light-theme .ga-public-nav-media .nav-item,
  body.ga-light-theme .ga-public-nav-directory .nav-item {
    flex: 1 1 96px !important;
    min-width: 96px !important;
  }
  body.ga-light-theme .ga-public-nav-media .nav-link,
  body.ga-light-theme .ga-public-nav-directory .nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    border-radius: .78rem !important;
    padding: .62rem .72rem !important;
    color: #050b14 !important;
    -webkit-text-fill-color: #050b14 !important;
    font-weight: 1000 !important;
    background: #f8fafc !important;
    border: 1px solid #dbe6f3 !important;
  }
  body.ga-light-theme .ga-public-nav-actions {
    width: 100% !important;
    padding-bottom: .4rem !important;
  }
  body.ga-light-theme .ga-public-nav-actions .btn,
  body.ga-light-theme .ga-public-nav-actions form,
  body.ga-light-theme .ga-public-nav-actions form .btn {
    flex: 1 1 112px !important;
  }
}

/* v0.1.212 League/Tournament directory contrast hardening */
.directory-channel-shell .directory-lead-content,
.directory-channel-shell .directory-lead-content * {
  color: #ffffff;
}
.directory-channel-shell .directory-lead-content h1,
.directory-channel-shell .directory-lead-content p,
.directory-channel-shell .directory-lead-content .media-meta,
.directory-channel-shell .directory-lead-content .media-meta span {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.directory-channel-shell .media-side-panel,
.directory-channel-shell .media-side-panel *,
.directory-channel-shell .media-main-feed,
.directory-channel-shell .media-main-feed *,
.directory-channel-shell .media-rail-panel,
.directory-channel-shell .media-rail-panel * {
  text-shadow: none;
}
.directory-channel-shell .media-side-panel,
.directory-channel-shell .media-main-feed,
.directory-channel-shell .media-rail-panel,
.directory-channel-shell .public-index-card {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
.directory-channel-shell .media-feature-body small,
.directory-channel-shell .public-index-meta,
.directory-channel-shell .public-index-meta span,
.directory-channel-shell .media-guide-list small {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
}
.directory-channel-shell .ga-kicker,
.directory-channel-shell .media-row-kicker {
  color: #0b4ea2 !important;
  -webkit-text-fill-color: #0b4ea2 !important;
}

/* v0.1.212 final nav and directory hero contrast pass */
@media (max-width: 991.98px) {
  body.ga-light-theme .navbar-collapse {
    padding-top: .65rem !important;
  }
  body.ga-light-theme .ga-public-nav-media,
  body.ga-light-theme .ga-public-nav-directory {
    width: 100vw !important;
    margin-left: -.75rem !important;
    margin-right: -.75rem !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-radius: 0 !important;
    padding: .75rem 1rem !important;
    gap: .55rem !important;
    min-height: 64px !important;
  }
  body.ga-light-theme .ga-public-nav-media .nav-item,
  body.ga-light-theme .ga-public-nav-directory .nav-item {
    flex: 1 1 112px !important;
  }
  body.ga-light-theme .ga-public-nav-media .nav-link,
  body.ga-light-theme .ga-public-nav-directory .nav-link {
    min-height: 46px !important;
    line-height: 1.1 !important;
    white-space: normal !important;
  }
}

body.ga-light-theme .directory-channel-shell .directory-lead-media::before {
  background:
    linear-gradient(90deg, rgba(3, 7, 18, .98), rgba(3, 7, 18, .72) 48%, rgba(3, 7, 18, .35)),
    linear-gradient(0deg, rgba(3, 7, 18, .98), rgba(3, 7, 18, .30) 58%, rgba(3, 7, 18, .20)),
    repeating-linear-gradient(135deg, rgba(255,255,255,.055) 0 1px, transparent 1px 18px) !important;
}
body.ga-light-theme .directory-channel-shell .directory-lead-content,
body.ga-light-theme .directory-channel-shell .directory-lead-content h1,
body.ga-light-theme .directory-channel-shell .directory-lead-content p,
body.ga-light-theme .directory-channel-shell .directory-lead-content .media-meta,
body.ga-light-theme .directory-channel-shell .directory-lead-content .media-meta span {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 4px 24px rgba(0,0,0,.86) !important;
}
body.ga-light-theme .directory-channel-shell .directory-lead-content .media-pill {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: rgba(2, 6, 23, .78) !important;
  border: 1px solid rgba(255,255,255,.38) !important;
}
body.ga-light-theme .directory-channel-shell .directory-lead-content .media-pill-live {
  color: #050b14 !important;
  -webkit-text-fill-color: #050b14 !important;
  background: #ffffff !important;
  border-color: rgba(255,255,255,.86) !important;
  text-shadow: none !important;
}

/* v0.1.216 Main hub compact scoreboard polish */
.network-home-page .home-scoreboard-compact-grid .ga-gamecard--ticker {
  min-height: 118px !important;
  padding: .7rem .75rem !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 28px rgba(15,23,42,.08) !important;
}
.network-home-page .home-scoreboard-compact-grid .ga-gamecard__meta {
  margin-bottom: .45rem !important;
}
.network-home-page .home-scoreboard-compact-grid .ga-gamecard__team {
  min-height: 26px !important;
  gap: .45rem !important;
}
.network-home-page .home-scoreboard-compact-grid .ga-gamecard__logo {
  width: 26px !important;
  height: 26px !important;
  border-radius: 9px !important;
  font-size: .62rem !important;
}
.network-home-page .home-scoreboard-compact-grid .ga-gamecard__name {
  font-size: .86rem !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
.network-home-page .home-scoreboard-compact-grid .ga-gamecard__score {
  font-size: 1rem !important;
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
}
.network-home-page .home-scoreboard-compact-grid .ga-gamecard__footer {
  margin-top: .5rem !important;
  padding-top: .45rem !important;
  font-size: .72rem !important;
}
@media (max-width: 575.98px) {
  .network-home-page .home-scoreboard-compact-grid {
    grid-template-columns: 1fr !important;
  }
}


/* v0.1.218 public nav action row fix */
body.ga-light-theme .ga-public-nav-actions {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: .5rem !important;
  min-width: max-content !important;
}
body.ga-light-theme .ga-public-nav-actions form {
  display: inline-flex !important;
  margin: 0 !important;
  width: auto !important;
  min-width: 0 !important;
}
body.ga-light-theme .ga-public-nav-actions .btn,
body.ga-light-theme .ga-public-nav-actions form .btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 6.25rem !important;
  white-space: nowrap !important;
}
@media (max-width: 991.98px) {
  body.ga-light-theme .ga-public-nav-actions {
    width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: .5rem !important;
  }
  body.ga-light-theme .ga-public-nav-actions .btn,
  body.ga-light-theme .ga-public-nav-actions form,
  body.ga-light-theme .ga-public-nav-actions form .btn {
    width: 100% !important;
    min-width: 0 !important;
    flex: initial !important;
  }
}

/* v0.1.221 main hub compact hero and news-led layout */
@media (max-width: 900px) {
  .network-home-page .home-news-panel > div[style*="grid-template-columns:minmax(0,1.25fr)"] {
    grid-template-columns:1fr !important;
  }
  .network-home-page .home-channel-hero .row {
    gap:.75rem !important;
  }
}

@media (max-width: 640px) {
  .network-home-page .home-channel-hero {
    border-radius:22px !important;
  }
  .network-home-page .home-hero-actions .btn {
    flex:1 1 calc(50% - .5rem);
    min-width:0;
  }
  .network-home-page .home-scoreboard-compact-grid {
    grid-template-columns:1fr !important;
  }
}


/* v0.1.223 context-aware ticker visibility hardening */
html body .ga-ticker--games .ga-ticker-game,
html body.ga-light-theme .ga-ticker--games .ga-ticker-game {
  flex-basis: 430px !important;
  width: 430px !important;
  grid-template-columns: minmax(100px, auto) minmax(0, 1fr) auto !important;
}

html body .ga-ticker--games .ga-ticker-status,
html body.ga-light-theme .ga-ticker--games .ga-ticker-status {
  min-width: 100px !important;
  max-width: none !important;
  overflow: visible !important;
  text-overflow: clip !important;
  letter-spacing: .05em !important;
  padding-inline: .55rem !important;
  color: #1f2937 !important;
  -webkit-text-fill-color: #1f2937 !important;
}

@media (max-width: 640px) {
  html body .ga-ticker--games .ga-ticker-game,
  html body.ga-light-theme .ga-ticker--games .ga-ticker-game {
    flex-basis: 360px !important;
    width: 360px !important;
    grid-template-columns: minmax(92px, auto) minmax(0, 1fr) auto !important;
  }

  html body .ga-ticker--games .ga-ticker-status,
  html body.ga-light-theme .ga-ticker--games .ga-ticker-status {
    min-width: 92px !important;
    font-size: .62rem !important;
    letter-spacing: .035em !important;
  }
}


/* v0.1.225 overlay motion/color/brand hardening
   OBS overlays must update in-place with JavaScript, not animate on each payload patch.
   Visibility/opacity can still be controlled by OBS or parent containers. */
body.ga-overlay-body .ga360-angular-overlay-v3,
body.ga-overlay-body .ga360-angular-overlay-v3 * {
  animation: none !important;
  transition: none !important;
  scroll-behavior: auto !important;
}
body.ga-overlay-body .ga360-angular-overlay-v3 {
  --ga-overlay-primary: #312e81;
  --ga-overlay-secondary: #4c1d95;
  --ga-overlay-accent: #f97316;
  --ga-overlay-surface: #0b1020;
  --ga-overlay-text: #f8fbff;
  --ga-overlay-safe-dark: #050816;
  --ga-overlay-safe-panel: rgba(11, 16, 32, .96);
  --ga-overlay-safe-label: #f8fafc;
}
body.ga-overlay-body .ga360-angular-overlay-v3 .overlay-board,
body.ga-overlay-body .ga360-angular-overlay-v3 .scorebug-broadcast-v2,
body.ga-overlay-body .ga360-angular-overlay-v3 .ga-lower-third-card,
body.ga-overlay-body .ga360-angular-overlay-v3 .broadcast-card {
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.20), transparent 34%),
    linear-gradient(135deg, rgba(5,8,22,.98), rgba(11,16,32,.96) 58%, rgba(17,24,39,.94)) !important;
}
body.ga-overlay-body .ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-side,
body.ga-overlay-body .ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-status-panel,
body.ga-overlay-body .ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-count-panel,
body.ga-overlay-body .ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-bases-panel,
body.ga-overlay-body .ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-outs-panel {
  background: rgba(5, 8, 22, .96) !important;
}
body.ga-overlay-body .ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-score {
  background: linear-gradient(180deg, #f8fafc, #dbe3ee) !important;
  color: #050816 !important;
  -webkit-text-fill-color: #050816 !important;
}
body.ga-overlay-body .ga360-angular-overlay-v3 .bug-logo,
body.ga-overlay-body .ga360-angular-overlay-v3 .overlay-team-badge,
body.ga-overlay-body .ga360-angular-overlay-v3 .player-team-logo,
body.ga-overlay-body .ga360-angular-overlay-v3 .ga360-overlay-brand__badge {
  background: linear-gradient(135deg, #312e81, #4c1d95) !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
}
body.ga-overlay-body .ga360-angular-overlay-v3 .bug-logo img,
body.ga-overlay-body .ga360-angular-overlay-v3 .overlay-team-badge img,
body.ga-overlay-body .ga360-angular-overlay-v3 .player-team-logo img,
body.ga-overlay-body .ga360-angular-overlay-v3 .ga360-overlay-brand__logo-image {
  background: transparent !important;
  padding: 8% !important;
}
body.ga-overlay-body .ga360-angular-overlay-v3 .ga360-overlay-brand-row {
  margin-top: .7rem;
}
body.ga-overlay-body .ga360-angular-overlay-v3 .ga360-overlay-brand {
  background: rgba(5, 8, 22, .96) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  box-shadow: 0 12px 30px rgba(0,0,0,.34) !important;
}
body.ga-overlay-body .ga360-angular-overlay-v3 .ga360-overlay-brand__label,
body.ga-overlay-body .ga360-angular-overlay-v3 .ga360-overlay-brand__logo-text {
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
}


/* v0.1.242 Scorekeeper workflow intro copy contrast */
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head .scorebook-readable-title,
html body .scorebook-shell.scorebook-pro .scorebook-workflow-card[data-scorebook-workflow] > .scorebook-section-head .scorebook-readable-muted {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
}
.scorebook-status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.32rem .6rem;background:rgba(34,197,94,.14);border:1px solid rgba(134,239,172,.35);color:#bbf7d0!important;-webkit-text-fill-color:#bbf7d0!important;font-size:.68rem;font-weight:1000;text-transform:uppercase;letter-spacing:.09em}.scorebook-transition-hint{display:grid;gap:.2rem;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.065);border-radius:16px;padding:.75rem .85rem}.scorebook-transition-hint strong{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:.82rem;font-weight:1000;text-transform:uppercase;letter-spacing:.08em}.scorebook-transition-hint span{color:#dbeafe!important;-webkit-text-fill-color:#dbeafe!important;font-size:.78rem;font-weight:750;line-height:1.25}.scorebook-end-game-confirm{border:1px solid rgba(248,113,113,.38);background:rgba(127,29,29,.24);border-radius:16px;overflow:hidden}.scorebook-end-game-confirm summary{list-style:none;cursor:pointer;border-radius:14px!important}.scorebook-end-game-confirm summary::-webkit-details-marker{display:none}.scorebook-end-game-form{display:grid;gap:.55rem;margin:0;padding:.75rem;background:#111827}.scorebook-end-game-label{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:.78rem;font-weight:900;line-height:1.25}.scorebook-end-game-slider{width:100%;accent-color:#ef4444;cursor:pointer}.scorebook-end-game-slider-label{display:flex;justify-content:space-between;gap:.5rem;color:#fee2e2!important;-webkit-text-fill-color:#fee2e2!important;font-size:.68rem;font-weight:1000;text-transform:uppercase;letter-spacing:.08em}

.scorebook-manual-bases {
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 18px;
  padding: .55rem;
  background: rgba(15,23,42,.42);
}
.scorebook-manual-bases summary { list-style: none; cursor: pointer; }
.scorebook-manual-bases summary::-webkit-details-marker { display: none; }
.scorebook-manual-bases-form { display: grid; gap: .65rem; }
.scorebook-manual-base-help {
  display: grid;
  gap: .25rem;
  padding: .75rem;
  border-radius: 16px;
  background: rgba(25,211,255,.10);
  border: 1px solid rgba(103,232,249,.28);
}
.scorebook-manual-base-help strong { color: #fff !important; -webkit-text-fill-color: #fff !important; font-weight: 1000; }
.scorebook-manual-base-help span,
.scorebook-manual-base-warning {
  color: #dff7ff !important;
  -webkit-text-fill-color: #dff7ff !important;
  font-size: .82rem;
  line-height: 1.35;
  margin: 0;
}
.scorebook-manual-base-warning { color: #fef3c7 !important; -webkit-text-fill-color: #fef3c7 !important; font-weight: 800; }
.scorebook-manual-base-row { display: grid; gap: .25rem; }
.scorebook-manual-base-row label { color: #bae6fd !important; -webkit-text-fill-color: #bae6fd !important; font-weight: 1000; }
.scorebook-manual-base-alert {
  border-radius: 14px;
  padding: .65rem .75rem;
  background: rgba(248,113,113,.18);
  border: 1px solid rgba(248,113,113,.42);
  color: #fecaca !important;
  -webkit-text-fill-color: #fecaca !important;
  font-size: .82rem;
  font-weight: 900;
}

.scorebook-post-flash {
  margin: 0 0 1.5rem;
}

.scorebook-post-flash .alert {
  box-shadow: 0 14px 40px rgba(0, 0, 0, .18);
}

/* v0.1.363 admin organization index contrast hardening
   Players, Teams, Leagues, and Tournaments use light table surfaces in the light theme,
   so force dark text throughout those index cards instead of light-on-light utility text. */
body.ga-light-theme .admin-organization-index,
body.ga-light-theme .admin-organization-index .ga-card,
body.ga-light-theme .admin-organization-index .table,
body.ga-light-theme .admin-organization-index .ga-table,
body.ga-light-theme .admin-organization-index .table td,
body.ga-light-theme .admin-organization-index .table th,
body.ga-light-theme .admin-organization-index .table strong,
body.ga-light-theme .admin-organization-index .table div,
body.ga-light-theme .admin-organization-index .table span:not(.badge),
body.ga-light-theme .admin-organization-index .table a:not(.btn) {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
body.ga-light-theme .admin-organization-index .ga-card {
  background: #ffffff !important;
  border-color: rgba(15,23,42,.12) !important;
  box-shadow: 0 18px 44px rgba(15,23,42,.08) !important;
}
body.ga-light-theme .admin-organization-index .ga-table thead th,
body.ga-light-theme .admin-organization-index .table thead th {
  background: #eef6ff !important;
  color: #1e3a8a !important;
  -webkit-text-fill-color: #1e3a8a !important;
  border-bottom-color: rgba(30,58,138,.22) !important;
}
body.ga-light-theme .admin-organization-index .table tbody tr,
body.ga-light-theme .admin-organization-index .ga-table tbody tr {
  background: #ffffff !important;
  border-color: rgba(15,23,42,.10) !important;
}
body.ga-light-theme .admin-organization-index .table tbody tr:hover,
body.ga-light-theme .admin-organization-index .ga-table tbody tr:hover {
  background: #f8fafc !important;
}
body.ga-light-theme .admin-organization-index .ga-chip {
  background: #eff6ff !important;
  border-color: rgba(37,99,235,.22) !important;
  color: #1e3a8a !important;
  -webkit-text-fill-color: #1e3a8a !important;
  font-weight: 900 !important;
}
body.ga-light-theme .admin-organization-index .btn-outline-light {
  background: #ffffff !important;
  color: #0b5fb7 !important;
  -webkit-text-fill-color: #0b5fb7 !important;
  border-color: rgba(11,95,183,.42) !important;
}
body.ga-light-theme .admin-organization-index .btn-outline-info {
  background: #f0f9ff !important;
  color: #075985 !important;
  -webkit-text-fill-color: #075985 !important;
  border-color: rgba(7,89,133,.34) !important;
}


/* v0.1.364 admin field/facility/event/sport index contrast and search hardening */
body.ga-light-theme .facility-admin-shell,
body.ga-light-theme .facility-admin-shell .facility-admin-card,
body.ga-light-theme .facility-admin-shell .facility-admin-card *,
body.ga-light-theme .facility-admin-shell .facility-admin-metrics,
body.ga-light-theme .facility-admin-shell .facility-admin-metrics *,
body.ga-light-theme .facility-admin-shell .ga-card,
body.ga-light-theme .facility-admin-shell .table,
body.ga-light-theme .facility-admin-shell .table td,
body.ga-light-theme .facility-admin-shell .table th,
body.ga-light-theme .facility-admin-shell .table strong,
body.ga-light-theme .facility-admin-shell .table small,
body.ga-light-theme .facility-admin-shell .table a:not(.btn) {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
body.ga-light-theme .facility-admin-shell .facility-admin-card {
  background: #ffffff !important;
  border-color: rgba(15,23,42,.14) !important;
  box-shadow: 0 18px 44px rgba(15,23,42,.08) !important;
}
body.ga-light-theme .facility-admin-shell .facility-admin-card:hover {
  background: #f8fafc !important;
  border-color: rgba(37,99,235,.36) !important;
}
body.ga-light-theme .facility-admin-shell .facility-admin-metrics span {
  background: #f8fafc !important;
  border-color: rgba(15,23,42,.12) !important;
}
body.ga-light-theme .facility-admin-shell .facility-admin-metrics b {
  color: #0b5fb7 !important;
  -webkit-text-fill-color: #0b5fb7 !important;
}
body.ga-light-theme .facility-admin-shell .facility-admin-metrics small,
body.ga-light-theme .facility-admin-shell .facility-admin-card small,
body.ga-light-theme .facility-admin-shell .facility-admin-card p,
body.ga-light-theme .facility-admin-shell .facility-admin-card em {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
}
body.ga-light-theme .facility-admin-shell .ga-card {
  background: #ffffff !important;
  border-color: rgba(15,23,42,.12) !important;
}
body.ga-light-theme .facility-admin-shell .table thead th {
  background: #eef6ff !important;
  color: #1e3a8a !important;
  -webkit-text-fill-color: #1e3a8a !important;
}
body.ga-light-theme .facility-admin-shell .table tbody tr {
  background: #ffffff !important;
  border-color: rgba(15,23,42,.10) !important;
}
body.ga-light-theme .facility-admin-shell .table tbody tr:hover {
  background: #f8fafc !important;
}
body.ga-light-theme .admin-contrast-link,
body.ga-light-theme .facility-admin-shell a.admin-contrast-link {
  color: #0b5fb7 !important;
  -webkit-text-fill-color: #0b5fb7 !important;
  font-weight: 900 !important;
}
body.ga-light-theme .admin-organization-index .ga-muted,
body.ga-light-theme .facility-admin-shell .ga-muted {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  opacity: 1 !important;
  font-weight: 800 !important;
}

/* v0.1.365 admin panel unified index/show polish
   Keep every admin resource index and show page on the same readable light surface. */
body.ga-light-theme .ga-admin-shell {
  align-items: start;
  color: #0f172a !important;
}
body.ga-light-theme .ga-admin-shell > main,
body.ga-light-theme .ga-admin-shell > div:not(.ga-sidebar) {
  width: 100%;
  min-width: 0;
}
body.ga-light-theme .ga-admin-shell h1,
body.ga-light-theme .ga-admin-shell .ga-title,
body.ga-light-theme .ga-admin-shell .admin-show-title {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 1000;
  letter-spacing: -.055em;
  line-height: 1.02;
  text-shadow: none !important;
  background: none !important;
}
body.ga-light-theme .ga-admin-shell h2,
body.ga-light-theme .ga-admin-shell h3,
body.ga-light-theme .ga-admin-shell h4,
body.ga-light-theme .ga-admin-shell h5,
body.ga-light-theme .ga-admin-shell h6,
body.ga-light-theme .ga-admin-shell strong,
body.ga-light-theme .ga-admin-shell b,
body.ga-light-theme .ga-admin-shell label,
body.ga-light-theme .ga-admin-shell .form-label {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
body.ga-light-theme .ga-admin-shell .ga-kicker,
body.ga-light-theme .ga-admin-shell .label,
body.ga-light-theme .ga-admin-shell .admin-object-card .label {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  font-weight: 1000;
}
body.ga-light-theme .ga-admin-shell p,
body.ga-light-theme .ga-admin-shell li,
body.ga-light-theme .ga-admin-shell small,
body.ga-light-theme .ga-admin-shell .small,
body.ga-light-theme .ga-admin-shell .ga-muted,
body.ga-light-theme .ga-admin-shell .text-muted,
body.ga-light-theme .ga-admin-shell .form-text,
body.ga-light-theme .ga-admin-shell em {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}
body.ga-light-theme .ga-admin-shell .ga-card,
body.ga-light-theme .ga-admin-shell .admin-object-card,
body.ga-light-theme .ga-admin-shell .admin-raw-details,
body.ga-light-theme .ga-admin-shell .admin-show-hero,
body.ga-light-theme .ga-admin-shell .admin-form-card,
body.ga-light-theme .ga-admin-shell > main > section,
body.ga-light-theme .ga-admin-shell > div:not(.ga-sidebar) > section {
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: initial !important;
  border: 1px solid rgba(15,23,42,.12) !important;
  border-radius: 26px !important;
  box-shadow: 0 16px 42px rgba(15,23,42,.07) !important;
}
body.ga-light-theme .ga-admin-shell .admin-show-hero {
  background:
    radial-gradient(circle at 8% 12%, rgba(11,114,217,.13), transparent 32%),
    linear-gradient(135deg, #ffffff 0%, #f3f8ff 62%, #fff9e8 100%) !important;
}
body.ga-light-theme .ga-admin-shell .ga-stat,
body.ga-light-theme .ga-admin-shell .metric-card,
body.ga-light-theme .ga-admin-shell .facility-admin-metrics,
body.ga-light-theme .ga-admin-shell .facility-admin-card,
body.ga-light-theme .ga-admin-shell .studio-pool-card,
body.ga-light-theme .ga-admin-shell .studio-module-tile,
body.ga-light-theme .ga-admin-shell .studio-form-section,
body.ga-light-theme .ga-admin-shell .border,
body.ga-light-theme .ga-admin-shell .card {
  background: #f8fafc !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.11) !important;
}
body.ga-light-theme .ga-admin-shell .ga-stat *,
body.ga-light-theme .ga-admin-shell .metric-card *,
body.ga-light-theme .ga-admin-shell .facility-admin-metrics *,
body.ga-light-theme .ga-admin-shell .facility-admin-card *,
body.ga-light-theme .ga-admin-shell .studio-pool-card *,
body.ga-light-theme .ga-admin-shell .studio-module-tile *,
body.ga-light-theme .ga-admin-shell .card * {
  color: inherit;
}
body.ga-light-theme .ga-admin-shell .table-responsive {
  border-radius: 20px;
  border: 1px solid rgba(15,23,42,.10);
  background: #ffffff;
  overflow: auto;
}
body.ga-light-theme .ga-admin-shell table,
body.ga-light-theme .ga-admin-shell .table,
body.ga-light-theme .ga-admin-shell .ga-table {
  --bs-table-bg: #ffffff;
  --bs-table-color: #0f172a;
  --bs-table-border-color: rgba(15,23,42,.10);
  width: 100%;
  margin-bottom: 0;
  background: #ffffff !important;
  color: #0f172a !important;
  border-color: rgba(15,23,42,.10) !important;
}
body.ga-light-theme .ga-admin-shell table th,
body.ga-light-theme .ga-admin-shell table td,
body.ga-light-theme .ga-admin-shell .table th,
body.ga-light-theme .ga-admin-shell .table td,
body.ga-light-theme .ga-admin-shell .ga-table th,
body.ga-light-theme .ga-admin-shell .ga-table td {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  background-color: transparent !important;
  border-color: rgba(15,23,42,.10) !important;
  vertical-align: middle;
}
body.ga-light-theme .ga-admin-shell table thead th,
body.ga-light-theme .ga-admin-shell .table thead th,
body.ga-light-theme .ga-admin-shell .ga-table thead th {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  background: #f1f5f9 !important;
  font-size: .76rem;
  font-weight: 1000;
  letter-spacing: .07em;
  text-transform: uppercase;
}
body.ga-light-theme .ga-admin-shell table tbody tr:hover,
body.ga-light-theme .ga-admin-shell .table-hover tbody tr:hover {
  background: #f0f7ff !important;
}
body.ga-light-theme .ga-admin-shell .ga-chip,
body.ga-light-theme .ga-admin-shell .badge:not(.bg-danger):not(.bg-success):not(.bg-warning):not(.bg-info):not(.bg-primary):not(.bg-secondary):not(.bg-dark),
body.ga-light-theme .ga-admin-shell [class*="chip"] {
  background: #eef6ff !important;
  color: #0b5fb7 !important;
  -webkit-text-fill-color: #0b5fb7 !important;
  border-color: rgba(11,95,183,.18) !important;
}
body.ga-light-theme .ga-admin-shell a:not(.btn) {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  font-weight: 800;
}
body.ga-light-theme .ga-admin-shell a:not(.btn):hover {
  color: #083f7d !important;
  -webkit-text-fill-color: #083f7d !important;
}
body.ga-light-theme .ga-admin-shell .btn-outline-light,
body.ga-light-theme .ga-admin-shell .btn-outline-secondary {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
  background: #ffffff !important;
  border-color: rgba(7,94,199,.32) !important;
}
body.ga-light-theme .ga-admin-shell .btn-outline-light:hover,
body.ga-light-theme .ga-admin-shell .btn-outline-secondary:hover {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: #075ec7 !important;
  border-color: #075ec7 !important;
}
body.ga-light-theme .ga-admin-shell .btn-info,
body.ga-light-theme .ga-admin-shell .btn-warning,
body.ga-light-theme .ga-admin-shell .btn-light {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 1000;
}
body.ga-light-theme .ga-admin-shell .btn-primary,
body.ga-light-theme .ga-admin-shell .btn-dark,
body.ga-light-theme .ga-admin-shell .btn-danger,
body.ga-light-theme .ga-admin-shell .btn-success {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
body.ga-light-theme .ga-admin-shell input,
body.ga-light-theme .ga-admin-shell select,
body.ga-light-theme .ga-admin-shell textarea,
body.ga-light-theme .ga-admin-shell .form-control,
body.ga-light-theme .ga-admin-shell .form-select {
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: rgba(15,23,42,.16) !important;
}
body.ga-light-theme .ga-admin-shell input::placeholder,
body.ga-light-theme .ga-admin-shell textarea::placeholder {
  color: #94a3b8 !important;
  -webkit-text-fill-color: #94a3b8 !important;
}
body.ga-light-theme .ga-admin-shell .text-white,
body.ga-light-theme .ga-admin-shell .text-light {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
body.ga-light-theme .ga-admin-shell .text-dark {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
body.ga-light-theme .ga-admin-shell .text-info { color: #075985 !important; -webkit-text-fill-color: #075985 !important; }
body.ga-light-theme .ga-admin-shell .text-success { color: #047857 !important; -webkit-text-fill-color: #047857 !important; }
body.ga-light-theme .ga-admin-shell .text-warning { color: #92400e !important; -webkit-text-fill-color: #92400e !important; }
body.ga-light-theme .ga-admin-shell .text-danger { color: #b91c1c !important; -webkit-text-fill-color: #b91c1c !important; }

/* v0.1.367 admin billing navigation and contrast consistency
   Make all billing-related admin pages inherit the same readable admin shell treatment. */
body.ga-light-theme .ga-admin-shell .billing-hero {
  background:
    radial-gradient(circle at 12% 0%, rgba(47,143,255,.34), transparent 34%),
    linear-gradient(135deg, #07111f 0%, #10213d 56%, #17315f 100%) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: initial !important;
  border: 1px solid rgba(255,255,255,.14) !important;
}
body.ga-light-theme .ga-admin-shell .billing-hero h1,
body.ga-light-theme .ga-admin-shell .billing-hero h2,
body.ga-light-theme .ga-admin-shell .billing-hero h3,
body.ga-light-theme .ga-admin-shell .billing-hero p,
body.ga-light-theme .ga-admin-shell .billing-hero strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: none !important;
}
body.ga-light-theme .ga-admin-shell .billing-hero p,
body.ga-light-theme .ga-admin-shell .billing-hero .ga-muted {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
}
body.ga-light-theme .ga-admin-shell .billing-hero .billing-kicker {
  background: #dbeafe !important;
  color: #1e3a8a !important;
  -webkit-text-fill-color: #1e3a8a !important;
}
body.ga-light-theme .ga-admin-shell .billing-card,
body.ga-light-theme .ga-admin-shell .billing-metric,
body.ga-light-theme .ga-admin-shell .billing-recon-row,
body.ga-light-theme .ga-admin-shell .billing-index .billing-card {
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: initial !important;
  border-color: rgba(15,23,42,.12) !important;
}
body.ga-light-theme .ga-admin-shell .billing-card *,
body.ga-light-theme .ga-admin-shell .billing-metric *,
body.ga-light-theme .ga-admin-shell .billing-recon-row * {
  text-shadow: none !important;
}
body.ga-light-theme .ga-admin-shell .billing-card strong,
body.ga-light-theme .ga-admin-shell .billing-metric strong,
body.ga-light-theme .ga-admin-shell .billing-recon-row strong,
body.ga-light-theme .ga-admin-shell .billing-table td,
body.ga-light-theme .ga-admin-shell .billing-table td strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
body.ga-light-theme .ga-admin-shell .billing-card span,
body.ga-light-theme .ga-admin-shell .billing-label,
body.ga-light-theme .ga-admin-shell .billing-metric span,
body.ga-light-theme .ga-admin-shell .billing-metric small,
body.ga-light-theme .ga-admin-shell .billing-recon-row small,
body.ga-light-theme .ga-admin-shell .billing-table th {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}
body.ga-light-theme .ga-admin-shell .billing-pill {
  background: #dcfce7 !important;
  color: #14532d !important;
  -webkit-text-fill-color: #14532d !important;
  border: 1px solid rgba(20,83,45,.16) !important;
}
body.ga-light-theme .ga-admin-shell .billing-btn {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
body.ga-light-theme .ga-admin-shell .billing-btn.secondary {
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: rgba(15,23,42,.18) !important;
}
body.ga-light-theme .ga-admin-shell .list-group-item {
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: rgba(15,23,42,.12) !important;
}

/* v0.1.368 admin resource show/form consistency
   Keeps high-traffic admin resource pages in one visual system. */
.ga-admin-shell .admin-show-hero,
.ga-admin-shell .admin-edit-hero {
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 28px;
  padding: 1.5rem;
  background: radial-gradient(circle at top left, rgba(255,207,63,.16), transparent 34%), linear-gradient(135deg, rgba(7,17,31,.96), rgba(15,23,42,.92));
  box-shadow: 0 22px 64px rgba(0,0,0,.22);
}
.ga-admin-shell .admin-edit-hero {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:1rem;
  flex-wrap:wrap;
}
.ga-admin-shell .admin-workflow-form .admin-form-card,
.ga-admin-shell .admin-workflow-form .studio-form-section {
  position: relative;
  overflow: hidden;
}
.ga-admin-shell .admin-workflow-form .admin-form-card::before,
.ga-admin-shell .admin-workflow-form .studio-form-section::before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background: linear-gradient(180deg, #ffcf3f, #19d3ff);
  opacity:.85;
}
.ga-admin-shell .admin-form-actions {
  display:flex;
  gap:.75rem;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  border-top:1px solid rgba(255,255,255,.12);
  padding-top:1rem;
}
body.ga-light-theme .ga-admin-shell .admin-show-hero,
body.ga-light-theme .ga-admin-shell .admin-edit-hero {
  background: linear-gradient(135deg,#ffffff,#f8fafc);
  border-color:#d7e0ee;
  box-shadow:0 18px 45px rgba(15,23,42,.1);
}
body.ga-light-theme .ga-admin-shell .admin-show-hero *,
body.ga-light-theme .ga-admin-shell .admin-edit-hero * {
  color:#0f172a;
}
body.ga-light-theme .ga-admin-shell .admin-show-hero .ga-muted,
body.ga-light-theme .ga-admin-shell .admin-edit-hero .ga-muted,
body.ga-light-theme .ga-admin-shell .admin-show-hero .text-muted,
body.ga-light-theme .ga-admin-shell .admin-edit-hero .text-muted {
  color:#475569 !important;
}
body.ga-light-theme .ga-admin-shell .admin-workflow-form .form-check,
body.ga-light-theme .ga-admin-shell .admin-workflow-form .studio-check-line {
  color:#0f172a;
  background:#f8fafc;
  border-color:#d7e0ee;
}
@media(max-width: 991px){
  .ga-admin-shell .admin-edit-hero{align-items:flex-start;}
}

/* v0.1.369 first-class team management administrative panel */
.team-management-admin .admin-show-hero,
.team-management-admin .ga-card,
.team-management-admin .team-management-action-card {
  color:#0f172a !important;
  -webkit-text-fill-color:#0f172a !important;
}
.team-management-admin .ga-muted,
.team-management-admin .team-management-list span,
.team-management-admin p {
  color:#334155 !important;
  -webkit-text-fill-color:#334155 !important;
}
.team-management-admin .team-management-hero {
  background:linear-gradient(135deg,#0f172a,#1d4ed8) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.team-management-admin .team-management-hero *:not(.btn):not(.ga-chip) {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.team-management-mini-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:.65rem;
}
.team-management-mini-grid > div {
  border:1px solid #cbd5e1;
  background:#f8fafc;
  border-radius:16px;
  padding:.85rem;
}
.team-management-mini-grid strong {
  display:block;
  font-size:1.6rem;
  font-weight:1000;
  color:#0f172a !important;
  -webkit-text-fill-color:#0f172a !important;
}
.team-management-mini-grid span {
  display:block;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#475569 !important;
  -webkit-text-fill-color:#475569 !important;
}
.team-management-action-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:1rem;
}
.team-management-action-card {
  background:#ffffff;
  border:2px solid #dbeafe;
  border-radius:22px;
  padding:1.15rem;
  box-shadow:0 14px 36px rgba(15,23,42,.08);
}
.team-management-action-card h3 {
  font-size:1.05rem;
  font-weight:1000;
  margin-bottom:.45rem;
  color:#0f172a !important;
  -webkit-text-fill-color:#0f172a !important;
}
.team-management-action-card p {
  min-height:4.2rem;
  font-weight:750;
}
.team-management-checklist {
  display:grid;
  gap:.75rem;
}
.team-management-check {
  border-radius:16px;
  padding:.9rem 1rem;
  border:2px solid #cbd5e1;
  background:#f8fafc;
}
.team-management-check strong,
.team-management-check span {
  display:block;
}
.team-management-check strong {
  color:#0f172a !important;
  -webkit-text-fill-color:#0f172a !important;
  font-weight:1000;
}
.team-management-check span {
  color:#334155 !important;
  -webkit-text-fill-color:#334155 !important;
  font-weight:750;
  margin-top:.2rem;
}
.team-management-check.complete {
  border-color:#22c55e;
  background:#f0fdf4;
}
.team-management-check.attention {
  border-color:#f59e0b;
  background:#fffbeb;
}
.team-management-list .list-group-item {
  background:#ffffff !important;
  color:#0f172a !important;
  -webkit-text-fill-color:#0f172a !important;
  border-color:#e2e8f0 !important;
  display:flex;
  flex-direction:column;
  gap:.15rem;
}
.team-management-list .list-group-item strong {
  color:#0f172a !important;
  -webkit-text-fill-color:#0f172a !important;
}

/* v0.1.370 team admin show routes now open the Team Management workspace and nested staff routes support team slugs */

/* v0.1.371 removes vendor-named AI references from views and keeps admin index action rows focused on open/edit. */

/* v0.1.372: consistent admin linked/management pages */
body.ga-light-theme .ga-admin-shell > main,
body.ga-light-theme .ga-admin-shell > div:not(.ga-sidebar) {
  width: 100%;
  min-width: 0;
}

body.ga-light-theme .ga-admin-shell .table-dark,
body.ga-light-theme .ga-admin-shell .table-dark > :not(caption) > * > * {
  --bs-table-bg: #ffffff;
  --bs-table-color: #0f172a;
  --bs-table-border-color: #cbd5e1;
  --bs-table-striped-bg: #f8fafc;
  --bs-table-striped-color: #0f172a;
  --bs-table-hover-bg: #e0f2fe;
  --bs-table-hover-color: #0f172a;
  background-color: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: #cbd5e1 !important;
}

body.ga-light-theme .ga-admin-shell .table-dark a:not(.btn),
body.ga-light-theme .ga-admin-shell .table-dark .text-info,
body.ga-light-theme .ga-admin-shell .table-dark .text-light {
  color: #1d4ed8 !important;
  -webkit-text-fill-color: #1d4ed8 !important;
  font-weight: 900;
}

body.ga-light-theme .ga-admin-shell .table-dark .ga-muted,
body.ga-light-theme .ga-admin-shell .table-dark .text-muted,
body.ga-light-theme .ga-admin-shell .table-dark .small {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

body.ga-light-theme .ga-admin-shell .admin-linked-page,
body.ga-light-theme .ga-admin-shell .admin-management-page {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

body.ga-light-theme .ga-admin-shell .admin-linked-page .ga-card,
body.ga-light-theme .ga-admin-shell .admin-management-page .ga-card {
  background: #ffffff !important;
  border: 2px solid #cbd5e1 !important;
  border-radius: 24px !important;
  box-shadow: 0 20px 55px rgba(15, 23, 42, .10) !important;
}

body.ga-light-theme .ga-admin-shell .admin-linked-page .ga-title,
body.ga-light-theme .ga-admin-shell .admin-management-page .ga-title {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.gamecenter-commentary-card {
  color: #0f172a;
}

.gamecenter-commentary-panel {
  border: 1px solid rgba(7, 94, 199, 0.18);
  border-radius: 24px;
  background:
    radial-gradient(circle at 12% 0%, rgba(34, 211, 238, .16), transparent 32%),
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(239,246,255,.96));
  color: #0f172a;
  padding: 1.25rem;
  box-shadow: 0 18px 44px rgba(15,23,42,.12), inset 0 1px 0 rgba(255,255,255,.9);
}

.gamecenter-commentary-panel h2,
.gamecenter-commentary-panel h3,
.gamecenter-commentary-panel strong {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.gamecenter-commentary-panel .ga-muted,
.gamecenter-commentary-panel p,
.gamecenter-commentary-panel label,
.gamecenter-commentary-panel span {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  opacity: 1 !important;
}

.gamecenter-commentary-panel .ga-kicker,
.gamecenter-commentary-panel .ai-commentary-meta {
  color: #075ec7 !important;
  -webkit-text-fill-color: #075ec7 !important;
}

.gamecenter-commentary-panel .form-select {
  background-color: #ffffff;
  color: #0f172a;
  border-color: rgba(15, 23, 42, 0.18);
}

.gamecenter-commentary-panel audio {
  border-radius: 14px;
}

.live-pbp-audio-text {
  border: 1px solid rgba(7, 94, 199, 0.16);
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff, #eff6ff);
  padding: .85rem 1rem;
  color: #1e293b !important;
  -webkit-text-fill-color: #1e293b !important;
  min-height: 3.2rem;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

/* GAMECENTER COMMENTARY SURFACE CONTRAST FIX v0.1.378
   Commentary panels now use branded light blue/white surfaces instead of gray cards. */

/* v0.1.382 Overlay lifecycle animations
   Initial show animations run only on first render or explicit show transitions.
   JSON data refreshes use separate refresh classes, and hidden directives trigger
   the configured hide animation before the overlay is removed from the canvas. */
.ga360-angular-overlay-v3[data-initial-animation-complete="true"]:not([data-overlay-lifecycle="showing"]) .scorebug-broadcast-v2,
.ga360-angular-overlay-v3[data-initial-animation-complete="true"]:not([data-overlay-lifecycle="showing"]) .overlay-board,
.ga360-angular-overlay-v3[data-initial-animation-complete="true"]:not([data-overlay-lifecycle="showing"]) .ga-lower-third-card,
.ga360-angular-overlay-v3[data-initial-animation-complete="true"]:not([data-overlay-lifecycle="showing"]) .animate-overlay-in {
  animation: none !important;
}
.ga360-angular-overlay-v3 .ga360-overlay-show--pop { animation: gaOverlayPopIn .48s cubic-bezier(.16, 1, .3, 1) both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-show--slide-up { animation: gaOverlaySlideUp .42s cubic-bezier(.2, .9, .2, 1) both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-show--fade { animation: gaOverlayFadeIn .36s ease-out both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-show--wipe { animation: gaOverlayWipeIn .46s cubic-bezier(.2, .9, .2, 1) both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-show--drop { animation: gaOverlayDropIn .46s cubic-bezier(.16, 1, .3, 1) both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-hide--fade { animation: gaOverlayFadeOut .28s ease-in both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-hide--slide-up { animation: gaOverlaySlideAway .30s ease-in both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-hide--wipe { animation: gaOverlayWipeOut .30s ease-in both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-hide--drop { animation: gaOverlayDropOut .30s ease-in both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-hide--pop { animation: gaOverlayPopOut .28s ease-in both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-refresh--soft { animation: gaOverlaySoftSwap .22s ease-out both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-refresh--pulse { animation: gaOverlayRefreshPulse .28s ease-out both !important; }
.ga360-angular-overlay-v3 .ga360-overlay-refresh--fade { animation: gaOverlayFadeIn .18s ease-out both !important; }
@keyframes gaOverlayFadeIn { 0% { opacity: 0; } 100% { opacity: 1; } }
@keyframes gaOverlayFadeOut { 0% { opacity: 1; } 100% { opacity: 0; } }
@keyframes gaOverlaySlideAway { 0% { opacity: 1; transform: translateY(0); } 100% { opacity: 0; transform: translateY(-24px); } }
@keyframes gaOverlayWipeIn { 0% { opacity: 0; clip-path: inset(0 100% 0 0 round 24px); } 100% { opacity: 1; clip-path: inset(0 0 0 0 round 24px); } }
@keyframes gaOverlayWipeOut { 0% { opacity: 1; clip-path: inset(0 0 0 0 round 24px); } 100% { opacity: 0; clip-path: inset(0 100% 0 0 round 24px); } }
@keyframes gaOverlayDropIn { 0% { opacity: 0; transform: translateY(-32px) scale(.99); } 100% { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes gaOverlayDropOut { 0% { opacity: 1; transform: translateY(0) scale(1); } 100% { opacity: 0; transform: translateY(28px) scale(.985); } }
@keyframes gaOverlayPopOut { 0% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); } 100% { opacity: 0; transform: translateY(14px) scale(.97); filter: blur(4px); } }
@keyframes gaOverlayRefreshPulse { 0% { filter: brightness(1); transform: scale(1); } 45% { filter: brightness(1.16); transform: scale(1.006); } 100% { filter: brightness(1); transform: scale(1); } }

/* v0.1.388 Visual overlay layout designer */
.ga-overlay-layout-designer .ga-layout-designer-grid {
  display:grid;
  grid-template-columns:minmax(0, 1fr) 320px;
  gap:1rem;
  align-items:start;
}
.ga-overlay-layout-designer .ga-layout-canvas-wrap { min-width:0; }
.ga-overlay-layout-designer .ga-layout-canvas {
  position:relative;
  width:100%;
  aspect-ratio:16 / 9;
  min-height:280px;
  border-radius:24px;
  overflow:hidden;
  background:
    linear-gradient(rgba(56,189,248,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(56,189,248,.08) 1px, transparent 1px),
    radial-gradient(circle at 18% 12%, rgba(56,189,248,.25), transparent 34%),
    #020617;
  background-size:5% 8.888%, 5% 8.888%, auto, auto;
  border:1px solid rgba(15,23,42,.16);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 20px 55px rgba(15,23,42,.18);
}
.ga-overlay-layout-designer .ga-layout-safe-title {
  position:absolute;
  left:1rem;
  top:.75rem;
  z-index:1;
  color:rgba(226,232,240,.7);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ga-overlay-layout-designer .ga-layout-safe-area {
  position:absolute;
  inset:8% 5%;
  border:1px dashed rgba(125,211,252,.45);
  border-radius:18px;
  pointer-events:none;
}
.ga-overlay-layout-designer .ga-layout-region {
  position:absolute;
  display:flex;
  align-items:center;
  justify-content:center;
  border:2px solid rgba(255,255,255,.78);
  border-radius:16px;
  background:rgba(14,165,233,.82);
  color:#04111f;
  font-weight:1000;
  box-shadow:0 12px 30px rgba(0,0,0,.28);
  cursor:move;
  padding:.4rem;
  text-align:center;
}
.ga-overlay-layout-designer .ga-layout-region.is-role-primary { background:rgba(56,189,248,.92); }
.ga-overlay-layout-designer .ga-layout-region.is-role-secondary { background:rgba(167,139,250,.88); }
.ga-overlay-layout-designer .ga-layout-region.is-role-media { background:rgba(52,211,153,.9); }
.ga-overlay-layout-designer .ga-layout-region.is-role-sponsor { background:rgba(251,191,36,.92); }
.ga-overlay-layout-designer .ga-layout-region.is-selected { outline:4px solid rgba(250,204,21,.55); z-index:4; }
.ga-overlay-layout-designer .ga-layout-region i[data-layout-resize] {
  position:absolute;
  right:4px;
  bottom:4px;
  width:15px;
  height:15px;
  border-right:3px solid rgba(15,23,42,.75);
  border-bottom:3px solid rgba(15,23,42,.75);
  cursor:nwse-resize;
}
.ga-overlay-layout-designer .ga-layout-panel {
  border:1px solid rgba(15,23,42,.1);
  border-radius:22px;
  padding:1rem;
  background:#f8fafc;
  color:#0f172a;
}
@media (max-width: 992px) {
  .ga-overlay-layout-designer .ga-layout-designer-grid { grid-template-columns:1fr; }
}

/* v0.1.405 Overlay layer composer */
.ga-overlay-layout-designer .ga-layout-toolbar {
  display:flex;
  flex-wrap:wrap;
  gap:.25rem;
}
.ga-overlay-layout-designer .ga-layout-region {
  user-select:none;
  touch-action:none;
  overflow:hidden;
}
.ga-overlay-layout-designer .ga-layout-region.is-layer-shape {
  color:#f8fafc;
  border-color:rgba(255,255,255,.68);
}
.ga-overlay-layout-designer .ga-layout-region.is-layer-text {
  border-color:rgba(255,255,255,.35);
  box-shadow:none;
  text-shadow:0 2px 6px rgba(0,0,0,.65);
  padding:.25rem .5rem;
}
.ga-overlay-layout-designer .ga-layout-region.is-layer-graphic {
  background:rgba(15,23,42,.5);
  color:#e2e8f0;
  border-style:dashed;
}
.ga-overlay-layout-designer .ga-layout-region.is-layer-graphic img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
}
.ga-overlay-layout-designer .ga-layout-stack {
  display:flex;
  flex-direction:column;
  gap:.4rem;
  max-height:260px;
  overflow:auto;
}
.ga-overlay-layout-designer .ga-layout-stack-item {
  width:100%;
  border:1px solid rgba(15,23,42,.12);
  border-radius:14px;
  background:#fff;
  color:#0f172a;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  padding:.55rem .7rem;
  text-align:left;
}
.ga-overlay-layout-designer .ga-layout-stack-item span {
  display:flex;
  flex-direction:column;
  min-width:0;
}
.ga-overlay-layout-designer .ga-layout-stack-item small {
  color:#64748b;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.ga-overlay-layout-designer .ga-layout-stack-item em {
  color:#0369a1;
  font-size:.7rem;
  font-style:normal;
  font-weight:1000;
  text-transform:uppercase;
}
.ga-overlay-layout-designer .ga-layout-stack-item.is-selected {
  border-color:#0ea5e9;
  box-shadow:0 0 0 3px rgba(14,165,233,.18);
}

/* GameCenter public camera feed hard removal — camera grids belong only in admin/production tools. */
.public-gamecenter .gamecenter-camera-feeds,
body .gamecenter-camera-feeds[data-public-gamecenter-camera-feeds],
body .gamecenter-camera-feeds {
  display: none !important;
  visibility: hidden !important;
}

/* v0.1.425 richer tournament bracket configuration */
.builder-game-row-rich { grid-template-columns:minmax(105px,.75fr) minmax(120px,1fr) auto minmax(120px,1fr) minmax(150px,1fr) minmax(190px,1.2fr) auto; }
.builder-game-row-rich .builder-storyline { min-width: 180px; }
.preview-round small { display:block; margin:.2rem 0 .45rem; }
.preview-matchup small { display:block; grid-column: 1 / -1; color: rgba(255,255,255,.64); font-weight:700; margin-top:.25rem; }
body.ga-light-theme .preview-matchup small { color:#475569 !important; -webkit-text-fill-color:#475569 !important; }
@media (max-width: 1100px) { .builder-game-row-rich { grid-template-columns:1fr; } }


/* v0.1.434 branded network parity and control-center contrast hardening */
.branded-control-center,
.branded-control-center * { text-shadow:none; }
.branded-control-center h1,
.branded-control-center h2,
.branded-control-center h3,
.branded-control-center strong { color:#ffffff !important; -webkit-text-fill-color:#ffffff !important; }
.branded-control-center p,
.branded-control-center small,
.branded-control-center td,
.branded-control-center span { -webkit-text-fill-color:currentColor; }
.branded-control-center section > div:first-child p,
.branded-control-center th,
.branded-control-center .ga-kicker { color:#facc15 !important; -webkit-text-fill-color:#facc15 !important; }
.branded-control-center a[style*="background:#2563eb"],
.branded-control-center a[style*="background: #2563eb"],
.branded-control-center .btn-primary,
.branded-control-center .btn-ga,
.branded-control-center a[href*="site"] { color:#ffffff !important; -webkit-text-fill-color:#ffffff !important; }
.branded-control-center span[style*="Live"],
.branded-control-center span[style*="background:#2563eb"] { color:#ffffff !important; -webkit-text-fill-color:#ffffff !important; }
.branded-hub-shell{background:linear-gradient(180deg,#eef4fb 0%,#f8fafc 44%,#ffffff 100%);}
.branded-site-topnav{max-width:1440px;margin:0 auto 1rem;border-radius:28px;background:#081324;border:1px solid rgba(250,204,21,.24);box-shadow:0 22px 60px rgba(15,23,42,.18);padding:.85rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;}
.branded-site-lockup{display:inline-flex;align-items:center;gap:.7rem;text-decoration:none;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;font-weight:1000;}
.branded-site-lockup img,.branded-site-lockup span{width:44px;height:44px;border-radius:14px;object-fit:cover;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));border:1px solid rgba(255,255,255,.35);color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;}
.branded-site-topnav-links{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;}
.branded-site-topnav-links a{display:inline-flex;align-items:center;border-radius:999px;padding:.52rem .78rem;text-decoration:none;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;font-weight:900;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);}
.branded-site-topnav-links a:hover{background:#facc15;color:#081324 !important;-webkit-text-fill-color:#081324 !important;}
.branded-hub-hero{max-width:1440px;margin:0 auto;border-radius:38px;min-height:420px;background-size:cover;background-position:center;display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;padding:clamp(1.25rem,3vw,2.5rem);border:1px solid rgba(10,24,46,.18);box-shadow:0 34px 100px rgba(15,23,42,.26);color:#ffffff !important;}
.branded-hub-hero .ga-kicker{display:inline-flex;border-radius:999px;background:#facc15;color:#081324 !important;-webkit-text-fill-color:#081324 !important;border:1px solid rgba(255,255,255,.35);padding:.38rem .76rem;font-weight:1000;letter-spacing:.14em;text-transform:uppercase;}
.branded-hub-hero h1,.branded-hub-hero p,.branded-hub-hero strong{color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;text-shadow:0 4px 18px rgba(0,0,0,.35);}
.branded-hub-actions .btn-ga,
.branded-network-board .btn-ga,
.branded-hub-shell .btn-primary{background:linear-gradient(135deg,#0b72d9,#2563eb) !important;border:0 !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;font-weight:1000;box-shadow:0 14px 30px rgba(37,99,235,.28);}
.branded-hub-actions .btn-outline-ga,
.branded-network-board .btn-outline-ga{border-color:rgba(255,255,255,.55) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;background:rgba(8,19,36,.36) !important;font-weight:1000;}
.branded-hub-nav{max-width:1440px;margin:1rem auto;padding:.55rem;border-radius:999px;background:#081324;border:1px solid rgba(250,204,21,.24);box-shadow:0 18px 44px rgba(15,23,42,.16);}
.branded-hub-nav a{color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;font-weight:1000;text-decoration:none;}
.branded-hub-nav a:hover{background:#facc15 !important;color:#081324 !important;-webkit-text-fill-color:#081324 !important;}
.branded-network-board{max-width:1440px;margin:0 auto 1rem;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:1rem;align-items:stretch;}
.branded-network-board__lead{border-radius:32px;background:#081324;border:1px solid rgba(250,204,21,.26);box-shadow:0 24px 70px rgba(15,23,42,.18);padding:clamp(1rem,2vw,1.5rem);color:#ffffff !important;position:relative;overflow:hidden;}
.branded-network-board__lead:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 10%,rgba(250,204,21,.18),transparent 34%),radial-gradient(circle at 92% 0%,rgba(37,99,235,.26),transparent 30%);pointer-events:none;}
.branded-network-board__lead>*{position:relative;z-index:1;}
.branded-network-board__lead .ga-kicker{color:#facc15 !important;-webkit-text-fill-color:#facc15 !important;font-weight:1000;letter-spacing:.14em;text-transform:uppercase;}
.branded-network-board__lead h2{color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;font-size:clamp(1.8rem,3vw,3.15rem);font-weight:1000;letter-spacing:-.06em;line-height:.95;margin:.35rem 0;}
.branded-network-board__lead p{color:#fde68a !important;-webkit-text-fill-color:#fde68a !important;font-weight:850;max-width:900px;line-height:1.55;}
.branded-network-board__actions{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1rem;}
.branded-network-board__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;}
.branded-network-board__metrics div{border-radius:24px;background:#ffffff;border:1px solid rgba(15,23,42,.12);box-shadow:0 18px 44px rgba(15,23,42,.10);padding:1rem;}
.branded-network-board__metrics span{display:block;color:#0b4f8f !important;-webkit-text-fill-color:#0b4f8f !important;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:1000;}
.branded-network-board__metrics strong{display:block;color:#081324 !important;-webkit-text-fill-color:#081324 !important;font-size:2.4rem;line-height:1;font-weight:1000;letter-spacing:-.06em;margin:.35rem 0;}
.branded-network-board__metrics small{display:block;color:#475569 !important;-webkit-text-fill-color:#475569 !important;font-weight:850;}
.branded-hub-grid{max-width:1440px;margin:0 auto;}
.branded-card{border-radius:30px;background:#ffffff;border:1px solid rgba(15,23,42,.12);box-shadow:0 20px 52px rgba(15,23,42,.10);}
.branded-section-head{border-bottom:1px solid rgba(15,23,42,.08);padding-bottom:.75rem;align-items:flex-start;}
.branded-section-head .ga-kicker{color:#0b4f8f !important;-webkit-text-fill-color:#0b4f8f !important;letter-spacing:.12em;text-transform:uppercase;font-weight:1000;}
.branded-section-head h2{color:#081324 !important;-webkit-text-fill-color:#081324 !important;font-weight:1000;letter-spacing:-.045em;}
.branded-game-row,.branded-link-row,.branded-player-card{background:linear-gradient(180deg,#ffffff,#f8fbff);border:1px solid rgba(15,23,42,.10);box-shadow:0 10px 24px rgba(15,23,42,.06);}
.branded-game-row b,.branded-link-row b,.branded-player-card b{color:#0b72d9 !important;-webkit-text-fill-color:#0b72d9 !important;}
.branded-hub-shell .badge-live,
.branded-hub-shell .ga-chip--live,
.branded-hub-shell [class*="live"]{color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;}
@media(max-width:1000px){.branded-network-board{grid-template-columns:1fr}.branded-hub-nav{border-radius:24px}.branded-hub-grid{grid-template-columns:1fr}.branded-network-board__metrics{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.branded-network-board__metrics{grid-template-columns:1fr}.branded-site-topnav{border-radius:22px}.branded-site-topnav-links{width:100%}.branded-site-topnav-links a{flex:1 1 auto;justify-content:center}.branded-hub-hero{border-radius:28px;min-height:360px}.branded-hub-identity{flex-direction:column}.branded-hub-nav{justify-content:flex-start;overflow:auto;flex-wrap:nowrap;border-radius:20px}.branded-hub-nav a{white-space:nowrap;}}

/* v0.1.442: live branded hub snapshot replaces placeholder network copy */
.branded-live-board{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);}
.branded-live-board__lead h2{max-width:920px;}
.branded-live-scoreline{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:1rem;}
.branded-live-scoreline span{display:inline-flex;align-items:center;border-radius:999px;background:rgba(250,204,21,.16);border:1px solid rgba(250,204,21,.42);color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;padding:.75rem 1rem;font-size:1.2rem;font-weight:1000;letter-spacing:-.03em;}
.branded-live-board__rail{display:grid;gap:.75rem;}
.branded-live-board__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;}
.branded-live-board__metrics div{border-radius:24px;background:#ffffff;border:1px solid rgba(15,23,42,.12);box-shadow:0 18px 44px rgba(15,23,42,.10);padding:1rem;}
.branded-live-board__metrics span{display:block;color:#0b4f8f !important;-webkit-text-fill-color:#0b4f8f !important;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:1000;}
.branded-live-board__metrics strong{display:block;color:#081324 !important;-webkit-text-fill-color:#081324 !important;font-size:2.4rem;line-height:1;font-weight:1000;letter-spacing:-.06em;margin:.35rem 0;}
.branded-live-board__metrics small{display:block;color:#475569 !important;-webkit-text-fill-color:#475569 !important;font-weight:850;}
.branded-live-board__cards{display:grid;gap:.75rem;}
.branded-live-mini-card{display:block;text-decoration:none;border-radius:22px;background:#ffffff;border:1px solid rgba(15,23,42,.12);box-shadow:0 18px 44px rgba(15,23,42,.10);padding:1rem;color:#0f172a !important;-webkit-text-fill-color:#0f172a !important;}
.branded-live-mini-card span{display:block;color:#0b4f8f !important;-webkit-text-fill-color:#0b4f8f !important;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:1000;margin-bottom:.35rem;}
.branded-live-mini-card strong{display:block;color:#0f172a !important;-webkit-text-fill-color:#0f172a !important;font-weight:1000;font-size:1.05rem;line-height:1.1;}
.branded-live-mini-card small{display:block;color:#475569 !important;-webkit-text-fill-color:#475569 !important;font-weight:850;margin-top:.3rem;}
@media(max-width:1000px){.branded-live-board{grid-template-columns:1fr}.branded-live-board__metrics{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.branded-live-board__metrics{grid-template-columns:1fr}.branded-live-scoreline{align-items:stretch}.branded-live-scoreline .btn{width:100%;}.branded-live-scoreline span{width:100%;justify-content:center;}}

/* v0.1.443 branded organization nav + tournament bracket parity */
.branded-site-nav-form{display:inline-flex;margin:0}
.branded-site-nav-button,.branded-site-nav-auth{display:inline-flex;align-items:center;border-radius:999px;padding:.52rem .78rem;text-decoration:none;color:#081324 !important;-webkit-text-fill-color:#081324 !important;font-weight:1000;border:1px solid rgba(250,204,21,.45);background:#facc15;line-height:1.2}
.branded-site-nav-button{appearance:none;cursor:pointer}
.branded-tournament-ai-board{background:linear-gradient(180deg,#ffffff,#f8fafc) !important;color:#0f172a !important;-webkit-text-fill-color:#0f172a !important}
.branded-tournament-pools{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin:1rem 0}
.branded-pool-card{border-radius:22px;border:1px solid #dbe6f3;background:#ffffff;padding:1rem;box-shadow:0 14px 34px rgba(15,23,42,.08)}
.branded-pool-card>strong{display:block;margin-bottom:.7rem;color:#0f172a !important;-webkit-text-fill-color:#0f172a !important;font-weight:1000;font-size:1.1rem}
.branded-bracket-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:1rem;overflow-x:auto;padding:.35rem 0 1rem;scroll-snap-type:x proximity}
.branded-bracket-round{scroll-snap-align:start;border-radius:24px;background:#0f172a;border:1px solid rgba(250,204,21,.32);padding:1rem;min-height:100%;box-shadow:0 18px 46px rgba(15,23,42,.18);color:#fff !important;-webkit-text-fill-color:#fff !important}
.branded-bracket-round h3{color:#facc15 !important;-webkit-text-fill-color:#facc15 !important;font-weight:1000;font-size:1rem;text-transform:uppercase;letter-spacing:.09em;margin:0 0 .75rem}
.branded-bracket-game{display:block;text-decoration:none;border-radius:18px;background:#ffffff;border:1px solid #dbe6f3;padding:.85rem;margin-bottom:.65rem;color:#0f172a !important;-webkit-text-fill-color:#0f172a !important}
.branded-bracket-game span{display:block;color:#0b72d9 !important;-webkit-text-fill-color:#0b72d9 !important;font-weight:1000;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.branded-bracket-game strong{display:block;color:#0f172a !important;-webkit-text-fill-color:#0f172a !important;font-weight:1000;line-height:1.1;margin:.25rem 0}
.branded-bracket-game small{display:block;color:#475569 !important;-webkit-text-fill-color:#475569 !important;font-weight:800;line-height:1.3}
.branded-bracket-game.is-linked{box-shadow:inset 4px 0 0 #facc15}
.branded-bracket-game.is-linked:hover{transform:translateY(-1px);box-shadow:0 18px 34px rgba(15,23,42,.18),inset 4px 0 0 #facc15}
.branded-empty-panel{border-radius:20px;border:1px dashed rgba(15,23,42,.24);background:#f8fafc;padding:1rem;color:#334155 !important;-webkit-text-fill-color:#334155 !important;font-weight:850}


/* v0.1.481 branded site navigation spacing cleanup */
.branded-hub-shell {
  padding-top: clamp(.6rem, 1.5vw, 1.1rem);
}
.branded-site-topnav {
  top: .5rem;
  margin: 0 auto .85rem;
  max-width: min(100%, 1420px);
  padding: .46rem .6rem;
  border-radius: 18px;
  gap: .75rem;
}
.branded-site-lockup {
  gap: .55rem;
}
.branded-site-lockup img,
.branded-site-lockup span {
  width: 36px;
  height: 36px;
  border-radius: 12px;
}
.branded-site-lockup strong {
  max-width: 260px;
  font-size: .95rem;
}
.branded-site-topnav-links {
  gap: .22rem;
}
.branded-site-topnav-links a,
.branded-site-nav-button {
  padding: .46rem .62rem !important;
  border-radius: 999px !important;
  font-size: .84rem !important;
  line-height: 1 !important;
}
.branded-site-nav-form {
  margin: 0 !important;
}
.branded-hub-hero.branded-hub-hero--compact {
  margin-top: 0 !important;
  margin-bottom: .85rem !important;
  min-height: 260px;
  padding-block: clamp(1.6rem, 4vw, 3.4rem);
}
.branded-live-board.branded-live-board--with-news {
  margin-top: 0 !important;
  margin-bottom: 1.25rem !important;
  gap: 0 !important;
}
.branded-live-board--with-news .branded-live-board__lead,
.branded-live-board--with-news .branded-live-board__rail {
  min-height: 0;
}
@media(max-width:1100px) {
  .branded-site-topnav {
    align-items:flex-start;
    flex-direction:column;
  }
  .branded-site-topnav-links {
    justify-content:flex-start;
  }
  .branded-site-lockup strong {
    max-width: 72vw;
  }
}


/* v0.1.483 branded site auth controls */
.branded-site-auth-slot {
  display:inline-flex;
  align-items:center;
  margin-left:.35rem;
}
.branded-site-nav-form {
  display:inline-flex !important;
  margin:0 !important;
  padding:0 !important;
}
.branded-site-nav-auth-control,
.branded-site-topnav-links .branded-site-nav-auth-control,
.branded-site-nav-button.branded-site-nav-auth-control {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid #0f172a !important;
  border-radius:999px !important;
  background:#0f172a !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  padding:.48rem .78rem !important;
  font-weight:1000 !important;
  font-size:.84rem !important;
  line-height:1 !important;
  text-decoration:none !important;
  box-shadow:0 10px 24px rgba(15,23,42,.16) !important;
  cursor:pointer !important;
}
.branded-site-nav-auth-control:hover,
.branded-site-nav-button.branded-site-nav-auth-control:hover {
  background:#1d4ed8 !important;
  border-color:#1d4ed8 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}


/* v0.1.484 keep branded Media Center inside page gutters */
.branded-media-center-wrap {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.branded-media-center-wrap > #media {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.branded-media-center-wrap * {
  box-sizing: border-box;
}


/* v0.1.485 branded featured game card */
.branded-featured-game-panel {
  position:relative;
  overflow:hidden;
  border-radius:32px !important;
  background:
    radial-gradient(circle at 10% 10%, rgba(245,158,11,.30), transparent 32%),
    radial-gradient(circle at 88% 0%, rgba(59,130,246,.28), transparent 34%),
    linear-gradient(135deg,#020617 0%,#0f172a 52%,#172554 100%) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 28px 80px rgba(2,6,23,.30) !important;
}
.branded-featured-game-panel::after {
  content:"";
  position:absolute;
  inset:auto -15% -35% 20%;
  height:220px;
  background:radial-gradient(circle,rgba(245,158,11,.18),transparent 60%);
  pointer-events:none;
}
.branded-featured-game-panel > * {
  position:relative;
  z-index:1;
}
@media(max-width:720px) {
  .branded-featured-game-panel [style*="grid-template-columns:1fr auto 1fr"] {
    grid-template-columns:1fr !important;
  }
  .branded-featured-game-panel [style*="width:58px"] {
    width:44px !important;
    height:44px !important;
    margin:auto;
  }
}


/* v0.1.486 branded live/news spacing and compact schedule */
.branded-live-board.branded-live-board--with-news {
  display:grid !important;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr) !important;
  gap:clamp(1rem,2vw,1.5rem) !important;
  align-items:stretch !important;
}
.branded-live-board--with-news .branded-featured-game-panel,
.branded-live-board--with-news #latest-news {
  height:100%;
}
.branded-live-board--with-news #latest-news {
  border-radius:30px !important;
  background:#ffffff !important;
  border:1px solid rgba(15,23,42,.12) !important;
  box-shadow:0 20px 52px rgba(15,23,42,.10) !important;
  padding:clamp(1rem,1.6vw,1.25rem) !important;
}
@media(max-width:980px) {
  .branded-live-board.branded-live-board--with-news {
    grid-template-columns:1fr !important;
  }
}


/* v0.1.487 branded Media Center true gutter alignment */
.branded-media-center-wrap {
  width: min(100%, 1420px) !important;
  max-width: calc(100vw - 2.5rem) !important;
  margin: 1.25rem auto 0 !important;
  box-sizing: border-box !important;
}
.branded-media-center-wrap > #media {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
@media(max-width:720px) {
  .branded-media-center-wrap {
    max-width: calc(100vw - 1rem) !important;
  }
}

/* v0.1.487 branded auth buttons yellow */
.branded-site-nav-auth-control,
.branded-site-topnav-links .branded-site-nav-auth-control,
.branded-site-nav-button.branded-site-nav-auth-control {
  background:#fbbf24 !important;
  border-color:#f59e0b !important;
  color:#07111f !important;
  -webkit-text-fill-color:#07111f !important;
  box-shadow:0 10px 24px rgba(245,158,11,.22) !important;
}
.branded-site-nav-auth-control:hover,
.branded-site-nav-button.branded-site-nav-auth-control:hover {
  background:#f59e0b !important;
  border-color:#d97706 !important;
  color:#07111f !important;
  -webkit-text-fill-color:#07111f !important;
}


/* v0.1.488 branded page body/background and shell padding cleanup */
body:has(.branded-hub-shell),
main:has(.branded-hub-shell),
.public-shell:has(.branded-hub-shell),
.public-page:has(.branded-hub-shell),
.application-shell:has(.branded-hub-shell) {
  background:#edf2f7 !important;
}
.branded-hub-shell {
  background:#edf2f7 !important;
  padding:0 !important;
  box-shadow:none !important;
  overflow-x:hidden !important;
}
.branded-site-topnav {
  margin:clamp(.65rem,1.4vw,1rem) auto .85rem !important;
  width:min(100% - clamp(1rem,2.5vw,2.5rem), 1420px) !important;
}
.branded-hub-hero,
.branded-live-board.branded-live-board--with-news,
.branded-hub-grid,
.branded-media-center-wrap {
  width:min(100% - clamp(1rem,2.5vw,2.5rem), 1420px) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.branded-hub-hero.branded-hub-hero--compact {
  margin-top:0 !important;
}
.branded-media-center-wrap {
  max-width:none !important;
}
@media(max-width:720px) {
  .branded-site-topnav,
  .branded-hub-hero,
  .branded-live-board.branded-live-board--with-news,
  .branded-hub-grid,
  .branded-media-center-wrap {
    width:calc(100% - 1rem) !important;
  }
}


/* v0.1.489 general content container body alignment */
body.ga-light-theme > main.ga-page,
main.container-fluid.ga-page {
  padding-left:0 !important;
  padding-right:0 !important;
}
body.ga-light-theme > footer.container-fluid {
  padding-left:0 !important;
  padding-right:0 !important;
}
body.ga-light-theme > main.ga-page > .alert {
  width:min(100% - clamp(1rem,2.5vw,2.5rem), 1480px);
  margin-left:auto;
  margin-right:auto;
}


/* v0.1.492 team index follow button inside card */
.public-index-team-card-shell {
  position:relative;
}
.public-index-team-follow-inline form {
  margin:0 !important;
}
@media(max-width:760px) {
  .public-index-team-card-shell .public-index-team-card {
    padding-right:1rem !important;
    padding-bottom:4.25rem !important;
  }
  .public-index-team-follow-inline {
    left:1rem !important;
    right:auto !important;
    bottom:1rem !important;
  }
}


/* v0.1.493 public events index gutters */
.public-events-index-shell {
  width: min(100% - clamp(1rem, 2.5vw, 2.5rem), 1480px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
@media(max-width:720px) {
  .public-events-index-shell {
    width: calc(100% - 1rem) !important;
  }
}


/* v0.1.499 global non-admin mobile-friendly public page hardening */
@media (max-width: 900px) {
  body.ga-light-theme {
    overflow-x: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) main.ga-page {
    width: 100% !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-navbar .container-fluid {
    padding-left: .75rem !important;
    padding-right: .75rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-navbar .navbar-collapse {
    margin-top: .75rem !important;
    border-radius: 20px !important;
    background: #ffffff !important;
    border: 1px solid rgba(15,23,42,.12) !important;
    box-shadow: 0 18px 42px rgba(15,23,42,.12) !important;
    padding: .75rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-navbar .navbar-nav {
    gap: .35rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-navbar .nav-link,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-navbar .btn,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-navbar form button {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
    border-radius: 999px !important;
    padding: .72rem .9rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-brand-copy small {
    display: none !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-title,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .display-1,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .display-2,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .display-3,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .display-4,
  body.ga-light-theme:not(:has(.ga-admin-shell)) h1 {
    font-size: clamp(2rem, 12vw, 3.35rem) !important;
    line-height: .92 !important;
    letter-spacing: -.055em !important;
    overflow-wrap: anywhere !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) h2 {
    font-size: clamp(1.45rem, 8vw, 2.35rem) !important;
    line-height: 1 !important;
    overflow-wrap: anywhere !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) img,
  body.ga-light-theme:not(:has(.ga-admin-shell)) iframe,
  body.ga-light-theme:not(:has(.ga-admin-shell)) video {
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) table {
    min-width: 680px;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .table-responsive {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .row {
    --bs-gutter-x: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) [class*="col-xl-"],
  body.ga-light-theme:not(:has(.ga-admin-shell)) [class*="col-lg-"],
  body.ga-light-theme:not(:has(.ga-admin-shell)) [class*="col-md-"] {
    min-width: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .network-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .branded-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .media-rail-panel,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .home-scoreboard-panel,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .home-news-panel,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .partner-strip-pro,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-standings-card {
    border-radius: 22px !important;
    padding: 1rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .media-channel-grid,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .home-channel-grid,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .branded-hub-grid,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .gamecast-feed-grid,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .team-public-refresh .row,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .public-index-list {
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .home-media-duo,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .media-main-feed,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .home-main-feed,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .home-side-rail {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) aside,
  body.ga-light-theme:not(:has(.ga-admin-shell)) [style*="position:sticky"] {
    position: static !important;
    top: auto !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .public-index-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .public-index-card--wide,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .public-index-team-card {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .9rem !important;
    padding: 1rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .public-index-identity {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: .8rem !important;
    min-width: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .public-index-card-side {
    justify-items: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .public-index-team-follow-inline {
    position: static !important;
    margin-top: .75rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .public-index-team-follow-inline form,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .public-index-team-follow-inline button,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .public-index-team-follow-inline a {
    width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .gamecenter-hero,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .franchise-hero,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .directory-hero,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .branded-hub-hero {
    border-radius: 24px !important;
    padding: 1rem !important;
    min-height: auto !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .gamecenter-hero .row,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .franchise-hero .row {
    gap: 1rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .team-public-refresh,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .public-events-index-shell,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .branded-hub-hero,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .branded-live-board.branded-live-board--with-news,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .branded-hub-grid,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .branded-media-center-wrap {
    width: calc(100% - 1rem) !important;
    max-width: calc(100% - 1rem) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .branded-live-board.branded-live-board--with-news {
    grid-template-columns: 1fr !important;
    gap: .8rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .branded-featured-game-panel [style*="grid-template-columns:1fr auto 1fr"] {
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .branded-featured-game-panel [style*="text-align:right"] {
    text-align: left !important;
  }
}

@media (max-width: 560px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-navbar .navbar-brand {
    max-width: calc(100vw - 5rem) !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-brand-copy strong {
    font-size: .95rem !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 190px !important;
    display: block !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .d-flex {
    min-width: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .btn,
  body.ga-light-theme:not(:has(.ga-admin-shell)) button,
  body.ga-light-theme:not(:has(.ga-admin-shell)) input,
  body.ga-light-theme:not(:has(.ga-admin-shell)) select,
  body.ga-light-theme:not(:has(.ga-admin-shell)) textarea {
    font-size: 16px !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .d-flex.flex-wrap.gap-2,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .d-flex.flex-wrap.gap-3 {
    gap: .5rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .d-flex.flex-wrap.gap-2 > .btn,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .d-flex.flex-wrap.gap-3 > .btn {
    flex: 1 1 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .ga-chip,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .media-pill {
    max-width: 100% !important;
    white-space: normal !important;
  }
}


/* v0.1.500 tournament Video Room mobile polish */
@media (max-width: 900px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-room {
    width: 100% !important;
    min-width: 0 !important;
    gap: .75rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-room-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: start !important;
    gap: .55rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-room-head > span {
    justify-self: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-room-card {
    border-radius: 22px !important;
    padding: .65rem !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-featured-video-link {
    border-radius: 18px !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-featured-video-thumb,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-featured-video-placeholder {
    height: clamp(150px, 48vw, 220px) !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-featured-video-title {
    left: .75rem !important;
    right: .75rem !important;
    bottom: .75rem !important;
    font-size: .98rem !important;
    line-height: 1.08 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-list {
    gap: .5rem !important;
    margin-top: .6rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-list-item {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
    gap: .55rem !important;
    border-radius: 16px !important;
    padding: .68rem !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-list-item span {
    min-width: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-list-item strong {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.15 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-list-item span[style*="width:34px"] {
    width: 30px !important;
    height: 30px !important;
    flex: 0 0 30px !important;
  }
}

@media (max-width: 520px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-room-card {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-list-item {
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-list-item > span:last-child {
    justify-self: start !important;
  }
}


/* v0.1.501 league schedule board mobile polish */
@media (max-width: 900px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-content-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .9rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-column,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-results-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-board-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-results-board-card {
    border-radius: 22px !important;
    padding: 1rem !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-board-card h2,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-results-board-card h2 {
    margin-bottom: .8rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-event-list {
    display: grid !important;
    gap: .65rem !important;
    width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-game-row,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-result-game-row,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-event-row {
    grid-template-columns: 1fr !important;
    gap: .4rem !important;
    align-items: start !important;
    padding: .85rem !important;
    border-radius: 16px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-game-date {
    display: inline-flex !important;
    align-items: center !important;
    gap: .45rem !important;
    width: fit-content !important;
    border-radius: 999px !important;
    background: #e0f2fe !important;
    border: 1px solid #bae6fd !important;
    padding: .32rem .58rem !important;
    color: #075985 !important;
    -webkit-text-fill-color: #075985 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-game-date small {
    display: inline !important;
    font-size: .72rem !important;
    color: #075985 !important;
    -webkit-text-fill-color: #075985 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-game-matchup,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-event-row strong {
    display: block !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.12 !important;
    font-size: 1rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-game-venue,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-event-row em {
    display: block !important;
    text-align: left !important;
    font-size: .82rem !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-score-ticker {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-scoreboard-broadcast {
    border-radius: 22px !important;
    padding: .75rem !important;
  }
}

@media (max-width: 520px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-board-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-results-board-card {
    padding: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-game-date {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: .1rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-tabbar {
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    -webkit-overflow-scrolling: touch !important;
    padding-bottom: .25rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-tabbar a {
    white-space: nowrap !important;
    flex: 0 0 auto !important;
  }
}


/* v0.1.502 league leaders mobile polish */
@media (max-width: 900px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-column {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card {
    border-radius: 22px !important;
    padding: 1rem !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card > .d-flex {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: start !important;
    gap: .7rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .ga-chip {
    justify-self: start !important;
    white-space: normal !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .9rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .col-xl-6 {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .league-scoreboard-rotator {
    border-radius: 20px !important;
    padding: .85rem !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .league-scoreboard-rotator > .d-flex {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: start !important;
    gap: .65rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator-controls {
    align-self: start !important;
    justify-self: end !important;
    min-width: max-content !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator[data-score-rotator] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .75rem !important;
    overflow: visible !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator-item {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator-item > div {
    min-height: 0 !important;
    border-radius: 18px !important;
    padding: .8rem !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator-item [style*="justify-content:space-between"] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .45rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator-item strong[style*="font-size:clamp"] {
    font-size: clamp(2rem, 15vw, 3rem) !important;
    line-height: .9 !important;
    justify-self: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator-item a {
    width: 100% !important;
    min-width: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator-item a span {
    min-width: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator-item a strong,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator-item a small {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.14 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card [style*="grid-template-columns:repeat(3"] {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 520px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card {
    padding: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .league-scoreboard-rotator > .d-flex {
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator-controls {
    justify-self: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card .scoreboard-rotator-btn {
    width: 38px !important;
    height: 38px !important;
  }
}


/* v0.1.503 sports organizations mobile redesign pass */
@media (max-width: 900px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-hub-shell,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-directory-shell {
    width: calc(100% - 1rem) !important;
    max-width: calc(100% - 1rem) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-hero,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-directory-mobile-hero {
    border-radius: 24px !important;
    padding: 1rem !important;
    margin-bottom: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-hero > div,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-hero [style*="display:flex;align-items:center;gap:1rem"] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .8rem !important;
    min-width: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-hero img,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-hero span[style*="width:96px"] {
    width: 72px !important;
    height: 72px !important;
    border-radius: 18px !important;
    padding: .45rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-hero h1,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .directory-lead-content h1 {
    font-size: clamp(2rem, 13vw, 3.4rem) !important;
    line-height: .9 !important;
    letter-spacing: -.055em !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-hero p,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .directory-lead-content p {
    font-size: .95rem !important;
    line-height: 1.35 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .directory-lead-media {
    min-height: 0 !important;
    border-radius: 24px !important;
    padding: 1rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .directory-lead-content {
    padding: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-directory-search-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-scoreboard,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-menu,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-news,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-schedule,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-media {
    border-radius: 22px !important;
    padding: .9rem !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-score-strip {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-menu > div:first-child {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .7rem !important;
    align-items: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-menu > div:first-child > div:last-child {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: .45rem !important;
    width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-menu > div:first-child > div:last-child a {
    text-align: center !important;
    padding: .6rem .35rem !important;
    font-size: .78rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-menu details {
    position: static !important;
    width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-menu summary {
    width: 100% !important;
    justify-content: space-between !important;
    border-radius: 14px !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-menu details > div {
    position: static !important;
    min-width: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-top: .45rem !important;
    box-shadow: 0 12px 28px rgba(15,23,42,.14) !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-menu [style*="display:flex;flex-wrap:wrap;gap:.65rem"] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .55rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-programs,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-card > div,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-schedule > div,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-news > div,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-media > div {
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-schedule a,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-card a,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-media a {
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-schedule a[style*="grid-template-columns:minmax(0,1fr) auto"] {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-schedule a span:last-child {
    justify-self: start !important;
    width: fit-content !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-card a[style*="display:flex;justify-content:space-between"] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .18rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-card a span,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-card a strong,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-card a small,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-schedule a strong,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-schedule a small {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.15 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-directory-grid {
    grid-template-columns: 1fr !important;
    gap: .75rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .directory-channel-shell .row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-directory-search-card [style*="grid-template-columns:repeat(3"] {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 520px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-hub-shell,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-directory-shell {
    width: calc(100% - .75rem) !important;
    max-width: calc(100% - .75rem) !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-program-menu > div:first-child > div:last-child {
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-scoreboard > div:first-child {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .65rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .organization-mobile-scoreboard .scoreboard-rotator-controls {
    justify-self: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .directory-lead-media .d-flex.flex-wrap.gap-2 span {
    width: 100% !important;
    text-align: center !important;
  }
}


/* v0.1.505 location show mobile polish */
@media (max-width: 900px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-show-shell {
    width: calc(100% - 1rem) !important;
    max-width: calc(100% - 1rem) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-show-hero {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
    border-radius: 24px !important;
    padding: 1rem !important;
    margin-bottom: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-show-hero h1 {
    font-size: clamp(2rem, 13vw, 3.45rem) !important;
    line-height: .9 !important;
    letter-spacing: -.055em !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-show-hero p {
    font-size: .98rem !important;
    line-height: 1.35 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-show-hero [style*="display:flex;flex-wrap:wrap"] a {
    width: 100% !important;
    justify-content: center !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-market-file-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-weather-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-map-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-live-data-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-directory-card {
    border-radius: 22px !important;
    padding: .9rem !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-market-file-card > div:last-child,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-weather-card [style*="grid-template-columns:repeat(3"],
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-live-data-card [style*="grid-template-columns:repeat(2"],
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-directory-grid {
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-weather-map-grid {
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-weather-card > div:first-child {
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-weather-card [aria-label*="weather"] {
    width: 4.75rem !important;
    height: 4.75rem !important;
    border-radius: 1.2rem !important;
    font-size: 3rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-map-card {
    min-height: 260px !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-map-card > div:first-child {
    position: static !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .45rem !important;
    padding: .75rem !important;
    pointer-events: auto !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-map-card > div:first-child span {
    width: fit-content !important;
    max-width: 100% !important;
    white-space: normal !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-map-card iframe,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-map-card iframe + *,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-map-card [style*="min-height:360px"] {
    min-height: 260px !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-live-data-card > div {
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-live-data-card a,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-directory-card a {
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-directory-card a,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-directory-grid a {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .2rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-directory-card strong,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-directory-card span,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-directory-card small,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-live-data-card strong,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-live-data-card small {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.15 !important;
  }
}

@media (max-width: 520px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-show-shell {
    width: calc(100% - .75rem) !important;
    max-width: calc(100% - .75rem) !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-show-hero,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-market-file-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-weather-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-map-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-live-data-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-directory-card {
    padding: .8rem !important;
    border-radius: 20px !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-weather-card [style*="display:flex;align-items:center;gap:.7rem"] {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-map-card iframe,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .location-map-card [style*="min-height:360px"] {
    min-height: 230px !important;
  }
}


/* v0.1.506 locations interactive directory mobile polish */
@media (max-width: 900px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-index-shell {
    width: calc(100% - 1rem) !important;
    max-width: calc(100% - 1rem) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-index-hero {
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
    border-radius: 24px !important;
    padding: 1rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-index-hero h1 {
    font-size: clamp(2rem, 13vw, 3.5rem) !important;
    line-height: .9 !important;
    letter-spacing: -.055em !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-index-hero p {
    font-size: .98rem !important;
    line-height: 1.35 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-index-hero .geo-search-panel {
    border-radius: 22px !important;
    padding: .9rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-index-hero .geo-search-panel .row {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-index-hero .geo-search-panel .btn,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-index-hero .geo-search-panel input[type="submit"],
  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-index-hero .geo-search-panel a.btn {
    width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-directory {
    border-radius: 22px !important;
    padding: .9rem !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-directory > .d-flex {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .6rem !important;
    align-items: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-grid {
    grid-template-columns: 1fr !important;
    gap: .75rem !important;
    width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card {
    border-radius: 22px !important;
    padding: .85rem !important;
    min-height: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card .locations-card-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .65rem !important;
    align-items: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card .locations-card-head > span:last-child {
    justify-self: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card .locations-card-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .5rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card .locations-card-stat-grid span {
    border-radius: 14px !important;
    padding: .55rem .35rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card .locations-card-feature-grid {
    gap: .5rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card strong,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card small,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card span {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.15 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card [style*="display:flex;justify-content:space-between"],
  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card [style*="display:flex;align-items:center"] {
    min-width: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card [style*="border-radius:999px"] {
    max-width: 100% !important;
  }
}

@media (max-width: 520px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-index-shell {
    width: calc(100% - .75rem) !important;
    max-width: calc(100% - .75rem) !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-interactive-card .locations-card-stat-grid {
    grid-template-columns: 1fr 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .locations-index-hero > div:first-child > div:last-child span {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* v0.1.507 stronger League pages mobile redesign */
@media (max-width: 900px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-shell,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-shell {
    width: calc(100% - 1rem) !important;
    max-width: calc(100% - 1rem) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-hero,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-hero {
    border-radius: 24px !important;
    padding: 1rem !important;
    margin-bottom: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-hero .row,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-hero .row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-hero [class*="col-"],
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-hero [class*="col-"],
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-search-col {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-lead-media,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-hero .directory-lead-media {
    min-height: 0 !important;
    border-radius: 22px !important;
    padding: 1rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-hero .directory-lead-content {
    padding: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-hero h1,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-hero h1 {
    font-size: clamp(2rem, 13vw, 3.55rem) !important;
    line-height: .9 !important;
    letter-spacing: -.055em !important;
    overflow-wrap: anywhere !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-hero .lead {
    font-size: .98rem !important;
    line-height: 1.35 !important;
    margin-bottom: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-hero .directory-search-panel,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-search-col > * {
    border-radius: 22px !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-main-feed,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-activity-rail {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-main-feed,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-activity-rail,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-grid .media-rail-panel {
    border-radius: 22px !important;
    padding: .9rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-card {
    grid-template-columns: 1fr !important;
    gap: .75rem !important;
    padding: .9rem !important;
    border-radius: 20px !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-card .public-index-card-side {
    justify-items: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-card h2,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-card span,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-card small,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-card .public-index-meta {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.15 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-scoreboard {
    border-radius: 22px !important;
    padding: .75rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-scoreboard > .d-flex {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .65rem !important;
    align-items: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-scoreboard .scoreboard-rotator-controls {
    justify-self: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-tabbar {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: .45rem !important;
    width: 100% !important;
    max-width: 100% !important;
    -webkit-overflow-scrolling: touch !important;
    padding: .25rem 0 .45rem !important;
    scroll-snap-type: x proximity !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-tabbar a {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    scroll-snap-align: start !important;
    padding: .62rem .8rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-main-content-row,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-content-row {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-standings-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-board-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-results-board-card {
    border-radius: 22px !important;
    padding: .9rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-standings-card .table-responsive {
    margin-left: -.15rem !important;
    margin-right: -.15rem !important;
    padding-bottom: .25rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-standings-card table {
    font-size: .82rem !important;
  }
}

@media (max-width: 520px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-shell,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-shell {
    width: calc(100% - .75rem) !important;
    max-width: calc(100% - .75rem) !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-hero,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-hero {
    padding: .8rem !important;
    border-radius: 20px !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-hero [style*="display:flex;flex-wrap:wrap;gap:.6rem"] .ga-chip,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-show-mobile-hero [style*="display:flex;flex-wrap:wrap;gap:.6rem"] a {
    width: 100% !important;
    justify-content: center !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-mobile-hero .media-meta {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .35rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-main-feed,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-index-activity-rail,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-standings-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-leaders-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-schedule-board-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .league-results-board-card {
    padding: .8rem !important;
    border-radius: 20px !important;
  }
}


/* v0.1.508 stronger Tournament pages mobile redesign */
@media (max-width: 900px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-shell,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-shell {
    width: calc(100% - 1rem) !important;
    max-width: calc(100% - 1rem) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-hero,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-hero {
    border-radius: 24px !important;
    padding: 1rem !important;
    margin-bottom: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-hero .row,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-hero .row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-hero [class*="col-"],
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-hero [class*="col-"],
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-search-col {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-lead-media,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-hero .directory-lead-media {
    min-height: 0 !important;
    border-radius: 22px !important;
    padding: 1rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-hero .directory-lead-content {
    padding: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-hero h1,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-hero h1 {
    font-size: clamp(2rem, 13vw, 3.55rem) !important;
    line-height: .9 !important;
    letter-spacing: -.055em !important;
    overflow-wrap: anywhere !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-hero .lead {
    font-size: .98rem !important;
    line-height: 1.35 !important;
    margin-bottom: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-hero [style*="display:flex;flex-wrap:wrap;gap:.6rem"] span,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-hero [style*="display:flex;flex-wrap:wrap;gap:.6rem"] a {
    max-width: 100% !important;
    white-space: normal !important;
    line-height: 1.15 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-format-card {
    border-radius: 22px !important;
    padding: .9rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-main-feed,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-activity-rail {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-main-feed,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-activity-rail,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-grid .media-rail-panel {
    border-radius: 22px !important;
    padding: .9rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-card {
    grid-template-columns: 1fr !important;
    gap: .75rem !important;
    padding: .9rem !important;
    border-radius: 20px !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-card .public-index-card-side {
    justify-items: start !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-card h2,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-card span,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-card small,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-card .public-index-meta {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.15 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-media-grid,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-game-grid {
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-upcoming-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-finals-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-video-room-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-public-refresh section {
    border-radius: 22px !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-public-refresh section {
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-public-refresh [style*="grid-template-columns:repeat(auto-fit"] {
    grid-template-columns: 1fr !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-public-refresh [style*="display:flex;justify-content:space-between"] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .45rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-public-refresh a,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-public-refresh strong,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-public-refresh small,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-public-refresh span {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-public-refresh [style*="overflow-x:auto"] {
    margin-left: -.15rem !important;
    margin-right: -.15rem !important;
    padding-bottom: .75rem !important;
    -webkit-overflow-scrolling: touch !important;
  }
}

@media (max-width: 520px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-shell,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-shell {
    width: calc(100% - .75rem) !important;
    max-width: calc(100% - .75rem) !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-hero,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-hero {
    padding: .8rem !important;
    border-radius: 20px !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-hero [style*="display:flex;flex-wrap:wrap;gap:.6rem"] span,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-mobile-hero [style*="display:flex;flex-wrap:wrap;gap:.6rem"] a {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-mobile-hero .media-meta {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .35rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-main-feed,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-index-activity-rail,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-upcoming-card,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .tournament-show-finals-card {
    padding: .8rem !important;
    border-radius: 20px !important;
  }
}


/* v0.1.513 Subscribe page mobile-only polish */
@media (max-width: 900px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-shell {
    padding: .75rem 0 1.25rem !important;
    overflow-x: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-container {
    width: calc(100% - 1rem) !important;
    max-width: calc(100% - 1rem) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-hero {
    border-radius: 24px !important;
    padding: 1.1rem !important;
    margin-bottom: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-hero h1 {
    font-size: clamp(2rem, 12vw, 3.4rem) !important;
    line-height: .92 !important;
    letter-spacing: -.055em !important;
    overflow-wrap: anywhere !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-hero p {
    font-size: .98rem !important;
    line-height: 1.38 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-hero a {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-layout {
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-experience-nav {
    position: static !important;
    top: auto !important;
    border-radius: 22px !important;
    padding: .85rem !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-experience-nav > div {
    display: flex !important;
    gap: .5rem !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding-bottom: .15rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-experience-nav a {
    flex: 0 0 auto !important;
    min-width: 190px !important;
    max-width: 78vw !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-main {
    gap: .85rem !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-intro,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-sales {
    border-radius: 22px !important;
    padding: 1rem !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-intro > div {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .6rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-intro h2,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-sales h3 {
    font-size: clamp(1.55rem, 9vw, 2.35rem) !important;
    line-height: .98 !important;
    letter-spacing: -.04em !important;
    overflow-wrap: anywhere !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-benefits,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-plans-grid {
    grid-template-columns: 1fr !important;
    gap: .75rem !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-benefits > div,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-plans-grid article {
    border-radius: 20px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-plans-grid article > div:first-child {
    padding: 1rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-plans-grid article [style*="display:flex;justify-content:space-between"] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .6rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-plans-grid article a,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-plans-grid article .btn {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-shell h1,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-shell h2,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-shell h3,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-shell p,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-shell span,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-shell strong,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-shell small {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }
}

@media (max-width: 520px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-container {
    width: calc(100% - .75rem) !important;
    max-width: calc(100% - .75rem) !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-hero,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-experience-nav,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-intro,
  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-sales {
    border-radius: 20px !important;
    padding: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .subscribe-page-mobile-experience-nav a {
    min-width: 78vw !important;
  }
}


/* v0.1.515 Events index search and mobile polish */
@media (max-width: 900px) {
  body.ga-light-theme:not(:has(.ga-admin-shell)) .events-index-directory-shell {
    width: calc(100% - 1rem) !important;
    max-width: calc(100% - 1rem) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: hidden !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .events-index-search-hero {
    border-radius: 24px !important;
    padding: 0 !important;
    margin-bottom: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .events-index-search-hero .row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .events-index-search-hero [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .events-index-search-hero .directory-lead-card {
    border-radius: 24px !important;
    padding: 1rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .events-index-search-hero h1 {
    font-size: clamp(2rem, 13vw, 3.5rem) !important;
    line-height: .9 !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .events-index-search-panel .media-side-panel {
    border-radius: 22px !important;
    padding: .9rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .events-index-heading {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .65rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .events-index-heading .btn {
    width: 100% !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .events-index-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .75rem !important;
  }

  body.ga-light-theme:not(:has(.ga-admin-shell)) .events-index-grid [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}


/* v0.1.517 basketball scorekeeper */
.basketball-scorebook-shell {
  width: min(100% - 1rem, 1540px);
  margin: 0 auto;
}

.basketball-score-strip .scorebook-team-score small,
.basketball-score-strip .basketball-clock-card small {
  display: block;
  color: #cbd5e1 !important;
  -webkit-text-fill-color: #cbd5e1 !important;
  font-weight: 850;
}

.basketball-scorekeeper-layout {
  display: grid;
  grid-template-columns: minmax(260px, .28fr) minmax(0, .72fr);
  gap: 1rem;
  align-items: start;
}

.basketball-control-panel {
  position: sticky;
  top: 1rem;
}

.basketball-main-panel {
  min-width: 0;
}

.basketball-team-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.basketball-team-panel {
  border-radius: 24px;
  border: 1px solid rgba(148,163,184,.24);
  background: rgba(15,23,42,.72);
  padding: 1rem;
  min-width: 0;
}

.basketball-team-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  margin-bottom: .8rem;
}

.basketball-team-panel-head strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: 1.15rem;
  font-weight: 1000;
}

.basketball-team-panel-head span {
  display: inline-grid;
  place-items: center;
  min-width: 48px;
  height: 48px;
  border-radius: 16px;
  background: #facc15;
  color: #07111f !important;
  -webkit-text-fill-color: #07111f !important;
  font-size: 1.35rem;
  font-weight: 1000;
}

.basketball-action-form {
  display: grid;
  gap: .45rem;
  margin-bottom: .55rem;
}

.basketball-action-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(115px, auto);
  gap: .45rem;
}

.basketball-player-select,
.basketball-mini-select {
  width: 100%;
  min-width: 0;
  border-radius: 14px;
  border: 1px solid rgba(203,213,225,.45);
  background: #ffffff !important;
  color: #07111f !important;
  -webkit-text-fill-color: #07111f !important;
  padding: .62rem .7rem;
  font-weight: 900;
}

.basketball-score-button,
.basketball-small-actions button {
  border: 0;
  border-radius: 14px;
  padding: .62rem .75rem;
  font-weight: 1000;
  background: #facc15;
  color: #07111f !important;
  -webkit-text-fill-color: #07111f !important;
}

.basketball-score-button--2 {
  background: #38bdf8;
}

.basketball-score-button--3 {
  background: #fb923c;
}

.basketball-small-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .5rem;
  margin-top: .75rem;
}

.basketball-small-actions form {
  display: grid;
  gap: .4rem;
}

.basketball-action-log {
  display: grid;
  gap: .55rem;
}

.basketball-action-log > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: .65rem;
  align-items: center;
  border-radius: 16px;
  background: rgba(15,23,42,.68);
  border: 1px solid rgba(148,163,184,.24);
  padding: .75rem;
}

.basketball-action-log strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.basketball-action-log span,
.basketball-action-log small {
  color: #cbd5e1 !important;
  -webkit-text-fill-color: #cbd5e1 !important;
  font-weight: 850;
}

@media (max-width: 900px) {
  .basketball-scorekeeper-layout,
  .basketball-team-action-grid {
    grid-template-columns: 1fr;
  }

  .basketball-control-panel {
    position: static;
  }

  .basketball-action-log > div {
    grid-template-columns: 1fr;
    gap: .25rem;
  }
}

@media (max-width: 560px) {
  .basketball-scorebook-shell {
    width: calc(100% - .75rem);
  }

  .basketball-action-row,
  .basketball-small-actions {
    grid-template-columns: 1fr;
  }

  .basketball-score-strip {
    grid-template-columns: 1fr !important;
    text-align: left !important;
  }

  .basketball-score-strip .scorebook-team-score {
    text-align: left !important;
  }
}

.ga-gamecard__sport,
.ga-scorecard__sport {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: #dbeafe !important;
  color: #1e3a8a !important;
  -webkit-text-fill-color: #1e3a8a !important;
  padding: .14rem .4rem;
  font-size: .54rem;
  font-weight: 1000;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.ga-scorecard__date-below-score {
  margin-top: .45rem;
  text-align: right;
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  font-size: .78rem;
  font-weight: 900;
}


.ga-scorecard__location-below-score {
  margin-top: .2rem;
  text-align: right;
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
  font-size: .72rem;
  font-weight: 850;
}

/* v0.1.579 sport-neutral, timed-sport scorebug refinements */
.scorebug-broadcast-v2 .bug-clock-panel {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.18rem;
  background:#121720;
  border-left:1px solid rgba(255,255,255,.11);
  padding:8px 12px;
  text-align:center;
  min-width:104px;
}
.scorebug-broadcast-v2 .bug-clock-value {
  color:#fff;
  font-size:1.3rem;
  line-height:1;
  font-weight:1000;
  font-variant-numeric:tabular-nums;
  letter-spacing:.04em;
  white-space:nowrap;
}
.scorebug-broadcast-v2--timed {
  grid-template-columns:minmax(210px,1fr) 104px 104px minmax(210px,1fr) 112px 112px minmax(240px,1.2fr);
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-clock-panel {
  background:var(--ga-overlay-surface);
  color:var(--ga-overlay-text);
}
.ga360-angular-overlay-v3 .scorebug-broadcast-v2 .bug-clock-value {
  color:var(--ga-overlay-text);
}
@media (max-width: 900px) {
  .scorebug-broadcast-v2--timed { grid-template-columns:1fr 62px 62px 1fr; }
  .scorebug-broadcast-v2 .bug-clock-panel { min-height:46px; }
}

/* v0.1.580 16:9 broadcast-safe scorebug family
   Timed-sport scorebugs now share the sponsored-scorebug visual language without
   stretching edge-to-edge. Baseball/softball remain the only scorebugs with count,
   outs, and base-runner chart modules. */
.scorebug-169-stage {
  position: fixed;
  inset: 0;
  z-index: 30;
  pointer-events: none;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 0 6vw 7.5vh;
  overflow: hidden;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #f8fbff;
}
.scorebug-169-wrap {
  width: min(84vw, 1460px);
  max-width: calc(100vw - 96px);
  display: grid;
  justify-items: center;
  filter: drop-shadow(0 24px 42px rgba(0,0,0,.48));
}
.scorebug-169 {
  width: 100%;
  min-height: 126px;
  display: grid;
  grid-template-columns: minmax(250px, 1.2fr) minmax(96px, 130px) minmax(240px, 320px) minmax(96px, 130px) minmax(250px, 1.2fr);
  align-items: stretch;
  overflow: hidden;
  border-radius: 26px;
  background: linear-gradient(180deg, rgba(5,14,26,.98), rgba(3,10,19,.97));
  border: 1.5px solid rgba(226,232,240,.72);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 24px 54px rgba(0,0,0,.36);
}
.scorebug-169::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
}
.scorebug-169 > * { min-width: 0; }
.bug169-team {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 18px 22px;
  background: linear-gradient(90deg, rgba(9,22,39,.95), rgba(9,20,36,.76));
}
.bug169-team--home {
  justify-content: flex-end;
  text-align: right;
  background: linear-gradient(270deg, rgba(9,22,39,.95), rgba(9,20,36,.76));
}
.bug169-logo {
  width: 88px;
  height: 88px;
  flex: 0 0 88px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 18px;
  background: rgba(4,12,24,.76);
  border: 2px solid rgba(226,232,240,.76);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
  color: #f8fbff;
  font-size: 1.45rem;
  line-height: 1;
  font-weight: 1000;
  letter-spacing: -.04em;
}
.bug169-logo.has-logo img,
.bug169-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  padding: 8px;
}
.bug169-team-copy { min-width: 0; display: grid; gap: 2px; }
.bug169-team-copy span {
  color: rgba(248,251,255,.9);
  font-size: 1.05rem;
  font-weight: 950;
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.bug169-team-copy strong {
  color: #ffffff;
  font-size: clamp(1.65rem, 2.4vw, 2.35rem);
  line-height: .94;
  font-weight: 1000;
  letter-spacing: -.045em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.bug169-team-copy small {
  color: rgba(248,251,255,.28);
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.bug169-score {
  display: grid;
  place-items: center;
  background: rgba(3,10,19,.72);
  border-left: 1px solid rgba(226,232,240,.12);
  border-right: 1px solid rgba(226,232,240,.12);
  color: #ffffff;
  font-size: clamp(3.1rem, 5vw, 5.1rem);
  line-height: 1;
  font-weight: 1000;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.06em;
}
.bug169-score--away { border-right: 3px solid #f7c521; }
.bug169-clock {
  align-self: center;
  justify-self: center;
  min-width: 220px;
  max-width: 100%;
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding: 13px 26px;
  border-radius: 18px;
  background: rgba(5,15,29,.88);
  border: 2px solid rgba(226,232,240,.54);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.11);
}
.bug169-period {
  color: #f7c521;
  font-size: clamp(1.25rem, 2vw, 1.85rem);
  line-height: 1;
  font-weight: 1000;
  letter-spacing: -.03em;
  text-transform: uppercase;
  white-space: nowrap;
}
.bug169-time {
  color: #ffffff;
  font-size: clamp(1.75rem, 3.1vw, 2.7rem);
  line-height: 1;
  font-weight: 1000;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.05em;
  white-space: nowrap;
}
.bug169-shot-clock {
  min-width: 48px;
  display: inline-grid;
  place-items: center;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid rgba(226,232,240,.28);
  color: #f7c521;
  background: rgba(255,255,255,.045);
  font-size: clamp(1.1rem, 2vw, 1.7rem);
  font-weight: 1000;
  font-variant-numeric: tabular-nums;
}
.bug169-detail-tray {
  width: min(74%, 1080px);
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  transform: translateY(-1px);
  overflow: hidden;
  border-radius: 0 0 24px 24px;
  background: linear-gradient(180deg, rgba(5,14,26,.98), rgba(3,10,19,.96));
  border: 1px solid rgba(226,232,240,.28);
  border-top: 0;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}
.bug169-sponsor {
  align-self: stretch;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 255px;
  padding: 0 28px;
  border-radius: 999px;
  margin: 8px 12px;
  background: linear-gradient(180deg, #ffd43b, #f4b415);
  color: #08111f;
  font-weight: 1000;
  font-size: .98rem;
  white-space: nowrap;
}
.bug169-detail {
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  gap: 12px;
  min-width: 150px;
  padding: 0 28px;
  border-left: 1px solid rgba(247,197,33,.62);
  color: #fff;
  text-transform: uppercase;
  white-space: nowrap;
}
.bug169-detail em {
  color: rgba(248,251,255,.84);
  font-style: normal;
  font-size: .88rem;
  font-weight: 950;
  letter-spacing: .12em;
}
.bug169-detail strong {
  color: #f7c521;
  font-size: 1.18rem;
  font-weight: 1000;
  letter-spacing: .06em;
}
.bug169-diamond-row {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-height: 50px;
  border-top: 1px solid rgba(226,232,240,.14);
  background: rgba(3,10,19,.72);
}
.bug169-chip {
  display: inline-flex;
  min-width: 54px;
  justify-content: center;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.22);
  color: #fff;
  background: rgba(255,255,255,.055);
  font-size: .9rem;
  font-weight: 1000;
  letter-spacing: .08em;
}
.bug169-bases {
  position: relative;
  width: 52px;
  height: 36px;
  display: inline-block;
}
.bug169-bases i {
  position: absolute;
  width: 14px;
  height: 14px;
  transform: rotate(45deg);
  border-radius: 3px;
  border: 2px solid rgba(226,232,240,.72);
  background: rgba(255,255,255,.035);
}
.bug169-bases i.on {
  background: #f7c521;
  border-color: #ffe58a;
  box-shadow: 0 0 16px rgba(247,197,33,.55);
}
.bug169-bases .second { left: 19px; top: 0; }
.bug169-bases .third { left: 2px; top: 18px; }
.bug169-bases .first { right: 2px; top: 18px; }
.scorebug-169-stage .ga360-overlay-brand-row { display: none; }

body.ga-overlay-body .scorebug-169-stage {
  width: 100vw;
  height: 100vh;
}
body.ga-overlay-body .scorebug-broadcast-v2,
body.ga-overlay-body .sponsor-strip--v2 {
  display: none !important;
}
@media (max-width: 1100px) {
  .scorebug-169-stage { padding: 0 16px 28px; }
  .scorebug-169-wrap { width: 100%; max-width: none; }
  .scorebug-169 { grid-template-columns: minmax(180px,1fr) 78px minmax(150px,220px) 78px minmax(180px,1fr); min-height: 94px; border-radius: 20px; }
  .bug169-logo { width: 58px; height: 58px; flex-basis: 58px; border-radius: 14px; font-size: 1rem; }
  .bug169-team { padding: 12px 14px; gap: 10px; }
  .bug169-team-copy strong { font-size: 1.15rem; }
  .bug169-team-copy span { font-size: .78rem; }
  .bug169-team-copy small { display: none; }
  .bug169-clock { min-width: 130px; padding: 10px 12px; gap: 10px; min-height: 56px; }
  .bug169-period { font-size: 1rem; }
  .bug169-time { font-size: 1.35rem; }
  .bug169-score { font-size: 2.3rem; }
  .bug169-detail-tray { width: 92%; flex-wrap: wrap; height: auto; min-height: 42px; }
  .bug169-sponsor { min-width: 0; padding: 0 16px; }
  .bug169-detail { min-width: 0; padding: 10px 16px; }
}

/* v0.1.635 NAV TICKER COMPACTION
   Move the global game ticker into the top navigation stack so it sits directly
   below the menu buttons next to the logo instead of consuming a separate page row. */
.ga-navbar > .container-fluid {
  align-items: stretch;
  gap: .8rem;
}
.ga-navbar-content {
  min-width: 0;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: stretch !important;
  gap: .34rem;
}
.ga-navbar-menu-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  min-width: 0;
  width: 100%;
}
.ga-ticker--nav {
  width: 100%;
  min-width: 0;
  margin: 0 0 .12rem 1rem;
  padding: .26rem .42rem;
  border: 1px solid rgba(15,23,42,.09);
  border-radius: 999px;
  box-shadow: none;
  background: rgba(255,255,255,.62);
  backdrop-filter: blur(10px);
}
.ga-ticker--nav .ga-ticker-track {
  padding-block: 0;
}
.ga-ticker--nav .ga-ticker-game {
  min-height: 28px;
  padding: .22rem .34rem .22rem .44rem;
  box-shadow: none;
  font-size: .78rem;
}
.ga-ticker--nav .ga-ticker-status {
  padding: .14rem .34rem;
  font-size: .58rem;
}
.ga-ticker--nav .ga-ticker-matchup {
  max-width: 220px;
}
.ga-ticker--nav .ga-ticker-score {
  font-size: .78rem;
}
.ga-ticker--nav .ga-ticker-label,
.ga-ticker--nav .ga-ticker-all {
  font-size: .62rem;
}
.ga-ticker--nav .ga-ticker-separator {
  height: 22px;
}
@media (max-width: 991px) {
  .ga-navbar-content {
    gap: .62rem;
  }
  .ga-navbar-menu-row {
    flex-direction: column;
    align-items: stretch;
  }
  .ga-ticker--nav {
    margin: 0;
    border-radius: 18px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: .45rem;
  }
  .ga-ticker--nav .ga-ticker-matchup {
    max-width: 180px;
  }
}
@media (max-width: 640px) {
  .ga-ticker--nav {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  .ga-ticker--nav .ga-ticker-label {
    display: none;
  }
  .ga-ticker--nav .ga-ticker-game {
    gap: .35rem;
  }
  .ga-ticker--nav .ga-ticker-matchup {
    max-width: 130px;
  }
}


/* v0.1.636 NAV LOGO TEXT REMOVAL + HEADER SPACING
   Remove the public brand text from the header and keep a clear gutter between
   the logo, primary navigation buttons, and compact ticker. */
.ga-navbar .ga-brand-pro {
  flex: 0 0 auto;
  margin-right: clamp(1.1rem, 2vw, 2.35rem);
  padding-block: .18rem;
}
.ga-navbar .ga-brand-copy {
  display: none !important;
}
.ga-navbar .ga-brand-logo-wrap {
  width: 142px;
  flex-basis: 142px;
}
.ga-navbar-content {
  padding-left: .25rem;
}
.ga-public-nav-groups {
  margin-left: 0 !important;
}
.ga-ticker--nav {
  margin-left: 0;
  margin-top: .08rem;
}
@media (min-width: 992px) {
  .ga-navbar > .container-fluid {
    column-gap: clamp(1rem, 1.7vw, 2rem);
  }
  .ga-navbar .ga-public-nav-media {
    margin-left: 0 !important;
  }
}
@media (max-width: 991px) {
  .ga-navbar .ga-brand-pro {
    margin-right: .85rem;
  }
  .ga-navbar .ga-brand-logo-wrap {
    width: 126px;
    flex-basis: 126px;
  }
  .ga-navbar-content {
    padding-left: 0;
  }
}


/* v0.1.637 NAV LOGO SPACING BALANCE
   Use the recovered header room to enlarge the logo while tightening the gutter
   so the menu/ticker remain compact without colliding. */
.ga-navbar .ga-brand-pro {
  margin-right: clamp(.55rem, 1vw, 1.25rem);
}
.ga-navbar .ga-brand-logo-wrap {
  width: clamp(156px, 11.6vw, 178px);
  flex-basis: clamp(156px, 11.6vw, 178px);
}
.ga-navbar > .container-fluid {
  column-gap: clamp(.45rem, .85vw, 1.1rem);
}
.ga-navbar-content {
  padding-left: 0;
}
@media (max-width: 991px) {
  .ga-navbar .ga-brand-logo-wrap {
    width: 146px;
    flex-basis: 146px;
  }
  .ga-navbar .ga-brand-pro {
    margin-right: .55rem;
  }
}

/* v0.1.638 SCOREBOARD DISPLAY IMPORT CONTRAST
   Make JSON import controls visible across light/dark admin surfaces and browser defaults. */
.ga-scoreboard-definition-tools,
.ga-scoreboard-definition-tools * {
  color-scheme: light !important;
}

.ga-scoreboard-definition-tools {
  background: #f8fafc !important;
  border: 2px solid #94a3b8 !important;
  border-radius: 18px !important;
  padding: 14px !important;
}

.ga-scoreboard-definition-file {
  appearance: none !important;
  -webkit-appearance: none !important;
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border: 2px solid #475569 !important;
  border-radius: 12px !important;
  padding: 10px !important;
  font-weight: 900 !important;
  min-height: 46px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.75), 0 1px 2px rgba(15,23,42,.12) !important;
}

.ga-scoreboard-definition-file::file-selector-button {
  appearance: none !important;
  background: #0f172a !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 10px !important;
  padding: 9px 12px !important;
  margin-right: 12px !important;
  font-weight: 1000 !important;
  cursor: pointer !important;
}

.ga-scoreboard-definition-file::-webkit-file-upload-button {
  -webkit-appearance: none !important;
  background: #0f172a !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 10px !important;
  padding: 9px 12px !important;
  margin-right: 12px !important;
  font-weight: 1000 !important;
  cursor: pointer !important;
}

input.ga-scoreboard-definition-import,
button.ga-scoreboard-definition-import,
.ga-scoreboard-definition-import {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ea580c !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 2px solid #7c2d12 !important;
  border-radius: 14px !important;
  padding: 12px 16px !important;
  min-height: 46px !important;
  font-weight: 1000 !important;
  letter-spacing: .03em !important;
  text-shadow: 0 1px 1px rgba(0,0,0,.35) !important;
  box-shadow: 0 10px 22px rgba(124,45,18,.26), inset 0 1px 0 rgba(255,255,255,.25) !important;
  cursor: pointer !important;
}

input.ga-scoreboard-definition-import:hover,
button.ga-scoreboard-definition-import:hover,
.ga-scoreboard-definition-import:hover {
  background: #c2410c !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}


/* v0.1.639 SCOREBOARD DISPLAY IMPORT REAL CONTRAST
   Avoid browser file input rendering bugs by hiding the native control and using explicit high-contrast controls. */
.ga-scoreboard-definition-file-input {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  opacity: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
}

.ga-scoreboard-definition-file-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 12px 18px !important;
  border-radius: 14px !important;
  border: 2px solid #0f172a !important;
  background: #0f172a !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-weight: 1000 !important;
  letter-spacing: .025em !important;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(15,23,42,.24), inset 0 1px 0 rgba(255,255,255,.18) !important;
  cursor: pointer !important;
}

.ga-scoreboard-definition-file-button:hover,
.ga-scoreboard-definition-file-button:focus {
  background: #1d4ed8 !important;
  border-color: #1e3a8a !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.ga-scoreboard-definition-file-name {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 48px !important;
  min-width: min(100%, 280px) !important;
  max-width: 520px !important;
  padding: 12px 16px !important;
  border-radius: 14px !important;
  border: 2px solid #94a3b8 !important;
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 900 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.85), 0 1px 2px rgba(15,23,42,.10) !important;
}

input.ga-scoreboard-definition-import,
button.ga-scoreboard-definition-import,
.ga-scoreboard-definition-import {
  background: #f97316 !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  border: 3px solid #7c2d12 !important;
  min-height: 50px !important;
  padding: 13px 20px !important;
  font-weight: 1000 !important;
  letter-spacing: .035em !important;
  text-shadow: none !important;
  box-shadow: 0 12px 28px rgba(124,45,18,.30), inset 0 1px 0 rgba(255,255,255,.42) !important;
}

input.ga-scoreboard-definition-import:hover,
button.ga-scoreboard-definition-import:hover,
.ga-scoreboard-definition-import:hover,
input.ga-scoreboard-definition-import:focus,
button.ga-scoreboard-definition-import:focus,
.ga-scoreboard-definition-import:focus {
  background: #fb923c !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  outline: 3px solid rgba(29,78,216,.25) !important;
  outline-offset: 2px !important;
}


/* v0.1.640 SCOREBOARD IMPORT CHOOSE BUTTON READABILITY
   Force the custom upload label text to render above inherited admin text-fill rules. */
.ga-scoreboard-definition-tools label.ga-scoreboard-definition-file-button,
label.ga-scoreboard-definition-file-button {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: 15px !important;
  line-height: 1.15 !important;
  min-width: 230px !important;
  gap: .5rem !important;
  overflow: visible !important;
  text-indent: 0 !important;
  text-shadow: 0 1px 1px rgba(0,0,0,.35) !important;
}
.ga-scoreboard-definition-tools label.ga-scoreboard-definition-file-button::before {
  content: "Choose JSON definition" !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  display: inline !important;
  font-weight: 1000 !important;
}
.ga-scoreboard-definition-tools label.ga-scoreboard-definition-file-button {
  font-size: 0 !important;
}

/* v0.1.687 cross country sport-hub scorecards: meet/race summary instead of game matchup score lines. */
.ga-scorecard__meet {
  display: grid;
  gap: .75rem;
  min-height: 92px;
  align-content: center;
}
.ga-scorecard__meet-title {
  display: block;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-size: clamp(1.2rem, 2.4vw, 1.7rem);
  font-weight: 1000;
  letter-spacing: -.045em;
  line-height: 1.04;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ga-scorecard__meet-facts {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}
.ga-scorecard__meet-facts span {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: #eef6ff !important;
  border: 1px solid rgba(7, 94, 199, .14);
  color: #1e3a8a !important;
  -webkit-text-fill-color: #1e3a8a !important;
  padding: .32rem .55rem;
  font-size: .64rem;
  font-weight: 1000;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.ga-scorecard--compact .ga-scorecard__meet { min-height: 84px; }
.ga-scorecard--compact .ga-scorecard__meet-title { font-size: 1.35rem; }

/* v0.1.699 Cross country racing overlays: clock, positioning, and race scoring instead of scorebugs/matchups. */
.xc-overlay-stage{position:fixed;inset:0;pointer-events:none;color:#f8fafc;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.xc-overlay-stage--lower{display:flex;align-items:flex-end;justify-content:center;padding:0 4vw 4vh;}
.xc-clock-bug{width:min(1180px,94vw);display:grid;grid-template-columns:220px 1fr 220px;gap:0;background:linear-gradient(135deg,rgba(2,6,23,.94),rgba(5,46,22,.92));border:1px solid rgba(187,247,208,.38);box-shadow:0 18px 70px rgba(0,0,0,.42);border-radius:26px;overflow:hidden;}
.xc-clock-bug>div{padding:1rem 1.15rem;border-right:1px solid rgba(255,255,255,.12);min-width:0;}
.xc-clock-bug>div:last-child{border-right:0;}
.xc-clock-bug span,.xc-overlay-row small,.xc-overlay-race-card small{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.64rem;font-weight:1000;color:#bbf7d0;}
.xc-clock-bug strong{display:block;font-size:1.35rem;font-weight:1000;letter-spacing:-.04em;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.xc-clock-bug [data-xc-live-clock]{font-size:2.65rem;font-variant-numeric:tabular-nums;color:#fef08a;}
.xc-clock-bug small{display:block;color:#d1fae5;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.xc-overlay-board{background:radial-gradient(circle at 15% 15%,rgba(22,163,74,.28),transparent 35%),linear-gradient(135deg,rgba(2,6,23,.96),rgba(6,78,59,.92));border-color:rgba(187,247,208,.34)!important;}
.xc-overlay-title h1{font-size:clamp(2.4rem,5vw,5.8rem);font-weight:1000;letter-spacing:-.075em;color:#fff;margin:0;}
.xc-overlay-title p{font-size:1.05rem;font-weight:900;color:#bbf7d0;letter-spacing:.03em;margin:.25rem 0 1.25rem;}
.xc-overlay-list{display:grid;gap:.65rem;}
.xc-overlay-row{display:grid;grid-template-columns:64px 92px minmax(0,1fr) minmax(160px,auto);gap:.8rem;align-items:center;border-radius:18px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);padding:.72rem .9rem;color:#fff;}
.xc-overlay-row strong{font-size:1.1rem;font-weight:1000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.xc-overlay-place{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#dcfce7;color:#064e3b;font-weight:1000;font-size:1.15rem;}
.xc-overlay-bib{font-weight:1000;color:#fef08a;white-space:nowrap;}
.xc-overlay-empty{padding:1rem;border-radius:18px;background:rgba(255,255,255,.08);color:#d1fae5;font-weight:900;}
.xc-overlay-race-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;}
.xc-overlay-race-card{border-radius:20px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);padding:1rem;color:#fff;}
.xc-overlay-race-card strong{display:block;font-size:1.25rem;font-weight:1000;}
.xc-overlay-race-card span{display:inline-flex;margin-top:.7rem;border-radius:999px;background:#dcfce7;color:#064e3b;font-weight:1000;padding:.25rem .65rem;}
@media(max-width:760px){.xc-clock-bug{grid-template-columns:1fr}.xc-clock-bug>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.xc-overlay-row{grid-template-columns:48px 78px 1fr}.xc-overlay-row small{grid-column:3}.xc-overlay-race-grid{grid-template-columns:1fr}}

/* v0.1.717 Article Studio rich layout editor */
.article-rich-editor {
  border: 1px solid rgba(15, 23, 42, .12);
  border-radius: 24px;
  background: #f8fbff;
  overflow: hidden;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}
.article-rich-source { display: none; min-height: 520px; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.article-rich-editor.source-mode .article-rich-source { display: block; border: 0; border-radius: 0; min-height: 560px; }
.article-rich-editor.source-mode .article-rich-canvas,
.article-rich-editor.source-mode .article-layout-palette { display: none; }
.article-editor-toolbar {
  display: flex;
  gap: .45rem;
  flex-wrap: wrap;
  align-items: center;
  padding: .85rem;
  border-bottom: 1px solid rgba(15, 23, 42, .10);
  background: linear-gradient(180deg, #ffffff, #f3f7fc);
  position: sticky;
  top: 0;
  z-index: 3;
}
.article-editor-toolbar button,
.article-layout-palette button {
  border: 1px solid rgba(15, 23, 42, .14);
  background: #fff;
  color: #101828;
  border-radius: 999px;
  padding: .5rem .78rem;
  font-weight: 900;
  font-size: .82rem;
  line-height: 1;
  box-shadow: 0 8px 22px rgba(15,23,42,.05);
}
.article-editor-toolbar button:hover,
.article-layout-palette button:hover { border-color: #0b72d9; color: #0b5ed7; transform: translateY(-1px); }
.article-toolbar-separator { width: 1px; align-self: stretch; background: rgba(15,23,42,.14); margin: 0 .2rem; }
.article-layout-palette {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .65rem;
  padding: .9rem;
  border-bottom: 1px solid rgba(15,23,42,.08);
  background: #ffffff;
}
.article-layout-palette button {
  border-radius: 18px;
  padding: .82rem .9rem;
  text-align: left;
  display: grid;
  gap: .2rem;
}
.article-layout-palette small { color: #667085; font-weight: 800; }
.article-rich-canvas {
  min-height: 660px;
  padding: clamp(1.25rem, 3vw, 2.5rem);
  background: #fff;
  color: #182230;
  font-size: 1.08rem;
  line-height: 1.72;
  outline: none;
}
.article-rich-canvas:empty:before {
  content: "Start writing or insert a layout block…";
  color: #98a2b3;
  font-weight: 800;
}
.article-rich-canvas h1,
.article-rich-canvas h2,
.article-rich-canvas h3,
.article-rich-canvas h4,
.article-body-card h1,
.article-body-card h2,
.article-body-card h3,
.article-body-card h4 { color: #101828 !important; font-weight: 1000; letter-spacing: -.035em; line-height: 1.05; margin: 1.15em 0 .45em; }
.article-rich-canvas h2,
.article-body-card h2 { font-size: clamp(1.9rem, 4vw, 3rem); }
.article-rich-canvas h3,
.article-body-card h3 { font-size: clamp(1.35rem, 2.4vw, 2rem); }
.article-rich-canvas p,
.article-body-card p { margin-bottom: 1.05rem; }
.article-rich-canvas blockquote,
.article-body-card blockquote {
  margin: 1.5rem 0;
  padding: 1.2rem 1.4rem;
  border-left: 6px solid #0b72d9;
  background: #eef6ff;
  border-radius: 18px;
  color: #101828;
  font-size: 1.35rem;
  font-weight: 900;
  line-height: 1.35;
}
.article-rich-canvas img,
.article-body-card img { max-width: 100%; border-radius: 22px; height: auto; }
.article-rich-canvas figure,
.article-body-card figure { margin: 1.5rem 0; }
.article-rich-canvas figcaption,
.article-body-card figcaption { color: #667085; font-size: .9rem; font-weight: 800; margin-top: .5rem; }
.article-layout-two-column,
.article-body-card .article-layout-two-column { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; margin: 1.5rem 0; }
.article-layout-callout,
.article-body-card .article-layout-callout {
  background: linear-gradient(135deg, #07111f, #0b72d9);
  color: #fff;
  border-radius: 24px;
  padding: 1.25rem;
  margin: 1.5rem 0;
}
.article-layout-callout *,
.article-body-card .article-layout-callout * { color: #fff !important; }
.article-layout-stat-strip,
.article-body-card .article-layout-stat-strip { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: .75rem; margin: 1.4rem 0; }
.article-layout-stat-strip div,
.article-body-card .article-layout-stat-strip div { border-radius: 20px; padding: 1rem; background: #f2f6fb; border: 1px solid rgba(15,23,42,.10); }
.article-layout-stat-strip strong,
.article-body-card .article-layout-stat-strip strong { display:block; font-size: 1.8rem; line-height:1; color:#101828 !important; }
.article-layout-stat-strip span,
.article-body-card .article-layout-stat-strip span { display:block; margin-top:.35rem; color:#667085 !important; font-weight:900; text-transform:uppercase; letter-spacing:.08em; font-size:.72rem; }
.article-layout-lead,
.article-body-card .article-layout-lead { padding: 1.2rem 0; border-bottom: 1px solid rgba(15,23,42,.12); margin-bottom: 1.3rem; }
.article-layout-lead .kicker,
.article-body-card .article-layout-lead .kicker { color:#0b72d9 !important; text-transform:uppercase; letter-spacing:.18em; font-weight:1000; font-size:.75rem; }
.article-layout-analysis,
.article-body-card .article-layout-analysis { border:1px solid rgba(15,23,42,.12); border-radius:24px; padding:1.2rem; background:#fbfcff; margin:1.5rem 0; }
.article-layout-timeline,
.article-body-card .article-layout-timeline { border-left: 4px solid #0b72d9; padding-left: 1rem; margin: 1.5rem 0; }
.article-layout-timeline p,
.article-body-card .article-layout-timeline p { border-bottom: 1px solid rgba(15,23,42,.10); padding-bottom:.75rem; }
@media (max-width: 900px) {
  .article-layout-palette { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .article-layout-two-column,
  .article-body-card .article-layout-two-column { grid-template-columns: 1fr; }
  .article-layout-stat-strip,
  .article-body-card .article-layout-stat-strip { grid-template-columns: 1fr; }
}

/* v0.1.718 Article Studio font controls and direct photo uploads */
.article-toolbar-select-label {
  display: inline-flex;
  align-items: center;
  gap: .38rem;
  border: 1px solid rgba(15, 23, 42, .14);
  background: #fff;
  color: #344054;
  border-radius: 999px;
  padding: .32rem .42rem .32rem .72rem;
  font-weight: 900;
  font-size: .72rem;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: .06em;
  box-shadow: 0 8px 22px rgba(15,23,42,.05);
}
.article-toolbar-select-label select {
  border: 0;
  background: #f2f6fb;
  color: #101828;
  border-radius: 999px;
  padding: .32rem 1.85rem .32rem .62rem;
  font-weight: 900;
  text-transform: none;
  letter-spacing: 0;
  outline: none;
  min-width: 92px;
}
.article-rich-canvas [style*="font-family"],
.article-body-card [style*="font-family"] { line-height: inherit; }
.article-rich-canvas [style*="font-size"],
.article-body-card [style*="font-size"] { line-height: 1.35; }
.article-rich-canvas figure[data-layout="uploaded-image"],
.article-body-card figure[data-layout="uploaded-image"] {
  padding: .55rem;
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 26px;
  background: #f8fbff;
}
.article-rich-canvas figure[data-layout="uploaded-image"] img,
.article-body-card figure[data-layout="uploaded-image"] img { display: block; width: 100%; }

.ga-xc-meetcard .ga-gamecard__matchup{display:none;}
.ga-xc-meetcard__body{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin:.85rem 0;}
.ga-xc-meetcard__title{margin:0;color:#0f172a!important;-webkit-text-fill-color:#0f172a!important;font-size:1.35rem;font-weight:1000;letter-spacing:-.035em;}
.ga-xc-meetcard__venue{margin:.3rem 0 0;color:#475569!important;-webkit-text-fill-color:#475569!important;font-weight:850;}
.ga-xc-meetcard__metrics{display:grid;grid-template-columns:repeat(3,minmax(74px,1fr));gap:.55rem;min-width:min(360px,45%);}
.ga-xc-meetcard__metrics span{display:grid;gap:.12rem;border:1px solid rgba(15,23,42,.10);background:#f8fafc;border-radius:18px;padding:.75rem;text-align:center;color:#0f172a!important;-webkit-text-fill-color:#0f172a!important;}
.ga-xc-meetcard__metrics strong{font-size:1.35rem;font-weight:1000;color:#0f172a!important;-webkit-text-fill-color:#0f172a!important;line-height:1;}
.ga-xc-meetcard__metrics small{font-weight:950;color:#64748b!important;-webkit-text-fill-color:#64748b!important;text-transform:uppercase;letter-spacing:.08em;}
.ga-xc-meetcard__results{display:flex;flex-wrap:wrap;gap:.55rem;margin:.75rem 0;}
.ga-xc-meetcard__results span{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;background:#eef2ff;border:1px solid rgba(37,99,235,.18);padding:.45rem .7rem;color:#334155!important;-webkit-text-fill-color:#334155!important;font-weight:850;}
.ga-xc-meetcard__results strong{color:#0f172a!important;-webkit-text-fill-color:#0f172a!important;font-weight:1000;}
@media (max-width: 768px){.ga-xc-meetcard__body{display:block}.ga-xc-meetcard__metrics{min-width:0;width:100%;margin-top:.8rem;grid-template-columns:repeat(3,minmax(0,1fr));}.ga-xc-meetcard__metrics span{padding:.6rem .4rem}.ga-xc-meetcard__title{font-size:1.15rem}}

/* v0.1.738: share controls for highlight videos, articles, and photo galleries */
/* v0.1.740: lock share bars to readable light-card defaults unless explicitly nested in dark media cards. */
.ga-social-share {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem;
  margin: 1.25rem 0;
  border: 1px solid rgba(37, 99, 235, .18);
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(239,246,255,.92));
  box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
  color: #07111f;
}

.ga-social-share__copy {
  min-width: 220px;
}

.ga-social-share__copy .ga-kicker {
  display: inline-block;
  color: #155bd5 !important;
  -webkit-text-fill-color: #155bd5 !important;
  text-shadow: none !important;
}

.ga-social-share__copy strong {
  display: block;
  color: #07111f !important;
  -webkit-text-fill-color: #07111f !important;
  font-weight: 950;
  letter-spacing: -.02em;
  text-shadow: none !important;
}

.ga-social-share__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .5rem;
}

.ga-share-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: .55rem .8rem;
  border: 1px solid rgba(15, 23, 42, .14);
  border-radius: 999px;
  background: #ffffff;
  color: #07111f !important;
  -webkit-text-fill-color: #07111f !important;
  font-size: .82rem;
  font-weight: 950;
  line-height: 1;
  text-decoration: none;
  box-shadow: 0 10px 22px rgba(15, 23, 42, .06);
  cursor: pointer;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.ga-share-button:hover,
.ga-share-button:focus {
  transform: translateY(-1px);
  border-color: rgba(37, 99, 235, .38);
  box-shadow: 0 14px 30px rgba(15, 23, 42, .12);
}

.ga-share-button--facebook,
.ga-share-button--linkedin,
.ga-share-button--copy.is-copied {
  background: #155bd5;
  border-color: #155bd5;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.ga-share-button--x,
.ga-share-button--threads {
  background: #07111f;
  border-color: #07111f;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.ga-share-button--reddit {
  background: #ff4500;
  border-color: #ff4500;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.ga-share-button--whatsapp {
  background: #16a34a;
  border-color: #16a34a;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.ga-share-button--email {
  background: #f8fafc;
}

.ga-card--dark .ga-social-share,
.video-hero-card .ga-social-share,
.gamecast-pro .ga-social-share {
  background: linear-gradient(135deg, rgba(8, 16, 32, .95), rgba(19, 38, 72, .88));
  border-color: rgba(255,255,255,.16);
  color: #ffffff;
}

.ga-card--dark .ga-social-share__copy .ga-kicker,
.video-hero-card .ga-social-share__copy .ga-kicker,
.gamecast-pro .ga-social-share__copy .ga-kicker {
  color: #93c5fd !important;
  -webkit-text-fill-color: #93c5fd !important;
}

.ga-card--dark .ga-social-share__copy strong,
.video-hero-card .ga-social-share__copy strong,
.gamecast-pro .ga-social-share__copy strong {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

@media (max-width: 900px) {
  .ga-social-share {
    align-items: stretch;
    flex-direction: column;
  }

  .ga-social-share__actions {
    justify-content: flex-start;
  }
}

/* v0.1.741 AI-assisted social preview cards for GameCenter and RaceCenter */
.share-preview-card {
  margin-top: 1rem;
  border-radius: 26px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  background: #ffffff;
  box-shadow: 0 20px 54px rgba(15, 23, 42, 0.13);
  padding: 1rem;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}
.share-preview-card--dark {
  background: rgba(2, 6, 23, 0.64) !important;
  border-color: rgba(255, 255, 255, 0.24) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 24px 70px rgba(2, 6, 23, 0.38);
}
.share-preview-card__header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.75rem;
}
.share-preview-card__kicker {
  color: #1d4ed8 !important;
  -webkit-text-fill-color: #1d4ed8 !important;
  font-size: 0.72rem;
  font-weight: 1000;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}
.share-preview-card--dark .share-preview-card__kicker {
  color: #bfdbfe !important;
  -webkit-text-fill-color: #bfdbfe !important;
}
.share-preview-card h3 {
  margin: 0;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  font-weight: 1000;
  letter-spacing: -0.04em;
}
.share-preview-card--dark h3 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.share-preview-card__action {
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid rgba(37, 99, 235, 0.30);
  color: #1d4ed8 !important;
  -webkit-text-fill-color: #1d4ed8 !important;
  font-weight: 1000;
  padding: 0.45rem 0.8rem;
  text-decoration: none;
}
.share-preview-card__frame {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 1200 / 630;
  border-radius: 20px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  background: #020617;
}
.share-preview-card__frame img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.share-preview-card__hint {
  margin: 0.7rem 0 0;
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  font-weight: 850;
}
.share-preview-card--dark .share-preview-card__hint {
  color: #dbeafe !important;
  -webkit-text-fill-color: #dbeafe !important;
}

/* v0.1.759: premium share link presentation */
.ga-social-share.ga-social-share--pro {
  position: relative;
  display: grid;
  grid-template-columns: minmax(260px, .9fr) minmax(340px, 1.2fr);
  align-items: stretch;
  gap: 1rem;
  padding: 1rem;
  margin: 1.25rem 0;
  border-radius: 28px;
  border: 1px solid rgba(15, 23, 42, .10);
  background:
    radial-gradient(circle at 16% 18%, rgba(37, 99, 235, .10), transparent 32%),
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(248,250,252,.95));
  box-shadow: 0 22px 54px rgba(15, 23, 42, .10);
  color: #07111f !important;
  overflow: hidden;
}

.ga-social-share.ga-social-share--pro::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, #155bd5, #16a34a);
}

.ga-social-share__identity {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: .9rem;
  align-items: center;
  min-width: 0;
  padding: .45rem .35rem .45rem .75rem;
}

.ga-social-share__badge {
  width: 54px;
  height: 54px;
  border-radius: 18px;
  display: inline-grid;
  place-items: center;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: linear-gradient(135deg, #155bd5, #16a34a);
  box-shadow: 0 18px 34px rgba(21, 91, 213, .22);
  font-size: 1.35rem;
  font-weight: 1000;
}

.ga-social-share--pro .ga-social-share__copy {
  min-width: 0;
}

.ga-social-share--pro .ga-kicker {
  display: block;
  color: #155bd5 !important;
  -webkit-text-fill-color: #155bd5 !important;
  text-shadow: none !important;
}

.ga-social-share--pro strong {
  display: block;
  color: #07111f !important;
  -webkit-text-fill-color: #07111f !important;
  font-size: clamp(1.05rem, 1.6vw, 1.45rem);
  font-weight: 1000;
  letter-spacing: -.035em;
  line-height: 1.1;
  text-shadow: none !important;
}

.ga-social-share--pro p {
  margin: .35rem 0 0;
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
  font-weight: 800;
  line-height: 1.35;
  text-shadow: none !important;
}

.ga-social-share__panel {
  display: grid;
  gap: .75rem;
  min-width: 0;
  padding: .85rem;
  border-radius: 22px;
  background: rgba(255, 255, 255, .76);
  border: 1px solid rgba(15, 23, 42, .08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.70);
}

.ga-social-share__copyline {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: .65rem;
  min-width: 0;
  padding: .48rem;
  border-radius: 18px;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, .10);
}

.ga-social-share__copyline > span:first-child {
  color: #334155 !important;
  -webkit-text-fill-color: #334155 !important;
  font-size: .72rem;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .12em;
  white-space: nowrap;
}

.ga-social-share__copyline code {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  padding: .35rem .55rem;
  border-radius: 12px;
  background: #ffffff;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border: 1px solid rgba(15, 23, 42, .08);
  font-size: .78rem;
  font-weight: 850;
}

.ga-social-share--pro .ga-social-share__actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
  gap: .55rem;
  justify-content: stretch;
}

.ga-social-share--pro .ga-share-button {
  min-height: 44px;
  gap: .5rem;
  padding: .62rem .74rem;
  border-radius: 16px;
  justify-content: flex-start;
  font-size: .84rem;
  letter-spacing: .01em;
  box-shadow: 0 12px 24px rgba(15, 23, 42, .08);
}

.ga-share-button__icon {
  flex: 0 0 auto;
  min-width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 9px;
  background: rgba(255,255,255,.22);
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
  font-size: .78rem;
  font-weight: 1000;
  line-height: 1;
}

.ga-social-share--pro .ga-share-button--copy-primary {
  justify-content: center;
  min-height: 36px;
  border-radius: 14px;
  background: #0f172a;
  border-color: #0f172a;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none;
}

.ga-social-share--pro .ga-share-button--email {
  background: #ffffff;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.ga-card--dark .ga-social-share.ga-social-share--pro,
.video-hero-card .ga-social-share.ga-social-share--pro,
.gamecast-pro .ga-social-share.ga-social-share--pro,
.gamecenter-hero .ga-social-share.ga-social-share--pro,
.network-hero-pro .ga-social-share.ga-social-share--pro,
.baseball-hero .ga-social-share.ga-social-share--pro {
  background:
    radial-gradient(circle at 18% 20%, rgba(96, 165, 250, .22), transparent 34%),
    linear-gradient(135deg, rgba(248,250,252,.98), rgba(226,232,240,.94));
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 22px 58px rgba(0,0,0,.20);
  color: #07111f !important;
}

.ga-card--dark .ga-social-share--pro strong,
.video-hero-card .ga-social-share--pro strong,
.gamecast-pro .ga-social-share--pro strong,
.gamecenter-hero .ga-social-share--pro strong,
.network-hero-pro .ga-social-share--pro strong,
.baseball-hero .ga-social-share--pro strong {
  color: #07111f !important;
  -webkit-text-fill-color: #07111f !important;
}

.ga-card--dark .ga-social-share--pro p,
.video-hero-card .ga-social-share--pro p,
.gamecast-pro .ga-social-share--pro p,
.gamecenter-hero .ga-social-share--pro p,
.network-hero-pro .ga-social-share--pro p,
.baseball-hero .ga-social-share--pro p {
  color: #475569 !important;
  -webkit-text-fill-color: #475569 !important;
}

@media (max-width: 1100px) {
  .ga-social-share.ga-social-share--pro {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .ga-social-share.ga-social-share--pro {
    padding: .85rem;
    border-radius: 24px;
  }
  .ga-social-share__identity {
    grid-template-columns: 42px 1fr;
    padding-left: .4rem;
  }
  .ga-social-share__badge {
    width: 42px;
    height: 42px;
    border-radius: 14px;
  }
  .ga-social-share__copyline {
    grid-template-columns: 1fr auto;
  }
  .ga-social-share__copyline > span:first-child {
    grid-column: 1 / -1;
  }
  .ga-social-share--pro .ga-social-share__actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


/* v0.1.760: tuck public share links behind a discrete menu instead of making them a prominent hero card. */
.ga-social-share.ga-social-share--tucked {
  display: block !important;
  width: fit-content;
  max-width: min(100%, 760px);
  margin: .75rem 0 1rem !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  color: inherit !important;
}

.ga-social-share.ga-social-share--tucked::before {
  display: none !important;
}

.ga-social-share--tucked .ga-social-share__details {
  position: relative;
  display: inline-block;
  max-width: 100%;
}

.ga-social-share--tucked .ga-social-share__trigger {
  list-style: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  min-height: 38px;
  padding: .48rem .72rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.32);
  background: rgba(255,255,255,.13);
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: .82rem;
  font-weight: 1000;
  letter-spacing: .04em;
  text-transform: uppercase;
  box-shadow: 0 12px 26px rgba(2,6,23,.16);
  backdrop-filter: blur(12px);
}

.ga-social-share--tucked .ga-social-share__trigger::-webkit-details-marker {
  display: none;
}

.ga-social-share--tucked .ga-social-share__trigger-icon {
  width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(255,255,255,.22);
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}

.ga-social-share--tucked .ga-social-share__details[open] .ga-social-share__trigger {
  background: #ffffff !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: rgba(15,23,42,.16);
}

.ga-social-share--tucked .ga-social-share__drawer {
  position: absolute;
  z-index: 30;
  top: calc(100% + .55rem);
  left: 0;
  width: min(92vw, 680px);
  display: grid;
  grid-template-columns: 1fr;
  gap: .8rem;
  padding: .9rem;
  border-radius: 24px;
  background: rgba(248,250,252,.98);
  border: 1px solid rgba(15,23,42,.12);
  box-shadow: 0 28px 76px rgba(2,6,23,.28);
  color: #07111f !important;
}

.ga-social-share--tucked .ga-social-share__identity {
  grid-template-columns: 38px minmax(0, 1fr);
  gap: .7rem;
  padding: .2rem;
}

.ga-social-share--tucked .ga-social-share__badge {
  width: 38px;
  height: 38px;
  border-radius: 14px;
  font-size: 1rem;
}

.ga-social-share--tucked .ga-kicker {
  font-size: .72rem;
}

.ga-social-share--tucked strong {
  font-size: 1.02rem !important;
  line-height: 1.15;
}

.ga-social-share--tucked p {
  font-size: .88rem;
  margin-top: .25rem;
}

.ga-social-share--tucked .ga-social-share__panel {
  padding: .72rem;
  border-radius: 18px;
  background: #ffffff;
}

.ga-social-share--tucked .ga-social-share__copyline {
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: .4rem;
  border-radius: 14px;
}

.ga-social-share--tucked .ga-social-share__actions {
  grid-template-columns: repeat(auto-fit, minmax(104px, 1fr)) !important;
  gap: .45rem !important;
}

.ga-social-share--tucked .ga-share-button {
  min-height: 38px !important;
  padding: .5rem .62rem !important;
  border-radius: 13px !important;
  font-size: .78rem !important;
  box-shadow: none !important;
}

body.ga-light-theme .ga-social-share--tucked .ga-social-share__trigger,
.ga-social-share--tucked .ga-social-share__trigger {
  background: rgba(255,255,255,.86) !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  border-color: rgba(15,23,42,.14) !important;
}

.gamecenter-hero .ga-social-share.ga-social-share--tucked,
.network-hero-pro .ga-social-share.ga-social-share--tucked,
.baseball-hero .ga-social-share.ga-social-share--tucked,
.gamecast-pro .ga-social-share.ga-social-share--tucked {
  margin-top: .8rem !important;
}

@media (max-width: 760px) {
  .ga-social-share.ga-social-share--tucked {
    width: 100%;
  }

  .ga-social-share--tucked .ga-social-share__details {
    width: 100%;
  }

  .ga-social-share--tucked .ga-social-share__drawer {
    width: calc(100vw - 2rem);
    left: 0;
  }

  .ga-social-share--tucked .ga-social-share__copyline {
    grid-template-columns: 1fr auto;
  }

  .ga-social-share--tucked .ga-social-share__copyline > span:first-child {
    grid-column: 1 / -1;
  }
}


/* v0.1.761: share controls live outside hero sections and expand in normal page flow. */
.ga-share-outside-hero {
  position: relative;
  z-index: 12;
  max-width: 1480px;
  margin-left: auto;
  margin-right: auto;
}

.ga-share-outside-hero .ga-social-share.ga-social-share--tucked {
  margin: .15rem 0 0 !important;
}

.ga-share-outside-hero .ga-social-share--tucked .ga-social-share__details {
  display: block;
  width: fit-content;
  max-width: 100%;
}

.ga-share-outside-hero .ga-social-share--tucked .ga-social-share__drawer {
  position: static !important;
  width: min(100%, 760px) !important;
  margin-top: .6rem;
  transform: none !important;
}

.ga-share-outside-hero .ga-social-share--tucked .ga-social-share__details[open] {
  width: min(100%, 760px);
}

.ga-share-outside-hero .ga-social-share--tucked .ga-social-share__trigger {
  box-shadow: 0 10px 24px rgba(15,23,42,.10);
}

.racing-event-show-shell > .ga-share-outside-hero,
.gamecenter-hero + .ga-share-outside-hero,
.gamecast-shell .ga-share-outside-hero {
  padding-left: clamp(.25rem, 1vw, .5rem);
  padding-right: clamp(.25rem, 1vw, .5rem);
}

@media (max-width: 760px) {
  .ga-share-outside-hero .ga-social-share--tucked .ga-social-share__details,
  .ga-share-outside-hero .ga-social-share--tucked .ga-social-share__details[open],
  .ga-share-outside-hero .ga-social-share--tucked .ga-social-share__drawer {
    width: 100% !important;
  }
}

/* v0.1.774: Mobile Studio command view for admins. */
.mobile-studio-nav {
  display: none;
}

@media (max-width: 820px) {
  body.ga-admin-mobile-context {
    background: #eef4fb !important;
    overflow-x: hidden;
  }

  body.ga-admin-mobile-context .ga-navbar {
    position: sticky;
    top: 0;
    z-index: 1040;
  }

  .mobile-studio-nav {
    display: block;
    position: sticky;
    top: 72px;
    z-index: 1035;
    margin: .55rem .65rem .75rem;
    padding: .7rem;
    border-radius: 22px;
    border: 1px solid rgba(37, 99, 235, .20);
    background: rgba(255,255,255,.96);
    box-shadow: 0 18px 44px rgba(15,23,42,.16);
    backdrop-filter: blur(14px);
  }

  .mobile-studio-nav__head {
    display: flex;
    justify-content: space-between;
    gap: .7rem;
    align-items: center;
    margin-bottom: .55rem;
  }

  .mobile-studio-nav__head strong {
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    font-size: 1rem;
    font-weight: 1000;
    letter-spacing: -.02em;
  }

  .mobile-studio-nav__head span {
    color: #2563eb !important;
    -webkit-text-fill-color: #2563eb !important;
    font-size: .72rem;
    font-weight: 1000;
    text-transform: uppercase;
    letter-spacing: .1em;
  }

  .mobile-studio-nav__rail {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(76px, 1fr);
    gap: .48rem;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    padding-bottom: .1rem;
  }

  .mobile-studio-nav__item {
    scroll-snap-align: start;
    display: grid;
    place-items: center;
    gap: .22rem;
    min-height: 58px;
    border-radius: 16px;
    border: 1px solid rgba(15,23,42,.10);
    background: #f8fafc;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    text-decoration: none;
    font-size: .76rem;
    font-weight: 1000;
  }

  .mobile-studio-nav__item.is-active,
  .mobile-studio-nav__item:focus,
  .mobile-studio-nav__item:hover {
    background: #0f172a;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: #0f172a;
  }

  .mobile-studio-nav__icon {
    display: inline-grid;
    place-items: center;
    width: 26px;
    height: 26px;
    border-radius: 999px;
    background: rgba(37,99,235,.12);
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    font-weight: 1000;
  }

  body.ga-admin-mobile-context .ga-page {
    padding: 0 .65rem 1rem !important;
    overflow-x: hidden;
  }

  body.ga-admin-mobile-context footer {
    display: none !important;
  }

  body.ga-admin-mobile-context .ga-admin-shell,
  body.ga-admin-mobile-context .system-studio-page-shell[style],
  body.ga-admin-mobile-context .admin-linked-management-index,
  body.ga-admin-mobile-context .admin-linked-management-page {
    display: block !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 0 !important;
  }

  body.ga-admin-mobile-context .ga-admin-shell > .ga-sidebar,
  body.ga-admin-mobile-context .system-studio-page-shell > .ga-sidebar,
  body.ga-admin-mobile-context aside.ga-sidebar {
    display: none !important;
  }

  body.ga-admin-mobile-context .ga-admin-shell > main,
  body.ga-admin-mobile-context .ga-admin-shell > div,
  body.ga-admin-mobile-context .system-studio-content[style],
  body.ga-admin-mobile-context .production-grid-main,
  body.ga-admin-mobile-context main {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    border-radius: 22px !important;
    padding: .75rem !important;
    margin: 0 0 .9rem !important;
    overflow-x: hidden !important;
  }

  body.ga-admin-mobile-context h1,
  body.ga-admin-mobile-context .display-1,
  body.ga-admin-mobile-context .display-2,
  body.ga-admin-mobile-context .display-3,
  body.ga-admin-mobile-context .display-4,
  body.ga-admin-mobile-context .display-5,
  body.ga-admin-mobile-context .display-6 {
    font-size: clamp(1.65rem, 9vw, 2.6rem) !important;
    line-height: .98 !important;
    letter-spacing: -.055em !important;
    overflow-wrap: anywhere !important;
  }

  body.ga-admin-mobile-context section[style*="grid-template-columns"],
  body.ga-admin-mobile-context div[style*="grid-template-columns"],
  body.ga-admin-mobile-context form[style*="grid-template-columns"],
  body.ga-admin-mobile-context .row {
    grid-template-columns: 1fr !important;
  }

  body.ga-admin-mobile-context [style*="min-width:900px"],
  body.ga-admin-mobile-context [style*="min-width: 900px"],
  body.ga-admin-mobile-context [style*="min-width:800px"],
  body.ga-admin-mobile-context [style*="min-width: 800px"] {
    min-width: 680px !important;
  }

  body.ga-admin-mobile-context table {
    font-size: .84rem !important;
  }

  body.ga-admin-mobile-context input,
  body.ga-admin-mobile-context select,
  body.ga-admin-mobile-context textarea,
  body.ga-admin-mobile-context .form-control,
  body.ga-admin-mobile-context .form-select,
  body.ga-admin-mobile-context .btn {
    min-height: 44px;
    font-size: 16px !important;
  }

  body.ga-admin-mobile-context .d-flex {
    min-width: 0;
  }

  body.ga-admin-mobile-context .studio-config-actions,
  body.ga-admin-mobile-context [style*="justify-content:space-between"],
  body.ga-admin-mobile-context [style*="justify-content: space-between"] {
    flex-wrap: wrap !important;
  }

  body.ga-admin-mobile-context .alert {
    margin: .5rem .65rem !important;
    border-radius: 18px !important;
  }
}

/* v0.1.832: compact event Callaba provisioning console */
.event-callaba-console {
  background: linear-gradient(135deg, rgba(13, 27, 46, .96), rgba(20, 45, 78, .9));
}
.event-callaba-console__header,
.event-callaba-feed-main {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}
.event-callaba-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  justify-content: flex-end;
}
.event-callaba-action-group {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .35rem;
  border: 1px solid rgba(148, 163, 184, .22);
  background: rgba(15, 23, 42, .32);
  border-radius: 999px;
  padding: .35rem .45rem;
}
.event-callaba-action-group > span {
  color: rgba(226, 232, 240, .76);
  font-size: .64rem;
  font-weight: 900;
  letter-spacing: .1em;
  padding: 0 .25rem;
  text-transform: uppercase;
}
.event-callaba-action-group--danger {
  border-color: rgba(248, 113, 113, .34);
  background: rgba(127, 29, 29, .12);
}
.event-callaba-status-grid,
.event-callaba-mini-grid,
.event-callaba-detail-grid {
  display: grid;
  gap: .65rem;
}
.event-callaba-status-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.event-callaba-status-card,
.event-callaba-feed-row,
.event-callaba-json-box {
  border: 1px solid rgba(148, 163, 184, .24);
  background: rgba(15, 23, 42, .46);
  border-radius: 16px;
}
.event-callaba-status-card {
  padding: .75rem .9rem;
  min-width: 0;
}
.event-callaba-status-label,
.event-callaba-mini-grid span,
.event-callaba-detail-grid span {
  display: block;
  color: rgba(226, 232, 240, .72);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.event-callaba-status-card strong {
  display: block;
  color: #fff;
  font-size: 1.05rem;
  line-height: 1.15;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.event-callaba-status-card small {
  color: rgba(226, 232, 240, .72);
}
.event-callaba-feed-list {
  display: grid;
  gap: .75rem;
}
.event-callaba-feed-row {
  padding: .85rem;
}
.event-callaba-mono,
.event-callaba-detail-grid code,
.event-callaba-json-box pre,
.event-callaba-feed-error pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}
.event-callaba-mono {
  color: rgba(226, 232, 240, .72);
  font-size: .76rem;
  overflow-wrap: anywhere;
}
.event-callaba-badges {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  justify-content: flex-end;
}
.event-callaba-mini-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-top: .75rem;
}
.event-callaba-mini-grid > div {
  min-width: 0;
  padding: .6rem .65rem;
  border-radius: 12px;
  background: rgba(2, 6, 23, .28);
}
.event-callaba-mini-grid strong,
.event-callaba-url-cell a {
  display: block;
  color: #fff;
  font-size: .82rem;
  overflow-wrap: anywhere;
}
.event-callaba-url-cell a {
  color: #7dd3fc;
}
.event-callaba-feed-details summary,
.event-callaba-workflow summary,
.event-callaba-feed-error summary {
  cursor: pointer;
  color: #bfdbfe;
  font-weight: 800;
  font-size: .84rem;
}
.event-callaba-detail-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: .65rem;
}
.event-callaba-detail-grid > div {
  min-width: 0;
  padding: .6rem;
  border-radius: 12px;
  background: rgba(2, 6, 23, .32);
}
.event-callaba-detail-grid code {
  display: block;
  color: #e0f2fe;
  white-space: normal;
  overflow-wrap: anywhere;
}
.event-callaba-feed-error pre,
.event-callaba-json-box pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: .4rem 0 0;
  font-size: .75rem;
}
.event-callaba-feed-error pre {
  color: #fecaca;
  background: rgba(127, 29, 29, .24);
  border-radius: 12px;
  padding: .65rem;
}
.event-callaba-json-box {
  padding: .75rem;
  height: 100%;
}
.event-callaba-json-box pre {
  color: #dbeafe;
}
body.ga-light-theme .event-callaba-console {
  background: #ffffff;
}
body.ga-light-theme .event-callaba-status-card,
body.ga-light-theme .event-callaba-feed-row,
body.ga-light-theme .event-callaba-json-box {
  background: #f8fafc;
  border-color: #dbe4ef;
}
body.ga-light-theme .event-callaba-status-label,
body.ga-light-theme .event-callaba-mini-grid span,
body.ga-light-theme .event-callaba-detail-grid span,
body.ga-light-theme .event-callaba-action-group > span,
body.ga-light-theme .event-callaba-mono,
body.ga-light-theme .event-callaba-status-card small {
  color: #475569;
}
body.ga-light-theme .event-callaba-status-card strong,
body.ga-light-theme .event-callaba-mini-grid strong {
  color: #0f172a;
}
body.ga-light-theme .event-callaba-mini-grid > div,
body.ga-light-theme .event-callaba-detail-grid > div {
  background: #eef4fb;
}
body.ga-light-theme .event-callaba-action-group {
  border-color: rgba(148, 163, 184, .38);
  background: rgba(248, 250, 252, .74);
}
body.ga-light-theme .event-callaba-action-group--danger {
  border-color: rgba(220, 38, 38, .32);
  background: rgba(254, 242, 242, .82);
}
body.ga-light-theme .event-callaba-detail-grid code,
body.ga-light-theme .event-callaba-json-box pre {
  color: #0f172a;
}
body.ga-light-theme .event-callaba-feed-details summary,
body.ga-light-theme .event-callaba-workflow summary,
body.ga-light-theme .event-callaba-feed-error summary {
  color: #075ec7;
}
@media (max-width: 1199px) {
  .event-callaba-status-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .event-callaba-mini-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .event-callaba-url-cell { grid-column: 1 / -1; }
}
@media (max-width: 700px) {
  .event-callaba-console__header,
  .event-callaba-feed-main {
    display: block;
  }
  .event-callaba-actions,
  .event-callaba-badges {
    justify-content: flex-start;
    margin-top: .75rem;
  }
  .event-callaba-status-grid,
  .event-callaba-mini-grid,
  .event-callaba-detail-grid {
    grid-template-columns: 1fr;
  }
}


/* Event admin grouped video operations panels */
.admin-event-master-panel {
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, .28);
}

.admin-event-master-summary,
.admin-event-subpanel-summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.admin-event-master-summary::-webkit-details-marker,
.admin-event-subpanel-summary::-webkit-details-marker {
  display: none;
}

.admin-event-master-summary {
  padding: 1.25rem 1.5rem;
  background: linear-gradient(135deg, rgba(15, 23, 42, .96), rgba(30, 41, 59, .88));
  color: #ffffff;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.admin-event-master-summary strong {
  display: block;
  font-size: 1.1rem;
  letter-spacing: -.02em;
}

.admin-event-master-summary small {
  color: rgba(255,255,255,.72);
  font-weight: 800;
  max-width: 460px;
  text-align: right;
}

.admin-event-master-summary::after,
.admin-event-subpanel-summary::after {
  content: "▾";
  font-weight: 1000;
  transition: transform .18s ease;
}

.admin-event-master-panel:not([open]) > .admin-event-master-summary::after,
.admin-event-subpanel:not([open]) > .admin-event-subpanel-summary::after {
  transform: rotate(-90deg);
}

.admin-event-master-body {
  padding: 1rem;
  display: grid;
  gap: .9rem;
}

.admin-event-subpanel {
  border: 1px solid rgba(148, 163, 184, .24);
  border-radius: 18px;
  background: rgba(255,255,255,.04);
  overflow: hidden;
}

.admin-event-subpanel-summary {
  padding: .95rem 1.1rem;
  background: rgba(15, 23, 42, .70);
  color: #ffffff;
}

.admin-event-subpanel-summary strong {
  display: block;
  font-size: .98rem;
}

.admin-event-subpanel-summary small {
  color: rgba(255,255,255,.68);
  font-weight: 800;
}

.admin-event-subpanel > .ga-card {
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border: 0 !important;
}

.admin-video-access-collapse > .admin-event-subpanel-summary {
  background: linear-gradient(135deg, rgba(20, 83, 45, .82), rgba(15, 23, 42, .72));
}

body.ga-light-theme .admin-event-master-panel,
body.ga-light-theme .admin-event-subpanel {
  background: #ffffff;
  border-color: #dbe3ef;
}

body.ga-light-theme .admin-event-master-summary {
  background: linear-gradient(135deg, #0f172a, #1d4ed8);
}

body.ga-light-theme .admin-event-subpanel-summary {
  background: #f1f5f9;
  color: #0f172a;
  border-bottom: 1px solid #dbe3ef;
}

body.ga-light-theme .admin-event-subpanel-summary small {
  color: #64748b;
}

body.ga-light-theme .admin-video-access-collapse > .admin-event-subpanel-summary {
  background: linear-gradient(135deg, #ecfdf5, #eef2ff);
}

@media (max-width: 768px) {
  .admin-event-master-summary,
  .admin-event-subpanel-summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .admin-event-master-summary small {
    text-align: left;
  }
}
