.basketball-page { padding-bottom:32px; }
.bb-header { display:flex; align-items:center; flex-wrap:wrap; gap:24px; padding:20px max(20px,calc((100% - 1120px)/2)); background:var(--c-surface); border-bottom:1px solid var(--c-line); }
.bb-header a { color:var(--c-text); text-decoration:none; }
.bb-header a[aria-current] { color:var(--c-crimson-bright); }
.bb-main { max-width:1120px; margin:24px auto; padding:0 16px; }
.bb-main h1,.bb-main h2,.bb-main h3 { font-family:var(--font-program); }
.bb-main [hidden] { display:none!important; }
.bb-heading { display:flex; justify-content:space-between; gap:24px; align-items:center; }
.bb-heading h1 { margin:8px 0; }
.bb-heading p { color:var(--c-text-soft); }
.bb-countdown { max-width:420px; font:700 24px/1.4 var(--font-press); text-align:right; }
.bb-countdown small { display:block; color:var(--c-text-soft); font:400 14px/1.5 var(--font-ui); }
.bb-preview { padding:12px 16px; margin-bottom:20px; color:var(--c-warning); border:1px solid var(--c-warning); border-radius:6px; }
.bb-controls,.bb-actions,.bb-tabs { display:flex; flex-wrap:wrap; gap:12px; align-items:end; margin:16px 0; }
.bb-controls label { display:grid; gap:6px; flex:1 1 180px; color:var(--c-text-soft); }
.bb-main input,.bb-main select { color:var(--c-text); background:var(--c-surface-raised); border:1px solid var(--c-input-line); border-radius:4px; padding:10px; min-width:0; max-width:100%; box-sizing:border-box; font:inherit; }
.bb-main button { color:var(--c-text); border:1px solid var(--c-line-strong); border-radius:4px; padding:10px 14px; background:var(--c-surface-raised); font:700 15px/1.3 var(--font-press); letter-spacing:1px; cursor:pointer; }
.bb-main button[aria-pressed=true],.bb-main .primary-button { background:var(--c-crimson); border-color:var(--c-crimson); }
.bb-main button:disabled { opacity:.6; cursor:not-allowed; }
.bb-slate { margin:24px 0; }
.bb-slate-header { display:flex; gap:12px; justify-content:space-between; flex-wrap:wrap; align-items:center; }
.bb-slate-header h2 { margin:0; }
.bb-slate-header p { color:var(--c-text-muted); }
.bb-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); gap:16px; }
.bb-tipoff { display:block; color:var(--c-text); font:700 18px/1.4 var(--font-press); letter-spacing:1px; }
.bb-game-status { margin:8px 0; color:var(--c-text-soft); font:500 13px/1.4 var(--font-ui); }
.bb-crew { color:var(--c-text-soft); border-top:1px solid var(--c-line); padding-top:12px; font-size:13px; }
.bb-slate-save { margin:16px 0; }
.bb-editor-game { border-top:1px solid var(--c-line); padding:16px 0; }
.bb-editor-game .bb-controls { margin:8px 0; }
.bb-results-row { display:grid; grid-template-columns:minmax(160px,2fr) repeat(2,minmax(75px,1fr)) minmax(130px,1fr); gap:12px; align-items:end; padding:14px 0; border-top:1px solid var(--c-line); }
.bb-results-row label { display:grid; gap:5px; font-size:13px; }
.bb-table { border-collapse:collapse; width:100%; text-align:left; }
.bb-table th,.bb-table td { padding:12px 10px; border-bottom:1px solid var(--c-line); white-space:nowrap; }
.table-scroll { overflow-x:auto; }
.bb-time-settings { margin-top:24px; }
.bb-time-settings summary { cursor:pointer; }
.bb-history-game { border-bottom:1px solid var(--c-line); padding:14px 0; }
.bb-unsaved { color:var(--c-warning); }
@media(max-width:650px){.bb-heading {display:block}.bb-countdown {text-align:left;margin-top:20px}.bb-results-row {grid-template-columns:1fr 1fr}.bb-results-row strong {grid-column:1/-1}.bb-main input,.bb-main select {font-size:16px}.bb-header {gap:18px}.bb-controls label {flex-basis:100%}}
.bb-header.sport-header { padding-top:16px; padding-bottom:0; }
.bb-header .sport-switch a[aria-current] { background:var(--c-crimson); color:#fff; }
.bb-tabs { align-items:stretch; margin:0; }
.bb-tabs button { background:transparent; border:0; border-bottom:3px solid transparent; border-radius:0; padding:14px 0; color:var(--c-text-muted); font:600 14px/1.3 var(--font-ui); cursor:pointer; }
.bb-tabs button[aria-pressed=true] { color:var(--c-text); border-bottom-color:var(--c-crimson); }
.bb-main button[aria-pressed=true],.bb-main .primary-button {color:#fff}
.bb-tipoff {font-size:16px;letter-spacing:.3px}
.bb-main .game-meta {gap:16px;align-items:center}
#bb-history .ledger-panel {margin-bottom:20px}
#bb-history-form {align-items:end;gap:16px}
#bb-history-form label {flex:1 1 160px;font-size:14px;font-weight:600}
#bb-history-form button {min-height:44px}
.bb-stat-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}
.bb-stat {border-top:2px solid var(--c-line-strong);padding:16px 0 0}
.bb-stat strong {display:block;font:700 32px/1.2 var(--font-press);color:var(--c-text)}
.bb-stat strong span {color:var(--c-text-muted)}
.bb-stat p {font-size:13px;line-height:1.6;color:var(--c-text-muted)}
.bb-stat .meta-label {margin-top:0;font-size:12px}
.bb-table small {display:block;font-size:12px;color:var(--c-text-muted);margin-top:5px;font-weight:400}
.bb-chart-key {display:flex;gap:24px;font-size:14px;margin:24px 0 4px}
.bb-chart-key span:before {content:'';display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px}
.bb-key-for:before {background:var(--c-crimson-bright)}
.bb-key-against:before {background:var(--c-text-soft)}
.bb-trend-chart {display:block;width:100%;min-width:0;margin:8px 0 20px}
.bb-trend-chart text {fill:var(--c-text-muted);font:12px var(--font-ui)}
.bb-chart-grid {stroke:var(--c-line-strong);stroke-width:1}
polyline.bb-chart-for {stroke:var(--c-crimson-bright);fill:none;stroke-width:3}
polyline.bb-chart-against {stroke:var(--c-text-soft);fill:none;stroke-width:3;stroke-dasharray:7 4}
circle.bb-chart-for {fill:var(--c-crimson-bright)}
circle.bb-chart-against {fill:var(--c-text-soft)}
.bb-main details summary {cursor:pointer;font:700 22px var(--font-press);padding:6px 0}
@media(max-width:760px){.bb-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bb-stat strong{font-size:28px}.bb-header{gap:14px}.bb-main{margin-top:16px}.bb-header .wordmark{font-size:22px}.bb-tabs{gap:24px}#bb-history-form label{flex-basis:calc(50% - 8px)}#bb-history-form button{width:100%}.bb-main .ledger-panel{padding:20px 16px}.bb-trend-chart text{font-size:14px}}
.bb-bonus {display:flex;align-items:center;gap:10px;margin:18px 0 8px;padding-top:16px;border-top:1px solid var(--c-line);color:var(--c-text-soft);font:500 14px/1.5 var(--font-ui);cursor:pointer}
.bb-bonus input[type=checkbox] {appearance:auto;flex:0 0 auto;min-width:20px;width:20px;height:20px;padding:0;margin:0;accent-color:var(--c-crimson-bright)}
.bb-bonus:has(input:disabled) {cursor:default}
.bb-bonus:has(input:checked) {color:var(--c-text)}
.bb-crew>div {padding:6px 0}
.bb-crew small {display:block;color:var(--c-text-muted);margin-top:4px}
