/* Sportsbook tab — tax records. Reuses Casinos (cz-*) layout; blue theme, negatives red, no green. */
#view-sportsbook { --sb-pos: var(--primary); }
html[data-theme="dark"] #view-sportsbook { --sb-pos: #93C5FD; }
#view-sportsbook .sb-pos { color: var(--sb-pos); }
#view-sportsbook .neg { color: var(--loss); }
#view-sportsbook .sb-flag { color: var(--amber); }
.sb-yearpick { min-width: 110px; }
.sb-sort { border: 0; background: transparent; color: inherit; font: inherit; letter-spacing: inherit; text-transform: inherit; cursor: pointer; padding: 0; }
.sb-sort.on { text-decoration: underline; text-underline-offset: 3px; }
#view-sportsbook tr[data-sb-book] { cursor: pointer; }
#view-sportsbook tr[data-sb-book]:hover td { background: var(--primary-soft); }
.sb-total td { border-top: 2px solid var(--primary); background: var(--primary-soft) !important; }
.sb-ledger td.sb-ev, .sb-ledger td:nth-child(2) { text-align: left; white-space: normal; min-width: 120px; max-width: 260px; }
.sb-sub { display: block; font-size: 11px; color: var(--ink-faint); font-weight: 500; }
.sb-res { display: inline-block; font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 999px; background: var(--bg-soft); color: var(--ink-muted); }
.sb-res.sb-win { background: var(--primary-soft); color: var(--primary-dark); }
.sb-res.sb-loss { background: color-mix(in srgb, var(--loss) 14%, transparent); color: var(--loss); }
.sb-recv { width: 18px; height: 18px; accent-color: var(--primary); }
.sb-note-in { font: inherit; font-size: 12px; width: 140px; padding: 4px 8px; border: 1px solid var(--line); border-radius: 8px; background: var(--bg-elevated); color: var(--ink); }
.sb-est { color: var(--amber); font-weight: 800; cursor: help; }
.sb-issues { margin-bottom: 14px; font-size: 13px; color: var(--ink-muted); border-left: 3px solid var(--amber); }
.sb-note { margin: 8px 2px 0; }
.bottom-nav { grid-template-columns: repeat(9, minmax(0, 1fr)); }
#view-sportsbook .cz-subtabs button { white-space: nowrap; }
@media (max-width: 720px) { #view-sportsbook .cz-subtabs button { padding: 7px 11px; font-size: 13px; } .sb-yearpick { min-width: 92px; } .sb-note-in { width: 110px; } }
.sb-taxcard { margin-bottom: 14px; }
.sb-geo { font-size: 12px; font-weight: 700; color: var(--primary-dark); background: var(--primary-soft); padding: 2px 10px; border-radius: 999px; }
.sb-statepick { position: relative; display: inline-block; width: 210px; max-width: 100%; flex: 0 0 auto; }
.sb-statepick select { appearance: none; -webkit-appearance: none; width: 100%; height: 36px; box-sizing: border-box; font: inherit; font-size: 14px; font-weight: 700; color: var(--primary-dark); background: var(--primary-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%232563eb' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 12px center; border: 1px solid transparent; border-radius: 999px; padding: 0 32px 0 14px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; cursor: pointer; }
.sb-statepick select:focus-visible { outline: 2px solid var(--primary, #2563eb); outline-offset: 2px; }
.sb-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.sb-taxgrid { display: grid; grid-template-columns: 140px 140px 1fr 1fr; gap: 12px; align-items: end; }
.sb-taxcol { display: flex; flex-direction: column; gap: 2px; padding: 8px 12px; border-radius: 12px; background: var(--primary-soft); min-height: 64px; box-sizing: border-box; }
.sb-taxcol b { font-size: 18px; font-variant-numeric: tabular-nums; }
@media (max-width: 720px) { .sb-taxgrid { grid-template-columns: 1fr 1fr; } }
