@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";html,body,#root{width:100%;min-width:320px;height:100%;margin:0;overflow:hidden}body{overscroll-behavior:none}button{-webkit-tap-highlight-color:transparent}::selection{color:#13292d;background:#56e6c3}:root{color:#f4f5ef;font-synthesis:none;background:#182329;font-family:Manrope,system-ui,sans-serif}*{box-sizing:border-box}button{font:inherit;color:inherit;cursor:pointer;border:0}button:focus-visible{outline-offset:3px;outline:2px solid #4ee5c4}.game-shell{background:#91c9d8;width:100%;height:100dvh;min-height:500px;position:relative;overflow:hidden}.scene,.scene canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.grain{pointer-events:none;z-index:1;background:linear-gradient(#0f20261a,#0000 30% 65%,#0d191e42);position:absolute;inset:0}.screen,.hud-top,.progress-wrap,.hud-stats,.touch-hint{z-index:2;position:absolute}.menu-screen{background:linear-gradient(90deg,#0e1f25c7 0%,#0e1f2573 44%,#0000 78%);flex-direction:column;padding:34px 5.3vw;display:flex;inset:0}.topline{justify-content:space-between;align-items:center;display:flex}.brand{letter-spacing:.13em;font-size:15px;font-weight:800}.brand i{color:#4de2c0;margin-right:8px;font-size:22px;font-style:normal}.brand span{color:#53e5c5}.balance{color:#ffcc70;background:#14252bce;border:1px solid #ffffff24;border-radius:9px;align-items:center;gap:8px;padding:10px 15px;display:flex}.balance small{letter-spacing:.1em;color:#bbc7c6;margin-left:4px;font:10px DM Mono}.menu-copy{max-width:440px;margin:auto 0 auto 7vw}.kicker,.eyebrow{letter-spacing:.19em;color:#52e5c4;font:500 10px DM Mono,monospace}.menu-copy h1{letter-spacing:-.075em;margin:18px 0;font-size:clamp(55px,8.5vw,112px);line-height:.91}.menu-copy h1 em{color:#fff;font-style:normal}.menu-copy p{color:#c5d0cc;margin:22px 0 30px;font-size:15px}.primary{color:#112a2c;letter-spacing:.08em;background:#53e4c1;border-radius:5px;justify-content:space-between;align-items:center;gap:35px;height:54px;padding:0 22px;font-size:12px;font-weight:800;transition:transform .18s,background .18s;display:flex;box-shadow:0 8px 25px #2be4b526}.primary:hover{background:#79f4d7;transform:translateY(-2px)}.primary b{font-size:20px}.best{letter-spacing:.1em;color:#a8bbba;margin-top:27px;font:10px DM Mono}.best b{color:#fff;margin-left:12px}.menu-nav{gap:32px;margin-left:7vw;display:flex}.menu-nav button,.text-button{color:#dae3df;letter-spacing:.13em;background:0 0;padding:10px 0;font:500 10px DM Mono}.menu-nav button:hover,.text-button:hover{color:#59e4c4}.version{color:#b8c9c6a3;letter-spacing:.12em;font:9px DM Mono;position:absolute;bottom:18px;right:5vw}.hud-top{align-items:flex-start;gap:16px;padding:25px 4vw;display:flex;top:0;left:0;right:0}.objective,.timer{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#12242acb;border:1px solid #ffffff20;border-radius:8px;padding:12px 16px}.objective{gap:5px;min-width:190px;display:grid}.objective b{font-size:13px}.eyebrow{font-size:8px}.timer{text-align:right;gap:3px;min-width:100px;margin-left:auto;display:grid}.timer span,.progress-label,.stat small{letter-spacing:.14em;color:#b8cbc9;font:9px DM Mono}.timer b{color:#ffcf73;font:700 21px DM Mono}.timer small{font-size:11px}.pause-btn{background:#12242acb;border:1px solid #ffffff20;border-radius:8px;width:42px;height:42px;font-size:17px}.progress-wrap{width:min(360px,40vw);top:105px;left:50%;transform:translate(-50%)}.progress-label{justify-content:space-between;margin-bottom:7px;font-size:8px;display:flex}.progress{background:#10242b74;border-radius:8px;height:4px;overflow:hidden}.progress i{background:#56e6c3;height:100%;transition:width .2s;display:block}.hud-stats{gap:8px;display:flex;top:120px;right:4vw}.stat{background:#12242acb;border:1px solid #ffffff20;border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:2px 7px;min-width:74px;padding:10px;display:grid}.stat span{grid-row:span 2}.stat b{font:700 15px DM Mono}.stat small{font-size:7px}.touch-hint{color:#fff;letter-spacing:.16em;text-shadow:0 2px 8px #11252d;align-items:center;gap:20px;font:9px DM Mono;display:flex;bottom:22px;left:50%;transform:translate(-50%)}.touch-hint button{background:#14282ebc;border:1px solid #ffffff60;border-radius:50%;width:48px;height:48px;font-size:28px;display:none}.modal-screen{z-index:3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1021268f;place-items:center;padding:18px;display:grid;inset:0}.panel{background:#172a30f2;border:1px solid #b9e0d626;border-radius:12px;width:min(420px,100%);padding:34px 38px;animation:.24s ease-out enter;box-shadow:0 24px 80px #07131678}.panel h2{letter-spacing:-.055em;margin:12px 0;font-size:34px;line-height:1.05}.panel p{color:#adbfbd;margin:0 0 22px;font-size:13px}.panel>.primary{width:100%;margin:22px 0 7px}.secondary{color:#e6eeeb;letter-spacing:.1em;background:#31454a;border-radius:5px;width:100%;margin:8px 0;padding:15px;font:600 10px DM Mono;display:block}.text-button{width:100%;margin-top:8px}.result-panel{width:min(460px,100%)}.result-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0;display:grid}.result-grid div{background:#23383d;border-radius:6px;gap:6px;padding:11px 9px;display:grid}.result-grid small{color:#9fb6b2;letter-spacing:.08em;font:8px DM Mono}.result-grid b{font:700 16px DM Mono}.reward-line,.reward-total{color:#bfceca;border-bottom:1px solid #ffffff14;justify-content:space-between;padding:9px 0;font-size:12px;display:flex}.reward-line b{color:#e4efeb;font:500 12px DM Mono}.reward-total{color:#54e5c4;letter-spacing:.08em;margin-top:5px;font:10px DM Mono}.reward-total b{font-size:15px}.menu-panel{width:min(520px,100%);max-height:90dvh;position:relative;overflow:auto}.menu-panel h2{font-size:29px}.close{color:#9ab2b0;background:0 0;font-size:26px;position:absolute;top:14px;right:20px}.wallet{font:11px DM Mono;color:#f3cc74!important}.vehicle-list,.upgrade-list{gap:9px;margin:20px 0;display:grid}.vehicle-card{background:#22383d;border:1px solid #0000;border-radius:7px;align-items:center;gap:12px;padding:12px;display:flex}.vehicle-card.selected{border-color:#54e5c4}.scooter-icon{color:var(--scooter);text-align:center;width:45px;font-size:31px}.vehicle-card>div:nth-child(2){flex:1;gap:4px;display:grid}.vehicle-card b,.upgrade-head b{font-size:12px}.vehicle-card small,.upgrade-card small{color:#9db4b0;letter-spacing:.05em;font:8px DM Mono}.vehicle-card button,.upgrade-card button{white-space:nowrap;background:#385259;border-radius:4px;padding:9px 10px;font:9px DM Mono}.upgrade-card{background:#22383d;border-radius:7px;padding:14px}.upgrade-head{justify-content:space-between;display:flex}.upgrade-head span{color:#53e4c1;font:9px DM Mono}.levels{gap:5px;margin:10px 0;display:flex}.levels i{background:#43585a;border-radius:4px;flex:1;height:4px}.levels i.filled{background:#54e5c4}.upgrade-card small{margin-bottom:12px;display:block}.upgrade-card button{background:#385259;width:100%}.upgrade-card button:disabled{opacity:.45}.settings-list{gap:14px;margin:20px 0;display:grid}.settings-list>div{background:#22383d;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:13px;font-size:12px;display:flex}.settings-list>div small{color:#a7bab8;font-size:9px}.toggle{background:#405357;border-radius:10px;padding:5px 11px;font:9px DM Mono}.toggle.on{color:#112a2c;background:#53e4c1}.toast{z-index:5;color:#5de9c8;letter-spacing:.05em;background:#172a30;border:1px solid #fff2;border-radius:6px;padding:12px 20px;font:11px DM Mono;animation:.2s ease-out enter;position:absolute;top:22%;left:50%;transform:translate(-50%)}@keyframes enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (width<=700px){.menu-screen{background:linear-gradient(90deg,#10262ac9,#10262a61 75%,#0000);padding:22px 22px 27px}.menu-copy{margin:auto 0 auto 3vw}.menu-copy h1{font-size:clamp(58px,15vw,90px)}.menu-copy p{max-width:270px;font-size:13px}.menu-nav{gap:20px;margin-left:3vw}.menu-nav button{font-size:9px}.version{display:none}.hud-top{gap:8px;padding:14px}.objective{min-width:0;padding:10px}.objective b{font-size:11px}.timer{min-width:72px;padding:9px}.timer b{font-size:17px}.pause-btn{width:38px;height:38px}.progress-wrap{width:56vw;top:90px;left:14px;transform:none}.hud-stats{display:grid;top:112px;right:12px}.stat{min-width:65px;padding:7px}.touch-hint{justify-content:space-between;width:100%;padding:0 22px;bottom:15px}.touch-hint button{touch-action:none;display:block}.touch-hint .boost-button{letter-spacing:.1em;border-radius:8px;width:auto;height:38px;padding:0 11px;font:9px DM Mono}.touch-hint span{font-size:7px}.panel{padding:27px 22px}.menu-panel{padding:28px 18px}.vehicle-card{gap:7px;padding:9px}.vehicle-card button{padding:8px 6px;font-size:8px}.scooter-icon{width:32px}.grain{background:linear-gradient(#0f202621,#0000 35% 63%,#0d191e66)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.speed-effect{z-index:1;pointer-events:none;opacity:calc(.28 + var(--boost-strength)*.62);background:radial-gradient(at 50% 58%,#0000 28%,#53e5c41c 57%,#53e5c447 100%);animation:.22s ease-in-out infinite alternate boost-pulse;position:absolute;inset:0;overflow:hidden}.speed-effect:before,.speed-effect:after{content:"";background:repeating-linear-gradient(108deg,#0000 0 8%,#d7fff34a 8.15% 8.35%,#0000 8.5% 16%);animation:.34s linear infinite speed-streaks;position:absolute;inset:-30%;-webkit-mask-image:radial-gradient(#0000 0 15%,#000 67%);mask-image:radial-gradient(#0000 0 15%,#000 67%)}.speed-effect:after{opacity:.55;animation-duration:.25s;transform:scaleX(-1)}.boost-charge-stat{grid-template-columns:auto 1fr}.boost-charge-track{background:#52625e;border-radius:4px;grid-column:1/-1;height:4px;margin-top:3px;overflow:hidden}.boost-charge-track i{background:#54e5c4;height:100%;transition:width .16s linear;display:block}@keyframes speed-streaks{0%{transform:translateY(-3%)scale(1.02)}to{transform:translateY(3%)scale(1.12)}}@keyframes boost-pulse{0%{filter:brightness()}to{filter:brightness(1.16)}}@media (width<=700px){.game-shell{touch-action:pan-y;min-height:320px}.touch-hint{bottom:max(12px,env(safe-area-inset-bottom));padding:0 max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));gap:clamp(7px,2vw,14px)}.touch-hint button{touch-action:none;-webkit-user-select:none;user-select:none;background:#13292ee8;border:1px solid #ffffff70;width:clamp(54px,15vw,68px);height:clamp(54px,15vw,68px);font-size:32px;box-shadow:0 5px 18px #08171b66}.touch-hint .boost-button,.touch-hint .brake-button{letter-spacing:.04em;border-radius:14px;width:clamp(62px,17vw,78px);height:clamp(54px,15vw,68px);padding:0 8px;font:700 10px DM Mono}.touch-hint .boost-button{color:#112a2c;background:#54e5c4;border-color:#b4ffeb}.touch-hint .brake-button{color:#302015;background:#eaa863;border-color:#ffe0b6}.touch-hint .swipe-label{white-space:nowrap;background:#13292eb8;border-radius:5px;padding:5px 8px;font-size:7px;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.speed-effect,.speed-effect:before,.speed-effect:after{animation:none}}
