@import "https://fonts.googleapis.com/css2?family=Courier+Prime:wght@400;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Share+Tech+Mono&display=swap";.swipe-controls-container{pointer-events:none;z-index:100;touch-action:none;width:100%;height:100%;display:none;position:absolute;top:0;left:0}@media (pointer:coarse),(hover:none){.swipe-controls-container{display:block}}.swipe-controls-container button{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer;border:none;outline:none}.sys-buttons{z-index:110;gap:12px;display:flex;position:absolute;top:140px}.sys-buttons.top-left{left:14px}.sys-buttons.top-right{right:20px}.btn-sys{color:#fff;-webkit-backdrop-filter:blur(4px);background:#ffffff26;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-family:inherit;font-size:16px;font-weight:700;display:flex}.btn-sys:active{background:#ffffff4d}.swipe-area{pointer-events:auto;touch-action:none;width:100%;height:100%;position:absolute;top:0;left:0}.btn-fire{z-index:110;color:#eaf3ff;letter-spacing:1px;-webkit-backdrop-filter:blur(4px);background:#5aa0ff38;border-radius:50%;width:92px;height:92px;font-family:inherit;font-size:15px;font-weight:700;position:absolute;bottom:36px;right:26px;box-shadow:0 0 18px #508cff40;border:2px solid #8cbeff99!important}.btn-fire:active{background:#78b9ff73;box-shadow:0 0 26px #78b4ff80}:root{--color-primary:#4af;--color-danger:#f44;--color-warning:#fc4;--color-bg:#0a0a12;--color-bg-panel:#0a0f1ecc;--color-border:#346;--font-retro:"Courier Prime", "Courier New", monospace;--font-mono:"Share Tech Mono", "Courier Prime", monospace}body{box-sizing:border-box;margin:0;padding:0}*{box-sizing:border-box;-webkit-user-select:none;user-select:none}.app-container{background-color:var(--color-bg);width:100dvw;height:100dvh;font-family:var(--font-retro);color:#fff;position:relative;overflow:hidden}.screen-wrapper{flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.screen-wrapper.menu{background-image:radial-gradient(ellipse at 50% 40%, #0d1a2a 0%, var(--color-bg) 70%)}.screen-wrapper.gameover{background-image:radial-gradient(ellipse at 50% 40%, #1a0a0a 0%, var(--color-bg) 70%)}.panel{text-align:center;padding:60px 80px}.menu-panel{border:2px solid var(--color-border);background-color:var(--color-bg-panel);box-shadow:0 0 40px #3264c826,inset 0 0 30px #3264c80d}.gameover-panel{background-color:#140a0acc;border:2px solid #633;padding:50px 70px;box-shadow:0 0 40px #c8323226,inset 0 0 30px #c832320d}h1.title{letter-spacing:8px;color:var(--color-primary);text-shadow:0 0 20px #4af6,0 2px #1a5588;margin:0 0 8px;font-size:52px}h1.gameover-title{letter-spacing:6px;color:var(--color-danger);text-shadow:0 0 20px #f446,0 2px #881a1a;margin:0 0 8px;font-size:44px}.divider{width:100%;height:1px}.menu-divider{background-color:var(--color-border);margin:12px 0 24px}.gameover-divider{background-color:#633;margin:16px 0 24px}.controls-row{justify-content:center;gap:32px;margin-bottom:32px;display:flex}.control-item{text-align:center}.control-label{color:#679;letter-spacing:2px;margin-bottom:4px;font-size:11px}.control-key{color:#89b;background-color:#28324666;border:1px solid #456;padding:4px 12px;font-size:14px}.start-text{color:#8ac;letter-spacing:2px;margin-top:40px;font-size:14px;animation:1.5s ease-in-out infinite pulse}.menu-actions{justify-content:center;gap:16px;margin-top:20px;display:flex}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.label{color:#679;letter-spacing:2px;font-size:12px}.score{color:var(--color-warning);text-shadow:0 0 12px #ffcc444d;font-size:36px;font-family:var(--font-retro)}.highscore{color:var(--color-primary);font-size:18px;font-family:var(--font-retro)}.new-best{color:var(--color-warning);letter-spacing:4px;text-shadow:0 0 12px #ffcc4480;margin-bottom:24px;font-size:16px;animation:1s ease-in-out infinite pulse}.achievement-unlocked-section{width:260px;margin:0 auto 20px}.achievement-unlocked-header{letter-spacing:3px;color:#ca0;text-align:center;margin-bottom:8px;font-size:9px}.achievement-unlocked-badge{background:#140e00bf;border:1px solid #ca0;align-items:center;gap:10px;margin-bottom:5px;padding:7px 10px;animation:.35s ease-out both achievement-pop;display:flex}.achievement-unlocked-star{color:#fd0;text-shadow:0 0 8px #fd09;flex-shrink:0;font-size:18px}.achievement-unlocked-text{text-align:left;flex-direction:column;gap:2px;display:flex}.achievement-unlocked-title{color:#fff;letter-spacing:1px;font-size:12px}.achievement-unlocked-desc{color:#aaa;letter-spacing:.5px;font-size:9px}@keyframes achievement-pop{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.ranking-container{text-align:left;background-color:#0804048c;border:1px solid #4a2a2a;width:260px;margin:0 auto 20px;padding:12px 14px}.ranking-row{justify-content:space-between;margin-bottom:6px;display:flex}.ranking-row:last-child{margin-bottom:0}.ranking-name{color:#adf;letter-spacing:1px}.ranking-score{color:#fa5;letter-spacing:1px}.ranking-row.current .ranking-name,.ranking-row.current .ranking-score{color:#fff;text-shadow:0 0 8px #ffffff80}.input-container{justify-content:center;align-items:center;gap:12px;display:flex}.name-input{border:1px solid var(--color-primary);color:var(--color-primary);font-family:var(--font-retro);text-align:center;text-transform:uppercase;background:#00000080;outline:none;width:140px;padding:8px 12px;font-size:18px}.name-input:focus{box-shadow:0 0 10px #44aaff4d}.save-button{background:var(--color-primary);color:#000;font-family:var(--font-retro);cursor:pointer;text-transform:uppercase;letter-spacing:1px;border:none;padding:10px 24px;font-size:14px;font-weight:700;transition:all .2s}.save-button:hover{background:#fff;transform:translateY(-2px);box-shadow:0 4px 15px #4af6}.restart-hint{color:#89a;white-space:nowrap;margin-top:30px;font-size:14px;animation:2s ease-in-out infinite pulse}@media (width<=480px){.panel{padding:40px 20px}.gameover-panel{padding:30px 20px}h1.title{letter-spacing:6px;font-size:42px}h1.gameover-title{letter-spacing:4px;font-size:36px}.start-text,.restart-hint{white-space:nowrap;font-size:11px}.score{font-size:32px}}.menu-scanlines{pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,#0000,#0000 3px,#00000012 3px 4px);position:absolute;inset:0}.screen-wrapper.menu{position:relative}.menu-panel{z-index:1;position:relative}.menu-mute-btn{z-index:3;cursor:pointer;color:#9ecbff;background:#14284659;border:1px solid #78aaff59;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;line-height:1;transition:border-color .15s,box-shadow .15s,background .15s,transform .1s;display:flex;position:absolute;top:14px;right:14px;box-shadow:0 0 12px #508cff26}.menu-mute-btn:hover{background:#1e3c6480;border-color:#96c8ffcc;box-shadow:0 0 18px #64a0ff66}.menu-mute-btn:active{transform:scale(.94)}.menu-mute-btn:focus-visible{outline-offset:2px;outline:2px solid #96c8ffe6}.menu-mute-btn.is-muted{color:#6b7a90;box-shadow:none;opacity:.75;border-color:#788caa4d}.menu-title-block{margin-bottom:4px}.menu-subtitle{font-family:var(--font-mono);letter-spacing:4px;color:#468;text-transform:uppercase;margin-bottom:8px;font-size:11px}.menu-tagline{font-family:var(--font-mono);letter-spacing:5px;color:#579;text-transform:uppercase;margin-top:6px;font-size:12px}@keyframes title-flicker{0%,94%,to{opacity:1}95%{opacity:.82}96%{opacity:1}97%{opacity:.88}98%{opacity:1}}.menu-title-flicker{animation:6s ease-in-out infinite title-flicker}.menu-controls-grid{justify-content:center;align-items:center;gap:24px;margin-bottom:32px;display:flex}.control-card{text-align:center}.control-card-label{font-family:var(--font-mono);letter-spacing:3px;color:#468;text-transform:uppercase;margin-bottom:8px;font-size:10px}.control-card-keys{flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;display:flex}.key-badge{font-family:var(--font-mono);color:#ace;letter-spacing:1px;background:#1e325080;border:1px solid #2a4466;padding:3px 8px;font-size:12px;transition:background .15s;display:inline-block;box-shadow:0 2px #1a2a44,inset 0 1px #64a0dc1a}.key-badge--wide{letter-spacing:2px;padding:3px 16px}.key-touch{font-family:var(--font-mono);color:#568;letter-spacing:1px;font-size:10px}.key-sep{color:#345;font-size:11px}.control-card-divider{background:linear-gradient(#0000,#346 30% 70%,#0000);align-self:center;width:1px;height:40px}.menu-btn{font-family:var(--font-mono);letter-spacing:2px;text-transform:uppercase;cursor:pointer;border:none;padding:11px 28px;font-size:13px;font-weight:400;transition:all .15s;position:relative;overflow:hidden}.menu-btn:after{content:"";opacity:0;background:linear-gradient(135deg,#ffffff14 0%,#0000 60%);transition:opacity .2s;position:absolute;inset:0}.menu-btn:hover:after{opacity:1}.menu-btn:focus-visible,.settings-select:focus-visible,.settings-checkbox:focus-visible+.settings-toggle-track,.restart-hint:focus-visible,.name-input:focus-visible,.save-button:focus-visible{outline-offset:3px;outline:2px solid #9ecbff;box-shadow:0 0 14px #78b4ff80}.menu-btn--primary{background:var(--color-primary);color:#000d1a;animation:2.5s ease-in-out infinite btn-glow-pulse;box-shadow:0 0 18px #44aaff73,0 2px #1a5588}@keyframes btn-glow-pulse{0%,to{box-shadow:0 0 18px #44aaff73,0 2px #1a5588}50%{box-shadow:0 0 30px #44aaffb3,0 2px #1a5588}}.menu-btn--primary:hover{background:#7cf;animation:none;transform:translateY(-2px);box-shadow:0 0 36px #4afc,0 4px #1a5588}.menu-btn-arrow{margin-right:6px;font-size:10px}.menu-btn--secondary{color:#8ac;background:#14233799;border:1px solid #346;box-shadow:inset 0 1px #64a0dc0d}.menu-btn--secondary:hover{color:#ace;background:#28416499;border-color:#468;transform:translateY(-1px)}.menu-btn--ghost{color:#567;background:0 0;border:1px solid #234}.menu-btn--ghost:hover{color:#8ac;border-color:#346}.menu-btn--daily{color:#d9c6ff;letter-spacing:3px;background:#281e4680;border:1px solid #9678e68c;width:100%;margin-top:14px;display:block}.menu-btn--daily:hover{color:#f0e8ff;border-color:#b496ffe6;box-shadow:0 0 16px #8c6ee659}.menu-daily-best{text-align:center;font-family:var(--font-mono);letter-spacing:2px;color:#9a86c8;margin-top:8px;font-size:11px}.gameover-daily-badge{font-family:var(--font-mono);letter-spacing:3px;color:#c0a8ff;text-align:center;text-transform:uppercase;margin-bottom:8px;font-size:11px}.tutorial-panel{width:100%;max-width:760px}.tutorial-header{margin-bottom:4px}.tutorial-title{letter-spacing:6px!important;font-size:36px!important}.tutorial-objective{font-family:var(--font-mono);color:#8ac;letter-spacing:1px;text-align:left;background:#1423374d;border-left:2px solid #346;margin-bottom:28px;padding:12px 16px;font-size:13px;line-height:1.7}.tutorial-cards{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px;display:grid}.tutorial-card{text-align:center;background:#0c1424b3;border:1px solid #2a3d55;padding:20px 16px;transition:border-color .2s,box-shadow .2s;position:relative}.tutorial-card:before{content:"";background:linear-gradient(90deg,#0000,#346,#0000);height:2px;position:absolute;top:0;left:0;right:0}.tutorial-card:hover{border-color:#3a5577;box-shadow:0 0 16px #3264b426}.tutorial-card-icon{color:var(--color-primary);text-shadow:0 0 10px #44aaff80;letter-spacing:4px;margin-bottom:10px;font-size:20px}.tutorial-card-title{font-family:var(--font-mono);letter-spacing:3px;color:#ace;text-transform:uppercase;margin-bottom:12px;font-size:11px}.tutorial-card-list{text-align:left;margin:0;padding:0;list-style:none}.tutorial-card-list li{font-family:var(--font-mono);color:#678;letter-spacing:.5px;padding-left:12px;font-size:11px;line-height:1.9;position:relative}.tutorial-card-list li:before{content:"›";color:#346;position:absolute;left:0}.tutorial-actions{gap:20px}@media (width<=600px){.tutorial-cards{grid-template-columns:1fr;gap:12px}.tutorial-panel{max-width:100%}.tutorial-title{letter-spacing:4px!important;font-size:28px!important}.menu-controls-grid{gap:16px}.control-card-divider{display:none}.menu-btn{padding:10px 20px;font-size:12px}.menu-subtitle,.menu-tagline{letter-spacing:3px;font-size:10px}}.settings-panel{text-align:left;width:100%;max-width:600px}.settings-title{text-align:center;letter-spacing:6px!important;font-size:36px!important}.settings-body{flex-direction:column;gap:0;display:flex}.settings-divider{background:linear-gradient(90deg,#0000,#2a3d55 30% 70%,#0000);height:1px;margin:16px 0}.settings-row--slider{flex-direction:column;gap:8px;display:flex}.settings-row-label{font-family:var(--font-mono);letter-spacing:2px;color:#689;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:11px;display:flex}.settings-value{color:var(--color-primary);letter-spacing:1px;font-size:13px}.settings-slider{appearance:none;background:linear-gradient(to right, var(--color-primary) 0%, var(--color-primary) calc(var(--val,30) * 1%), #1a2d44 calc(var(--val,30) * 1%), #1a2d44 100%);cursor:pointer;border-radius:0;outline:none;width:100%;height:4px}.settings-slider::-webkit-slider-thumb{appearance:none;background:var(--color-primary);cursor:pointer;border:none;width:14px;height:14px;box-shadow:0 0 8px #4af9}.settings-slider::-moz-range-thumb{background:var(--color-primary);cursor:pointer;border:none;width:14px;height:14px;box-shadow:0 0 8px #4af9}.settings-toggles{flex-direction:column;gap:10px;display:flex}.settings-toggle{cursor:pointer;align-items:center;gap:12px;display:flex}.settings-checkbox{display:none}.settings-toggle-track{background:#1a2d44;border:1px solid #2a3d55;border-radius:0;flex-shrink:0;width:36px;height:18px;transition:background .2s,border-color .2s;position:relative}.settings-toggle-track:after{content:"";background:#468;width:12px;height:12px;transition:transform .2s,background .2s;position:absolute;top:2px;left:2px}.settings-checkbox:checked+.settings-toggle-track{border-color:var(--color-primary);background:#44aaff26}.settings-checkbox:checked+.settings-toggle-track:after{background:var(--color-primary);transform:translate(18px)}.settings-toggle-label{font-family:var(--font-mono);letter-spacing:1px;color:#89a;font-size:12px}.settings-toggle:hover .settings-toggle-label{color:#ace}.settings-selects{grid-template-columns:1fr 1fr;gap:16px;display:grid}.settings-select-group{flex-direction:column;gap:6px;display:flex}.settings-select-label{font-family:var(--font-mono);letter-spacing:2px;color:#689;text-transform:uppercase;font-size:10px}.settings-select{color:#ace;font-family:var(--font-mono);cursor:pointer;appearance:none;background:#0c1424cc url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23446688'/%3E%3C/svg%3E") right 10px center no-repeat;border:1px solid #2a3d55;outline:none;padding:7px 28px 7px 10px;font-size:12px;transition:border-color .15s}.settings-select:hover,.settings-select:focus{border-color:#468}.settings-achievements-label{font-family:var(--font-mono);letter-spacing:3px;color:#468;text-transform:uppercase;margin-bottom:8px;font-size:10px}.settings-achievements{flex-direction:column;gap:4px;padding-right:4px;display:flex;overflow:visible}.settings-achievement-row{font-family:var(--font-mono);border:1px solid #0000;align-items:center;gap:10px;padding:6px 10px;font-size:11px;transition:background .1s;display:flex}.settings-achievement-row.unlocked{background:#44aaff0a;border-color:#1a2d44}.settings-achievement-row.locked{background:#0a0f1966;border-color:#0000}.settings-achievement-icon{flex-shrink:0;font-size:12px}.settings-achievement-row.unlocked .settings-achievement-icon{color:#fc4;text-shadow:0 0 6px #ffcc4480}.settings-achievement-row.locked .settings-achievement-icon{color:#345}.settings-achievement-name{color:#89a;letter-spacing:.5px;flex:1}.settings-achievement-row.unlocked .settings-achievement-name{color:#ace}.settings-achievement-status{letter-spacing:2px;font-size:9px}.settings-achievement-row.unlocked .settings-achievement-status{color:#4a7}.settings-achievement-row.locked .settings-achievement-status{color:#345}.settings-actions{justify-content:center;gap:20px;margin-top:20px}@media (width<=600px){.settings-panel{max-width:100%}.settings-selects{grid-template-columns:1fr;gap:12px}.settings-title{letter-spacing:4px!important;font-size:28px!important}}.settings-achievement-hint{flex-shrink:0;align-items:center;margin-left:6px;display:inline-flex;position:relative}.settings-achievement-hint-icon{color:#468;cursor:default;-webkit-user-select:none;user-select:none;font-size:11px;line-height:1;transition:color .15s}.settings-achievement-hint:hover .settings-achievement-hint-icon{color:var(--color-primary)}.settings-achievement-tooltip{visibility:hidden;opacity:0;pointer-events:none;color:#ace;font-family:var(--font-mono);letter-spacing:.5px;white-space:normal;z-index:100;background:#08101ef7;border:1px solid #2a3d55;flex-direction:column;gap:0;width:280px;padding:10px 12px;font-size:10px;line-height:1.6;transition:opacity .15s,visibility .15s;display:flex;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0009}.settings-achievement-tooltip:after{content:"";border:5px solid #0000;border-bottom-color:#2a3d55;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.settings-achievement-hint:hover .settings-achievement-tooltip{visibility:visible;opacity:1}.settings-achievement-tooltip-section{flex-direction:column;gap:3px;display:flex}.settings-achievement-tooltip-label{letter-spacing:2px;color:#468;text-transform:uppercase;font-size:9px}.settings-achievement-tooltip-text{color:#ace;font-size:10px;line-height:1.5}.settings-achievement-tooltip-lore{color:#79b;letter-spacing:.3px;font-style:italic}.settings-achievement-tooltip-divider{background:#1e2e42;height:1px;margin:7px 0;display:block}.settings-achievement-row{overflow:visible}@keyframes achievement-pulse{0%,to{text-shadow:0 0 4px #fc46}50%{text-shadow:0 0 10px #ffcc44e6,0 0 20px #fc46}}.settings-achievement-icon.unlocked-pulse{animation:2.4s ease-in-out infinite achievement-pulse}.tutorial-powerups-title{font-family:var(--font-mono);letter-spacing:3px;color:#69c;text-transform:uppercase;margin:14px 0 8px;font-size:11px}.tutorial-powerups{grid-template-columns:repeat(2,1fr);gap:8px 18px;display:grid}.tutorial-powerup{align-items:center;gap:10px;display:flex}.tutorial-powerup-badge{color:#fff;width:26px;height:26px;font-family:var(--font-mono);text-shadow:0 1px 2px #0009;border:1px solid #ffffffb3;border-radius:5px;flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.tutorial-powerup-text{flex-direction:column;line-height:1.25;display:flex}.tutorial-powerup-name{font-family:var(--font-mono);color:#cfe6ff;letter-spacing:1px;font-size:12px}.tutorial-powerup-desc{color:#88a0b8;font-size:11px}.reduced-motion .menu-title-flicker,.reduced-motion .menu-scanlines,.reduced-motion .menu-btn--primary,.reduced-motion .start-text,.reduced-motion .settings-achievement-icon.unlocked-pulse,.reduced-motion .new-best,.reduced-motion [class*=flicker]{animation:none!important}@media (prefers-reduced-motion:reduce){.menu-title-flicker,.menu-scanlines,.menu-btn--primary,.start-text,.settings-achievement-icon.unlocked-pulse,.new-best,[class*=flicker]{animation:none!important}}
