.overlay{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#18182a 80%,#0a0a18),repeating-linear-gradient(135deg,#23233a 0 2px,transparent 2px 40px);z-index:10;min-height:100vh;min-width:100vw;overflow-y:auto;overflow-x:hidden;display:grid;place-items:center;animation:bg-move 18s linear infinite}@keyframes bg-move{0%{background-position:0 0,0 0}to{background-position:0 0,200px 400px}}@media (max-width: 768px){.overlay{animation:none}}html,body{width:100vw;height:100vh;margin:0;padding:0;overflow:hidden!important;box-sizing:border-box}.retro-title{font-family:Orbitron,Courier New,Courier,monospace;font-size:3.2rem;color:#0ff;text-shadow:0 0 8px #0ff8,0 0 24px #0ff8,2px 2px 0 #222,0 2px 12px #fff4;letter-spacing:2.5px;margin-bottom:.5em;text-align:center;animation:neon-flicker 2.5s infinite alternate}@keyframes neon-flicker{0%,to{text-shadow:0 0 8px #0ff8,0 0 24px #0ff8,2px 2px 0 #222,0 2px 12px #fff4}45%{text-shadow:0 0 12px #0ff,0 0 32px #0ff,2px 2px 0 #222,0 2px 12px #fff4}50%{text-shadow:0 0 2px #0ff,0 0 8px #0ff,2px 2px 0 #222,0 2px 12px #fff4}55%{text-shadow:0 0 16px #0ff,0 0 40px #0ff,2px 2px 0 #222,0 2px 12px #fff4}}#mainMenu .subtitle{font-family:Orbitron,Courier New,Courier,monospace;color:#fff;font-size:1.2rem;margin-bottom:2em;letter-spacing:1.2px;opacity:.85;text-shadow:0 0 6px #0ff6,0 0 2px #fff4;text-align:center}#levelSelect{align-items:flex-start;justify-content:flex-start;padding-top:3vh;padding-bottom:3vh;overflow-y:auto;position:relative}#backToMenuBtn{display:block;margin:32px auto 0;position:static;left:auto;transform:none;bottom:auto;z-index:auto;min-width:140px;max-width:90vw;padding:10px 20px;font-size:.9rem;box-shadow:0 0 18px #0ff8;text-align:center}@media (max-width: 768px){#backToMenuBtn{font-size:1.1rem;min-width:140px;padding:12px 18px;margin-top:32px}.retro-title{font-size:2.4rem;margin-bottom:.4em}#mainMenu .subtitle{font-size:1rem;margin-bottom:1.5em}.menu-btn{font-size:1.1rem;padding:14px 30px;margin:8px 0}.mode-btn-row{flex-direction:column!important;align-items:center;gap:12px;width:80%;max-width:350px;margin:1.5em auto}.mode-btn-row .menu-btn{width:100%;box-sizing:border-box}}#levelSelect .retro-title{margin-bottom:1.5em;text-align:center;width:100%}#levelCards{display:flex;flex-direction:column;align-items:center;gap:18px;width:100%;max-width:800px;margin:0 auto 2em;max-height:75vh;overflow-y:auto;padding-right:8px;scrollbar-width:thin;scrollbar-color:#0ff8 rgba(10,20,40,.5)}#levelCards::-webkit-scrollbar{width:6px}#levelCards::-webkit-scrollbar-track{background:#0a142880;border-radius:3px}#levelCards::-webkit-scrollbar-thumb{background:#0ff8;border-radius:3px}.level-card{background:#141428fa;border:2.5px solid #0ff;border-radius:18px;box-shadow:0 0 18px #0ff4,0 2px 12px #000a;padding:22px 28px 18px;margin:0 auto;width:100%;color:#fff;font-family:Orbitron,Courier New,Courier,monospace;font-size:1.08rem;letter-spacing:1.1px;text-shadow:0 0 6px #0ff2,0 2px 2px #222a;transition:box-shadow .2s,border-color .2s,transform .1s;position:relative;overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.level-card.unlocked{cursor:pointer}.level-card.unlocked:hover,.level-card.unlocked:focus{box-shadow:0 0 32px #0ff8,0 2px 18px #000a;border-color:#ff0;transform:scale(1.03)}.level-card.locked{opacity:.5;filter:grayscale(.7);cursor:not-allowed}.level-card-header{font-size:1.3em;color:#0ff;font-weight:700;margin-bottom:.3em;text-shadow:0 0 8px #0ff8,0 2px 2px #222a}.level-card-desc{color:#fff;margin-bottom:.2em;font-size:1.05em;opacity:.92}.level-card-obj{color:#ff0;font-weight:700;margin-bottom:.2em;font-size:1.04em;opacity:.95}.level-card-unlock{color:#0ff;font-size:.98em;margin-bottom:.2em;opacity:.85}.level-card-score{color:#fff;font-size:.98em;opacity:.85;margin-top:.2em}.menu-btn{font-family:Orbitron,Courier New,Courier,monospace;font-size:1.25rem;padding:16px 38px;margin:10px 0;border:none;border-radius:16px;background:linear-gradient(90deg,#18182a 60%,#0ff);color:#fff;font-weight:700;letter-spacing:1.5px;box-shadow:0 0 12px #0ff8,0 2px 8px #0008;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s,transform .1s;outline:none;border:2.5px solid #0ff;text-shadow:0 0 6px #0ff8,0 2px 2px #222a}.menu-btn:focus-visible{outline:2px solid #fff;outline-offset:3px}.menu-btn:hover,.menu-btn:focus{background:linear-gradient(90deg,#0ff,#18182a);color:#ff0;box-shadow:0 0 24px #ff08,0 2px 12px #000a;transform:scale(1.06)}.menu-btn.active,.difficulty-btn.active{background:linear-gradient(90deg,#0ff,#18182a);color:#ff0;box-shadow:0 0 10px #0ff,0 0 20px #0ff,0 0 5px #fff inset,0 2px 12px #000a;border-color:#fff;transform:scale(1.06)}.menu-btn:active{background:linear-gradient(90deg,#0aa,#18182a);color:#fff;box-shadow:0 0 8px #0ff8,0 2px 4px #0008;transform:scale(.98)}.game-over-back-btn{display:none;position:absolute!important;top:20px!important;right:20px!important;z-index:1000!important;font-size:.8rem!important;padding:5px 12px!important;min-width:auto!important;font-family:Orbitron,Courier New,Courier,monospace;border-radius:16px;background:linear-gradient(90deg,#18182a 60%,#0ff);color:#fff;font-weight:700;letter-spacing:1.5px;box-shadow:0 0 12px #0ff8,0 2px 8px #0008;cursor:pointer;border:2.5px solid #0ff;text-shadow:0 0 6px #0ff8,0 2px 2px #222a;margin:0!important}.game-over-back-btn.visible{display:block!important}#game-area{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100vw;min-height:100vh;box-sizing:border-box;position:relative;z-index:1;background:#0f0f1a}#gameCanvas,canvas{display:block;position:relative;width:100vw;max-width:100vw;margin:0 auto;background-image:url(/images/background.webp);background-size:cover;background-repeat:no-repeat;background-position:center;z-index:2;box-sizing:border-box;max-height:100vh;transition:max-height .3s ease-out}.story-overlay{position:absolute;top:56px;left:50%;transform:translate(-50%);min-width:260px;max-width:90vw;background:#0a1428eb;border:2.5px solid #0ff;border-radius:18px;box-shadow:0 0 18px #0ff8,0 2px 12px #000a;padding:18px 28px 12px;z-index:20;display:flex;flex-direction:column;align-items:center;font-family:Orbitron,Courier New,Courier,monospace;color:#fff;text-align:center;letter-spacing:1.2px;opacity:.98}.story-overlay #levelInfo{font-size:1.4em;color:#0ff;font-weight:700;margin-bottom:.2em;text-shadow:0 0 8px #0ff8,0 2px 2px #222a;letter-spacing:2px}.story-overlay #narrativeInfo{font-size:.95em;color:#ccc;margin-bottom:.4em;line-height:1.4;font-style:italic;text-shadow:0 0 4px #fff2;max-width:480px}.story-overlay #objectiveInfo{font-size:1.1em;color:#ff0;font-weight:700;margin-bottom:.2em;text-shadow:0 0 6px #ff08,0 2px 2px #222a;letter-spacing:1.2px}.story-overlay #timerInfo{font-size:1.05em;color:#fff;margin-bottom:.2em;text-shadow:0 0 6px #0ff4,0 2px 2px #222a;letter-spacing:1.1px}.story-overlay #bossHealthBar{margin-top:.3em;width:100%}@media (max-width: 768px){.story-overlay{min-width:0;max-width:95vw;padding:8px 5vw;font-size:.9em;top:5px}.story-overlay #levelInfo{font-size:1em;letter-spacing:1px;margin-bottom:.1em;line-height:1.1}.story-overlay #objectiveInfo{font-size:.9em;margin-bottom:.1em;line-height:1.1}.story-overlay #timerInfo{font-size:.85em;line-height:1.1}}#arcadeDifficultyContainer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;margin:0 auto 1.5em;padding:24px 32px 20px;background:#0a1428fa;border:2.5px solid #0ff;border-radius:20px;box-shadow:0 0 24px #0ff8,0 2px 12px #000a;max-width:340px;min-width:220px;animation:fadeInDropdown .25s;z-index:20;position:relative}@keyframes fadeInDropdown{0%{opacity:0;transform:translateY(-18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}#arcadeDifficultyContainer .difficulty-btn{width:100%;margin:.25em 0;font-size:1.15rem;box-shadow:0 0 14px #0ff8,0 2px 8px #000a;border-width:2.5px;border-radius:14px;background:linear-gradient(90deg,#18182a 60%,#0ff);transition:background .2s,color .2s,box-shadow .2s,transform .1s}#arcadeDifficultyContainer .difficulty-btn:hover,#arcadeDifficultyContainer .difficulty-btn:focus{background:linear-gradient(90deg,#0ff,#18182a);color:#ff0;box-shadow:0 0 24px #ff08,0 2px 12px #000a;transform:scale(1.04)}#powerupsSection{background:#0a0f1ef2;border:3px solid #0ff;border-radius:20px;box-shadow:0 0 15px #0ff,0 0 30px #0ff,inset 0 0 10px #0ff3;padding:30px 35px 25px;margin:8em auto 2em;width:90%;max-width:550px;color:#fff;font-family:Orbitron,Courier New,Courier,monospace;font-size:1rem;letter-spacing:1px;text-align:left;opacity:1;display:none}.powerups-title{font-size:2rem;color:#0ff;text-shadow:0 0 8px #0ff,0 0 20px #0ff;margin-bottom:1.2em;text-align:center;font-weight:700;letter-spacing:1.5px;padding-bottom:.5em;border-bottom:1px solid rgba(0,255,255,.3)}#powerupsList{list-style:none;padding:0;margin:0}.powerup-item{display:flex;align-items:flex-start;margin-bottom:1.5em;line-height:1.4}.powerup-color-indicator{display:inline-block;width:16px;height:16px;border-radius:50%;margin-right:15px;flex-shrink:0;margin-top:4px;box-shadow:0 0 6px currentColor}.powerup-name{font-weight:700;color:#adff2f;font-size:1.2em;margin-bottom:.3em;text-shadow:0 0 4px rgba(173,255,47,.5);display:block}.powerup-description{color:#e0e0e0;font-size:1em}#shop-container.shop-overlay{background:radial-gradient(ellipse at center,#101020 70%,#050510),repeating-linear-gradient(145deg,#1a1a2f 0 1px,transparent 1px 30px);animation:bg-move 20s linear infinite;padding:20px;box-sizing:border-box;color:#fff;font-family:Orbitron,monospace;position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow-y:auto;z-index:100}.shop-header{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:900px;padding:10px 20px;margin-bottom:25px;border-bottom:2px solid rgba(0,255,255,.3);box-sizing:border-box}.shop-title{font-size:2.5rem;color:#0ff;text-shadow:0 0 8px #0ff,0 0 15px #0ff;margin:0}.shop-header-right{display:flex;align-items:center;gap:20px}.coins-display{font-size:1.4rem;color:#eee;text-shadow:0 0 5px #0ff;background-color:#0000004d;padding:8px 15px;border-radius:8px;border:1px solid rgba(0,255,255,.4)}.close-button{background-color:#101520;color:#0ff;border:2px solid #0ff;border-radius:10px;padding:10px 20px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:background-color .2s,box-shadow .2s;box-shadow:0 0 8px #00ffff80}.close-button:hover{background-color:#1a2030;box-shadow:0 0 15px #0ffc}.shop-section{width:100%;max-width:900px;margin-bottom:30px;padding:0 15px;box-sizing:border-box}.section-title{font-size:1.8rem;color:#0ff;text-shadow:0 0 6px #0ff;margin-bottom:15px;padding-left:10px;border-left:4px solid #0ff}.item-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:25px;justify-content:center}.item-row{display:flex;gap:20px;overflow-x:auto;padding:10px 0}.shop-item{background-color:#0a1428d9;border:2px solid #08a0a0;border-radius:15px;padding:20px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 0 10px #00b4b44d;transition:transform .2s,box-shadow .2s;min-height:380px;justify-content:space-between}.shop-item:hover{transform:translateY(-5px);box-shadow:0 5px 15px #00dcdc80}.shop-item.selected-item{border-color:#0ff;box-shadow:0 0 15px #0ff,inset 0 0 8px #00ffff4d}.item-image-container{margin-bottom:15px;width:120px;height:120px;display:flex;align-items:center;justify-content:center}.item-image{max-width:100%;max-height:100%;object-fit:contain}.item-name{font-size:1.5rem;color:#0ff;text-shadow:0 0 5px #0ff;margin:0 0 10px}.item-description{font-size:.95rem;color:#ccc;margin:0 0 15px;min-height:40px;line-height:1.4}.item-cost{font-size:1.1rem;color:#fd0;font-weight:700;margin:0 0 15px}.item-button{background:linear-gradient(to bottom,#152535,#101f2f);color:#0ff;border:2px solid #0ff;border-radius:10px;padding:12px 25px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:background .2s,box-shadow .2s,color .2s;width:80%;margin-top:auto;box-shadow:0 0 8px #0ff6;text-align:center;line-height:1.3;display:flex;align-items:center;justify-content:center}.item-button:hover:not(:disabled){background:linear-gradient(to bottom,#1a3045,#152a3f);box-shadow:0 0 15px #00ffffb3;color:#fff}.item-button:disabled{cursor:not-allowed;opacity:.7}.item-button.button-selected{background:#0aa;color:#fff;border-color:#0ff;box-shadow:inset 0 0 8px #0006,0 0 10px #0ff;cursor:default}.item-button.button-insufficient{background:#302020;color:#f88;border-color:#f55;box-shadow:inset 0 0 8px #0006,0 0 10px #f55;cursor:default}@media (max-width: 768px){.shop-header{flex-direction:column;gap:15px;padding:10px;text-align:center}.shop-header-right{justify-content:center;width:100%}.shop-title{font-size:2rem}.coins-display{font-size:1.2rem}.close-button{font-size:1rem;padding:8px 15px}.item-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px}.shop-item{padding:15px;min-height:340px}.item-name{font-size:1.3rem}.item-button{width:90%;font-size:1rem;padding:10px 20px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mobile-input{position:fixed;bottom:0;left:0;width:100%;height:44px;opacity:0;pointer-events:auto;z-index:199;border:none;background:transparent;color:transparent;caret-color:transparent}.mobile-only,#typed-string-display,#mobile-controls{display:none}@media (max-width: 768px){#game-area{display:flex;flex-direction:column;height:100vh;height:100dvh;min-height:0;overflow:hidden}#game-area #gameCanvas,#game-area canvas{flex:1;width:100vw;min-height:0;max-height:none;height:auto!important;margin:0;border-radius:0;z-index:2}.mobile-only{display:flex!important}#typed-string-display{display:block!important;flex-shrink:0;width:100%;text-align:center;font-size:1.25rem;color:#0ff;font-weight:700;background:#0a0a1ef2;padding:10px 0;z-index:100;font-family:Orbitron,Courier New,Courier,monospace;letter-spacing:1.5px;border-top:2px solid #0ff;box-shadow:0 -2px 12px #0ff6;box-sizing:border-box;min-height:44px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#mobile-controls{display:none;flex-shrink:0;width:100%;gap:10px;justify-content:center;z-index:101;padding:10px 12px;padding-bottom:max(10px,env(safe-area-inset-bottom));background:linear-gradient(180deg,#0a0a1efa,#050514);border-top:1px solid #0ff4;box-sizing:border-box}.mobile-btn{padding:14px 0;font-size:1.2rem;background:linear-gradient(135deg,#18182a 40%,#0ff 200%);border:2px solid #0ff;color:#fff;border-radius:12px;font-family:Orbitron,Courier New,Courier,monospace;font-weight:700;box-shadow:0 0 8px #0ff6;transition:background .15s,box-shadow .15s,transform .1s;flex:1;max-width:48%;text-align:center;min-height:48px;-webkit-tap-highlight-color:transparent}.mobile-btn:active{background:linear-gradient(135deg,#0ff,#18182a);color:gold;box-shadow:0 0 16px #ff08;transform:scale(.96)}#gameOverActions{position:static!important;width:100%!important;padding:12px!important;padding-bottom:max(12px,env(safe-area-inset-bottom))!important;background:#0a0a1efa;border-top:2px solid #0ff;pointer-events:auto}#gameOverActions.visible{display:flex!important;flex-wrap:nowrap;gap:10px;justify-content:center}#gameOverActions .menu-btn{flex:1;min-width:0;max-width:33%;font-size:.9rem;padding:12px 8px;pointer-events:auto}.game-over-back-btn.visible{position:static!important;margin:16px auto!important;min-width:140px!important;font-size:1.1rem!important;padding:12px 24px!important}.tab-bar{width:95%;gap:6px;margin-top:1em;margin-bottom:1em;padding:6px;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center}.tab-btn{font-size:.85rem;padding:8px 14px;min-height:36px;flex:0 1 auto;width:auto;max-width:none}.leaderboard-section{margin-top:1.5em;width:95%;padding:1em}.leaderboard-title{font-size:1.5rem;margin-bottom:.6em}.leaderboard-difficulty-tabs{margin-bottom:1em;gap:8px}.leaderboard-tab{padding:6px 15px;font-size:.9rem}.difficulty-select{flex-direction:column!important;align-items:center;gap:10px;margin:1.5em auto;width:80%;max-width:350px}.difficulty-select .difficulty-btn{width:100%;box-sizing:border-box;margin:5px 0}.difficulty-options-container{flex-direction:column!important;align-items:center;gap:15px;width:100%}.difficulty-options-container .difficultyOption{width:80%;max-width:300px;text-align:center}.difficulty-options-container .difficulty-btn{width:100%;box-sizing:border-box}.settings-buttons{flex-direction:column;align-items:center;width:80%;max-width:300px;gap:10px;margin-left:auto;margin-right:auto}.settings-buttons .menu-btn{width:100%;box-sizing:border-box}.updates-section{width:85%;max-width:none;padding:15px;margin:2em auto;font-size:1rem;overflow-wrap:break-word;box-sizing:border-box;overflow-x:hidden}.updates-section ul{padding-left:20px;margin:0;list-style-position:inside}.updates-section li{overflow-wrap:break-word;word-break:break-word;margin-bottom:.5em}#powerupsSection{width:85%;max-width:none;padding:15px;margin:2em auto;font-size:1rem;overflow-x:hidden;box-sizing:border-box}.powerups-title{font-size:1.5rem;margin-bottom:1em}.powerup-item{margin-bottom:1em;align-items:center}.powerup-name{font-size:1.1em}.powerup-description{font-size:.95em;overflow-wrap:break-word;word-break:break-word}}@media (orientation: portrait) and (max-width: 768px){.retro-title{font-size:1.8rem;margin-bottom:.3em}#mainMenu .subtitle{font-size:.95rem;margin-bottom:.8em}.overlay{padding-top:2vh;padding-bottom:2vh;justify-content:flex-start}#levelCards{flex-direction:column;gap:18px;max-width:98vw}.level-card{padding:14px 8px 12px;font-size:.98rem}}.difficulty-select{display:flex;align-items:center;justify-content:center;gap:15px;margin:1.5em 0 2em;flex-wrap:wrap}.difficulty-title{font-size:1.2rem;margin-right:15px;color:#eee;opacity:.95;font-weight:700;text-shadow:0 0 4px #0ff4}.difficulty-btn{padding:12px 28px;font-size:1.1rem;min-width:100px;box-shadow:0 0 8px #0ff6,0 1px 4px #0008;border-width:2px}.difficulty-btn:hover,.difficulty-btn:focus{box-shadow:0 0 18px #ff08,0 2px 8px #000a;transform:scale(1.05)}.leaderboard-section{margin:2em auto 0;width:90%;max-width:500px;background:#0a0a14b3;border:1px solid #0ff4;border-radius:16px;padding:1.5em;box-shadow:0 0 16px #0ff4,inset 0 0 8px #0ff2;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff}#leaderboard-name{color:#000}.leaderboard-title{font-size:1.8rem;color:#0ff;text-align:center;margin-bottom:.8em;text-shadow:0 0 6px #0ff8,0 0 18px #0ff8,1px 1px 0 #111;letter-spacing:1.5px}.leaderboard-difficulty-tabs{display:flex;justify-content:center;gap:12px;margin-bottom:1.2em}.leaderboard-tab{padding:8px 20px;font-size:1rem;background:#18182a;color:#aaa;border:2px solid #0ff4;border-radius:10px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.leaderboard-tab:hover{background:#34344a;color:#fff;border-color:#0ff;box-shadow:0 0 8px #0ff4}.leaderboard-tab.active{background:#0ff;color:#111;font-weight:700;border-color:#0ff;box-shadow:0 0 12px #0ff8,inset 0 0 4px #fff8}#leaderboard-container div{text-align:center;color:#aaa;font-style:italic;padding:2em 0}.leaderboard-table{width:100%;border-collapse:collapse;margin:0 auto 12px;background:#23233a;border-radius:10px;overflow:hidden;font-family:Orbitron,Courier New,Courier,monospace;font-size:1.05em;box-shadow:0 0 8px #0ff4}.leaderboard-table th,.leaderboard-table td{padding:8px 12px;text-align:center;border-bottom:1px solid #0ff4}.leaderboard-table th{background:#1a2a3a;color:#fff;font-weight:700;letter-spacing:1.2px}.leaderboard-table td{color:#fff;background:#23233a;font-weight:500}.leaderboard-table tr:last-child td{border-bottom:none}.leaderboard-table tr:nth-child(2n) td{background:#18182a}@media (max-width: 600px){.leaderboard-table th,.leaderboard-table td{padding:6px 4px;font-size:.95em}.leaderboard-table{font-size:.95em}}.tab-bar{display:flex;justify-content:center;align-items:center;gap:8px;width:fit-content;min-width:320px;max-width:95vw;margin:.5em auto 1.2em;background:#0a1428b3;border-radius:14px;border:2px solid #0ff;box-shadow:0 0 12px #0ff8;padding:8px 16px}@media (max-width: 900px){.tab-bar{width:90%;min-width:0;max-width:98vw}}.tab-btn{font-family:Orbitron,Courier New,Courier,monospace;font-size:1rem;padding:8px 18px;margin:0 2px;border:none;border-radius:12px;background:linear-gradient(90deg,#18182a 60%,#0ff);color:#fff;font-weight:700;letter-spacing:1px;box-shadow:0 0 8px #0ff8;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s,transform .1s;outline:none;border:2px solid #0ff;text-shadow:0 0 6px #0ff8,0 2px 2px #222a;white-space:nowrap}.tab-btn:hover{background:linear-gradient(90deg,#0ff,#18182a);color:#ff0;box-shadow:0 0 14px #ff08;transform:scale(1.04)}.tab-btn.active,.tab-btn:focus{background:linear-gradient(90deg,#0ff,#18182a);color:#ff0;box-shadow:0 0 18px #ff08,0 2px 8px #000a;transform:scale(1.06)}.tab-btn:active{background:linear-gradient(90deg,#0ff,#18182a);color:#fff;box-shadow:0 0 8px #0ff8,0 2px 4px #0008;transform:scale(.98)}.updates-section{background:#0a1428fa;border:2.5px solid #0ff;border-radius:18px;box-shadow:0 0 18px #0ff8,0 2px 12px #000a;padding:28px 32px 18px;margin:8em auto 2em;width:100%;max-width:480px;color:#fff;font-family:Orbitron,Courier New,Courier,monospace;font-size:1.08rem;letter-spacing:1.1px;text-shadow:0 0 6px #0ff2,0 2px 2px #222a;text-align:left;opacity:.98}.updates-title{font-family:Orbitron,Courier New,Courier,monospace;font-size:1.8rem;color:#0ff;text-shadow:0 0 8px #0ff,0 0 20px #0ff;margin-bottom:1em;text-align:center;font-weight:700;letter-spacing:1.5px}.mode-btn-row{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:12px}.settings-overlay{padding:30px;background-color:#0a0a19f2;border:2px solid #0ff;border-radius:15px;color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:clamp(300px,60%,500px);box-shadow:0 0 15px #0ff;z-index:100}.settings-title{font-family:Orbitron,monospace;color:#0ff;margin-bottom:25px;text-shadow:0 0 5px #0ff}.difficulty-options-container{display:flex;justify-content:space-around;width:100%;margin-bottom:30px}.difficulty-options-container .difficultyOption{text-align:center}.difficulty-options-container .difficultyOption p{font-size:.9em;margin-top:8px;color:#ccc}.settings-note{font-size:.8em;color:#aaa;margin-top:-15px;margin-bottom:25px;text-align:center}.settings-buttons{display:flex;gap:20px}.name-entry-popup{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:10000;background:linear-gradient(145deg,#1a1a2e,#16213e);border-radius:16px;padding:24px;box-shadow:0 0 32px #00ffcc80;border:2px solid #00ffcc;width:min(400px,90vw);text-align:center;font-family:"Press Start 2P",cursive;color:#fff}.name-entry-popup h3{margin:0 0 16px;font-size:1.1em}.name-entry-form{display:flex;flex-direction:column;align-items:center}.name-entry-form label{margin-bottom:12px;font-size:.8em}.name-entry-input{padding:8px;font-size:1em;border-radius:8px;border:2px solid #00ffcc;width:180px;text-align:center;color:#000;background:#fff}.name-entry-submit{margin-top:16px;padding:8px 24px;font-size:.9em;background:#0fc;color:#000;border:none;border-radius:8px;cursor:pointer;transition:all .2s}.name-entry-submit:hover{background:#00e6b3}.name-entry-error{color:#f66;margin-top:12px;font-size:.8em}.gameover-leaderboard{margin:32px auto;max-width:500px;background:linear-gradient(145deg,#1a1a2e,#16213e);border-radius:16px;padding:24px;color:#fff;box-shadow:0 0 32px #00ffcc80;font-family:"Press Start 2P",cursive;font-size:.9em;text-align:center;z-index:9999;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(500px,90vw);max-height:80vh;overflow-y:auto;border:2px solid #00ffcc}.leaderboard-close-btn{background:#f66;color:#fff;border:none;border-radius:50%;width:32px;height:32px;font-size:1.5em;cursor:pointer;box-shadow:0 2px 8px #0008;transition:background .2s}.leaderboard-close-btn:hover{background:#f22}#gameOverActions{display:none;position:fixed;left:0;bottom:0;width:100vw;z-index:200;justify-content:center;gap:16px;padding-bottom:40px;pointer-events:none}#gameOverActions.visible{display:flex!important}#gameOverActions .menu-btn{pointer-events:auto;min-width:120px;flex-shrink:0;font-size:1.05rem;padding:14px 24px}#shareScoreBtn:hover{background:linear-gradient(90deg,#4caf50,#18182a)!important;color:gold!important;box-shadow:0 0 24px #4caf5080!important;border-color:#4caf50!important}.faq-item{border-bottom:1px solid rgba(0,255,255,.15);overflow:hidden;transition:background .2s;border-radius:8px}.faq-item:last-child{border-bottom:none}.faq-item:hover{background:#00ffff0a}.faq-question{display:flex;align-items:center;justify-content:space-between;padding:10px 0;cursor:pointer;-webkit-user-select:none;user-select:none;gap:12px;width:100%;background:none;border:none;font:inherit;color:inherit;text-align:left;outline:none}.faq-question:focus-visible{outline:2px solid #0ff;outline-offset:2px;border-radius:4px}.faq-question h4{margin:0;flex:1}.faq-arrow{font-size:1.2rem;color:#0ff;transition:transform .25s;flex-shrink:0;text-shadow:0 0 6px #0ff8}.faq-item.open .faq-arrow{transform:rotate(90deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.faq-item.open .faq-answer{max-height:200px;padding-bottom:8px}.learn-link{color:gold;font-size:.9rem;text-decoration:none;padding:6px 0;transition:color .2s}.learn-link:hover,.learn-link:focus-visible{color:#fff}body.karaoke-mode{background-image:url(/images/background.webp);background-size:cover}.music-controls-container{position:fixed;bottom:20px;left:20px;z-index:1000;display:flex;flex-direction:column;align-items:flex-start;font-family:inherit;-webkit-user-select:none;user-select:none}.music-volume-btn{background:linear-gradient(135deg,#23272f 60%,#3a3f4b);border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 12px #0000002e;transition:background .2s,box-shadow .2s;outline:none;padding:0}.music-volume-btn:hover,.music-volume-btn:focus{background:linear-gradient(135deg,#353a45 60%,#50576a);box-shadow:0 4px 18px #00000038}.music-volume-img{width:28px;height:28px;display:block;pointer-events:none}.music-icon-wrapper{position:relative;display:inline-block}.music-mute-slash{position:absolute;left:4px;top:8px;width:20px;height:4px;background:#f44;transform:rotate(-20deg);border-radius:2px;opacity:.85;pointer-events:none}.music-panel-header{margin-bottom:10px;text-align:left;padding-bottom:4px;border-bottom:1px solid #333a;letter-spacing:1px}.music-panel{margin-top:8px;background:linear-gradient(135deg,#23272f 60%,#353a45);border-radius:16px;box-shadow:0 6px 32px #00000047;padding:22px 26px 18px;min-width:210px;display:none;flex-direction:column;align-items:stretch;gap:16px;animation:fadeIn .2s;border:1.5px solid #444a}.music-panel.open{display:flex}.music-slider{width:100%;accent-color:#4caf50;height:4px;margin:0 0 0 8px;background:transparent;border-radius:4px}.music-slider::-webkit-slider-thumb{width:18px;height:18px;border-radius:50%;background:#4caf50;border:2px solid #fff;box-shadow:0 2px 6px #0003;cursor:pointer;transition:background .2s}.music-slider:focus::-webkit-slider-thumb{background:#81c784}.music-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#4caf50;border:2px solid #fff;box-shadow:0 2px 6px #0003;cursor:pointer;transition:background .2s}.music-slider:focus::-moz-range-thumb{background:#81c784}.music-slider::-ms-thumb{width:18px;height:18px;border-radius:50%;background:#4caf50;border:2px solid #fff;box-shadow:0 2px 6px #0003;cursor:pointer;transition:background .2s}.music-slider:focus::-ms-thumb{background:#81c784}.music-panel-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.music-mute-btn{background:linear-gradient(135deg,#4caf50 60%,#388e3c);border:none;color:#fff;font-size:16px;font-weight:600;cursor:pointer;padding:7px 18px;border-radius:8px;transition:background .2s,box-shadow .2s;box-shadow:0 2px 8px #0002;margin-top:2px;letter-spacing:.5px}.music-mute-btn:hover,.music-mute-btn:focus{background:linear-gradient(135deg,#81c784 60%,#43a047);box-shadow:0 4px 16px #0003}.music-volume-label{color:#b7e0c7;font-size:14px;margin-right:8px;flex:1;text-align:left;font-weight:500;letter-spacing:.5px;text-shadow:0 1px 2px #0005}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
