:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html,body{background:#000;width:100%;height:100%;font-family:Segoe UI,system-ui,sans-serif;overflow:hidden}#app{width:100%;height:100%;position:relative}canvas{display:block}.hud{color:#fff;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:Arial Narrow,Helvetica Neue,Arial,sans-serif;position:absolute;inset:0}.hud-speed{clip-path:polygon(0 0,100% 0,92% 100%,0% 100%);background:linear-gradient(100deg,#0a0a0ebf,#0a0a0e59);border-left:4px solid #ff2b3d;align-items:baseline;gap:6px;padding:6px 18px 6px 14px;display:flex;position:absolute;bottom:20px;left:20px}.hud-speed-value{letter-spacing:.01em;text-shadow:0 2px 10px #000c;font-size:56px;font-style:italic;font-weight:900;line-height:1}.hud-speed-unit{letter-spacing:.08em;opacity:.75;text-transform:uppercase;font-size:15px;font-weight:700}.hud-info{align-items:center;gap:10px;display:flex;position:absolute;top:16px;right:20px}.hud-badge{letter-spacing:.03em;text-shadow:0 1px 6px #000c;clip-path:polygon(8% 0,100% 0,100% 100%,0% 100%);background:#0a0a0ea6;border-right:4px solid #ff2b3d;padding:6px 14px;font-size:20px;font-style:italic;font-weight:900}.hud-badge span{opacity:.7;margin-left:1px;font-size:13px;font-weight:600}.hud-timer{font-variant-numeric:tabular-nums;letter-spacing:.03em;text-shadow:0 1px 6px #000c;background:#0a0a0ea6;padding:6px 14px;font-size:20px;font-weight:700}.hud-tires{background:#0a0a0ea6;align-items:center;gap:8px;padding:6px 14px;display:flex;position:absolute;bottom:20px;right:20px}.hud-tires-label{letter-spacing:.1em;opacity:.75;font-size:12px;font-weight:700}.hud-tire-bar{background:#ffffff26;width:90px;height:10px;overflow:hidden}.hud-tire-fill{height:100%;transition:width .2s ease-out}.hud-tire-fill.high{background:#3ddc6a}.hud-tire-fill.mid{background:#f2c200}.hud-tire-fill.low{background:#ff2b3d}.hud-pit-hint{color:#ff2b3d;font-size:13px;font-style:italic;font-weight:900;animation:.8s ease-in-out infinite pulse}.hud-pit-limit{letter-spacing:.05em;color:#f2c200;text-shadow:0 1px 6px #000c;background:#0a0a0ebf;border-bottom:4px solid #f2c200;padding:6px 20px;font-size:18px;font-style:italic;font-weight:900;position:absolute;top:70px;left:50%;transform:translate(-50%)}.hud-pit-limit.over{color:#ff2b3d;border-bottom-color:#ff2b3d;animation:.5s ease-in-out infinite pulse}.hud-pitting{letter-spacing:.05em;color:#f2c200;text-shadow:0 1px 6px #000c;background:#0a0a0ebf;border-bottom:4px solid #f2c200;padding:6px 20px;font-size:22px;font-style:italic;font-weight:900;position:absolute;top:70px;left:50%;transform:translate(-50%)}.overlay{color:#fff;text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0}.overlay:empty{display:none}.overlay h1{letter-spacing:.08em;text-shadow:0 2px 12px #000000b3;font-size:48px}.overlay p{text-shadow:0 1px 6px #000000b3;font-size:16px}.overlay .prompt{font-size:20px;font-weight:700;animation:1.2s ease-in-out infinite pulse}.overlay .hint{opacity:.8;font-size:13px}.overlay .countdown{text-shadow:0 4px 20px #000c;font-size:120px;font-weight:700}.overlay .results{border-collapse:collapse;min-width:420px;font-size:16px}.overlay .results th,.overlay .results td{text-align:left;border-bottom:1px solid #fff3;padding:6px 16px}.overlay .results tr.you{color:#ff4d5e;font-weight:700}.team-select{gap:16px;margin:10px 0;display:flex}.team-card{background:#0a0a0ea6;border:2px solid #ffffff26;flex-direction:column;align-items:center;gap:8px;width:150px;padding:16px 10px;transition:transform .15s ease-out,border-color .15s ease-out;display:flex}.team-card.selected{border-color:#ff2b3d;transform:translateY(-6px)scale(1.05)}.team-swatch{border:4px solid;border-radius:50%;width:48px;height:48px}.team-name{letter-spacing:.02em;font-size:15px;font-style:italic;font-weight:900}.team-tagline{letter-spacing:.1em;opacity:.7;font-size:11px;font-weight:700}.track-select{gap:16px;margin:10px 0;display:flex}.track-card{background:#0a0a0ea6;border:2px solid #ffffff26;border-bottom-width:4px;flex-direction:column;align-items:center;gap:6px;width:190px;padding:20px 14px;transition:transform .15s ease-out,border-color .15s ease-out;display:flex}.track-card.selected{border-color:#ff2b3d;transform:translateY(-6px)scale(1.05)}.track-name{letter-spacing:.02em;font-size:17px;font-style:italic;font-weight:900}.track-tagline{letter-spacing:.1em;opacity:.7;font-size:11px;font-weight:700}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}
