:root{font-family:system-ui,sans-serif;color:#fff;background:#101822;--ink: #101822;--cream: #fff5d6;--coral: #ff5964;--mint: #61d6a7}*{box-sizing:border-box}html,body,#game,#ui{margin:0;width:100%;height:100%;overflow:hidden;touch-action:none}#game{display:block}#ui{position:fixed;inset:0;pointer-events:none}.screen{pointer-events:auto;position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:max(20px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));background:radial-gradient(circle at 50% 30%,#27455b 0,#101822 70%)}h1{font-size:clamp(42px,9vw,100px);line-height:.85;margin:0 0 30px;text-transform:uppercase;letter-spacing:-.06em;text-shadow:5px 6px 0 #ff5964;transform:rotate(-2deg)}h2{font-size:clamp(28px,5vw,54px);margin:0 0 16px}button,select,input{font:800 clamp(16px,2.5vw,24px) system-ui;border:3px solid var(--ink);border-radius:14px;padding:12px 24px;margin:6px;background:var(--cream);color:var(--ink);box-shadow:4px 5px 0 var(--ink);cursor:pointer}button.primary{font-size:clamp(26px,4vw,42px);background:var(--mint);min-width:220px}button:focus-visible{outline:4px solid #fff;outline-offset:3px}.row{display:flex;flex-wrap:wrap;justify-content:center}.panel{max-width:760px;text-align:center;background:#1c3141e8;border:3px solid #fff;border-radius:20px;padding:22px}.garage-panel{width:min(1050px,96vw);max-height:calc(100% - 20px);overflow:auto}.vehicle-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:10px}.vehicle-card{min-height:168px;margin:0;padding:10px;display:flex;flex-direction:column;align-items:center;gap:4px}.vehicle-card.selected{background:var(--mint);box-shadow:0 0 0 4px #fff,5px 7px 0 var(--ink)}.vehicle-card small,.vehicle-stats{font-size:12px}.vehicle-stats{color:#31465a}.pixel-preview{position:relative;display:block;width:92px;height:58px;background:currentColor;color:var(--coral);clip-path:polygon(5% 48%,22% 48%,30% 25%,68% 25%,82% 48%,96% 48%,96% 77%,5% 77%);image-rendering:pixelated}.pixel-preview:before,.pixel-preview:after{content:"";position:absolute;width:19px;height:19px;border:5px solid #101822;background:#44515e;bottom:2px}.pixel-preview:before{left:12px}.pixel-preview:after{right:12px}.pixel-preview i{position:absolute;width:14px;height:11px;background:#b8eff8;top:18px;left:35px}.vehicle-bus{color:#ffc928;height:68px;clip-path:polygon(4% 12%,94% 12%,98% 76%,4% 76%)}.vehicle-moto{color:#58d6b1;width:70px;clip-path:polygon(42% 20%,60% 20%,65% 48%,88% 54%,95% 76%,5% 76%,14% 54%,40% 48%)}.vehicle-pickup{color:#3f9fe8;clip-path:polygon(4% 42%,48% 42%,56% 20%,81% 20%,91% 48%,98% 48%,98% 77%,4% 77%)}.vehicle-monster{color:#8c62df;height:70px;clip-path:polygon(12% 38%,26% 38%,32% 17%,70% 17%,82% 40%,94% 40%,94% 70%,7% 70%)}.vehicle-buggy{color:#ff8d32;clip-path:polygon(4% 50%,22% 50%,35% 18%,65% 18%,82% 50%,97% 50%,97% 77%,4% 77%)}.menu-vehicle{margin:-16px 0 12px;padding:7px 13px;background:#101822cc;border:2px solid #fff;border-radius:99px}.level-panel{max-width:980px;max-height:calc(100% - 24px);overflow:auto}.level-grid button{min-width:135px}.level-jump{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;margin-top:12px}.level-jump label{font-weight:800}.level-jump input{width:150px;padding:10px 12px;margin:4px}.level-jump [role=alert]{flex-basis:100%;min-height:1.3em;color:#ffef6e}.hud{position:absolute;inset:0;pointer-events:none}.level{position:absolute;top:max(10px,env(safe-area-inset-top));left:50%;transform:translate(-50%);background:#101822cc;border:2px solid #fff;border-radius:99px;padding:8px 18px;font-weight:800}.vehicle-badge{position:absolute;left:50%;top:max(58px,calc(env(safe-area-inset-top) + 48px));transform:translate(-50%);padding:4px 11px;border-radius:99px;background:#101822cc;font-size:12px;font-weight:900}.boost-meter{position:absolute;left:50%;bottom:max(62px,calc(env(safe-area-inset-bottom) + 48px));transform:translate(-50%);width:min(210px,35vw);height:19px;padding:3px;border:2px solid #fff;background:#101822dd;border-radius:10px;overflow:hidden}.boost-meter i{display:block;height:100%;background:linear-gradient(90deg,#61d6a7,#ffef6e);border-radius:5px}.boost-meter span{position:absolute;inset:1px 0;text-align:center;font-size:10px;font-weight:950;color:#101822;z-index:1}.boost-button{display:none;pointer-events:auto;position:absolute;right:max(36px,env(safe-area-inset-right));bottom:max(162px,calc(env(safe-area-inset-bottom) + 150px));width:86px;height:64px;padding:4px;margin:0;border-radius:50%;background:#ffef6e;font-size:14px}.boost-button.active{transform:translateY(3px);box-shadow:1px 2px 0 var(--ink);background:var(--mint)}.hud-actions{pointer-events:auto;position:absolute;right:max(8px,env(safe-area-inset-right));top:max(4px,env(safe-area-inset-top));display:flex}.hud-actions button{min-width:48px;padding:7px 12px;font-size:15px}.hint{position:absolute;bottom:max(14px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);background:#101822e8;border:2px solid #fff;border-radius:12px;padding:10px 16px;max-width:94%;text-align:center;display:flex;align-items:center;gap:10px}.lesson{font-weight:900;color:#ffef6e;white-space:nowrap}.tutorial-skip{pointer-events:auto;font-size:13px;padding:5px 9px;margin:0;box-shadow:2px 2px 0 var(--ink);white-space:nowrap}.reticle{position:absolute;left:50%;top:50%;width:12px;height:12px;border:2px solid white;border-radius:50%;transform:translate(-50%,-50%)}.progress-wrap{position:absolute;left:16px;top:12px;width:min(250px,30vw);padding:7px 10px 9px;background:#101822dd;border:2px solid white;border-radius:12px}.progress-copy{font-size:12px;font-weight:850;margin-bottom:5px;text-align:center}.progress{width:100%;height:10px;background:#222;border-radius:8px;overflow:hidden}.progress i{display:block;height:100%;background:#61d6a7}.joystick{display:none;pointer-events:auto;position:absolute;left:max(20px,env(safe-area-inset-left));bottom:max(18px,env(safe-area-inset-bottom));width:144px;text-align:center;user-select:none;touch-action:none}.joystick-look{left:auto;right:max(20px,env(safe-area-inset-right))}.fullscreen-menu{font-size:16px;padding:8px 16px}.fullscreen-compact{font-size:13px!important;padding:7px 10px!important}.fullscreen-status{min-height:1.4em;max-width:560px;margin:4px auto;text-align:center;font-size:13px}.hud>.fullscreen-status:not(:empty){position:absolute;top:max(58px,calc(env(safe-area-inset-top) + 52px));right:max(10px,env(safe-area-inset-right));width:min(340px,54vw);padding:7px 10px;border:2px solid #fff;border-radius:10px;background:#101822e8}.joystick-label{font-size:10px;font-weight:950;letter-spacing:.08em;text-shadow:0 2px 4px #000;margin-bottom:3px}.joystick-base{position:relative;width:124px;height:124px;margin:auto;border-radius:50%;border:4px solid #fff;background:radial-gradient(circle,#ffffff18 0 15%,#162331dc 16% 100%);box-shadow:0 5px 18px #0009,inset 0 0 0 3px #61d6a766}.joystick-base:before,.joystick-base:after{content:"";position:absolute;background:#fff4;left:15%;right:15%;height:2px;top:50%}.joystick-base:after{top:15%;bottom:15%;left:50%;width:2px;height:auto}.joystick-knob{position:absolute;left:50%;top:50%;width:54px;height:54px;transform:translate(-50%,-50%);border:4px solid white;border-radius:50%;background:#ff5964;box-shadow:0 4px #761e2a,0 6px 12px #0008;pointer-events:none}.replay{position:absolute;left:50%;top:14%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;padding:10px 24px;border:2px solid #ffef6e;border-radius:8px;background:#101822df;letter-spacing:.12em}.replay b{color:#ffef6e;font-size:clamp(20px,3vw,34px)}.replay span{font-size:11px;letter-spacing:.04em}.pause-screen{background:#101822bb}.large{font-size:125%}.rotate{display:none}@media(orientation:portrait)and (max-width:700px){.vehicle-grid{grid-template-columns:repeat(2,minmax(130px,1fr))}.vehicle-card{min-height:145px}.joystick{bottom:max(76px,env(safe-area-inset-bottom))}.hint{bottom:max(14px,env(safe-area-inset-bottom))}.boost-button{bottom:max(218px,calc(env(safe-area-inset-bottom) + 205px));right:22px}.progress-wrap{top:max(62px,calc(env(safe-area-inset-top) + 54px));width:min(220px,48vw)}}@media(max-height:420px){button,select{padding:7px 16px;margin:3px}.panel{padding:12px}h1{margin-bottom:14px}.joystick{width:118px;left:max(12px,env(safe-area-inset-left));bottom:8px}.boost-button{right:max(132px,calc(env(safe-area-inset-right) + 120px));bottom:65px;width:72px;height:52px}.boost-meter{bottom:44px}.joystick-look{left:auto;right:max(12px,env(safe-area-inset-right))}.joystick-base{width:104px;height:104px}.joystick-knob{width:46px;height:46px}.hint{bottom:6px;max-width:54%;font-size:12px}.level{font-size:13px;padding:6px 12px}.progress-wrap{width:190px}}@media(hover:none),(pointer:coarse),(max-height:500px)and (max-width:1000px){.joystick,.boost-button{display:block}}
