:root{--bg-deep-space: #070514;--bg-panel: rgba(18, 14, 45, .45);--bg-panel-hover: rgba(26, 20, 64, .6);--border-glass: rgba(255, 255, 255, .08);--border-active: rgba(0, 242, 254, .6);--neon-cyan: #00f2fe;--neon-pink: #ff007f;--neon-purple: #b158ff;--gold-primary: #ffe15d;--gold-glow: rgba(255, 225, 93, .4);--success-green: #39ff14;--font-hud: "Orbitron", sans-serif;--font-body: "Outfit", sans-serif}*{box-sizing:border-box;margin:0;padding:0;-webkit-user-select:none;user-select:none}body{background-color:var(--bg-deep-space);color:#fff;font-family:var(--font-body);overflow-x:hidden;min-height:100vh;position:relative}#space-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:-1;background:radial-gradient(circle at center,#0f0a2e,#030209)}.glass-panel{background:var(--bg-panel);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);border-radius:16px;box-shadow:0 8px 32px #00000080;transition:all .3s cubic-bezier(.25,.8,.25,1)}#game-container{max-width:1200px;margin:0 auto;padding:24px;display:flex;flex-direction:column;gap:20px;min-height:100vh}.game-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.05)}.logo-area h1{font-family:var(--font-hud);font-size:2.2rem;font-weight:900;letter-spacing:2px;background:linear-gradient(135deg,#ffffff 40%,var(--neon-cyan) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:flex;align-items:center;gap:8px}.plus-logo{color:var(--neon-pink);-webkit-text-fill-color:var(--neon-pink);text-shadow:0 0 12px var(--neon-pink);animation:pulse 2s infinite alternate}.subtitle{font-family:var(--font-hud);font-size:.75rem;color:#ffffff80;letter-spacing:4px;text-transform:uppercase;display:block;margin-top:4px}.stats-area{display:flex;gap:16px}.stat-box{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:10px 20px;display:flex;align-items:center;gap:12px;transition:all .3s ease}.coins-box{border-color:#ffe15d33;box-shadow:0 0 15px #ffe15d0d}.coins-box.glow-active{box-shadow:0 0 25px var(--gold-glow);transform:scale(1.05)}.coin-icon{font-size:1.8rem;animation:spin 6s infinite linear}.mult-icon{font-size:1.6rem;color:var(--neon-cyan);text-shadow:0 0 8px var(--neon-cyan)}.stat-content{display:flex;flex-direction:column}.stat-label{font-size:.65rem;font-family:var(--font-hud);color:#ffffff80;letter-spacing:1.5px}.stat-value{font-family:var(--font-hud);font-size:1.6rem;font-weight:700}#coin-count{color:var(--gold-primary);text-shadow:0 0 10px var(--gold-glow)}#mult-value{color:var(--neon-cyan);text-shadow:0 0 10px rgba(0,242,254,.3)}.game-layout{display:grid;grid-template-columns:1fr 360px;gap:20px;flex-grow:1}@media (max-width: 900px){.game-layout{grid-template-columns:1fr}}.math-arena{display:flex;flex-direction:column;gap:20px}.viewport-panel{flex-grow:1;min-height:280px;display:flex;flex-direction:column;justify-content:space-between;padding:16px;position:relative;overflow:hidden;border-color:#00f2fe26;box-shadow:inset 0 0 20px #00f2fe0d}.hud-bar{font-family:var(--font-hud);font-size:.75rem;color:#00f2feb3;display:flex;justify-content:space-between;letter-spacing:1px}.top-hud{border-bottom:1px solid rgba(0,242,254,.1);padding-bottom:6px}.bottom-hud{border-top:1px solid rgba(0,242,254,.1);padding-top:6px;color:#fff6}.cursor-blink{animation:blink 1.2s infinite}.equation-container{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:32px 0;position:relative}.equation-glow{position:absolute;width:250px;height:100px;background:radial-gradient(circle,rgba(177,88,255,.15) 0%,transparent 70%);filter:blur(20px);z-index:0;animation:pulse-glow 4s infinite alternate}.equation-display{display:flex;align-items:center;justify-content:center;gap:16px;z-index:1;font-family:var(--font-hud);font-size:4rem;font-weight:700}@media (max-width: 600px){.equation-display{font-size:2.5rem;gap:8px}}.eq-num{text-shadow:0 0 15px rgba(255,255,255,.2)}.base-67{color:#fff}.eq-op{color:var(--neon-pink);text-shadow:0 0 15px rgba(255,0,127,.4)}.add-num{color:var(--neon-cyan);text-shadow:0 0 20px rgba(0,242,254,.5)}.eq-equals{color:#fff6}.input-wrapper{position:relative;display:inline-block;width:160px}@media (max-width: 600px){.input-wrapper{width:100px}}#math-input{width:100%;background:transparent;border:none;border-bottom:4px solid rgba(255,255,255,.15);outline:none;font-family:var(--font-hud);font-size:4rem;font-weight:700;color:var(--gold-primary);text-align:center;padding:0;caret-color:var(--neon-cyan);transition:all .3s ease;text-shadow:0 0 20px var(--gold-glow)}#math-input:focus{border-bottom-color:var(--neon-cyan)}#math-input::-webkit-outer-spin-button,#math-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}#math-input[type=number]{-moz-appearance:textfield}.feedback-toast{position:absolute;bottom:-40px;font-family:var(--font-hud);font-weight:700;font-size:1.2rem;opacity:0;transform:translateY(10px);transition:all .2s ease;z-index:2}.feedback-toast.success{color:var(--success-green);text-shadow:0 0 12px rgba(57,255,20,.5);opacity:1;transform:translateY(0);animation:bounce .4s ease}.feedback-toast.error{color:var(--neon-pink);text-shadow:0 0 12px rgba(255,0,127,.5);opacity:1;transform:translateY(0);animation:shake .4s ease}.combo-container{display:flex;flex-direction:column;gap:6px;margin-top:auto;padding:8px 0}.combo-label{font-family:var(--font-hud);font-size:.7rem;color:#fff9;letter-spacing:1px}.combo-track{width:100%;height:8px;background:#ffffff0d;border-radius:4px;overflow:hidden}.combo-fill{width:0%;height:100%;background:linear-gradient(90deg,var(--neon-purple),var(--neon-cyan));box-shadow:0 0 8px var(--neon-cyan);border-radius:4px;transition:width .1s linear}.viewport-panel.shake{animation:container-shake .4s ease;border-color:var(--neon-pink)}.viewport-panel.flash-correct{animation:container-flash .3s ease}.keypad-panel{padding:16px}.keypad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.key-btn{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;font-family:var(--font-hud);font-size:1.5rem;font-weight:700;color:#fff;padding:16px 0;cursor:pointer;outline:none;transition:all .15s ease;box-shadow:0 4px 6px #0003}.key-btn:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-2px)}.key-btn:active{background:#ffffff26;transform:translateY(1px)}.key-action{font-size:.9rem;font-weight:900}#key-clear{color:var(--neon-pink);border-color:#ff007f33}#key-clear:hover{background:#ff007f1a;border-color:var(--neon-pink);box-shadow:0 0 10px #ff007f33}.key-enter{color:var(--neon-cyan);border-color:#00f2fe33;grid-column:span 1}.key-enter:hover{background:#00f2fe1a;border-color:var(--neon-cyan);box-shadow:0 0 10px #00f2fe33}.shop-panel{display:flex;flex-direction:column;padding:20px;gap:16px}.shop-title{font-family:var(--font-hud);font-size:1.3rem;letter-spacing:2px;color:var(--neon-cyan);text-shadow:0 0 8px rgba(0,242,254,.2);border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:8px}.shop-intro{font-size:.8rem;color:#fff9;line-height:1.4}.upgrades-list{display:flex;flex-direction:column;gap:12px;overflow-y:auto;max-height:520px;padding-right:4px}.upgrades-list::-webkit-scrollbar{width:6px}.upgrades-list::-webkit-scrollbar-track{background:#0000001a;border-radius:4px}.upgrades-list::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.upgrades-list::-webkit-scrollbar-thumb:hover{background:#fff3}.upgrade-card{width:100%;display:flex;align-items:center;gap:14px;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:12px;cursor:pointer;text-align:left;color:#fff;outline:none;transition:all .2s ease;position:relative;overflow:hidden}.upgrade-card:hover{background:var(--bg-panel-hover);border-color:#ffffff26;transform:translate(2px)}.upgrade-card:active{transform:translate(0)}.upgrade-card.glow-active{background:#ffe15d26!important;border-color:var(--gold-primary)!important;box-shadow:0 0 20px #ffe15d66!important;transform:scale(1.03)}.upgrade-card:disabled{opacity:.5;cursor:not-allowed;background:#0003;border-color:#ffffff05}.upgrade-card:disabled:hover{transform:none}.upg-icon{font-size:1.8rem;flex-shrink:0;width:48px;height:48px;background:#ffffff0a;border-radius:10px;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.upgrade-card:hover .upg-icon{transform:scale(1.1) rotate(5deg)}.upg-details{display:flex;flex-direction:column;gap:3px;flex-grow:1}.upg-name{font-weight:600;font-size:.95rem}.upg-desc{font-size:.7rem;color:#ffffff80;line-height:1.2}.upg-cost-tag{font-family:var(--font-hud);font-size:.8rem;color:var(--gold-primary);font-weight:700;margin-top:2px}.upg-owned{position:absolute;top:8px;right:12px;font-size:.65rem;color:#fff6}.upgrade-card:hover .upg-owned{color:var(--neon-cyan)}.reset-btn{margin-top:auto;background:transparent;border:1px solid rgba(255,99,71,.15);color:#ff634799;border-radius:8px;padding:8px;font-size:.75rem;cursor:pointer;transition:all .2s ease}.reset-btn:hover{background:#ff634714;border-color:#ff634766;color:tomato}.trophy-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#04020ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;display:flex;align-items:center;justify-content:center;transition:opacity .5s ease}.trophy-overlay.hidden{opacity:0;pointer-events:none}.trophy-content{width:90%;max-width:500px;padding:40px 30px;text-align:center;border-color:var(--gold-primary);box-shadow:0 0 50px #ffe15d26;position:relative;overflow:hidden;animation:modal-enter .5s cubic-bezier(.175,.885,.32,1.275)}.trophy-shine{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,225,93,.08) 0%,transparent 60%);animation:spin 15s infinite linear;pointer-events:none}.victory-header{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.victory-tag{font-family:var(--font-hud);color:var(--neon-pink);font-size:.85rem;letter-spacing:2px;font-weight:700}.victory-title{font-family:var(--font-hud);color:var(--gold-primary);text-shadow:0 0 15px var(--gold-glow);font-size:1.8rem;font-weight:900;letter-spacing:1px}.victory-desc{font-size:.9rem;color:#ffffffb3;line-height:1.4}.trophy-wrapper{width:200px;height:240px;margin:0 auto;cursor:grab;perspective:600px;display:flex;align-items:center;justify-content:center;transition:transform .1s ease}.trophy-wrapper:active{cursor:grabbing}.gold-trophy{width:100%;height:100%;filter:drop-shadow(0 8px 16px rgba(0,0,0,.6));transform-style:preserve-3d;transition:transform .2s cubic-bezier(.1,.8,.3,1);transform:rotateY(0)}.trophy-controls{margin-top:24px;display:flex;flex-direction:column;gap:16px;align-items:center}.trophy-hint{font-size:.75rem;color:#fff6}.action-btn{background:linear-gradient(135deg,var(--gold-primary) 0%,#d48800 100%);color:#331d00;font-family:var(--font-hud);font-weight:700;font-size:1rem;border:none;border-radius:30px;padding:12px 32px;cursor:pointer;box-shadow:0 4px 15px var(--gold-glow);transition:all .3s cubic-bezier(.25,.8,.25,1);outline:none}.action-btn:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 6px 20px #ffe15d99}.action-btn:active{transform:translateY(1px) scale(.98)}.confetti-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden}@keyframes pulse{0%{transform:scale(1);opacity:.8}to{transform:scale(1.1);opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes pulse-glow{0%{transform:scale(.9);opacity:.6}to{transform:scale(1.1);opacity:1}}@keyframes modal-enter{0%{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}@keyframes bounce{0%,to{transform:scale(1) translateY(0)}50%{transform:scale(1.15) translateY(-5px)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}@keyframes container-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@keyframes container-flash{0%{box-shadow:inset 0 0 20px #00f2fe0d,0 0 #39ff1400}50%{box-shadow:inset 0 0 35px #39ff144d,0 0 20px #39ff1426;border-color:#39ff1466}to{box-shadow:inset 0 0 20px #00f2fe0d,0 0 #39ff1400}}
