.game-bg{background:linear-gradient(135deg,#173b5c,#2c3e50);position:relative}.bg-patterns{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.1;background-image:linear-gradient(45deg,#000 25%,transparent 25%,transparent 75%,#000 75%,#000),linear-gradient(45deg,#000 25%,transparent 25%,transparent 75%,#000 75%,#000);background-size:60px 60px;background-position:0 0,30px 30px}.text-shadow-sm{text-shadow:2px 2px 5px rgba(0,0,0,.4)}.text-white-75{color:#ffffffe6!important}.z-index-1{z-index:1;position:relative}.challenge-wrapper{max-width:800px;margin:0 auto;position:relative;min-height:60vh}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes countdownPop{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}@keyframes carBounce{0%,to{transform:translateY(-50%)}50%{transform:translateY(calc(-50% - 3px))}}@keyframes roadMove{0%{background-position:0 0}to{background-position:40px 0}}@keyframes flagWave{0%,to{transform:rotate(0)}25%{transform:rotate(5deg)}75%{transform:rotate(-5deg)}}@keyframes confettiFall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}@keyframes trophyBounce{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-10px) rotate(-5deg)}75%{transform:translateY(-10px) rotate(5deg)}}@keyframes glowPulse{0%,to{box-shadow:0 20px 60px #0006,0 0 20px #ffd7004d}50%{box-shadow:0 20px 60px #0006,0 0 40px #ffd70099}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shakeWrong{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}.screen{display:none;width:100%;max-width:800px;margin:0 auto}.screen.active{display:block;animation:slideUp .6s ease-out}.tutorial-card{background:#fffffff7;border-radius:24px;padding:40px 36px;text-align:center;box-shadow:0 20px 60px #0006}.tutorial-icon{font-size:52px;margin-bottom:8px}.tutorial-title{font-size:28px;font-weight:700;color:#1a1a2e;margin-bottom:4px}.tutorial-subtitle{color:#4ecdc4;font-weight:600;font-size:15px;margin-bottom:20px}.tutorial-box{background:linear-gradient(135deg,#f0f7ff,#e8f4fd);border-radius:16px;padding:20px;margin-bottom:24px;text-align:left;border:2px solid #d0e8f5}.tutorial-box p{color:#2c3e50;font-size:15px;line-height:1.7;margin:0}.tutorial-cars{display:flex;justify-content:center;gap:30px;margin-bottom:24px}.tutorial-car-label{text-align:center}.tutorial-car-label p{font-size:13px;color:#666;margin-top:6px;font-weight:600;margin-bottom:0}.btn-start{background:linear-gradient(135deg,gold,orange);border:none;border-radius:16px;padding:16px 48px;font-size:20px;font-weight:700;color:#1a1a2e;cursor:pointer;box-shadow:0 6px 20px #ffa50066;transition:transform .2s}.btn-start:hover{transform:scale(1.05)}.btn-start:active{transform:scale(.98)}#countdown-screen{align-items:center;justify-content:center;min-height:60vh}#countdown-screen.active{display:flex!important}.countdown-number{font-size:120px;font-weight:800;color:gold;text-shadow:0 4px 20px rgba(0,0,0,.3);animation:countdownPop .5s ease-out}.countdown-go{font-size:48px;color:#4ecdc4;font-weight:800;text-shadow:0 4px 20px rgba(0,0,0,.3);animation:countdownPop .5s ease-out}.qm{position:absolute;inset:0;z-index:200;display:none;align-items:center;justify-content:center;background:#0a0e27d9;padding:16px;border-radius:12px}.qm.active{display:flex}.qc{background:#fffffff7;border-radius:18px;padding:26px 22px;max-width:420px;width:100%;text-align:center;box-shadow:0 16px 50px #00000080;animation:slideUp .4s ease-out}.ql{color:#4ecdc4;font-size:12px;font-weight:700;letter-spacing:2px;margin-bottom:8px;text-transform:uppercase}.qt{color:#1a1a2e;font-size:16px;font-weight:600;line-height:1.6;margin-bottom:20px}.qbs{display:flex;flex-direction:column;gap:10px;justify-content:center}.qb{padding:12px 16px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;background:#fff;border:2px solid #dee2e6;color:#333;text-align:left}.qb:hover:not(:disabled){border-color:#4ecdc4;background:#f0fdfa;transform:translateY(-2px)}.qb.correct{border-color:#2ecc71;background:#2ecc71;color:#fff}.qb.wrong{border-color:#ff6b6b;background:#ff6b6b;color:#fff}.qb:disabled{opacity:.7;cursor:not-allowed}.fm{position:absolute;inset:0;z-index:210;display:none;align-items:center;justify-content:center;background:#0a0e27b3;padding:16px;border-radius:12px}.fm.active{display:flex}.fbb{border-radius:18px;padding:22px;text-align:center;max-width:380px;width:100%;box-shadow:0 10px 40px #0006}.fbb.ok{background:linear-gradient(135deg,#4ecdc4,#2ecc71);animation:slideUp .4s ease-out}.fbb.no{background:linear-gradient(135deg,#ff6b6b,#ee5a24);animation:slideUp .4s ease-out,shakeWrong .5s ease-out .1s}.fbb .fi{font-size:34px;margin-bottom:4px}.fbb .ft{color:#fff;font-size:15px;font-weight:600;line-height:1.5}.mc{position:absolute;bottom:8px;left:50%;transform:translate(-50%);z-index:50;display:flex;gap:20px;align-items:center}.mb{width:56px;height:56px;border-radius:14px;background:#fff3;border:2px solid rgba(255,255,255,.4);color:#fff;font-size:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;backdrop-filter:blur(4px);user-select:none}.mb:active{background:#ffffff80}.gameover-card{background:#fffffff7;border-radius:24px;padding:40px 36px;text-align:center;box-shadow:0 20px 60px #0006;position:relative}.gameover-card.winner{animation:glowPulse 2s ease-in-out infinite}.trophy-container{animation:trophyBounce 1.5s ease-in-out infinite}.gameover-title{font-size:32px;color:#1a1a2e;margin:12px 0 8px;font-weight:700}.gameover-score-win{color:#4ecdc4;font-size:20px;font-weight:700;margin-bottom:16px}.gameover-score-lose{color:#ff6b6b;font-size:18px;font-weight:700;margin-bottom:16px}.gameover-summary{display:flex;justify-content:center;gap:30px;margin-bottom:20px;padding:16px;background:#f8f9fa;border-radius:14px}.gameover-summary-item{text-align:center}.gameover-summary-item p{margin-top:4px;font-weight:700;margin-bottom:0}.gameover-summary-item p.green{color:#4ecdc4}.gameover-summary-item p.red{color:#ff6b6b}.reflection-box{background:linear-gradient(135deg,#f0f7ff,#e8f4fd);border-radius:14px;padding:16px;margin-bottom:24px;border:2px solid #d0e8f5}.reflection-box p{color:#2c3e50;font-size:14px;font-weight:600;line-height:1.6;font-style:italic;margin:0}.confetti-container{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:10}.confetti-piece{position:absolute;top:-20px;border-radius:2px}
