@import"https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap";*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;font-family:var(--font-display, "Press Start 2P", monospace);overflow:hidden;position:fixed;touch-action:none;background-color:#0a0a2e}#game-container{position:absolute;top:0;left:0;width:100%;height:100%}.game-ui{position:absolute;top:0;left:0;width:100%;padding:15px;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none;z-index:10}.game-ui-scores{color:var(--color-text-primary, #ffffff);text-shadow:0 0 8px rgba(0,255,255,.8);font-size:14px;font-weight:700;-webkit-user-select:none;user-select:none;letter-spacing:1px}.game-ui-buttons{display:flex;gap:10px;pointer-events:auto}.settings-button,.fullscreen-button{pointer-events:auto;background:#0a0a2ecc;color:var(--color-neon-cyan, #00ffff);border:2px solid var(--color-neon-cyan, #00ffff);border-radius:50%;width:48px;height:48px;font-size:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:box-shadow .2s,transform .1s,border-color .2s;box-shadow:0 0 8px #00ffff4d}.settings-button:hover,.fullscreen-button:hover{border-color:var(--color-neon-magenta, #ff00ff);box-shadow:var(--effect-glow-magenta, 0 0 10px rgba(255, 0, 255, .6));transform:scale(1.05)}.settings-button:active,.fullscreen-button:active{transform:scale(.95)}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:100}.modal-content{background:var(--color-panel-bg, #0a0a2e);border:2px solid var(--color-neon-cyan, #00ffff);border-radius:4px;padding:24px;width:90%;max-width:400px;box-shadow:var(--effect-panel-shadow, 0 0 20px rgba(0, 255, 255, .3));position:relative;overflow:hidden}.modal-content:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,255,.03) 2px,rgba(0,255,255,.03) 4px);pointer-events:none;z-index:1}.modal-content>*{position:relative;z-index:2}.modal-content h2{text-align:center;margin-bottom:20px;color:var(--color-neon-cyan, #00ffff);font-family:var(--font-display, "Press Start 2P", monospace);font-size:18px;text-shadow:var(--effect-text-shadow-neon, 0 0 8px rgba(0, 255, 255, .8));letter-spacing:2px;text-transform:uppercase}.modal-content p{color:var(--color-text-primary, #ffffff);font-family:var(--font-body, monospace);font-size:12px;line-height:1.8;margin-bottom:12px}.modal-buttons{display:flex;justify-content:space-around;margin-top:24px;gap:12px}.modal-buttons button{background:transparent;color:var(--color-neon-cyan, #00ffff);border:2px solid var(--color-neon-cyan, #00ffff);border-radius:2px;padding:10px 20px;font-family:var(--font-display, "Press Start 2P", monospace);font-size:11px;cursor:pointer;transition:box-shadow .2s,background .2s,color .2s,border-color .2s;text-transform:uppercase;letter-spacing:1px}.modal-buttons button:hover{box-shadow:var(--effect-glow-cyan, 0 0 10px rgba(0, 255, 255, .6));background:#00ffff1a}.modal-buttons button:nth-child(2){color:var(--color-text-muted, #888888);border-color:var(--color-text-muted, #888888)}.modal-buttons button:nth-child(2):hover{color:var(--color-neon-magenta, #ff00ff);border-color:var(--color-neon-magenta, #ff00ff);box-shadow:var(--effect-glow-magenta, 0 0 10px rgba(255, 0, 255, .6));background:#ff00ff1a}.settings-option{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(0,255,255,.15)}.settings-option label{font-family:var(--font-display, "Press Start 2P", monospace);font-size:11px;color:var(--color-text-primary, #ffffff)}.settings-option input[type=checkbox]{width:24px;height:24px;accent-color:var(--color-neon-cyan, #00ffff)}.score-display{text-align:center;margin:20px 0}.final-score{font-family:var(--font-display, "Press Start 2P", monospace);font-size:18px;font-weight:700;color:var(--color-text-primary, #ffffff);text-shadow:var(--effect-text-shadow-neon, 0 0 8px rgba(0, 255, 255, .8))}.new-high-score{color:var(--color-new-high-score, #ffe66d);font-family:var(--font-display, "Press Start 2P", monospace);font-size:14px;margin:12px 0;text-shadow:0 0 10px rgba(255,230,109,.8)}.high-score{font-family:var(--font-display, "Press Start 2P", monospace);font-size:12px;color:var(--color-high-score-value, #ffff00)}.button-primary{color:var(--color-confirm-action, #4ecdc4)!important;border-color:var(--color-confirm-action, #4ecdc4)!important}.button-primary:hover{box-shadow:var(--effect-glow-green, 0 0 10px rgba(0, 255, 0, .6))!important;background:#4ecdc41a!important}.button-secondary{color:var(--color-soft-blue, #54a0ff)!important;border-color:var(--color-soft-blue, #54a0ff)!important}.button-secondary:hover{box-shadow:0 0 10px #54a0ff99!important;background:#54a0ff1a!important}@keyframes float-up{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100px);opacity:0}}.hit-points{position:absolute;animation:float-up 1s ease-out forwards;color:var(--color-text-primary, #ffffff);font-family:var(--font-display, "Press Start 2P", monospace);font-size:16px;text-shadow:0 0 8px rgba(0,255,255,.8),2px 2px 0 #000;z-index:5}.combo-text{position:absolute;color:var(--color-neon-yellow, #ffff00);font-family:var(--font-display, "Press Start 2P", monospace);font-size:20px;text-shadow:0 0 12px rgba(255,255,0,.8),2px 2px 0 #000;z-index:5;text-align:center;animation:pulse .5s infinite alternate}@keyframes pulse{0%{transform:scale(1)}to{transform:scale(1.1)}}.joystick-base{position:absolute;bottom:100px;left:100px;width:150px;height:150px;background:#00ffff26;border:1px solid rgba(0,255,255,.3);border-radius:50%;z-index:20;pointer-events:none}.joystick-thumb{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;background:#0ff6;border:1px solid rgba(0,255,255,.6);border-radius:50%;pointer-events:none}canvas{image-rendering:pixelated;image-rendering:crisp-edges}
