@import "https://fonts.googleapis.com/css2?family=Space+Mono:wght@400;700&family=Orbitron:wght@400;500;600;700;800;900&display=swap";
*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#00ffc8;--primary-dim:#00ffc850;--secondary:#ff2e6a;--tertiary:#fc0;--bg-deep:#0a0a0f;--bg-mid:#12121a;--bg-surface:#1a1a24;--text-dim:#4a4a5a;--scanline-opacity:.03}html,body{background:var(--bg-deep);max-width:100vw;font-family:Space Mono,monospace;overflow-x:hidden}body{color:#fff;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative}body:before{content:"";background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,var(--scanline-opacity))2px,rgba(0,0,0,var(--scanline-opacity))4px);pointer-events:none;z-index:1000;position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:999;background:radial-gradient(#0000 0% 60%,#0006 100%);position:fixed;inset:0}.game-container{flex-direction:column;align-items:center;gap:24px;width:100%;max-width:800px;padding:32px 20px;display:flex;position:relative}.game-container:before{content:"";pointer-events:none;z-index:-1;background-image:linear-gradient(#00ffc805 1px,#0000 1px),linear-gradient(90deg,#00ffc805 1px,#0000 1px);background-size:50px 50px;animation:20s linear infinite gridPan;position:fixed;inset:0}@keyframes gridPan{0%{transform:translate(0)}to{transform:translate(50px,50px)}}.header{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.title{text-transform:uppercase;letter-spacing:.2em;background:linear-gradient(135deg,var(--primary)0%,#0f8 50%,var(--tertiary)100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 30px var(--primary-dim));-webkit-background-clip:text;background-clip:text;margin-bottom:4px;font-family:Orbitron,sans-serif;font-size:clamp(2rem,8vw,3.5rem);font-weight:900;animation:3s ease-in-out infinite alternate titleGlow}@keyframes titleGlow{0%{filter:drop-shadow(0 0 20px var(--primary-dim))}to{filter:drop-shadow(0 0 40px var(--primary))}}.subtitle{letter-spacing:.5em;color:var(--text-dim);text-transform:uppercase;font-size:.7rem}.stats-dashboard{grid-template-columns:repeat(4,1fr);gap:12px;width:100%;max-width:600px;display:grid}.stat-card{background:linear-gradient(145deg,var(--bg-surface),var(--bg-mid));border:1px solid #00ffc81a;border-radius:8px;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;transition:all .3s;display:flex;position:relative;overflow:hidden}.stat-card:before{content:"";background:linear-gradient(90deg,transparent,var(--primary),transparent);opacity:.5;height:2px;position:absolute;top:0;left:0;right:0}.stat-card:hover{border-color:#00ffc84d;transform:translateY(-2px)}.stat-card.highlight{border-color:var(--secondary)}.stat-card.highlight:before{background:linear-gradient(90deg,transparent,var(--secondary),transparent)}.stat-icon{opacity:.8;font-size:1.2rem}.stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.15em;font-size:.6rem}.stat-value{color:var(--primary);text-shadow:0 0 10px var(--primary-dim);font-family:Orbitron,sans-serif;font-size:1.3rem;font-weight:700}.stat-card.highlight .stat-value{color:var(--secondary);text-shadow:0 0 10px #ff2e6a80}.stat-card.timer .stat-value{color:var(--tertiary);text-shadow:0 0 10px #ffcc0080;font-variant-numeric:tabular-nums}.game-area{flex-direction:column;align-items:center;gap:16px;display:flex;position:relative}.canvas-frame{background:linear-gradient(135deg,var(--primary),var(--secondary));box-shadow:0 0 60px -10px var(--primary-dim),0 20px 40px -20px #00000080,inset 0 0 30px #0000004d;border-radius:12px;padding:4px;position:relative}.canvas-wrapper{background:var(--bg-deep);border-radius:8px;position:relative;overflow:hidden}.canvas-wrapper:after{content:"";pointer-events:none;background:linear-gradient(#ffffff08 0%,#0000 50%);position:absolute;inset:0}canvas{image-rendering:pixelated;display:block}.shake{animation:.15s ease-in-out shake}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)rotate(-.5deg)}75%{transform:translate(4px)rotate(.5deg)}}.control-hints{background:var(--bg-surface);border:1px solid #ffffff0d;border-radius:100px;align-items:center;gap:24px;padding:16px 24px;display:flex}.hint-group{align-items:center;gap:8px;display:flex}.hint-keys{gap:4px;display:flex}.key{background:var(--bg-mid);width:28px;height:28px;color:var(--primary);border:1px solid #ffffff1a;border-radius:6px;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:flex;box-shadow:0 2px #0000004d}.key.arrow{font-size:.6rem}.hint-text{color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}.hint-divider{background:#ffffff1a;width:1px;height:20px}.goal-hint{align-items:center;gap:8px;display:flex}.goal-indicator{background:var(--secondary);width:14px;height:14px;box-shadow:0 0 12px var(--secondary);border-radius:3px;animation:2s ease-in-out infinite goalPulse}@keyframes goalPulse{0%,to{box-shadow:0 0 8px var(--secondary)}50%{box-shadow:0 0 20px var(--secondary)}}.mobile-controls{flex-direction:column;align-items:center;gap:8px;margin-top:12px;display:none}.mobile-row{gap:8px;display:flex}.mobile-btn{background:linear-gradient(145deg,var(--bg-surface),var(--bg-mid));width:64px;height:64px;color:var(--primary);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;box-shadow:0 4px 0 #0000004d,0 0 20px -5px var(--primary-dim);border:2px solid #00ffc84d;border-radius:12px;justify-content:center;align-items:center;font-size:1.5rem;transition:all .1s;display:flex}.mobile-btn:active{box-shadow:0 2px 0 #0000004d,0 0 30px -5px var(--primary);background:linear-gradient(145deg,var(--bg-mid),var(--bg-deep));border-color:var(--primary);transform:translateY(2px)}.action-buttons{gap:12px;margin-top:8px;display:flex}.action-btn{color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-family:Space Mono,monospace;font-size:.75rem;transition:all .2s;display:flex}.action-btn:hover{border-color:var(--primary);color:var(--primary);box-shadow:0 0 20px -5px var(--primary-dim)}.action-btn.primary{background:linear-gradient(135deg,var(--primary),#0f8);color:var(--bg-deep);border:none;font-weight:700}.action-btn.primary:hover{box-shadow:0 0 30px -5px var(--primary);transform:translateY(-1px)}.win-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#000000d9;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.win-modal{background:linear-gradient(145deg,var(--bg-surface),var(--bg-mid));border:2px solid var(--primary);text-align:center;box-shadow:0 0 100px -20px var(--primary),0 40px 80px -40px #000c;border-radius:20px;padding:48px 64px;animation:.4s cubic-bezier(.34,1.56,.64,1) modalSlide;position:relative;overflow:hidden}@keyframes modalSlide{0%{opacity:0;transform:scale(.8)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.win-modal:before{content:"";background:conic-gradient(from 0deg,transparent,var(--primary-dim),transparent,var(--secondary),transparent);opacity:.1;width:200%;height:200%;animation:4s linear infinite rotateBg;position:absolute;top:-50%;left:-50%}@keyframes rotateBg{to{transform:rotate(360deg)}}.win-content{z-index:1;position:relative}.win-badge{margin-bottom:16px;font-size:4rem;animation:1s infinite bounce}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.win-title{background:linear-gradient(135deg,var(--primary),var(--tertiary));-webkit-text-fill-color:transparent;text-transform:uppercase;letter-spacing:.1em;-webkit-background-clip:text;background-clip:text;margin-bottom:24px;font-family:Orbitron,sans-serif;font-size:2rem;font-weight:800}.win-stats{background:#0000004d;border-radius:12px;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:32px;padding:20px;display:grid}.win-stat{flex-direction:column;gap:4px;display:flex}.win-stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.15em;font-size:.65rem}.win-stat-value{color:var(--primary);font-family:Orbitron,sans-serif;font-size:1.4rem;font-weight:700}.win-stat-value.best{color:var(--tertiary)}.win-next{color:var(--text-dim);margin-top:8px;font-size:.85rem}.next-level-name{color:var(--secondary);font-weight:700}.difficulty-badge{text-transform:uppercase;letter-spacing:.1em;border-radius:100px;align-items:center;gap:6px;padding:4px 12px;font-size:.65rem;font-weight:700;display:inline-flex}.difficulty-badge.easy{color:#0f8;background:#00ff8826;border:1px solid #00ff884d}.difficulty-badge.medium{color:var(--tertiary);background:#ffcc0026;border:1px solid #ffcc004d}.difficulty-badge.hard{color:var(--secondary);background:#ff2e6a26;border:1px solid #ff2e6a4d}.level-progress{background:var(--bg-surface);border-radius:2px;width:100%;max-width:600px;height:4px;margin-top:-8px;overflow:hidden}.level-progress-fill{background:linear-gradient(90deg,var(--primary),var(--tertiary));height:100%;box-shadow:0 0 10px var(--primary);border-radius:2px;transition:width .5s cubic-bezier(.34,1.56,.64,1)}@media (max-width:768px){.game-container{gap:16px;padding:16px 12px}.title{letter-spacing:.1em}.subtitle{letter-spacing:.3em;font-size:.6rem}.stats-dashboard{grid-template-columns:repeat(2,1fr);gap:8px}.stat-card{padding:10px 6px}.stat-value{font-size:1.1rem}.mobile-controls{display:flex}.control-hints{display:none}.action-buttons{flex-direction:column;width:100%}.action-btn{justify-content:center;width:100%}.win-modal{margin:20px;padding:32px 24px}.win-stats{grid-template-columns:1fr;gap:12px}.canvas-frame{padding:3px}}@media (max-width:400px){.stats-dashboard{grid-template-columns:repeat(2,1fr)}.mobile-btn{width:56px;height:56px}}.particles{pointer-events:none;z-index:-1;position:fixed;inset:0;overflow:hidden}.particle{background:var(--primary);opacity:.3;border-radius:50%;width:2px;height:2px;animation:linear infinite float;position:absolute}@keyframes float{0%{opacity:0;transform:translateY(100vh)scale(0)}10%{opacity:.3}90%{opacity:.3}to{opacity:0;transform:translateY(-100px)scale(1)}}
