*{margin:0;padding:0;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}body,html{width:100%;height:100%;overflow:hidden;background-color:#050505}#canvas-container{width:100%;height:100%;display:block}.start-card{text-align:center;background:#0f172abf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);padding:30px 45px;border-radius:24px;box-shadow:0 20px 40px #0009;pointer-events:auto}.game-title{color:#f8fafc;font-size:28px;font-weight:800;letter-spacing:1px;margin-bottom:6px}.game-subtitle{color:#94a3b8;font-size:14px;margin-bottom:24px}.start-btn{background:#10b981;color:#fff;border:none;padding:16px 36px;font-size:16px;font-weight:800;border-radius:9999px;cursor:pointer;letter-spacing:1px;box-shadow:0 10px 20px #10b9814d;transition:transform .15s ease,background .2s ease;pointer-events:auto}.start-btn:hover{background:#059669;transform:scale(1.03)}.start-btn:active{transform:scale(.97)}#ui-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:20px;z-index:10}.controls-hint{position:absolute;bottom:15px;left:20px;background:#0f172abf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);color:#94a3b8;padding:8px 14px;border-radius:8px;font-size:11px;line-height:1.4;pointer-events:auto;z-index:100}.controls-hint b{color:#f8fafc}.action-prompt{position:absolute;bottom:25px;left:50%;transform:translate(-50%);display:none;align-items:center;justify-content:center;z-index:100;pointer-events:none}.keycap-icon{background:linear-gradient(135deg,#1e293b,#0f172a);color:#38bdf8;border:2px solid #475569;border-bottom:5px solid #334155;width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:900;font-size:22px;box-shadow:0 10px 25px #0009;text-shadow:0 2px 4px rgba(0,0,0,.4)}.vehicle-selector-panel{position:absolute;top:20px;left:20px;background:#0f172ad9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);padding:12px 18px;border-radius:12px;color:#fff;pointer-events:auto;display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600}.vehicle-selector-panel select{background:#1e293b;color:#fff;border:1px solid #475569;padding:8px 12px;border-radius:8px;outline:none;cursor:pointer}.hud-panel{position:absolute;bottom:15px;right:20px;background:#0f172ad9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);padding:10px 18px;border-radius:14px;color:#fff;display:none;flex-direction:column;align-items:flex-end;pointer-events:none;z-index:100}.speedometer{font-size:26px;font-weight:900;color:#38bdf8}.speed-unit{font-size:11px;color:#94a3b8;font-weight:600}.settings-btn{position:absolute;top:20px;right:20px;background:#0f172ad9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);color:#fff;width:45px;height:45px;border-radius:12px;font-size:20px;cursor:pointer;pointer-events:auto;display:flex;align-items:center;justify-content:center;z-index:1000;transition:background .2s}.settings-btn:hover{background:#1e293bf2}.settings-modal{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10000;display:flex;align-items:center;justify-content:center;pointer-events:auto}.settings-content{background:#0f172a;border:1px solid #334155;border-radius:16px;width:90%;max-width:360px;color:#fff;box-shadow:0 10px 25px #00000080;overflow:hidden}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #1e293b}.settings-header h3{font-size:16px;font-weight:700;letter-spacing:.5px;color:#38bdf8}.close-btn{background:none;border:none;color:#94a3b8;font-size:24px;cursor:pointer}.close-btn:hover{color:#fff}.settings-body{padding:20px}.checkbox-label{display:flex;align-items:center;gap:12px;font-size:15px;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label input{width:20px;height:20px;accent-color:#38bdf8;cursor:pointer}#start-screen{position:fixed;top:0;left:0;width:100vw;height:100vh;background:radial-gradient(circle,#0f172a,#020617);z-index:99999;display:flex;align-items:center;justify-content:center;pointer-events:auto;transition:opacity .4s ease,visibility .4s ease}#start-screen.hidden{opacity:0;visibility:hidden;pointer-events:none}.start-card{text-align:center;background:#0f172abf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);padding:25px 35px;border-radius:20px;box-shadow:0 20px 40px #0009;pointer-events:auto}.game-title{color:#f8fafc;font-size:24px;font-weight:800;letter-spacing:1px;margin-bottom:6px}.game-subtitle{color:#94a3b8;font-size:13px;margin-bottom:20px}.start-btn{background:#10b981;color:#fff;border:none;padding:14px 30px;font-size:15px;font-weight:800;border-radius:9999px;cursor:pointer;letter-spacing:1px;box-shadow:0 10px 20px #10b9814d;pointer-events:auto;touch-action:manipulation}.start-btn:active{transform:scale(.96)}#ui-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:10px;z-index:10}.vehicle-selector-panel{position:absolute;top:10px;left:10px;background:#0f172ad9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);padding:8px 12px;border-radius:10px;color:#fff;pointer-events:auto;display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:600}.vehicle-selector-panel select{background:#1e293b;color:#fff;border:1px solid #475569;padding:6px 10px;border-radius:6px;outline:none;font-size:12px}.hud-panel{position:absolute;bottom:10px;right:15px;background:#0f172ad9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);padding:8px 14px;border-radius:12px;color:#fff;display:none;flex-direction:column;align-items:flex-end;pointer-events:none;z-index:100}.speedometer{font-size:22px;font-weight:900;color:#38bdf8}.speed-unit{font-size:10px;color:#94a3b8;font-weight:600}.settings-btn{position:absolute;top:10px;right:10px;background:#0f172ad9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);color:#fff;width:40px;height:40px;border-radius:10px;font-size:18px;cursor:pointer;pointer-events:auto;display:flex;align-items:center;justify-content:center;z-index:1000}.settings-modal{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000bf;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10000;display:flex;align-items:center;justify-content:center;pointer-events:auto}.settings-content{background:#0f172a;border:1px solid #334155;border-radius:16px;width:85%;max-width:320px;color:#fff;box-shadow:0 10px 25px #00000080;overflow:hidden}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid #1e293b}.settings-header h3{font-size:15px;font-weight:700;color:#38bdf8}.close-btn{background:none;border:none;color:#94a3b8;font-size:22px}.settings-body{padding:18px}.checkbox-label{display:flex;align-items:center;gap:10px;font-size:14px;-webkit-user-select:none;user-select:none}.checkbox-label input{width:22px;height:22px;accent-color:#38bdf8}#orientation-warning{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:#090d16;color:#fff;z-index:9999999;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;pointer-events:auto}@media screen and (orientation:portrait){#orientation-warning{display:flex!important}}body:not(.game-started) div[id*=joystick],body:not(.game-started) div[class*=joystick],body:not(.game-started) canvas[id*=joystick],body:not(.game-started) #mobile-action-btn,body:not(.game-started) button[id*=mobile],body:not(.game-started) div[style*="position: absolute"]:not(#start-screen):not(#orientation-warning):not(#settings-modal){display:none!important}@media screen and (orientation:portrait){div[id*=joystick],div[class*=joystick],canvas[id*=joystick],div[class*=touch],div[id*=touch],#mobile-action-btn,button[id*=mobile],.joystick-container,.touch-controls{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}}
