:root{--text:#fff;--muted:#ffffff9e;--faint:#fff6;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;background:#030406;margin:0;font-size:16px;overflow:hidden}button{font:inherit}:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #fff}.scene{touch-action:none;inset:0;position:fixed!important}.ui{pointer-events:none;padding:max(20px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset:0}.ui button,.ui a{pointer-events:auto}.ui-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.brand{align-items:center;gap:2px;display:flex}.brand-name{letter-spacing:.01em;white-space:nowrap;font-size:15px;font-weight:500}.about{position:relative}.about-btn{color:var(--muted)}.about-panel{width:min(300px,100vw - 48px);color:var(--muted);pointer-events:auto;background:#171a20f0;border-radius:6px;padding:14px 16px;font-size:13px;line-height:1.5;position:absolute;top:40px;left:0}.about-panel p{margin:0 0 8px}.about-panel a{color:var(--text)}.top-actions{align-items:center;gap:6px;display:flex}.link-btn{white-space:nowrap;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:8px 10px;font-size:14px;font-weight:500}.link-btn:hover,.icon-btn:hover{background:#ffffff1a}.icon-btn{width:36px;height:36px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.ui-bottom{grid-template-columns:1fr auto 1fr;grid-template-areas:"readout center.";align-items:end;gap:16px;display:grid}.readout{grid-area:readout;align-items:flex-end;gap:28px;display:flex}.speed{flex-direction:column;line-height:1;display:flex}.speed-value{font-variant-numeric:tabular-nums;font-size:64px;font-weight:300}.speed-unit{color:var(--muted);margin-top:6px;font-size:13px}.stats{gap:22px;margin:0 0 4px;display:flex}.stats dt{color:var(--faint);font-size:12px}.stats dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:15px}.center{text-align:center;flex-direction:column;grid-area:center;align-items:center;gap:10px;min-width:240px;display:flex}.primary{color:#171a20;cursor:pointer;background:#ffffffeb;border:0;border-radius:4px;justify-content:center;align-items:center;min-width:200px;height:40px;padding:0 24px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.primary:hover{background:#fff}.secondary{height:32px;color:var(--text);cursor:pointer;background:#ffffff1f;border:0;border-radius:4px;padding:0 16px;font-size:13px}.hint{color:var(--faint);font-size:12px}.stage{color:var(--muted);font-size:15px}.result-title{font-size:18px;font-weight:500}.result-line{color:var(--muted);margin-top:4px;font-size:13px}.loading{color:var(--faint);flex-direction:column;align-items:center;gap:8px;font-size:12px;display:flex}.loading-bar{background:#ffffff26;width:160px;height:2px}.loading-bar>div{background:#fff;height:100%;transition:width .3s}.reader{color:#171a20;z-index:50;background:#fff;position:fixed;inset:0;overflow-y:auto}.reader-close{color:#171a20;cursor:pointer;z-index:51;background:#f4f4f4;border:0;border-radius:4px;height:36px;padding:0 14px;font-size:14px;font-weight:500;position:fixed;top:16px;right:20px}.reader-close:hover{background:#e8e8e8}.reader :focus-visible{outline-color:#3e6ae1}.nowebgl{max-width:560px;margin:18vh auto;padding:0 24px}.muted{color:var(--muted)}.touch-steer,.touch-pedals{align-items:flex-end;gap:12px;display:none}.touch-steer{grid-area:steer}.touch-pedals{grid-area:pedals;justify-content:flex-end}.touch-btn{color:var(--text);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:#ffffff1f;border:0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.touch-btn:active{background:#ffffff4d}.touch-btn.steer{width:64px;height:64px}.touch-btn.brake{width:64px;height:56px}.touch-btn.throttle{width:64px;height:96px}.for-touch{display:none}@media (max-width:480px){.ui-top{gap:8px}.brand-name{white-space:normal;max-width:120px;font-size:14px;line-height:1.25}.link-btn{padding:8px 6px}}@media (max-width:720px){.ui-bottom{grid-template-columns:1fr;grid-template-areas:"center""readout";justify-items:center}.readout{gap:18px}.speed-value{font-size:44px}}@media (pointer:coarse){.for-keys{display:none}.for-touch{display:inline}.touch-steer,.touch-pedals{display:flex}.ui-bottom{grid-template-columns:auto 1fr auto;grid-template-areas:"steer center pedals""steer readout pedals";justify-items:center}.readout{gap:18px}.speed-value{font-size:40px}}@media (pointer:coarse) and (max-width:720px){.ui-bottom{grid-template-columns:1fr 1fr;grid-template-areas:"center center""readout readout""steer pedals"}.touch-steer{justify-self:start}.touch-pedals{justify-self:end}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
