:root{--bg-dark: #070913;--bg-card: rgba(16, 23, 41, .85);--bg-card-border: rgba(0, 240, 255, .2);--primary: #00f0ff;--primary-glow: rgba(0, 240, 255, .4);--secondary: #7928ca;--accent-pink: #ff0080;--accent-green: #00ff88;--accent-yellow: #ffb800;--accent-red: #ff3344;--text-main: #f0f4fc;--text-muted: #8b9bb4;--font-family: "Baloo 2", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box;margin:0;padding:0;-webkit-user-select:none;user-select:none}body{background-color:var(--bg-dark);color:var(--text-main);font-family:var(--font-family);overflow:hidden;width:100vw;height:100vh}#canvas-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}#ui-root{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between}.hud-header{pointer-events:auto;display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background:linear-gradient(180deg,#070913f2,#07091300)}.hud-brand{display:flex;align-items:center;gap:12px}.hud-title{font-size:1.4rem;font-weight:800;color:var(--primary);text-shadow:0 0 10px var(--primary-glow)}.hud-stats-row{display:flex;gap:20px}.stat-badge{background:var(--bg-card);border:1px solid var(--bg-card-border);padding:6px 14px;border-radius:20px;display:flex;align-items:center;gap:8px;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap}.stat-value{color:var(--primary)}.kardashev-progress-box{min-width:180px;display:flex;flex-direction:column;justify-content:center}.kardashev-bar-bg{width:100%;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;margin-top:4px}.kardashev-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--secondary));transition:width .3s ease}.game-layout{display:flex;justify-content:flex-end;height:calc(100vh - 160px);padding:0 24px}.sidebar-panel{pointer-events:auto;width:380px;background:var(--bg-card);border:1px solid var(--bg-card-border);border-radius:16px;padding:16px;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 8px 32px #00000080}.nav-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.nav-tab{flex:1 1 calc(33% - 8px);min-width:80px;background:#ffffff0d;border:none;color:var(--text-muted);padding:8px 4px;border-radius:8px;cursor:pointer;font-weight:600;font-size:.9rem;transition:all .2s}.panel-content{flex:1;overflow-y:auto}.game-panel{display:none}.game-panel.active{display:block}.facility-card,.resource-card,.mission-card,.event-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px;margin-bottom:12px;transition:border-color .2s,box-shadow .2s}.facility-card:hover{border-color:var(--primary);box-shadow:0 0 8px var(--primary-glow)}.facility-card.broken{border-color:var(--accent-red);background:#ff334414}.facility-header{display:flex;align-items:center;gap:10px}.facility-icon{font-size:1.6rem}.facility-title-box{flex:1}.facility-name{font-weight:700;font-size:1rem}.facility-level{font-size:.8rem;color:var(--text-muted)}.facility-stats{display:flex;justify-content:space-between;margin:10px 0;font-size:.85rem;color:var(--text-muted)}.btn{border:none;border-radius:8px;padding:8px 16px;font-weight:700;cursor:pointer;transition:all .2s}.btn-primary:hover{box-shadow:0 0 14px var(--primary-glow)}.btn-secondary{background:#ffffff1a;color:var(--text-main)}.btn-disabled{background:#ffffff0d;color:var(--text-muted);cursor:not-allowed}.btn-block{width:100%}.boost-active{background:var(--accent-pink)!important;color:#fff!important;animation:pulse 1s infinite alternate}@keyframes pulse{0%{box-shadow:0 0 8px var(--accent-pink)}to{box-shadow:0 0 20px var(--accent-pink)}}.modal-overlay{pointer-events:auto;position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:99995}.modal-card{background:var(--bg-card);border:1px solid var(--bg-card-border);border-radius:16px;padding:24px;width:480px;max-width:90vw;box-shadow:0 16px 48px #000c}.notification-container{pointer-events:none;position:fixed;bottom:24px;left:24px;z-index:2000;display:flex;flex-direction:column;gap:10px}.toast{pointer-events:auto;background:var(--bg-card);border-left:4px solid var(--primary);padding:12px 18px;border-radius:8px;font-weight:600;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 16px #0006;transition:opacity .4s,transform .4s}.toast-fade-out{opacity:0;transform:translateY(10px)}.toast-success{border-left-color:var(--accent-green)}.toast-warning{border-left-color:var(--accent-yellow)}.toast-error{border-left-color:var(--accent-red)}.progress-bar-bg{width:100%;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;margin:6px 0}.progress-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.progress-bar-fill.green{background:var(--accent-green)}.progress-bar-fill.yellow{background:var(--accent-yellow)}.progress-bar-fill.red{background:var(--accent-red)}.progress-bar-fill.blue{background:var(--primary)}.progress-bar-fill.gradient{background:linear-gradient(90deg,var(--accent-green),var(--accent-yellow),var(--accent-red))}.resource-card{display:flex;align-items:center;gap:10px}.resource-info{flex:1}.resource-name{font-weight:700;font-size:.95rem}.resource-stock{font-size:.8rem;color:var(--text-muted)}.resource-buy-group{display:flex;gap:4px}.resource-buy-group .btn{padding:4px 8px;font-size:.75rem}.mission-card{display:flex;flex-direction:column;gap:8px}.mission-desc{font-weight:600;font-size:.9rem}.mission-reward{font-size:.8rem;color:var(--accent-yellow)}.mission-card .btn{align-self:flex-end}.event-entry{padding:6px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.85rem;color:var(--text-muted)}.event-entry .event-time{font-size:.7rem;color:#ffffff4d;margin-right:8px}.level-up-overlay{pointer-events:auto;position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;z-index:5000;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:levelup-fade-in .5s ease}.level-up-overlay h1{font-size:3rem;color:var(--primary);text-shadow:0 0 40px var(--primary-glow);animation:levelup-pulse 1.5s infinite alternate}.level-up-overlay p{font-size:1.2rem;margin:12px 0;color:var(--text-main)}@keyframes levelup-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes levelup-pulse{0%{text-shadow:0 0 20px var(--primary-glow)}to{text-shadow:0 0 60px var(--primary),0 0 80px var(--secondary)}}.build-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-height:60vh;overflow-y:auto}.build-option{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px;cursor:pointer;transition:all .2s;text-align:center}.build-option:hover{border-color:var(--primary);transform:translateY(-2px)}.build-option.locked{opacity:.4;cursor:not-allowed}.build-option .build-icon{font-size:2rem;display:block;margin-bottom:6px}.build-option .build-name{font-weight:700;font-size:.9rem}.build-option .build-cost{font-size:.8rem;color:var(--accent-yellow)}.build-option .build-prod{font-size:.75rem;color:var(--accent-green)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}.auth-status{font-size:.85rem;cursor:pointer}.auth-status.guest{color:var(--accent-yellow)}.auth-status.signed-in{color:var(--accent-green)}@media(max-width:768px){.hud-header{flex-direction:column;gap:8px;padding:8px 12px}.hud-stats-row{flex-wrap:wrap;gap:8px;justify-content:center}.stat-badge{padding:4px 10px;font-size:.85rem}.game-layout{justify-content:center;padding:0 8px}.sidebar-panel{width:100%;max-width:100%;border-radius:12px 12px 0 0;max-height:45vh}.nav-tab{font-size:.75rem;padding:6px 2px}.build-grid{grid-template-columns:1fr}.modal-card{width:95vw}}@media(max-width:480px){.hud-title{font-size:1rem}.kardashev-progress-box{min-width:140px}}.modal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;max-height:55vh;overflow-y:auto;padding-right:8px}.modal-grid::-webkit-scrollbar{width:6px}.modal-grid::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.modal-grid::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px}.btn-sell:hover{background:#852a2a!important}.build-options-list{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:12px;max-height:55vh;overflow-y:auto;padding-right:8px}.build-options-list::-webkit-scrollbar{width:8px}.build-options-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.build-options-list::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px}.modal-card{max-width:600px!important;width:90%!important}.btn-sell{background:#a93232!important;border-color:#8c2323!important;color:#fff!important;margin-top:6px!important;width:100%!important}.btn-sell:hover{background:#c53a3a!important}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.modal-header h2{margin:0;font-size:1.25rem}.btn-close{background:transparent!important;border:none!important;color:#fff9!important;font-size:1.8rem!important;cursor:pointer!important;padding:0!important;margin:0!important;line-height:1!important;transition:color .2s}.btn-close:hover{color:var(--accent-red)!important}.build-option-card{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px;display:flex;flex-direction:column;justify-content:space-between;transition:background .2s,border-color .2s}.build-option-card:hover{background:#ffffff12;border-color:#fff3}.build-header{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:12px}.leaderboard-list{display:flex;flex-direction:column;gap:8px;max-height:60vh;overflow-y:auto;padding-right:8px}.leaderboard-item{display:flex;justify-content:space-between;align-items:center;background:#ffffff0d;padding:10px 16px;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.leaderboard-item.is-me{background:#2ecc7126;border-color:var(--accent-green)}.leaderboard-rank{font-weight:700;font-size:1.2rem;color:var(--accent-orange);width:40px}.leaderboard-name{flex:1;font-weight:700;font-size:1.1rem}.leaderboard-score{text-align:right}.leaderboard-score .energy{font-weight:700;color:var(--accent-yellow)}.leaderboard-score .tier{font-size:.8rem;color:var(--text-muted)}.leaderboard-list::-webkit-scrollbar{width:6px}.leaderboard-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.leaderboard-list::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px}.game-clock{font-family:Courier New,Courier,monospace;font-size:.95rem;font-weight:700;color:var(--accent-yellow);background:#0006;padding:6px 12px;border-radius:6px;border:1px solid rgba(255,255,255,.1);margin-left:16px;letter-spacing:.5px;box-shadow:inset 0 0 10px #00000080}.header-left{display:flex;align-items:center}.btn-primary{background:#00c8ff26;color:#6cf;border:1px solid rgba(0,200,255,.3);box-shadow:0 2px 10px #00c8ff0d}.btn-primary:hover:not(:disabled){background:#00c8ff40;border-color:#00c8ff80;color:#fff;box-shadow:0 4px 15px #00c8ff26}.btn-success{background:#2ecc7126;color:#72e09c;border:1px solid rgba(46,204,113,.3);box-shadow:0 2px 10px #2ecc710d}.btn-success:hover:not(:disabled){background:#2ecc7140;border-color:#2ecc7180;color:#fff;box-shadow:0 4px 15px #2ecc7126}.btn-warning{background:#f39c1226;color:#f5c471;border:1px solid rgba(243,156,18,.3);box-shadow:0 2px 10px #f39c120d}.btn-warning:hover:not(:disabled){background:#f39c1240;border-color:#f39c1280;color:#fff;box-shadow:0 4px 15px #f39c1226}.nav-tab.active{background:#00c8ff26;color:#8df;border-color:#00c8ff66}@keyframes slideIn{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}#notification-container{position:fixed!important;top:100px!important;bottom:auto!important;left:50%!important;transform:translate(-50%)!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:10px!important;z-index:100000!important;pointer-events:none!important;width:auto!important}.toast{text-align:center!important;background:#0a0f1ee6!important;border:1px solid rgba(255,255,255,.1)!important}.sidebar-panel{transition:transform .3s cubic-bezier(.4,0,.2,1)!important;position:relative}.sidebar-panel{transition:transform .45s cubic-bezier(.4,0,.2,1)!important}.sidebar-panel.collapsed{transform:translateY(calc(100% - 110px))!important}.add-facility-card{display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;min-height:140px;border:2px dashed rgba(255,255,255,.15);background:#0003;transition:all .2s}.add-facility-card:hover{border-color:#00c8ff66;background:#00c8ff0d}.btn-upgrade-mini{flex:1;font-size:.75rem;padding:5px}.btn-sell-full{width:100%}.btn-repair-full{flex:1}.upgrade-wrapper{width:100%;display:flex;flex-direction:column;gap:4px}.upgrade-title{font-size:.75rem;color:var(--text-secondary);text-align:center;margin-bottom:2px}.upgrade-row{display:flex;gap:5px}#dock-nav{position:fixed;bottom:25px;left:50%;transform:translate(-50%);display:flex;gap:8px;background:#0f1423d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);padding:10px 20px;border-radius:24px;z-index:99995;box-shadow:0 10px 40px #000000b3,inset 0 1px #ffffff1a}.dock-btn{padding:8px 12px;background:transparent;border:none;color:#888;font-family:inherit;font-size:.85rem;font-weight:700;cursor:pointer;border-radius:16px;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;flex-direction:column;align-items:center;gap:5px}.dock-btn .dock-icon{font-size:1.4rem;transition:transform .3s ease;filter:grayscale(.8) opacity(.7)}.dock-btn:hover{background:#ffffff1a;color:#fff;transform:translateY(-8px) scale(1.05)}.dock-btn:hover .dock-icon{transform:scale(1.2);filter:grayscale(0) opacity(1)}.dock-btn.active{color:var(--accent-blue);background:#4488ff26;box-shadow:0 0 15px #48f3,inset 0 1px #ffffff1a}.dock-btn.active .dock-icon{filter:grayscale(0) opacity(1);transform:scale(1.1)}#central-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#05080fb3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:99990;display:none;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}#central-modal-overlay.show{display:flex;opacity:1}#central-modal{background:#0f1423f2;border:1px solid var(--accent-blue);border-radius:16px;width:900px;max-width:95%;height:80vh;max-height:850px;display:flex;flex-direction:column;box-shadow:0 30px 60px #000000e6,0 0 40px #4488ff26;transform:scale(.95) translateY(20px);transition:all .4s cubic-bezier(.175,.885,.32,1.275);overflow:hidden}#central-modal-overlay.show #central-modal{transform:scale(1) translateY(0)}#central-modal-header{padding:15px 25px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;background:linear-gradient(180deg,#ffffff0d,#0000)}#central-modal-title{font-size:1.4rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:2px;margin:0;text-shadow:0 0 10px rgba(68,136,255,.5)}#btn-close-modal{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#aaa;font-size:1.5rem;cursor:pointer;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}#btn-close-modal:hover{background:#e74c3c33;color:var(--accent-red);border-color:var(--accent-red);transform:rotate(90deg)}#central-modal-body{overflow:hidden;min-height:0;flex:1;position:relative;background:#0003}.sidebar-panel{display:none!important}#dock-nav,.dock-btn{pointer-events:auto!important;z-index:999999!important}#facilities-list{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px;margin-top:15px}#facilities-list .facility-card{display:flex;flex-direction:column;justify-content:space-between;height:100%}.facility-actions{margin-top:auto}.btn-upgrade-mini{flex:1;padding:8px 4px;line-height:1.2}.add-facility-card{min-height:200px}@keyframes windowPop{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes tabSwitch{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.modal-card{animation:windowPop .3s cubic-bezier(.2,.8,.2,1) forwards!important;background:#0a0f1ea6!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;border:1px solid rgba(255,255,255,.15)!important;box-shadow:0 10px 40px #0009,inset 0 0 15px #ffffff0d!important}.sidebar-panel{animation:windowPop .4s cubic-bezier(.2,.8,.2,1) forwards;background:#1017298c!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;border:1px solid rgba(0,240,255,.25)!important;box-shadow:0 8px 32px #00000080,inset 0 0 20px #00f0ff0d!important}#central-modal .modal-card{background:#0c101cb3!important;-webkit-backdrop-filter:blur(25px)!important;backdrop-filter:blur(25px)!important;border:1px solid rgba(0,240,255,.3)!important;box-shadow:0 15px 50px #000c,inset 0 0 30px #00f0ff1a!important}.tab-content{animation:tabSwitch .25s ease-out forwards}.faq-item{border:1px solid rgba(255,255,255,.1);border-radius:6px;margin-bottom:8px;overflow:hidden;transition:all .3s ease}.faq-header{padding:12px 16px;background:#ffffff0d;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-weight:700}.faq-header:hover{background:#ffffff1a}.faq-body{max-height:0;padding:0 16px;opacity:0;transition:all .3s ease;background:#0003}.faq-item.active .faq-body{max-height:500px;padding:16px;opacity:1}.faq-item.active .faq-icon{transform:rotate(180deg)}.faq-icon{transition:transform .3s ease}.active-tab-btn{background:#00f0ff33!important;color:#fff!important;border:1px solid var(--primary)!important;box-shadow:0 0 10px #00f0ff66,inset 0 0 10px #00f0ff33!important;text-shadow:0 0 5px var(--primary)!important}.inactive-tab-btn{background:#0006!important;color:#666!important;border:1px solid rgba(255,255,255,.05)!important;opacity:.7}.inactive-tab-btn:hover{opacity:1;color:#aaa!important}
