:root{--bg-color: #1a1a2e;--panel-bg: #16213e;--panel-border: #0f3460;--accent-primary: #4cc9f0;--accent-secondary: #7209b7;--accent-success: #4361ee;--accent-danger: #f72585;--accent-gold: #f48c06;--text-primary: #e9ecef;--text-secondary: #8d99ae;--font-heading: "Nunito", "Segoe UI", sans-serif;--font-body: "Inter", system-ui, sans-serif;--radius-card: 16px;--radius-btn: 12px}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}body{margin:0;padding:0;background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-body);overflow:hidden;width:100vw;height:100vh;cursor:crosshair}#game-container{position:absolute;top:0;left:0;width:calc(100% - 360px);height:100%;z-index:1;background:radial-gradient(circle at center,#1b2735,#090a0f)}#sidebar{position:absolute;top:0;right:0;width:360px;height:100%;background:var(--panel-bg);border-left:4px solid var(--panel-border);display:flex;flex-direction:column;z-index:100;box-shadow:-4px 0 20px #0000004d}.panel-header{padding:25px;text-align:center;font-family:var(--font-heading);font-size:1.8rem;font-weight:800;color:var(--text-primary);background:var(--panel-border);border-bottom:4px solid #00000030}.tab-container{display:flex;flex-wrap:wrap;padding:10px;gap:5px;background:#1a1a2e}.tab-btn{flex:1 1 auto;background:#0f3460;border:none;border-radius:var(--radius-btn);padding:10px 15px;color:var(--text-secondary);font-family:var(--font-heading);font-weight:700;cursor:pointer;transition:transform .1s,background .2s;font-size:.9rem}.tab-btn:hover{background:#5390d9;color:#fff;transform:translateY(-2px)}.tab-btn.active{background:var(--accent-primary);color:#000;box-shadow:0 4px #3a0ca3;transform:translateY(-2px)}.content-panel{flex:1;overflow-y:auto;padding:20px;background:#16213e}.card{background:#1f2940;border-radius:var(--radius-card);padding:20px;margin-bottom:20px;box-shadow:0 4px 10px #0003;border:none;position:relative;overflow:hidden;transition:transform .2s}.card:hover{transform:translateY(-4px)}.card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--accent-primary)}.card-research:before{background:var(--accent-primary)}.card-upgrade:before{background:var(--accent-success)}.card-factory:before{background:var(--accent-gold)}.card-shop:before{background:var(--accent-danger)}.card-void:before{background:var(--accent-secondary)}.card h3{margin:0 0 8px;font-family:var(--font-heading);font-size:1.1rem;color:var(--text-primary)}.card p{margin:0 0 15px;font-size:.9rem;color:var(--text-secondary);line-height:1.4}button.buy-btn,button.shop-btn,button.research-btn,button.accelerator-buy-btn,button.void-buy-btn{width:100%;padding:12px;border:none;border-radius:var(--radius-btn);font-family:var(--font-heading);font-weight:800;font-size:1rem;cursor:pointer;transition:all .1s;background:#e94560;color:#fff;box-shadow:0 4px #9d1b32}button:active{transform:translateY(4px);box-shadow:none}button:disabled{background:#444;box-shadow:none;cursor:not-allowed;opacity:.7;transform:none!important}button.buy-btn{background:var(--accent-success);box-shadow:0 4px #2b44b0}button.research-btn{background:var(--accent-primary);box-shadow:0 4px #0096c7;color:#000}button.accelerator-buy-btn{background:var(--accent-gold);box-shadow:0 4px #bd6800;color:#000}button.void-buy-btn{background:var(--accent-secondary);box-shadow:0 4px #4f0685}#ui-layer{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;pointer-events:none}#fps-counter,#entity-counter,#dm-counter{position:absolute;left:20px;font-size:.9rem;color:#888;pointer-events:auto}#fps-counter{top:20px}#entity-counter{top:40px}#dm-counter{top:80px;color:var(--accent-secondary);font-weight:700;display:none}#energy-counter{position:absolute;top:25px;right:400px;font-family:var(--font-heading);font-weight:900;font-size:2rem;color:#fff;text-shadow:2px 2px 0 #000;background:var(--accent-gold);padding:10px 20px;border-radius:50px;box-shadow:0 4px #bd6800;pointer-events:auto}#guide{font-family:var(--font-heading);background:#00000080;padding:10px;border-radius:20px;bottom:40px;display:inline-block;left:50%;transform:translate(-50%);width:auto;font-weight:700}.notification-toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#2a2a2a;border:2px solid #ffd700;color:#fff;padding:15px 30px;border-radius:30px;box-shadow:0 10px 30px #00000080;font-size:1.2rem;font-weight:700;z-index:2000;animation:slideUp .5s cubic-bezier(.175,.885,.32,1.275);display:flex;align-items:center;gap:10px}@keyframes slideUp{0%{transform:translate(-50%,100px);opacity:0}to{transform:translate(-50%);opacity:1}}.card-quantum{background:linear-gradient(135deg,#14001ee6,#28003ce6);border:1px solid #b300ff;padding:15px;margin-bottom:15px;border-radius:12px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 15px #b300ff33;transition:transform .2s}.card-quantum:hover{transform:translateY(-2px);box-shadow:0 6px 20px #b300ff66}.card-quantum button{background:#b300ff;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:700}.card-quantum button:hover{background:#d166ff}.quantum-header{background:#b300ff;color:#1a0024;padding:10px;border-radius:8px;text-align:center;font-weight:700;margin-bottom:15px;box-shadow:0 0 10px #b300ff}.periodic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:10px;padding:10px}.atom-card{background:#1f2940;border-radius:8px;padding:8px;aspect-ratio:1 / 1;display:flex;flex-direction:column;justify-content:space-between;position:relative;box-shadow:0 4px #0000004d;border:2px solid transparent;transition:transform .2s,box-shadow .2s;cursor:default;overflow:hidden}.atom-card:hover{transform:translateY(-4px);box-shadow:0 8px #0000004d;z-index:10}.atom-card.new-discovery{animation:pulse-border 2s infinite;border-color:var(--accent-gold)}.atom-card:before{content:"";position:absolute;inset:0;background:var(--atom-color);opacity:.15;z-index:0}.atom-card.locked{background:#111;border-color:#333;opacity:.5;filter:grayscale(100%)}.atom-number{font-family:var(--font-heading);font-size:.8rem;color:var(--text-secondary);opacity:.7;z-index:1}.atom-symbol{font-family:var(--font-heading);font-size:1.8rem;font-weight:900;text-align:center;color:var(--atom-color);text-shadow:2px 2px 0 rgba(0,0,0,.5);z-index:1}.atom-name{font-size:.65rem;text-align:center;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:1}@keyframes pulse-border{0%{border-color:var(--accent-gold);box-shadow:0 0 #f48c0666}70%{border-color:var(--accent-gold);box-shadow:0 0 0 10px #f48c0600}to{border-color:var(--accent-gold);box-shadow:0 0 #f48c0600}}.discovery-overlay{width:100vw;height:100vh;background:#000000d9;backdrop-filter:blur(5px);display:flex;justify-content:center;align-items:center;z-index:9999;opacity:0;transition:opacity .5s ease;pointer-events:none;position:fixed;top:0;left:0}.discovery-overlay.active{opacity:1;pointer-events:all}.discovery-popup{background:radial-gradient(circle at center,#2a2a40,#1a1a20);border:3px solid var(--accent-gold);border-radius:20px;padding:40px;text-align:center;color:#fff;max-width:500px;width:90%;box-shadow:0 0 50px #ffd70066;transform:scale(.8) translateY(20px);transition:transform .5s cubic-bezier(.175,.885,.32,1.275);display:flex;flex-direction:column;align-items:center}.discovery-overlay.active .discovery-popup{transform:scale(1) translateY(0)}.discovery-popup h2{font-size:2rem;color:var(--accent-gold);margin:0 0 20px;text-transform:uppercase;letter-spacing:2px}.discovery-symbol{font-size:5rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#ffffff1a,#fff0);width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;border:4px solid white;box-shadow:0 0 30px #fff}.discovery-popup button{background:var(--accent-primary);color:#fff;border:none;padding:12px 30px;font-size:1.2rem;border-radius:8px;cursor:pointer;margin-top:20px;transition:background .2s}.discovery-popup button:hover{background:var(--accent-secondary)}.card-quantum{border-left:4px solid #b300ff;background:#1e2130;box-shadow:0 4px 10px #0000004d;margin-bottom:12px;padding:16px;border-radius:12px;display:flex;flex-direction:column}.card-quantum h3{color:#b300ff!important;font-weight:800}.card-quantum p{color:#8fa0bc;line-height:1.4;margin-bottom:15px}button.quantum-buy-btn{background:#b300ff;border:none;border-radius:8px;color:#fff;font-weight:800;padding:10px;box-shadow:0 4px #7200a3;text-shadow:none;transition:all .1s;cursor:pointer}button.quantum-buy-btn:hover{background:#c840ff;box-shadow:0 4px #8a00c2;transform:translateY(-2px)}button.quantum-buy-btn:active{transform:translateY(2px);box-shadow:none}button.quantum-buy-btn:disabled{background:#3a3a4a;color:#666;box-shadow:none;transform:none;cursor:not-allowed}.card-stellar{border-left:4px solid #ffd700;background:#1e2130;box-shadow:0 4px 10px #0000004d;margin-bottom:12px;padding:16px;border-radius:12px;display:flex;flex-direction:column}.card-stellar h3{color:gold!important;font-weight:800}.card-stellar p{color:#ccb;line-height:1.4;margin-bottom:15px}button.stellar-buy-btn{background:gold;border:none;border-radius:8px;color:#000;font-weight:900;padding:10px;box-shadow:0 4px #b8860b;text-shadow:none;transition:all .1s;cursor:pointer}button.stellar-buy-btn:hover{background:#ffe033;box-shadow:0 4px #daa520;transform:translateY(-2px)}button.stellar-buy-btn:active{transform:translateY(2px);box-shadow:none}button.stellar-buy-btn:disabled{background:#3a3a4a;color:#666;box-shadow:none;transform:none;cursor:not-allowed}body.premium-user{background:radial-gradient(circle at center,#2a2200,#090a0f)!important}body.premium-user .panel-header{border-bottom-color:var(--accent-gold);color:var(--accent-gold);text-shadow:0 0 10px rgba(255,215,0,.3)}body.premium-user #sidebar{border-left-color:var(--accent-gold);box-shadow:-4px 0 30px #ffd70026}body.premium-user .tab-btn.active{background:var(--accent-gold);box-shadow:0 4px #b8860b}body.premium-user .card{border:1px solid rgba(255,215,0,.2)}body.premium-user #ui-layer:after{content:"👑 PREMIUM ARCHITECT";position:absolute;bottom:10px;right:10px;font-family:var(--font-heading);font-weight:900;color:var(--accent-gold);opacity:.5;pointer-events:none;font-size:.8rem;letter-spacing:2px}
