*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:600;line-height:1.5;color:#fff;background:#1a1a2e;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-overflow-scrolling:touch}#root{min-height:100vh;min-height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden;display:flex;flex-direction:column}img{-webkit-user-drag:none;user-drag:none}button,a{-webkit-tap-highlight-color:transparent}button{font-family:inherit;font-weight:inherit;cursor:pointer;border:none;background:none;color:inherit}button:focus-visible{outline:2px solid #4CAF50;outline-offset:2px}h1,h2,h3,h4,h5,h6{font-family:Racing Sans One,cursive;font-weight:400;line-height:1.2}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}@keyframes pulse{0%,to{opacity:.3}50%{opacity:.5}}@keyframes turbo-pulse{0%,to{filter:drop-shadow(0 0 8px rgba(255,150,0,.8)) drop-shadow(0 0 16px rgba(255,100,0,.5))}50%{filter:drop-shadow(0 0 12px rgba(255,150,0,1)) drop-shadow(0 0 24px rgba(255,100,0,.7))}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes flame-bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-5px)}}@keyframes flame-flicker{0%,to{opacity:1;transform:scaleX(1)}25%{opacity:.9;transform:scaleX(.95)}50%{opacity:1;transform:scaleX(1.05)}75%{opacity:.95;transform:scaleX(.98)}}@keyframes speed-line-move{0%{opacity:0;transform:translate(20px) translateY(-50%)}20%{opacity:.6}to{opacity:0;transform:translate(-30px) translateY(-50%)}}@keyframes pop{0%{transform:scale(0) translate(-50%,-50%);opacity:0}50%{transform:scale(1.2) translate(-50%,-50%)}to{transform:scale(1) translate(-50%,-50%);opacity:1}}@keyframes pop-center{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}@keyframes bounce{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}70%{transform:scale(.95)}to{transform:scale(1);opacity:1}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}@keyframes segment-pulse{0%,to{r:8;opacity:1}50%{r:10;opacity:.8}}.race-screen{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden}.track-container{position:relative;margin:0 auto}.segment-current{animation:segment-pulse 1s ease-in-out infinite}.flame-trail{animation:flame-flicker .2s ease-in-out infinite}.flame-trail.flame-turbo .flame-outer{animation:flame-flicker .1s ease-in-out infinite}.car-turbo{animation:turbo-pulse .3s ease-in-out infinite}.momentum-meter.turbo-active{position:relative}.momentum-meter.near-full .meter-fill{animation:shimmer 1s ease-in-out infinite;background-size:200% 100%}.question-panel{transition:all .3s ease-out}.quick-celebration{pointer-events:none;animation:pop .5s ease-out forwards}button:disabled,.btn-disabled{opacity:.6;cursor:not-allowed;position:relative}button:disabled:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(255,255,255,.05) 4px,rgba(255,255,255,.05) 8px);pointer-events:none;border-radius:inherit}.screen-enter{opacity:0;transform:translate(20px)}.screen-enter-active{opacity:1;transform:translate(0);transition:all .3s ease-out}.screen-exit{opacity:1}.screen-exit-active{opacity:0;transform:translate(-20px);transition:all .3s ease-out}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{display:none}.focus-ring:focus-visible{outline:3px solid #4CAF50;outline-offset:2px}.touch-target{min-width:48px;min-height:48px}.numpad-button{min-height:clamp(48px,8vh,56px)}@media(max-width:360px){.numpad-button{min-height:52px!important;font-size:22px!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){button{border:2px solid currentColor!important}.track-svg path{stroke-width:3!important}}.build-info{position:fixed;bottom:28px;right:12px;font-size:11px;font-family:Nunito,sans-serif;color:#fff6;pointer-events:none;z-index:1}@media print{body{background:#fff;color:#000}.app{display:none}}
