/* Shared public game strip. Scoped so legacy Bootstrap rules cannot change its layout. */
.score-bar {
    --bar-panel:var(--panel,#fff); --bar-text:var(--text,#182329); --bar-muted:var(--muted,#596772);
    --bar-line:var(--line,#dde4e8); --bar-hover:var(--hover,#f7f9fa); --bar-link:var(--link,#0d16aa); --bar-live:var(--red,#bf1e2e);
    background:var(--bar-panel); color:var(--bar-text); border-bottom:1px solid var(--bar-line);
    font:12px/1.4 'Open Sans','Segoe UI',sans-serif;
}
:root[data-theme=dark] .score-bar {
    --bar-panel:#121b20; --bar-text:#f2f5f7; --bar-muted:#aab5bd; --bar-line:#273239;
    --bar-hover:#1b272f; --bar-link:#75baff; --bar-live:#ff8992; color-scheme:dark;
}
@media(prefers-color-scheme:dark) {
    :root:not([data-theme=light]):not([data-theme=dark]) .score-bar {
        --bar-panel:#121b20; --bar-text:#f2f5f7; --bar-muted:#aab5bd; --bar-line:#273239;
        --bar-hover:#1b272f; --bar-link:#75baff; --bar-live:#ff8992; color-scheme:dark;
    }
}
.score-bar *, .score-bar *::before, .score-bar *::after { box-sizing:border-box; }
.score-bar [hidden] { display:none!important; }
.score-bar a { color:inherit; text-decoration:none; }
.score-bar :is(a,button,[tabindex]):focus-visible { outline:2px solid var(--bar-link); outline-offset:-3px; border-radius:4px; }
.score-bar-inner { max-width:1240px; min-height:88px; margin:auto; padding:0 24px; display:flex; align-items:center; }
.score-bar-heading { flex:0 0 116px; padding-right:12px; border-right:1px solid var(--bar-line); }
.score-bar-heading strong { display:block; font-size:12px; font-weight:700; }
.score-bar-heading > span { display:block; font-size:11px; color:var(--bar-muted); }
.score-bar-heading a { display:flex; align-items:center; gap:7px; min-height:44px; margin-bottom:-8px; color:var(--bar-link); font-size:11px; font-weight:700; }
.score-bar-heading a:hover, .score-bar-message a:hover { text-decoration:underline; text-underline-offset:3px; }
.score-bar-track { flex:1; min-width:0; container-type:inline-size; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:var(--bar-line) transparent; }
.score-bar-results { display:flex; width:max-content; min-width:100%; min-height:76px; align-items:center; }
.score-bar-results:has(.score-bar-message) { width:100%; }
.score-bar .score-bar-game { flex:0 0 224px; width:224px; padding:6px 14px; border-right:1px solid var(--bar-line); }
.score-bar-game:hover { background:var(--bar-hover); color:var(--bar-text); }
.score-bar-game-meta { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:3px; font-size:10px; line-height:16px; color:var(--bar-muted); }
.score-bar-sport, .score-bar-status { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.score-bar-sport { flex:1; }
.score-bar-status { max-width:58%; font-weight:700; }
.score-bar-game.is-live .score-bar-status { color:var(--bar-live); }
.score-bar-team { display:flex; align-items:center; gap:7px; min-height:21px; }
.score-bar-logo { position:relative; flex:0 0 18px; height:18px; display:grid; place-items:center; background:var(--bar-hover); border-radius:3px; color:var(--bar-muted); font-size:8px; font-weight:700; }
.score-bar-logo img { position:absolute; inset:0; width:18px; height:18px; object-fit:contain; background:var(--bar-panel); }
.score-bar-team-name { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.score-bar-points { font-variant-numeric:tabular-nums; font-weight:700; }
.score-bar-team.is-winner { font-weight:700; }
.score-bar-controls { display:flex; align-items:center; padding-left:6px; }
.score-bar-controls button { display:grid; place-items:center; width:44px; height:44px; padding:0; border:0; border-radius:5px; background:transparent; color:var(--bar-muted); cursor:pointer; touch-action:manipulation; }
.score-bar-controls button:hover:not(:disabled) { color:var(--bar-link); background:var(--bar-hover); }
.score-bar-controls button:disabled { opacity:.35; cursor:default; }
.score-bar-controls svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.score-bar-message { margin:0; padding:16px; color:var(--bar-muted); font-size:12px; white-space:normal; max-width:100%; }
.score-bar-message a { color:var(--bar-link); font-weight:600; }
.score-bar.is-stale [data-score-date] { color:var(--bar-live); }
.score-bar-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(max-width:800px) {
    .score-bar-inner { padding:0 12px; }
    .score-bar-heading { flex-basis:102px; padding-right:8px; }
    .score-bar-controls [data-score-previous], .score-bar-controls [data-score-next] { display:none; }
    .score-bar-controls { padding-left:0; }
    .score-bar .score-bar-game { flex-basis:208px; width:208px; padding:6px 10px; }
}
@media(max-width:420px) {
    .score-bar-inner { padding:0 4px 0 10px; }
    .score-bar-heading { flex-basis:88px; }
    .score-bar-heading strong { font-size:11px; }
    .score-bar .score-bar-game { flex-basis:min(208px,100cqw); width:min(208px,100cqw); }
}
