:root{color-scheme:dark;--lime:#7cec26;--line:#2d3c32}*{box-sizing:border-box}body{margin:0;background:#0a100d;color:#ecf2ed;font:15px/1.5 system-ui,sans-serif}main{max-width:1440px;margin:auto;padding:26px}header,.section-head,.bar,.buttons{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.eyebrow{color:var(--lime);letter-spacing:.16em;font-size:11px;font-weight:750;margin:0}h1{font-size:clamp(28px,4vw,42px);margin:6px 0}header p{margin:4px 0 22px;color:#b5c7bb}a{color:#a6e98d}header a{align-self:flex-start;margin-top:12px}.player,.standings{background:#131e17;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:24px}.bar{padding:12px 20px;background:#1b2a20}.bar strong{font-size:26px;font-variant-numeric:tabular-nums}.tag{color:var(--lime);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}#raceStatus{color:#b7c7bb}.track{position:relative;aspect-ratio:1579/987;background:#101713}.track>img{width:100%;height:100%;object-fit:contain;opacity:.9}.track>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}#route{fill:none;stroke:#151d18aa;stroke-width:25;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px #081009)}.centreline{fill:none;stroke:#baff7770;stroke-width:2;stroke-dasharray:14 18}.timing{stroke:#fff;stroke-width:7;stroke-dasharray:7 7}.loop-label{font-size:21px;fill:white;font-weight:750}.centre-label rect{fill:#09130feb;stroke:#354c3d;stroke-width:2}.centre-label text{fill:#a8fa77;font:bold 29px system-ui;text-anchor:middle}.centre-label .small{font-size:24px;fill:#bdcbbf;font-weight:400}.car-body{stroke:#fff;stroke-width:2.5}.car-number{fill:#071209;stroke:none;font:bold 17px system-ui;text-anchor:middle;dominant-baseline:central}.car{transition:opacity .15s}.car.selected .car-body{stroke:#fff;stroke-width:6;filter:drop-shadow(0 0 10px white)}.car.dim{opacity:.85}.controls{padding:18px 22px}.buttons{justify-content:flex-start}button,select{font:inherit;border:1px solid #526456;border-radius:8px;padding:10px 13px;color:white;background:#213026;cursor:pointer}button:hover,select:hover{background:#314734}button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #c7ff9a;outline-offset:4px}button.primary{background:var(--lime);color:#102207;min-width:108px;font-weight:750}.timeline-label{display:flex;justify-content:space-between;margin-top:20px;color:#bdcbbf;font-size:13px}input[type=range]{width:100%;accent-color:var(--lime);height:26px}.hint,.explain{color:#9eb3a4;font-size:13px}.hint{margin:4px 0}.section-head{padding:18px 22px}h2{margin:0;font-size:20px}h2 span{font-size:12px;font-weight:400;display:block;color:#a3b7a9}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums;white-space:nowrap}th,td{padding:12px 16px;text-align:left;border-top:1px solid var(--line)}th{font-size:11px;color:#a2b6a8;text-transform:uppercase;letter-spacing:.06em}td{font-size:13px}.chip{display:inline-grid;place-items:center;min-width:26px;height:26px;border-radius:7px;color:#061208;font-weight:800;margin-right:10px}.slow{color:#ffc55b}.finished{color:#a6e98d}.chosen{background:#253e2c}#message{color:#ffc55b}@media(min-width:1000px){.track{max-height:620px;aspect-ratio:auto;height:min(44vw,620px)}.track img,.track>svg{object-fit:contain}}@media(max-width:650px){main{padding:12px}.bar{gap:6px;padding:10px}.bar strong{font-size:22px}.controls{padding:12px}button,select{padding:9px}.buttons{gap:8px}.section-head{padding:14px}.centre-label{display:none}h1{font-size:30px}.explain{font-size:12px}}


header .race-date{font-size:20px;font-weight:750;color:#ecf2ed;margin:0 0 8px}

.selectors{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:20px;background:#131e17;border:1px solid #2d3c32;border-radius:14px;margin:0 0 24px}.selectors label{display:grid;gap:6px;min-width:0}.selectors select{max-width:100%;width:100%}.selectors>div{grid-column:1/-1}button:disabled{opacity:.5;cursor:default}#dayStatus{font-size:13px;color:#b5c7bb;margin:8px 0 0}.car-number{paint-order:stroke;stroke:#fff;stroke-width:2px}@media(max-width:650px){.selectors{grid-template-columns:1fr;padding:12px}}


.results-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.results-nav a{padding:7px 10px;border:1px solid #385340;border-radius:6px;text-decoration:none;font-size:12px}.replay-nav-button{background:#85ed40!important;color:#10200b!important}.selectors{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px}.selectors label{display:grid;gap:5px;flex:1 1 220px;min-width:0}.selectors select{width:100%;min-width:0}.selectors>div{flex-basis:100%}.race-date{font-size:22px;font-weight:bold}html.embedded .results-nav{display:none}

.retirement-fire{display:none;pointer-events:none;transform-box:fill-box;transform-origin:50% 100%}.car.retired .retirement-fire{display:block;animation:retirement-flicker .42s ease-in-out infinite alternate}@keyframes retirement-flicker{from{transform:scale(.94,.94) rotate(-3deg)}to{transform:scale(1.04,1.08) rotate(3deg)}}@media(prefers-reduced-motion:reduce){.car.retired .retirement-fire{animation:none}}

#drawn-plan{pointer-events:none}.loop-label{paint-order:stroke;stroke:#102016;stroke-width:4px;stroke-linejoin:round}

.replay-update{margin:0 0 20px;padding:14px 18px;background:#17271c;border-left:3px solid var(--lime);border-radius:0 8px 8px 0}.replay-update h2{font-size:15px;color:var(--lime)}.replay-update p{margin:5px 0 0;color:#c4d6c8;font-size:14px}

.replay-expand{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 12px}
.replay-fullscreen-open{overflow:hidden}
.replay-fullscreen{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);border:0;background:#0a100d;color:#ecf2ed;overflow:hidden}
.replay-fullscreen[open]{display:flex;flex-direction:column}
.replay-fullscreen::backdrop{background:#0a100d}
.fullscreen-nav{display:flex;justify-content:space-between;gap:10px;padding:8px 12px;flex:none}
.fullscreen-nav [role=group]{display:flex;gap:8px}
.fullscreen-nav [aria-pressed=true]{background:var(--lime);color:#102207;font-weight:750}
.swipe-hint{display:none;margin:0;padding:0 12px 6px;color:#bdcbbf;font-size:12px}
.fullscreen-content{flex:1;min-height:0;overflow:auto;touch-action:pan-y}
.replay-fullscreen .player,.replay-fullscreen .standings{margin:0;border:0;border-radius:0;min-height:100%}
.replay-fullscreen .player:not([hidden]){height:100%;display:flex;align-items:center;justify-content:center}
.replay-fullscreen [hidden]{display:none!important}
.replay-fullscreen .track{width:100%;height:100%;max-height:none;aspect-ratio:auto}
.replay-fullscreen .track>svg{overflow:hidden}
.fullscreen-controls{flex:none;border-top:1px solid var(--line)}
.fullscreen-controls .controls{padding:8px 14px}
.fullscreen-controls .timeline-label{margin-top:6px}
.fullscreen-controls .hint{display:none}
@media(max-width:767px){.swipe-hint{display:block}.fullscreen-nav button{padding:7px 12px}.fullscreen-clock .bar{padding:5px 12px;gap:5px}.fullscreen-clock .bar strong{font-size:20px}.fullscreen-clock .tag{font-size:10px}.fullscreen-clock #raceStatus{font-size:12px}.fullscreen-controls .buttons{gap:5px}.fullscreen-controls button,.fullscreen-controls select{padding:6px;font-size:13px}.fullscreen-controls .primary{min-width:76px}.replay-fullscreen .table-wrap{overflow:visible}.replay-fullscreen table{white-space:normal;table-layout:fixed}.replay-fullscreen th,.replay-fullscreen td{padding:7px 4px;font-size:11px;overflow-wrap:anywhere}.replay-fullscreen th:first-child{width:30px}.replay-fullscreen th:nth-child(2){width:29%}.replay-fullscreen .chip{min-width:20px;height:20px;margin-right:3px}.replay-fullscreen .section-head{padding:8px}.replay-fullscreen h2{font-size:16px}}
@media(max-height:480px){.fullscreen-clock .bar{padding:2px 12px}.fullscreen-clock .bar strong{font-size:18px}.swipe-hint{display:none}.fullscreen-nav{padding:3px 10px}.fullscreen-nav button{padding:3px 10px}.fullscreen-controls .controls{padding:3px 12px}.fullscreen-controls .timeline-label{display:none}.fullscreen-controls input[type=range]{height:18px;margin:0}}
.fullscreen-content{overflow:hidden}
.fullscreen-panels{display:flex;width:100%;height:100%;transform:translateX(0)}
.replay-fullscreen[data-view=timings] .fullscreen-panels{transform:translateX(-100%)}
.replay-fullscreen .fullscreen-panels>.player,.replay-fullscreen .fullscreen-panels>.standings{flex:0 0 100%;width:100%;min-width:0;height:100%;min-height:0;overflow:auto}
@media(max-width:767px){.fullscreen-panels{transition:transform .28s ease-out}}
@media(prefers-reduced-motion:reduce){.fullscreen-panels{transition:none}}
.replay-fullscreen .fullscreen-panels>.player{overflow:hidden}
.replay-fullscreen .track>img{display:block}
@media(max-width:767px){.replay-fullscreen th{font-size:10px}.replay-fullscreen th:first-child{white-space:nowrap}}

.replay-expand a{display:inline-block;font:inherit;border:1px solid #526456;border-radius:8px;padding:10px 13px;color:white;background:#213026;text-decoration:none}.replay-expand a:hover{background:#314734}.replay-expand a:focus-visible{outline:3px solid #c7ff9a;outline-offset:4px}
