:root{color-scheme:dark;font-family:Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden;background:#0a0a0a;color:#fafafa}.title-screen{position:relative;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.title-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 0%,#1a0a2e 0%,transparent 60%),radial-gradient(ellipse at 80% 80%,#0a1a3e 0%,transparent 50%),linear-gradient(180deg,#0a0a1a,#0f0f2a,#1a0a2e);z-index:0}.title-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,transparent,transparent 49%,rgba(255,100,0,.03) 49%,rgba(255,100,0,.03) 51%,transparent 51%),repeating-linear-gradient(0deg,transparent,transparent 49%,rgba(255,100,0,.02) 49%,rgba(255,100,0,.02) 51%,transparent 51%);background-size:80px 80px;animation:gridMove 4s linear infinite}@keyframes gridMove{0%{transform:translateY(0)}to{transform:translateY(80px)}}.title-bg:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40%;background:linear-gradient(0deg,rgba(255,80,0,.15) 0%,transparent 100%)}.title-content{position:relative;z-index:1;text-align:center;padding:2rem;max-width:600px;width:100%}.game-title{font-size:clamp(3rem,10vw,6rem);font-weight:900;letter-spacing:.15em;background:linear-gradient(180deg,#f60,#f20 60%,#c00);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none;filter:drop-shadow(0 0 30px rgba(255,80,0,.5));margin-bottom:.25rem;animation:titlePulse 3s ease-in-out infinite}@keyframes titlePulse{0%,to{filter:drop-shadow(0 0 30px rgba(255,80,0,.5))}50%{filter:drop-shadow(0 0 50px rgba(255,80,0,.8))}}.subtitle{font-size:1.1rem;color:#ffc896b3;margin-bottom:2rem;font-style:italic}.menu-stats{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem;font-size:1rem;color:#fc0;font-weight:600}.menu-buttons{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.menu-btn{padding:.9rem 2rem;font-size:1.1rem;font-weight:700;border:2px solid rgba(255,100,0,.4);border-radius:.5rem;background:#ff64001a;color:#f84;cursor:pointer;transition:all .2s;letter-spacing:.1em;font-family:inherit}.menu-btn:hover{background:#ff640040;border-color:#f60;color:#fa6;transform:translateY(-2px);box-shadow:0 4px 20px #ff50004d}.menu-btn.primary{background:linear-gradient(135deg,#f60,#c30);border-color:#f80;color:#fff;font-size:1.3rem}.menu-btn.primary:hover{background:linear-gradient(135deg,#f80,#e40);box-shadow:0 4px 30px #ff500080}.menu-btn.secondary{background:#ffffff0d;border-color:#fff3;color:#aaa}.menu-btn.secondary:hover{background:#ffffff1a;color:#ddd}.controls-panel{background:#0009;border:1px solid rgba(255,100,0,.2);border-radius:.75rem;padding:1.25rem;margin-bottom:1.5rem;text-align:left}.controls-panel h3{color:#f84;margin-bottom:.75rem;font-size:1rem;text-align:center}.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1.5rem;font-size:.85rem;color:#ccc}kbd{display:inline-block;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:.1rem .4rem;font-size:.8rem;font-family:monospace;color:#fc0;margin-right:.25rem}.missions-preview{background:#0006;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;padding:1rem;text-align:left}.missions-preview h3{color:#f84;margin-bottom:.5rem;font-size:.95rem;text-align:center}.mission-item{display:flex;justify-content:space-between;align-items:center;padding:.4rem 0;font-size:.85rem;color:#bbb;border-bottom:1px solid rgba(255,255,255,.05)}.mission-item.completed{color:#4f4}.mission-reward{color:#fc0;font-weight:600;font-size:.8rem}.garage-screen{width:100vw;height:100vh;background:linear-gradient(180deg,#0a0a1a,#1a1a2a);padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;align-items:center}.screen-title{font-size:2rem;font-weight:800;color:#f84;margin-bottom:.25rem;letter-spacing:.1em}.screen-subtitle{font-size:1.1rem;color:#fc0;margin-bottom:1.5rem}.bike-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;width:100%;max-width:1000px;margin-bottom:1.5rem}.bike-card{background:#ffffff0a;border:2px solid rgba(255,255,255,.1);border-radius:.75rem;padding:1rem;cursor:pointer;transition:all .2s;text-align:center}.bike-card:hover{border-color:#ff640066;background:#ff64000d;transform:translateY(-3px)}.bike-card.selected{border-color:#f60;background:#ff64001a;box-shadow:0 0 20px #ff50004d}.bike-card.locked{opacity:.5}.bike-preview{width:100%;height:80px;border-radius:.5rem;display:flex;align-items:center;justify-content:center;margin-bottom:.75rem}.bike-icon{font-size:2.5rem}.bike-card h3{font-size:1rem;font-weight:700;color:#fff;margin-bottom:.5rem}.bike-stats{margin-bottom:.75rem}.stat{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:.75rem;color:#aaa}.stat span{width:50px;text-align:right}.stat-bar{flex:1;height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.stat-fill{height:100%;border-radius:3px;transition:width .3s}.bike-price{font-weight:700}.owned{color:#4f4;font-size:.85rem}.price{color:#fc0;font-size:1rem}.back-btn{margin-top:auto}.mode-screen{width:100vw;height:100vh;background:linear-gradient(180deg,#0a0a1a,#1a1a2a);padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;align-items:center}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;width:100%;max-width:700px;margin-bottom:2rem}.mode-card{background:#ffffff0a;border:2px solid rgba(255,255,255,.1);border-radius:.75rem;padding:1.25rem;cursor:pointer;transition:all .2s;text-align:center}.mode-card:hover{border-color:#ff640066;transform:translateY(-3px)}.mode-card.selected{border-color:#f60;background:#ff64001a;box-shadow:0 0 20px #ff50004d}.mode-icon{font-size:2.5rem;display:block;margin-bottom:.5rem}.mode-card h3{font-size:1rem;font-weight:700;color:#fff;margin-bottom:.25rem}.mode-card p{font-size:.8rem;color:#888}.section-title{font-size:1.1rem;color:#f84;margin-bottom:.75rem;font-weight:700}.env-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;width:100%;max-width:700px;margin-bottom:2rem}.env-card{padding:1rem;border-radius:.5rem;cursor:pointer;transition:all .2s;text-align:center;border:2px solid transparent}.env-card:hover{transform:translateY(-2px);box-shadow:0 4px 15px #00000080}.env-card.selected{border-color:#f60;box-shadow:0 0 15px #ff640066}.env-name{font-size:.85rem;font-weight:700;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5)}.mode-actions{display:flex;gap:1rem;align-items:center}.game-container{position:relative;width:100vw;height:100vh;overflow:hidden;background:#000}.game-canvas{display:block;width:100%;height:100%}.touch-controls{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:1rem;pointer-events:none}.touch-left,.touch-right{display:flex;gap:.5rem;pointer-events:auto}.touch-btn{width:60px;height:60px;border-radius:50%;border:2px solid rgba(255,255,255,.3);background:#0006;color:#fff;font-size:1.2rem;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;user-select:none;-webkit-user-select:none;touch-action:manipulation}.touch-btn:active{background:#ff640080;border-color:#f60}.touch-btn.gas{background:#0096004d;border-color:#0f06}.touch-btn.gas:active{background:#00c80080}.touch-btn.brake{background:#9600004d;border-color:#f006}.touch-btn.brake:active{background:#c8000080}.touch-btn.nitro-btn{background:#0064c84d;border-color:#0096ff66;width:50px;height:50px;font-size:.8rem}.touch-btn.nitro-btn:active{background:#0096ff80}.touch-btn.stunt-btn{background:#c864004d;border-color:#ff960066;width:50px;height:50px;font-size:.8rem}.touch-btn.stunt-btn:active{background:#ff960080}@media(max-width:600px){.mode-grid{grid-template-columns:1fr}.env-grid,.bike-grid{grid-template-columns:repeat(2,1fr)}.control-grid{grid-template-columns:1fr}.touch-btn{width:50px;height:50px;font-size:1rem}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#0000004d}::-webkit-scrollbar-thumb{background:#ff64004d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ff640080}
