/* Official scoring uses shared tokens; scoring DOM and handlers are unchanged. */
.scoring-app{max-width:760px;margin:auto;padding:12px max(12px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));box-sizing:border-box;font-family:var(--diamond-font);font-size:var(--diamond-font-body);line-height:var(--diamond-leading)}
.scoring-app *{box-sizing:border-box;min-width:0}
.scoring-app button,.scoring-app input,.scoring-app select{min-height:var(--diamond-control-height);max-width:100%;font:inherit}
.scoring-app button{cursor:pointer;border:1px solid var(--diamond-border);border-radius:var(--diamond-radius-control);background:var(--diamond-surface-elevated);color:var(--diamond-text-primary);padding:10px 12px;font-weight:var(--diamond-weight-label);touch-action:manipulation;transition:background var(--diamond-motion),border-color var(--diamond-motion)}
.scoring-app .primary{background:var(--diamond-gold);color:var(--diamond-on-gold);font-weight:var(--diamond-weight-heading)}
.scoring-app button:disabled{opacity:.5;cursor:default}
.scoring-app :is(button,a,input,select,summary):focus-visible{outline:var(--diamond-focus-ring);outline-offset:3px}
.scoring-app button:active:not(:disabled){border-color:var(--diamond-focus)}
@media(hover:hover){.scoring-app button:hover:not(:disabled){border-color:var(--diamond-text-muted)}.scoring-app .primary:hover:not(:disabled){background:var(--diamond-gold-bright);color:var(--diamond-on-gold)}}
.scoring-app label{display:grid;gap:4px;margin:10px 0}
.scoring-app input,.scoring-app select{width:100%;background:var(--diamond-input);color:var(--diamond-text-primary);border:1px solid var(--diamond-border);border-radius:var(--diamond-radius-control);padding:8px 10px;font-size:var(--diamond-font-input)}
.scoring-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.scoring-app>header.scoring-top{font-size:var(--diamond-font-sm);padding-bottom:var(--diamond-space-2);margin-bottom:var(--diamond-space-2);border-bottom:1px solid var(--diamond-border-subtle)}
.scoring-app>header.scoring-top a:not(.diamond-brand-link){display:inline-flex;align-items:center;min-height:var(--diamond-control-height);padding:8px;color:var(--diamond-white);text-decoration:none;font-weight:var(--diamond-weight-label)}
.scoring-app>header.scoring-top strong{font-size:var(--diamond-font-xs);text-align:center;flex:1}
.scoring-app h1{font-size:clamp(1.4rem,4vw,1.75rem);font-weight:var(--diamond-weight-heading);line-height:var(--diamond-leading-heading);letter-spacing:-.025em;margin:12px 0 6px}
.scoring-app h2{font-size:16px;line-height:1.35;font-weight:var(--diamond-weight-label)}
.scoring-app p{margin:8px 0}
.scoring-app small{color:var(--diamond-text-secondary);font-size:var(--diamond-font-sm)}
.scoring-app a{color:var(--diamond-gold-text);text-underline-offset:3px}
.scoring-app fieldset{border:1px solid var(--diamond-border);border-radius:var(--diamond-radius-control)}
.scoring-panel{border:1px solid var(--diamond-border-subtle);border-radius:var(--diamond-radius-lg);padding:var(--diamond-space-3);margin:var(--diamond-space-3) 0;background:var(--diamond-surface)}
.scoring-app [role=status]{font-size:var(--diamond-font-sm);overflow-wrap:anywhere}
.score-run-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--diamond-space-2);text-align:center}
.score-run-grid>section{padding:var(--diamond-space-2);background:var(--diamond-surface-elevated);border:1px solid var(--diamond-border-subtle);border-radius:var(--diamond-radius-control)}
.score-run-grid strong{display:block;font-size:clamp(3rem,14vw,5rem);font-weight:var(--diamond-weight-heading);font-variant-numeric:tabular-nums;letter-spacing:-.04em;line-height:1.1;margin:8px 0 12px}
.score-run-grid h2{min-height:2.7em;margin:4px 0;overflow-wrap:anywhere}
.run-actions{display:flex;gap:6px}.run-actions button{min-width:44px;padding:8px;font-size:14px}.run-actions .primary{flex:1}
.scoring-clock{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;text-align:center;padding:8px 0 16px}
.scoring-clock>.game-countdown,.scoring-clock>strong{grid-column:1;grid-row:1;display:block;font-size:clamp(2.5rem,10vw,3.5rem);font-weight:var(--diamond-weight-heading);font-variant-numeric:tabular-nums;line-height:1.15;letter-spacing:-.03em}
.scoring-clock>small{grid-column:1;grid-row:2;font-size:var(--diamond-font-xs);letter-spacing:.04em}
.scoring-clock>button{grid-column:2;grid-row:1/3;min-width:88px}
.game-countdown{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
.game-countdown[data-clock-state=expired],.game-countdown[data-clock-state=urgent]{text-decoration:underline;text-underline-offset:3px}.game-countdown[data-clock-state=warning]{font-weight:900}
.game-countdown[data-clock-state=warning],.game-countdown[data-clock-state=urgent]{color:var(--diamond-gold-text)}
.inline-game-clock{display:block;text-align:center;font-size:.8rem}
.clock-caption:not(:empty)::before{content:" · "}.scoring-clock .clock-caption{display:block;font-size:var(--diamond-font-xs);line-height:1.5;letter-spacing:0}.scoring-clock .clock-caption::before{content:none}.clock-digits{font:inherit}
.score-status .game-countdown{display:block}.full-game-status .game-countdown{font-size:.85em;margin-left:4px}
.scoring-inning,.scoring-count,.scoring-actions{display:flex;gap:8px;align-items:center;justify-content:center;margin:12px 0;flex-wrap:wrap}
.scoring-inning{justify-content:flex-start;padding-bottom:12px;border-bottom:1px solid var(--diamond-border-subtle)}
.scoring-inning>strong{flex:1 0 auto;font-size:15px;font-variant-numeric:tabular-nums}.scoring-inning button{font-size:var(--diamond-font-sm);padding:8px}
.scoring-count button{flex:1}.scoring-count b{display:block;font-size:24px;font-variant-numeric:tabular-nums;line-height:1.3}
.scoring-actions{justify-content:space-between;padding-top:12px;border-top:1px solid var(--diamond-border-subtle)}
.scoring-game-row{width:100%;text-align:left;display:grid;gap:4px;margin:6px 0}.scoring-game-row span{font-weight:700}
.scoring-app details{margin:12px 0}.scoring-actions details{margin:0}.scoring-app summary{min-height:44px;padding:10px;cursor:pointer}.scoring-app details[open] button{margin:4px}
.scoring-app .scope-row{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center}.scoring-app .scope-row input[type=checkbox]{width:24px}.scoring-app .scope-row label{font-size:var(--diamond-font-sm)}
.scoring-app .queue-warning{border-left:3px solid var(--diamond-gold);padding:12px;background:var(--diamond-surface-elevated)}
.scoring-app dialog{width:min(94vw,480px);max-height:90dvh;overflow:auto;background:var(--diamond-surface);color:var(--diamond-text-primary);border:1px solid var(--diamond-border);border-radius:var(--diamond-radius-lg)}
.scorer-command{margin:12px 0}.scorer-command a{display:flex;justify-content:space-between;gap:8px;padding:10px;border-bottom:1px solid var(--diamond-border);color:inherit;text-decoration:none}.scorer-command small{display:block}
.scoring-app [hidden]{display:none!important}
@media(orientation:landscape) and (max-height:500px){
 .scoring-clock .game-countdown{font-size:2rem}.score-run-grid strong{font-size:3rem;margin:2px}.score-run-grid h2{min-height:0}
 .scoring-inning,.scoring-count,.scoring-actions{margin:6px 0}.scoring-panel{margin:6px 0;padding:8px}.scoring-clock{padding:4px 0}
 .scoring-panel:has(.score-run-grid){display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:4px 16px}
 .scoring-panel>.score-run-grid{grid-column:1;grid-row:1/4;align-self:center}.scoring-panel>.scoring-clock{grid-column:2;grid-row:1}
 .scoring-panel>.scoring-inning{grid-column:2;grid-row:2}.scoring-panel>.scoring-count{grid-column:2;grid-row:3}
 .scoring-panel>.scoring-actions{grid-column:1/-1;margin:0}.scoring-panel>[data-batter]{grid-column:2}
}
@media(prefers-reduced-motion:reduce){.scoring-app *{transition:none!important}}
