
:root {
  --gold: #ff8a3d;
  --gold-dark: #c2410c;
  --gold-glow: rgba(249, 115, 22, 0.10);
  --border-gold: rgba(249, 115, 22, 0.24);
  --acc-rgb: 249, 115, 22;
  --acc-btn: #c2410c;
  --acc-btn-hi: #ea580c;
  --accent: #c2410c;
}
body { background-image: radial-gradient(ellipse 80% 40% at 50% 0%, rgba(194, 65, 12, 0.10) 0%, transparent 70%); }
h1, h2, h3, .cp-section-title { text-wrap: balance; }
p, small, .narrative, .cp-hero-pitch, .cp-mode-line, .spot-promo-txt small, .fv-popup-sub { text-wrap: pretty; }


.btn:not(.btn-outline):not(.btn-sm), #spinBtn, .pk-start, .fv-popup-btn.primary, .cp-btn-primary {
  background: linear-gradient(135deg, var(--acc-btn), var(--acc-btn-hi)) !important; color: #fff !important;
}
.btn-outline { border-color: var(--gold) !important; color: var(--gold) !important; }


.nrl-field-wrap {
  background:
    repeating-linear-gradient(90deg, rgba(0, 0, 0, .05) 0 26px, rgba(255, 255, 255, .025) 26px 52px),
    linear-gradient(180deg, #b0773f 0%, #a56a35 55%, #96602f 100%) !important;
  height: min(86vw, 420px) !important; 
}
.nrl-field-inner.nba-court-wrap { position: absolute; inset: 0; }
.nba-court { position: absolute; left: 3%; top: 2%; width: 94%; height: 96%; pointer-events: none; z-index: 0; }
.nba-court .ct-edge { fill: none; stroke: rgba(255, 255, 255, .55); stroke-width: 2; vector-effect: non-scaling-stroke; }
.nba-court .ct-line { fill: none; stroke: rgba(255, 255, 255, .55); stroke-width: 2; vector-effect: non-scaling-stroke; }
.nba-court .ct-paint { fill: rgba(194, 65, 12, .55); stroke: rgba(255, 255, 255, .6); stroke-width: 2; vector-effect: non-scaling-stroke; }
.nba-court .ct-rim { fill: none; stroke: #ff8a3d; stroke-width: 2.5; vector-effect: non-scaling-stroke; }
.nrl-field-inner .fpos { z-index: 2; }
.nrl-field-inner .fpos-label { text-shadow: 0 1px 3px rgba(0, 0, 0, .7); }
@media (min-width: 900px) { .nrl-field-wrap { height: auto !important; } }


.ptag-G { background: #1e3a8a; color: #93c5fd; }
.ptag-F { background: #14532d; color: #86efac; }
.ptag-C { background: #7c2d12; color: #fdba74; }


.game-ot { display: inline-block; margin-left: 3px; padding: 1px 3px; border-radius: 3px; background: rgba(255, 255, 255, .12); color: #e5e7eb; font: 800 7.5px/1.2 Inter, system-ui, sans-serif; letter-spacing: .4px; vertical-align: middle; }
.game-row .game-scorers + .game-scorers { margin-top: 1px; }


.fl-chips { grid-template-columns: repeat(auto-fit, minmax(0, 1fr)) !important; }
.fl-chips .wc-chip small { font-size: 9px; }


body[data-mode="hard"] { --mode: #f87171; --mode-rgb: 239, 68, 68; }
body[data-mode="hard"] .cp-skin-strip { background: linear-gradient(90deg, #7f1d1d, #dc2626 50%, #7f1d1d); }
body[data-mode="hard"] #spinBtn { background: linear-gradient(135deg, #b91c1c, #ef4444) !important; color: #fff !important; box-shadow: 0 4px 20px rgba(220, 38, 38, .4) !important; }
.cp-mode-mini.is-hard { --mm: #f87171; }


.cp-mode-card.cp-mode-main .cp-mode-go { background: linear-gradient(135deg, var(--acc-btn), var(--acc-btn-hi)) !important; color: #fff !important; }
@media (hover: hover) { .cp-mode-main:hover .cp-mode-go { background: linear-gradient(135deg, var(--acc-btn-hi), var(--gold)) !important; } }


@media (max-width: 480px) {
  .fixture-grid .game-opp-name { font-size: 10px; }
  .fixture-grid .game-score { font-size: 9.5px; padding: 0 1px; white-space: nowrap; }
  .fixture-grid .game-club-badge { width: 26px; min-width: 26px; font-size: 7px; }
}


.season-standings-btn { display: block; width: calc(100% - 24px); margin: 0 12px 8px; padding: 9px 12px; border-radius: 10px; border: 1.5px solid rgba(var(--acc-rgb), .45);
  background: rgba(var(--acc-rgb), .08); color: #fff; font: 800 12px/1.2 Inter, system-ui, sans-serif; letter-spacing: .4px; cursor: pointer; }
@media (hover: hover) { .season-standings-btn:hover { background: rgba(var(--acc-rgb), .18); } }
.st-overlay { align-items: center; justify-content: center; padding: 16px; }
.st-pop { width: 100%; max-width: 440px !important; max-height: 86vh; display: flex; flex-direction: column; padding: 14px 12px 12px !important; text-align: left; }
.st-head { display: flex; align-items: baseline; gap: 8px; margin-bottom: 10px; }
.st-head b { font: 900 18px/1.1 Inter, system-ui, sans-serif; color: #fff; }
.st-head small { color: var(--muted); font-size: 11px; flex: 1; }
.st-x { background: none; border: 0; color: #aaa; font-size: 18px; cursor: pointer; padding: 2px 6px; }
.st-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-bottom: 8px; }
.st-tab { padding: 8px; border-radius: 9px; border: 1.5px solid #2a2a40; background: #121222; color: #bbb; font: 800 12px/1 Inter, system-ui, sans-serif; cursor: pointer; }
.st-tab.is-on { border-color: var(--gold); color: #fff; background: rgba(var(--acc-rgb), .14); }
.st-body { overflow-y: auto; -webkit-overflow-scrolling: touch; }
.nba-st { width: 100%; border-collapse: collapse; font: 600 12px/1.2 Inter, system-ui, sans-serif; color: #d4d4e0; font-variant-numeric: tabular-nums; margin-bottom: 10px; table-layout: fixed; }
.nba-st th { padding: 5px 3px; font: 900 9.5px/1 Inter, system-ui, sans-serif; letter-spacing: .6px; color: var(--muted); text-align: center; text-transform: uppercase; }
.nba-st td { padding: 5px 3px; text-align: center; border-top: 1px solid rgba(255, 255, 255, .05); }
.nba-st .st-team { text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; width: 52%; }
.nba-st th.st-team { color: #fff; font-size: 10px; }
.nba-st .st-pos { display: inline-block; width: 18px; text-align: right; margin-right: 6px; color: #777; font-weight: 800; }
.nba-st tr.is-me td { background: rgba(var(--acc-rgb), .14); color: #fff; font-weight: 800; }
.nba-st tr.st-cut6 td { border-bottom: 2px solid rgba(74, 222, 128, .55); }
.nba-st tr.st-cut10 td { border-bottom: 2px dashed rgba(255, 255, 255, .28); }
.st-key { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin: 2px 0 0; font-size: 10.5px; color: var(--muted); }
.st-key .st-k6, .st-key .st-k10 { display: inline-block; width: 16px; height: 0; border-top: 2px solid rgba(74, 222, 128, .55); }
.st-key .st-k10 { border-top: 2px dashed rgba(255, 255, 255, .35); margin-left: 8px; }


.bracket-pi-wrap { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 10px; }
.bracket-pi-conf { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.bracket-pi-h { font: 800 8.5px/1.2 Inter, system-ui, sans-serif; letter-spacing: .5px; color: var(--muted); text-transform: uppercase; padding: 3px 6px 0; }
.bracket-champ { font-size: 9px; color: var(--gold); text-align: center; padding: 3px; background: rgba(var(--acc-rgb), .08); font-weight: 800; }
.bracket-game .bracket-name { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }


.fixture-grid .game-score { display: flex; flex-direction: column; align-items: flex-end; justify-content: center; line-height: 1.1; }
.fixture-grid .game-score .game-ot { margin: 1px 0 0; }


.result-hero .result-split { font-size: 14px; font-weight: 700; color: var(--muted); margin: 6px 0 2px; text-wrap: balance; }


.player-row .ptag { font-size: 11px; padding: 6px 8px; letter-spacing: .3px; }


.spin-slots > .spin-slot { flex: 1 1 0; min-width: 0; box-sizing: border-box; }
.spin-slots > .spin-slot .spin-slot-val { min-width: 0; text-wrap: balance; overflow-wrap: break-word;  }

.nba-st .st-team .cb-team { max-width: calc(100% - 26px); }
.nba-st:has(.cb-team) .st-team { width: 60%; }
.bracket-name:has(> .cb-team) { max-width: 140px; }


.season-record-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:34px;gap:4px 8px;align-items:center;padding:6px 14px;flex-wrap:nowrap}
.season-record-bar>*{min-width:0;height:34px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}
.season-record-bar>.srb-sep{display:none}
.season-record-bar .srb-record{font-size:18px;line-height:20px;min-width:0;width:100%;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums}
.season-record-bar .srb-val,.season-record-bar .srb-pos{display:block;width:100%;line-height:18px;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums}
.season-record-bar .srb-label{display:block;width:100%;line-height:12px;text-align:center;white-space:nowrap}
@media (min-width:600px){.season-record-bar{grid-template-columns:repeat(6,minmax(0,1fr))}}

.season-controls .btn{height:34px;line-height:16px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}


.ca-spot-src { padding: 2px 4px; letter-spacing: 0; text-overflow: clip; }
@supports (font-size: 1cqw) { .ca-pitch .ca-spot .ca-spot-src { font-size: min(9px, calc((100cqw - 8px) / 6.4)); } }
