@import "https://fonts.googleapis.com/css2?family=Share+Tech+Mono&display=swap";:root{--neon-cyan:#0ff;--neon-magenta:#f0f;--neon-amber:#ffbf00;--dark-bg:#0a0a0c;--dark-panel:#0a0a0ceb;--ui-text:#e0e0e0}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;margin:0;padding:0;font-family:Share Tech Mono,monospace}canvas{touch-action:none;width:100%;height:100%;display:block}button,input,select,a{touch-action:auto}html{width:100%;height:100%;position:fixed;overflow:hidden}body{background:var(--dark-bg);justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:hidden}#game-container{background:#000;width:100vw;max-width:600px;height:100%;position:relative;overflow:hidden;box-shadow:0 0 20px #00ffff1a}.hidden{display:none!important}.overlay{background:var(--dark-panel);color:var(--ui-text);z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:center;padding:20px;padding-bottom:env(safe-area-inset-bottom,20px);padding-top:env(safe-area-inset-top,20px);flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow-y:auto}h1.glitch{color:var(--neon-cyan);text-shadow:0 0 10px var(--neon-cyan), 0 0 20px #00ffff80;margin-bottom:.5rem;font-size:clamp(1.8rem,8vw,3rem)}h1.red-glitch{color:#ff003c;text-shadow:0 0 10px #ff003c}h1.cyan-glitch{color:var(--neon-cyan);text-shadow:0 0 10px var(--neon-cyan)}p{color:#aaa;margin-bottom:1rem;font-size:clamp(.85rem,3vw,1.1rem)}button{border:2px solid var(--neon-amber);color:var(--neon-amber);cursor:pointer;text-transform:uppercase;background:0 0;min-height:44px;margin:.4rem;padding:clamp(.5rem,2vw,1rem) clamp(.8rem,3vw,2rem);font-size:clamp(1rem,4vw,1.5rem);transition:all .15s}button:hover,button:active{background:var(--neon-amber);color:#000;box-shadow:0 0 15px var(--neon-amber)}.controls-hint{bottom:max(20px, env(safe-area-inset-bottom));color:#666;font-size:clamp(.7rem,2.5vw,.9rem);position:absolute}.controls-hint p{margin-bottom:5px}#hud{pointer-events:none;z-index:50;padding:8px;padding-top:env(safe-area-inset-top,8px);padding-bottom:env(safe-area-inset-bottom,8px);flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.hud-top{flex-wrap:nowrap;justify-content:space-between;align-items:flex-start;gap:4px;display:flex}#hp-container{flex-shrink:0;gap:4px;display:flex}.heart{background:var(--neon-magenta);width:clamp(14px,4vw,20px);height:clamp(14px,4vw,20px);box-shadow:0 0 5px var(--neon-magenta);clip-path:polygon(50% 100%,0 40%,0 0,50% 20%,100% 0,100% 40%)}.heart.empty{border:1px solid var(--neon-magenta);background:0 0}#score-container{color:var(--neon-cyan);text-align:center;flex:1;min-width:0;margin:0 8px;font-size:clamp(.7rem,2.5vw,1.2rem)}#exp-bar-container{background:#222;border:1px solid #444;width:100%;height:5px;margin-top:4px}#exp-bar{background:var(--neon-cyan);width:0%;height:100%;box-shadow:0 0 5px var(--neon-cyan);transition:width .2s ease-out}#wave-container{color:var(--neon-amber);flex-shrink:0;font-size:clamp(.7rem,2.5vw,1.2rem);font-weight:700}.hud-bottom{pointer-events:all;justify-content:space-between;align-items:flex-end;display:flex}.floating-pause{bottom:max(30px, env(safe-area-inset-bottom,30px));z-index:100000;width:70px;height:70px;min-height:unset;border:4px solid var(--neon-amber);color:var(--neon-amber);cursor:pointer;background:#000000f2;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;font-size:2.2rem;display:flex;position:absolute;right:20px;box-shadow:0 0 25px #ffbf00b3;pointer-events:all!important;touch-action:none!important}.floating-pause:active{background:var(--neon-amber);color:#000}#dash-cd{color:var(--neon-cyan);border:1px solid var(--neon-cyan);background:#00ffff1a;padding:4px 8px;font-size:clamp(.7rem,2.5vw,1rem)}.cards-container{flex-wrap:wrap;justify-content:center;gap:10px;max-width:100%;margin-top:1rem;display:flex}.upgrade-card{cursor:pointer;background:#111;border:2px solid #444;flex-direction:column;justify-content:space-evenly;align-items:center;width:clamp(110px,28vw,150px);height:clamp(150px,40vw,200px);padding:10px;transition:all .2s;display:flex}.upgrade-card:hover,.upgrade-card:active{border-color:var(--neon-cyan);transform:translateY(-3px);box-shadow:0 0 20px #0ff6}.card-title{color:var(--neon-cyan);font-size:clamp(.85rem,3vw,1.1rem);font-weight:700}.card-desc{color:#ccc;font-size:clamp(.75rem,2.5vw,.9rem)}.shop-container{flex-wrap:wrap;justify-content:center}.menu-scroll{padding-top:max(50px, env(safe-area-inset-top));justify-content:flex-start;gap:10px;overflow-y:auto}.menu-topbar{top:max(10px, env(safe-area-inset-top));align-items:center;gap:8px;display:flex;position:absolute;right:10px}.menu-coins-bar{color:#ffdf00;margin-bottom:8px;font-size:clamp(1rem,4vw,1.3rem)}.shop-container{grid-template-columns:repeat(3,1fr);gap:6px;width:100%;max-width:340px;margin-bottom:10px;display:grid}.menu-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-bottom:10px;display:flex}.menu-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:8px;display:flex}.btn-primary{border-color:var(--neon-amber);color:var(--neon-amber);min-height:52px;padding:clamp(.6rem,3vw,1rem) clamp(1.2rem,5vw,2rem);font-size:clamp(1.1rem,5vw,1.5rem)}.btn-secondary{border-color:var(--neon-magenta);color:var(--neon-magenta);min-height:52px;padding:clamp(.6rem,3vw,1rem) clamp(.8rem,3vw,1.5rem);font-size:clamp(1rem,4vw,1.3rem)}.btn-secondary:hover,.btn-secondary:active{background:var(--neon-magenta);color:#000;box-shadow:0 0 15px var(--neon-magenta)}.btn-small{border:1px solid var(--neon-amber);color:var(--neon-amber);cursor:pointer;text-transform:uppercase;background:#00000080;min-height:44px;margin:0;padding:6px 10px;font-size:clamp(.75rem,3vw,1rem)}.btn-small:hover,.btn-small:active{background:var(--neon-amber);color:#000}.btn-small.btn-cyan{border-color:var(--neon-cyan);color:var(--neon-cyan)}.btn-small.btn-cyan:hover,.btn-small.btn-cyan:active{background:var(--neon-cyan);color:#000}.input-styled{color:var(--neon-cyan);border:2px solid var(--neon-cyan);text-align:center;background:#111;width:clamp(90px,30vw,140px);min-height:44px;padding:8px;font-family:Share Tech Mono,monospace;font-size:clamp(.9rem,3.5vw,1.2rem)}.select-styled{color:var(--neon-cyan);border:2px solid var(--neon-cyan);background:#111;min-height:44px;padding:6px 8px;font-family:Share Tech Mono,monospace;font-size:clamp(.85rem,3vw,1.1rem)}.hint-text{color:#555;text-align:center;margin-bottom:0;font-size:clamp(.65rem,2.5vw,.85rem)}
