.race-ui{--race:#ffd166;--race-ink:#2a1d00}.race-banner{position:fixed;left:50%;top:150px;transform:translate(-50%);z-index:9;display:flex;align-items:center;gap:10px;max-width:calc(100vw - 32px)}.race-banner[hidden]{display:none}.race-banner-text{font-size:13px;color:#e8f4ec}.race-banner button{min-height:32px;padding:4px 14px;font-size:12px}.race-banner .race-banner-close{min-width:32px;padding:4px 8px}.race-dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:13;display:grid;place-items:center;background:#04070acc}.race-dialog[hidden]{display:none}.race-dialog-card{width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;background:#080c0efa;border-left:4px solid var(--race);clip-path:var(--cut);padding:14px 20px 18px;box-shadow:0 18px 50px #000a}.race-dialog .settings-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.race-dialog h2{margin:0;font-size:22px;font-style:italic}.race-dialog-course{margin:0 0 8px;color:var(--race);font-size:13px;font-weight:600}.race-track{display:block;width:100%;height:150px;margin:0 0 10px;background:radial-gradient(ellipse at 50% 40%,#16202a,#070b0d);border-left:2px solid var(--race);clip-path:var(--slant)}.race-track[hidden]{display:none}.race-strip-lap{color:#e8f4ec;font-weight:800}.race-strip-leave{pointer-events:auto;min-height:28px;padding:2px 12px;font-size:11px;margin-left:4px}.race-strip-leave[hidden]{display:none}.race-strip-time:empty{display:none}.race-strip-lap[hidden]{display:none}.race-entrants,.race-results-list,.race-board-list{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:4px}.race-entrants li{padding:6px 12px;background:#0a0f11d9;border-left:2px solid var(--mint);font-size:13px;clip-path:var(--slant)}.race-entrants li small,.race-board-stats{color:var(--muted);font-size:11px}.race-entrants li.is-dev,.race-results-list li.is-dev .race-result-name,.race-board-list li.is-dev .race-board-name{color:var(--dev,#ffd166)}.race-dialog-status,.race-results-note,.race-board-note,.race-board-me{margin:0 0 10px;font-size:12px;color:#c4d1cc}.race-dialog-actions{display:flex;gap:8px;flex-wrap:wrap}.race-dialog-actions button{min-height:40px}.race-dialog-start[hidden]{display:none}.race-countdown{position:fixed;left:50%;top:38%;transform:translate(-50%,-50%);z-index:11;text-align:center;pointer-events:none}.race-countdown[hidden]{display:none}.race-countdown-number{font-size:clamp(96px,22vh,180px);font-weight:900;font-style:italic;letter-spacing:-6px;line-height:1;color:var(--race);text-shadow:0 0 24px #ffd16688,0 4px 0 #2a1d00}.race-countdown.is-go .race-countdown-number{color:var(--go);text-shadow:0 0 30px #c6ff4599,0 4px 0 #0f1a04}.race-countdown-note{margin-top:6px;font-size:16px;font-style:italic;color:#e8f4ec;text-shadow:0 2px 3px #000}.race-pop{animation:race-pop .5s cubic-bezier(.2,.9,.25,1)}@keyframes race-pop{0%{transform:scale(1.5);opacity:.2}to{transform:scale(1);opacity:1}}.race-strip{position:fixed;left:50%;top:62px;transform:translate(-50%);z-index:8;display:flex;align-items:center;gap:16px;font-size:14px;font-weight:600;color:#e8f4ec}.race-strip[hidden]{display:none}.race-strip-place{color:var(--race);font-size:18px;font-weight:800}.race-strip-time{font-variant-numeric:tabular-nums;font-size:16px}.race-strip-gap{color:var(--muted);font-size:12px}.race-strip.is-finished .race-strip-place{color:var(--go)}.race-results-list li,.race-board-list li{display:grid;grid-template-columns:44px 1fr auto auto;gap:10px;align-items:center;padding:6px 12px;background:#0a0f11d9;border-left:2px solid #3a4a4d;font-size:13px;clip-path:var(--slant)}.race-results-list li.is-me,.race-board-list li.is-me{border-left-color:var(--go)}.race-result-place,.race-board-rank{font-weight:800;color:var(--race)}.race-result-time,.race-board-rating{font-variant-numeric:tabular-nums}.race-result-delta.is-up{color:var(--go)}.race-result-delta.is-down{color:#ffb27a}.race-board-list li.is-empty{display:block;color:var(--muted)}@media(max-width:600px){.race-track{height:120px}.race-banner{top:auto;bottom:190px;flex-wrap:wrap;justify-content:center}.race-strip{top:auto;bottom:230px;font-size:12px;gap:10px}}
