/* Shared site header for every Ball Street page (uses each page's color tokens). */
.sitebar{position:sticky;top:0;z-index:50;background:color-mix(in srgb, var(--panel) 88%, transparent);
  -webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);
  border-bottom:1px solid var(--line)}
.sb-in{max-width:var(--sb-max,1200px);margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:10px 22px}
.sb-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex-shrink:0}
.sb-brand img{width:34px;height:auto;display:block}
.sb-brand span{font-weight:700;font-size:18px;letter-spacing:-.01em;white-space:nowrap}
.sb-nav{display:flex;gap:2px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}
.sb-nav::-webkit-scrollbar{display:none}
.sb-nav a{position:relative;padding:7px 12px;border-radius:8px;color:var(--muted);text-decoration:none;font-weight:500;font-size:14.5px;white-space:nowrap}
.sb-nav a:hover{color:var(--ink);background:var(--soft)}
.sb-nav a.on{color:var(--ink);font-weight:600;background:var(--soft);box-shadow:inset 0 0 0 1px var(--line)}
.sb-theme{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 12px;
  border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink);font:inherit;font-size:13px;cursor:pointer}
.sb-theme:hover{background:var(--soft)}
.sb-theme:focus-visible,.sb-nav a:focus-visible,.sb-brand:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sb-theme svg{width:16px;height:16px}
/* Show the icon for the mode you'd switch TO: moon in light mode, sun in dark mode. */
.sb-theme .i-sun{display:none}
:root[data-theme="dark"] .sb-theme .i-sun{display:block}
:root[data-theme="dark"] .sb-theme .i-moon{display:none}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .sb-theme .i-sun{display:block}
  :root:not([data-theme="light"]) .sb-theme .i-moon{display:none}
}
@media (max-width:640px){
  .sb-in{flex-wrap:wrap;padding:8px 12px 0}
  .sb-brand img{width:30px}.sb-brand span{font-size:16px}
  .sb-theme{margin-left:auto;height:32px;padding:0 10px}.sb-theme .lbl{display:none}
  .sb-nav{order:3;flex-basis:100%;margin:0 -12px;padding:0 6px}
  .sb-nav a{padding:9px 10px}
}

/* Maker: give the numeric measure columns equal room instead of squeezing them to content width. */
body:has(.topgrid) .tablebox table{table-layout:fixed;width:100%}
body:has(.topgrid) .tablebox th.col-game,
body:has(.topgrid) .tablebox td.col-game{width:20%}
body:has(.topgrid) .tablebox th.col-outcome,
body:has(.topgrid) .tablebox td.col-outcome{width:14%}
body:has(.topgrid) .tablebox th.col-action,
body:has(.topgrid) .tablebox td.col-action{width:13% !important}
body:has(.topgrid) .tablebox th.col-fanatics,
body:has(.topgrid) .tablebox td.col-fanatics,
body:has(.topgrid) .tablebox th.col-fair_yes,
body:has(.topgrid) .tablebox td.col-fair_yes,
body:has(.topgrid) .tablebox th.col-fan_gap,
body:has(.topgrid) .tablebox td.col-fan_gap,
body:has(.topgrid) .tablebox th.col-internal,
body:has(.topgrid) .tablebox td.col-internal,
body:has(.topgrid) .tablebox th.col-external,
body:has(.topgrid) .tablebox td.col-external,
body:has(.topgrid) .tablebox th.col-kalshi,
body:has(.topgrid) .tablebox td.col-kalshi{width:8.833% !important}
body:has(.topgrid) .tablebox th,
body:has(.topgrid) .tablebox td{padding-left:10px;padding-right:10px}
@media (max-width:700px){   /* phone: outcome, price, gap, action */
  body:has(.topgrid) .tablebox th.col-game,body:has(.topgrid) .tablebox td.col-game{width:38%}
  body:has(.topgrid) .tablebox th.col-fanatics,body:has(.topgrid) .tablebox td.col-fanatics{width:20% !important}
  body:has(.topgrid) .tablebox th.col-fan_gap,body:has(.topgrid) .tablebox td.col-fan_gap{width:16% !important}
  body:has(.topgrid) .tablebox th.col-action,body:has(.topgrid) .tablebox td.col-action{width:26% !important}
  body:has(.topgrid) .tablebox th,body:has(.topgrid) .tablebox td{padding-left:5px;padding-right:5px}
  body:has(.topgrid) .tablebox th{white-space:normal;font-size:11px;letter-spacing:0}
}
/* Refresh control */
.sb-tools{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}
.sb-age{font-size:13px;color:var(--muted);white-space:nowrap}
.sb-age.stale{color:var(--warn)}
.sb-refresh{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border:1px solid var(--accent);border-radius:999px;
  background:var(--accent);color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.sb-refresh:hover{filter:brightness(1.08)}
.sb-refresh:disabled{cursor:default;opacity:.85}
.sb-refresh svg{width:15px;height:15px}
.sb-refresh.busy svg{animation:sbspin 1s linear infinite}
@keyframes sbspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.sb-refresh.busy svg{animation:none}}
.sb-refresh:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sb-toast{max-width:var(--sb-max,1200px);margin:0 auto;padding:8px 16px;font-size:13.5px;color:var(--ink);border-top:1px solid var(--line)}
@media (max-width:640px){.sb-tools{gap:6px}.sb-age{display:none}.sb-refresh{height:32px;padding:0 11px}}
