.race-form { display: grid; gap: var(--space-4); width: min(100%, var(--width-dialog)); padding: var(--space-6); background: var(--color-surface); border: var(--border-width) solid var(--color-board); border-radius: var(--radius-card); }
.race-form label { font-weight: var(--weight-bold); }
.race-form select, .invite-link { width: 100%; min-height: var(--target); padding: var(--space-2); border: var(--border-width) solid var(--color-border); border-radius: var(--radius-control); font: inherit; background: var(--color-surface); color: var(--color-ink); }
.race-notice { padding-block: var(--space-3); min-height: var(--target); }
.race-scoreboard { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.player-score { display: grid; gap: var(--space-1); padding: var(--space-3); background: var(--color-muted); border: var(--border-width) solid var(--color-board); border-radius: var(--radius-control); min-width: 0; overflow-wrap: anywhere; }
.player-score strong { font-size: var(--font-label); }
.player-score progress { width: 100%; accent-color: var(--color-brand); }
.player-score span { font-variant-numeric: tabular-nums; }
.race-board-hidden { aspect-ratio: 1; width: 100%; background: var(--color-board); border-radius: var(--radius-board); display: grid; place-content: center; gap: var(--space-4); text-align: center; padding: var(--space-6); }
.race-clock { font-size: var(--font-heading); font-weight: var(--weight-bold); font-variant-numeric: tabular-nums; }
.race-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.race-actions > button { flex: 1; }
.race-status { font-weight: var(--weight-bold); }
.race-error { color: var(--color-error); }
.invite-panel { display: grid; gap: var(--space-2); }
.race-help { display: grid; gap: var(--space-4); }
@media (max-width: 374px) { .race-form { padding: var(--space-4); } .player-score { padding: var(--space-2); } }
