:root{--bg-dark:#1a1a2e;--bg-medium:#16213e;--bg-light:#1f3460;--accent:#e94560;--accent-hover:#ff6b6b;--text-primary:#eee;--text-secondary:#eee;--border-color:#333;--food-color:#4ade80;--wood-color:#a78b5a;--stone-color:#9ca3af;--metal-color:#60a5fa;--research-color:#c084fc;--mana-color:#f0abfc;--tile-size:50px;--grid-gap:2px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;font-size:18px;background-color:var(--bg-dark);color:var(--text-primary);min-height:100vh;overflow:hidden}#game-container{display:flex;flex-direction:column;height:100vh;max-height:100vh}#resource-bar{display:flex;justify-content:center;gap:20px;padding:10px 20px;background-color:var(--bg-medium);border-bottom:2px solid var(--border-color);flex-wrap:wrap}.resource{display:flex;align-items:center;gap:6px;padding:8px 12px;background-color:var(--bg-light);border-radius:8px;min-width:120px}.resource-icon{font-size:1.3em}.resource-value{font-size:1em;font-weight:700;min-width:50px;text-align:right}.resource-rate{font-size:.75em;color:var(--text-primary);min-width:55px}.resource-value{color:var(--text-primary)}#main-area{display:flex;flex:1;overflow:hidden}#grid-section{flex:1;position:relative;overflow:hidden;background-color:var(--bg-dark);cursor:grab}#grid-section.dragging{cursor:grabbing}#grid-svg{width:100%;height:100%;display:block}#svg-background{width:10000px;height:10000px;x:-5000;y:-5000}#grid-controls{position:absolute;bottom:20px;right:20px;display:flex;gap:8px;align-items:center;background-color:var(--bg-medium);padding:8px 12px;border-radius:8px}#grid-controls button{width:30px;height:30px;border:none;border-radius:4px;background-color:var(--bg-light);color:var(--text-primary);font-size:1.2em;cursor:pointer;transition:background-color .2s}#grid-controls button:hover{background-color:var(--accent)}#zoom-level{min-width:50px;text-align:center;font-size:.9em}.svg-tile{cursor:pointer}.svg-tile rect.tile-base{transition:all .15s ease}.svg-tile rect.tile-highlight{pointer-events:none}.svg-tile:hover rect.tile-base{filter:brightness(1.15)}.svg-tile.selected rect.tile-base{stroke:var(--accent);stroke-width:3;filter:drop-shadow(0 0 8px var(--accent))}.svg-tile text{pointer-events:none;user-select:none;filter:drop-shadow(1px 1px 1px rgba(0,0,0,.5))}.tile-empty rect.tile-base{fill:url(#grass-gradient);stroke:#2d5a25;stroke-width:2}.tile-empty rect.tile-highlight{fill:url(#grass-highlight)}.tile-expandable rect.tile-base{fill:rgba(90,158,75,0.2);stroke:#4a8a3d;stroke-width:2;stroke-dasharray:6 3}.tile-expandable:hover rect.tile-base{fill:rgba(90,158,75,0.4);stroke:var(--accent)}.tile-building-food rect.tile-base{fill:url(#food-gradient);stroke:var(--food-color);stroke-width:2}.tile-building-wood rect.tile-base{fill:url(#wood-gradient);stroke:var(--wood-color);stroke-width:2}.tile-building-stone rect.tile-base{fill:url(#stone-gradient);stroke:var(--stone-color);stroke-width:2}.tile-building-metal rect.tile-base{fill:url(#metal-gradient);stroke:var(--metal-color);stroke-width:2}.tile-building-research rect.tile-base{fill:url(#research-gradient);stroke:var(--research-color);stroke-width:2}.tile-building-beacons rect.tile-base{fill:url(#beacon-gradient);stroke:#fbbf24;stroke-width:2}.tile-building-mana rect.tile-base{fill:url(#mana-gradient);stroke:var(--mana-color);stroke-width:2}.tile-beacon-affected rect.tile-base{filter:drop-shadow(0 0 10px rgba(251, 191, 36, .6))}.tile-blessed rect.tile-base{stroke:var(--mana-color);stroke-width:2;stroke-dasharray:4 2;filter:drop-shadow(0 0 8px rgba(240, 171, 252, .5))}.tile-blessed-active rect.tile-base{filter:drop-shadow(0 0 12px rgba(240, 171, 252, .7))}.tile-blessed-active::after{content:'3x'}#building-menu{position:fixed;z-index:1000;background-color:var(--bg-dark);border:2px solid var(--border-color);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.8);max-height:80vh;overflow:auto}#building-menu.hidden{display:none}#building-menu-content{padding:8px;display:flex;gap:4px}.menu-category{min-width:200px;max-width:240px;border-right:1px solid var(--border-color);padding-right:4px}.menu-category:last-child{border-right:none;padding-right:0}.menu-category-header{font-size:.7em;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;padding:4px 6px;margin-bottom:4px;border-bottom:1px solid var(--border-color);text-align:center}.building-option{display:flex;align-items:flex-start;gap:8px;padding:8px;border-radius:6px;cursor:pointer;transition:all .15s ease;background-color:transparent;position:relative}.building-option:hover{background-color:var(--bg-light)}.building-option.affordable:hover{background-color:rgba(74,222,128,.15)}.building-option.unaffordable{cursor:pointer}.building-option.unaffordable:hover{background-color:var(--bg-light)}.building-option.locked-building{cursor:default}.building-option.locked-building:hover{background-color:transparent}.locked-requirement{font-size:.85em;color:var(--text-primary)}.building-option.blessed-building{background-color:rgba(180,130,50,.2);border:1px solid #b4823a;box-shadow:0 0 8px rgba(180,130,50,.4)}.building-option.blessed-building:hover{background-color:rgba(180,130,50,.3)}.building-option-icon{font-size:1.3em;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:var(--bg-dark);border-radius:4px;flex-shrink:0}.building-option-info{flex:1;min-width:0}.building-option-name{font-weight:700;font-size:.8em;margin-bottom:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary)}.building-option-effect{font-size:.7em;color:var(--text-primary);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.building-option-costs{display:flex;flex-direction:column;gap:3px;font-size:.7em;margin-top:4px}.building-option-count{position:absolute;top:8px;right:8px;font-size:.7em;color:var(--text-secondary);background-color:var(--bg-dark);padding:2px 6px;border-radius:10px}.cost-bar{position:relative;height:16px;background-color:var(--bg-dark);border-radius:3px;overflow:hidden;min-width:80px;width:100%;flex-shrink:0}.cost-bar-fill{position:absolute;top:0;left:0;height:100%;transition:width .1s ease-out;border-radius:3px}.cost-bar.affordable .cost-bar-fill{background:linear-gradient(90deg,rgba(74,222,128,.4),rgba(74,222,128,.6))}.cost-bar.unaffordable .cost-bar-fill{background:linear-gradient(90deg,rgba(239,68,68,.3),rgba(239,68,68,.5))}.cost-bar-label{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:4px;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.8);z-index:1}.cost-bar.affordable .cost-bar-label{color:#4ade80}.cost-bar.unaffordable .cost-bar-label{color:#fca5a5}#building-menu.tile-menu .building-option-icon{background-color:transparent;border:none}#info-bar{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;background-color:var(--bg-medium);border-top:2px solid var(--border-color)}#tile-info{flex:1;font-size:.9em;color:var(--text-primary)}#game-controls{display:flex;gap:10px}#game-controls button{padding:8px 16px;border:none;border-radius:4px;background-color:var(--bg-light);color:var(--text-primary);cursor:pointer;transition:background-color .2s}#game-controls button:hover{background-color:var(--accent)}#btn-reset{background-color:#4a1a1a}#btn-reset:hover{background-color:#7a2a2a}#tooltip{position:fixed;background-color:var(--bg-medium);border:2px solid var(--border-color);border-radius:8px;padding:12px;max-width:280px;font-size:.9em;z-index:1000;pointer-events:none;box-shadow:0 4px 20px rgba(0,0,0,.5)}#tooltip.hidden{display:none}#tooltip h4{margin-bottom:6px;color:var(--accent)}#tooltip p{margin-bottom:4px;color:var(--text-secondary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-dark)}::-webkit-scrollbar-thumb{background:var(--bg-light);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}.tile.just-built{animation:pulse .3s ease-out}.cost-item,.resource-value{white-space:nowrap}#skill-point-container{position:fixed;left:0;top:80px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 10px;background-color:var(--bg-medium);border:2px solid var(--border-color);border-left:none;border-radius:0 8px 8px 0;z-index:100;box-shadow:2px 0 10px rgba(0,0,0,.3)}#skill-points-available.hidden,#skill-points-pending.hidden{display:none}#skill-points-pending{font-size:.7em;color:#4ade80;margin-top:-4px}#skill-progress-container{width:60px;height:6px;background-color:var(--bg-dark);border-radius:3px;overflow:hidden}#skill-progress-bar{height:100%;width:0%;background:linear-gradient(90deg,#fbbf24,#f59e0b);border-radius:3px;transition:width .3s ease}#skill-point-timer{font-size:.75em;color:var(--text-secondary);font-family:monospace}#btn-prestige,#btn-skills{padding:6px 10px;border:none;border-radius:4px;background-color:var(--bg-light);color:var(--text-primary);cursor:pointer;transition:background-color .2s;font-size:.8em;width:100%}#btn-skills:hover{background-color:#fbbf24;color:var(--bg-dark)}#btn-prestige{background-color:#2d4a2d}#btn-prestige:hover{background-color:#4ade80;color:var(--bg-dark)}#btn-prestige.has-pending{background-color:#4ade80;color:var(--bg-dark);animation:pulse-glow 2s infinite}@keyframes pulse-glow{0%,100%{box-shadow:0 0 5px rgba(74,222,128,.5)}50%{box-shadow:0 0 15px rgba(74,222,128,.8)}}#spell-container{position:fixed;left:0;bottom:80px;display:flex;flex-direction:column;gap:8px;padding:12px 10px;background-color:var(--bg-medium);border:2px solid var(--border-color);border-left:none;border-radius:0 8px 8px 0;z-index:100;box-shadow:2px 0 10px rgba(0,0,0,.3)}#spell-container.hidden{display:none}#spell-header{font-size:.85em;font-weight:700;color:var(--mana-color);text-align:center;padding-bottom:6px;border-bottom:1px solid var(--border-color)}#spell-list{display:flex;flex-direction:column;gap:8px}.spell{display:flex;align-items:center;gap:8px;padding:8px;background-color:var(--bg-dark);border-radius:6px;cursor:pointer;transition:all .15s ease;border:2px solid transparent}.spell:hover{background-color:var(--bg-light);border-color:var(--mana-color)}.spell.disabled{cursor:not-allowed;background-color:rgba(26,26,46,.6)}.spell.disabled:hover{background-color:rgba(26,26,46,.6);border-color:transparent}.spell-icon{font-size:1.5em;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background-color:rgba(240,171,252,.1);border-radius:6px}.spell-info{flex:1;min-width:0}.spell-name{font-weight:700;font-size:.85em;color:var(--text-primary)}.spell-desc{font-size:.7em;color:var(--text-secondary)}.spell-cost{font-size:.7em;color:var(--mana-color);margin-top:2px}.spell{position:relative}.spell-tooltip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);background-color:var(--bg-medium);border:2px solid var(--mana-color);border-radius:8px;padding:12px;width:220px;text-align:left;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease;z-index:100;box-shadow:0 4px 12px rgba(0,0,0,.5);pointer-events:none}.spell-tooltip::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:8px solid transparent;border-top-color:var(--mana-color)}.spell:hover .spell-tooltip{opacity:1;visibility:visible}.spell-tooltip-title{font-weight:700;font-size:.9em;margin-bottom:8px;color:var(--mana-color)}.spell-tooltip-text{font-size:.8em;color:var(--text-secondary);margin-bottom:6px;line-height:1.4}.spell-tooltip-text strong{color:var(--mana-color)}.spell-tooltip-note{font-size:.75em;color:#fbbf24;font-style:italic;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-color)}#research-container{position:fixed;right:0;top:80px;display:flex;flex-direction:column;gap:6px;padding:10px;background-color:var(--bg-medium);border:2px solid var(--border-color);border-right:none;border-radius:8px 0 0 8px;z-index:100;box-shadow:-2px 0 10px rgba(0,0,0,.3)}#research-container.hidden{display:none}#research-header{font-size:.85em;font-weight:700;color:var(--research-color);text-align:center;padding-bottom:6px;border-bottom:1px solid var(--border-color)}#research-list{display:flex;flex-direction:column;gap:6px}.research-item{display:flex;align-items:center;gap:8px;padding:8px;background-color:var(--bg-dark);border-radius:6px;cursor:pointer;transition:all .15s ease;border:2px solid transparent}.research-item:hover{background-color:var(--bg-light);border-color:var(--research-color)}.research-item.disabled{cursor:not-allowed;background-color:rgba(26,26,46,.6)}.research-item.disabled:hover{background-color:rgba(26,26,46,.6);border-color:transparent}.research-item.maxed{cursor:default;border-color:#4ade80}.research-item.maxed:hover{background-color:var(--bg-dark)}.research-icon{font-size:1.3em;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:rgba(192,132,252,.1);border-radius:6px;flex-shrink:0}.research-info{flex:1;min-width:0}.research-name{font-weight:700;font-size:.8em;color:var(--text-primary);display:flex;justify-content:space-between;align-items:center}.research-level{font-size:.75em;color:var(--research-color);background-color:var(--bg-medium);padding:1px 6px;border-radius:8px}.research-level.maxed{color:#4ade80}.research-effect{font-size:.7em;color:var(--text-secondary)}.research-cost{font-size:.7em;color:var(--research-color);margin-top:2px}.research-cost.affordable{color:#4ade80}.research-cost.maxed{color:#4ade80}#prestige-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7);z-index:1999}#prestige-modal.hidden,#prestige-overlay.hidden{display:none}#prestige-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:460px;background-color:var(--bg-medium);border:2px solid var(--border-color);border-radius:12px;padding:20px;box-shadow:0 8px 32px rgba(0,0,0,.8);z-index:2000}#prestige-modal h2{margin:0 0 15px 0;color:var(--accent);text-align:center}#prestige-info{margin-bottom:15px;text-align:center}#prestige-pending-text{color:#4ade80;font-size:1.1em}#prestige-pending-count{font-weight:700;font-size:1.2em}#prestige-warning{color:#fbbf24;font-style:italic}#prestige-warning.hidden{display:none}#prestige-stats{background-color:var(--bg-dark);border-radius:8px;padding:12px;margin-bottom:15px}#prestige-stats h3{margin:0 0 10px 0;color:var(--accent);font-size:.95em;text-transform:uppercase;letter-spacing:.5px}.prestige-stat{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--border-color)}.prestige-stat:last-child{border-bottom:none}.stat-label{color:var(--text-secondary);font-size:.9em}.stat-value{color:var(--text-primary);font-weight:700;font-size:.95em}#prestige-details{background-color:var(--bg-dark);border-radius:8px;padding:12px;margin-bottom:20px}#prestige-details p{margin:0 0 8px 0;color:var(--text-secondary)}#prestige-details ul{margin:0;padding-left:20px;color:var(--text-secondary);font-size:.9em}#prestige-details li{margin-bottom:4px}#prestige-buttons{display:flex;gap:10px;justify-content:center}#prestige-buttons button{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:.95em;transition:background-color .2s}#btn-confirm-prestige{background-color:#2d4a2d;color:var(--text-primary)}#btn-confirm-prestige:hover{background-color:#4ade80;color:var(--bg-dark)}#btn-cancel-prestige{background-color:var(--bg-light);color:var(--text-primary)}#btn-cancel-prestige:hover{background-color:var(--border-color)}#prestige-refund{margin-top:15px;padding-top:15px;border-top:1px solid var(--border-color)}#btn-refund-prestige{width:100%;padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:.9em;transition:background-color .2s;background-color:#4a3d1a;color:var(--text-primary)}#btn-refund-prestige:hover{background-color:#fbbf24;color:var(--bg-dark)}#sp-tutorial-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7);z-index:2999}#sp-tutorial-overlay.hidden,#sp-tutorial.hidden{display:none}#sp-tutorial{position:fixed;top:80px;left:100px;width:350px;background-color:var(--bg-medium);border:2px solid #fbbf24;border-radius:12px;padding:20px;box-shadow:0 8px 32px rgba(0,0,0,.8),0 0 20px rgba(251,191,36,.3);z-index:3000}#sp-tutorial-arrow{position:absolute;left:-20px;top:60px;width:0;height:0;border-top:15px solid transparent;border-bottom:15px solid transparent;border-right:20px solid #fbbf24}#sp-tutorial-arrow::after{content:'';position:absolute;left:3px;top:-13px;width:0;height:0;border-top:13px solid transparent;border-bottom:13px solid transparent;border-right:17px solid var(--bg-medium)}#sp-tutorial h3{margin:0 0 12px 0;color:#fbbf24;font-size:1.2em}#sp-tutorial p{margin:0 0 10px 0;font-size:.9em;line-height:1.5;color:var(--text-secondary)}#sp-tutorial strong{color:var(--text-primary)}#sp-tutorial .sp-tutorial-tip{background-color:var(--bg-dark);padding:10px;border-radius:6px;border-left:3px solid #4ade80;margin-top:15px}#sp-tutorial button{display:block;width:100%;margin-top:15px;padding:10px;border:none;border-radius:6px;background-color:#fbbf24;color:var(--bg-dark);font-weight:700;cursor:pointer;transition:background-color .2s}#sp-tutorial button:hover{background-color:#f59e0b}#skill-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:800px;max-height:80vh;background-color:var(--bg-medium);border:2px solid var(--border-color);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.8);z-index:2000;display:flex;flex-direction:column}#skill-panel.hidden{display:none}#skill-panel-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:2px solid var(--border-color)}#skill-panel-header h2{margin:0;color:#fbbf24}#skill-panel-points{color:var(--text-secondary)}#panel-skill-points{font-weight:700;color:#fbbf24}#btn-close-skills{width:32px;height:32px;border:none;border-radius:4px;background-color:var(--bg-light);color:var(--text-primary);font-size:1.2em;cursor:pointer;transition:background-color .2s}#btn-close-skills:hover{background-color:var(--accent)}#skill-panel-content{padding:120px 20px 40px 20px;overflow-y:auto;display:flex;justify-content:center}.skill-tree{position:relative;display:flex;flex-direction:column;align-items:center}.skill-tree-lines{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:visible}.skill-tree-lines line{stroke-width:2;stroke-linecap:round}.skill-tree-lines .line-locked{stroke:#555;stroke-dasharray:6 4;opacity:.6}.skill-tree-lines .line-available{stroke:#888;stroke-dasharray:6 4}.skill-tree-lines .line-purchased{stroke:#4ade80;stroke-dasharray:none;filter:drop-shadow(0 0 4px rgba(74, 222, 128, .5))}.skill-tree-nodes{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:60px}.skill-tree-row{display:flex;justify-content:center;gap:80px}.skill-node{position:relative;cursor:pointer;transition:transform .15s ease}.skill-node:hover{transform:scale(1.1)}.skill-node-icon{width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2em;background:linear-gradient(135deg,var(--bg-light),var(--bg-dark));border:4px solid var(--border-color);transition:all .15s ease;box-shadow:0 4px 8px rgba(0,0,0,.3)}.skill-node.can-purchase .skill-node-icon{border-color:#fbbf24;box-shadow:0 0 15px rgba(251,191,36,.5),0 4px 8px rgba(0,0,0,.3);animation:pulse-gold 2s infinite}@keyframes pulse-gold{0%,100%{box-shadow:0 0 10px rgba(251,191,36,.4),0 4px 8px rgba(0,0,0,.3)}50%{box-shadow:0 0 20px rgba(251,191,36,.7),0 4px 8px rgba(0,0,0,.3)}}.skill-node.available .skill-node-icon{border-color:#666}.skill-node.purchased .skill-node-icon{border-color:#4ade80;background:linear-gradient(135deg,rgba(74,222,128,.3),rgba(74,222,128,.1));box-shadow:0 0 15px rgba(74,222,128,.5),0 4px 8px rgba(0,0,0,.3)}.skill-node.purchased{cursor:default}.skill-node.purchased:hover{transform:scale(1)}.skill-node.locked .skill-node-icon{border-color:#333;opacity:.4;filter:grayscale(1)}.skill-node.locked{cursor:not-allowed}.skill-node.locked:hover{transform:scale(1)}.skill-node.maxed .skill-node-icon{border-color:#4ade80;background:linear-gradient(135deg,rgba(74,222,128,.3),rgba(74,222,128,.1));box-shadow:0 0 15px rgba(74,222,128,.5),0 4px 8px rgba(0,0,0,.3)}.skill-node.maxed{cursor:default}.skill-node.maxed:hover{transform:scale(1)}.skill-node.has-levels .skill-node-icon{border-color:#60a5fa;background:linear-gradient(135deg,rgba(96,165,250,.2),rgba(96,165,250,.05));box-shadow:0 0 10px rgba(96,165,250,.3),0 4px 8px rgba(0,0,0,.3)}.skill-node-level{position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);background-color:var(--bg-medium);border:2px solid var(--border-color);border-radius:10px;padding:2px 8px;font-size:.7em;font-weight:700;color:var(--text-primary);white-space:nowrap}.skill-node.maxed .skill-node-level{border-color:#4ade80;color:#4ade80}.skill-node.has-levels .skill-node-level{border-color:#60a5fa;color:#60a5fa}.skill-node-tooltip{position:absolute;bottom:calc(100% + 15px);left:50%;transform:translateX(-50%);background-color:var(--bg-medium);border:2px solid var(--border-color);border-radius:8px;padding:12px;min-width:240px;text-align:center;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease;z-index:100;box-shadow:0 4px 12px rgba(0,0,0,.5);pointer-events:none;white-space:nowrap}.skill-node-tooltip::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:8px solid transparent;border-top-color:var(--border-color)}.skill-node:hover .skill-node-tooltip{opacity:1;visibility:visible}.skill-tooltip-name{font-weight:700;font-size:.95em;margin-bottom:6px;color:var(--text-primary)}.skill-tooltip-desc{font-size:.8em;color:var(--text-secondary);margin-bottom:8px;line-height:1.3}.skill-tooltip-cost{font-size:.85em;color:#fbbf24;font-weight:700}.skill-tooltip-cost.purchased{color:#4ade80}.skill-tooltip-cost.unaffordable{color:var(--accent)}#skill-panel-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:1999}#skill-panel-overlay.hidden{display:none}#space-container{background:linear-gradient(135deg,#0d1020 0,#1a1a3a 50%,#0d1020 100%);border-bottom:2px solid #3d3d6d;padding:12px 20px;display:flex;justify-content:center;align-items:center}#space-container.hidden{display:none}.space-phase{display:flex;align-items:center;gap:20px;max-width:800px;width:100%}.space-phase.hidden{display:none}.space-phase-icon{font-size:2.5em;filter:drop-shadow(0 0 10px rgba(147, 112, 219, .5));animation:float 3s ease-in-out infinite}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}.space-phase-content{flex:1;display:flex;flex-direction:column;gap:4px}.space-phase-title{font-size:1.2em;font-weight:700;color:#9370db;text-shadow:0 0 10px rgba(147,112,219,.5)}.space-phase-desc{font-size:.9em;color:#a0a0c0}.space-phase-requirements{font-size:.8em;color:#8080a0}.space-btn{background:linear-gradient(135deg,#4a3d6a 0,#3d2d5a 100%);border:2px solid #6a5d8a;color:#e0e0ff;padding:10px 20px;border-radius:8px;font-size:1em;cursor:pointer;transition:all .3s ease;white-space:nowrap}.space-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a4d7a 0,#4d3d6a 100%);border-color:#8a7daa;box-shadow:0 0 15px rgba(147,112,219,.5);transform:scale(1.02)}.space-btn:disabled{opacity:.5;cursor:not-allowed}.space-tabs{display:flex;gap:10px}.space-tab{background:linear-gradient(135deg,#2a2a4a 0,#1a1a3a 100%);border:2px solid #3d3d6d;color:#a0a0c0;padding:8px 16px;border-radius:8px;font-size:1em;cursor:pointer;transition:all .3s ease}.space-tab:hover:not(.active){background:linear-gradient(135deg,#3a3a5a 0,#2a2a4a 100%);border-color:#5d5d8d}.space-tab.active{background:linear-gradient(135deg,#4a3d6a 0,#3d2d5a 100%);border-color:#8a7daa;color:#e0e0ff;box-shadow:0 0 10px rgba(147,112,219,.3)}#space-current-view{font-size:.9em;color:#8080a0;margin-left:20px}#current-view-name{color:#9370db;font-weight:700}.space-view #svg-background{fill:#0a0a15}.tile-silo .tile-base{fill:url(#silo-gradient)}.tile-silo .tile-icon{font-size:1.5em}.tile-space.tile-empty .tile-base{fill:url(#space-gradient)}.tile-space.tile-expandable .tile-base{fill:rgba(26,32,64,0.3);stroke:rgba(147,112,219,0.3)}.tile-space.tile-expandable:hover .tile-base{fill:rgba(26,32,64,0.5);stroke:rgba(147,112,219,0.6)}.tile-space.tile-expandable text{fill:#9370db}body.space-view #grid-section{background:radial-gradient(ellipse at center,#1a1a3a 0,#0a0a15 100%)}@media (max-width:768px){body{font-size:16px;overscroll-behavior:none}#resource-bar{gap:6px;padding:6px 8px;justify-content:center}.resource{min-width:0;max-width:calc(33% - 6px);padding:4px 6px;gap:3px;flex:1 1 calc(33% - 6px);overflow:hidden}.resource-icon{font-size:1em;flex-shrink:0}.resource-value{font-size:.75em;min-width:0;overflow:hidden;text-overflow:ellipsis}.resource-rate{font-size:.6em;min-width:0;overflow:hidden;text-overflow:ellipsis}#skill-point-container{top:90px;bottom:auto;left:10px;padding:8px;border-radius:8px;border:2px solid var(--border-color)}#skill-progress-container{width:50px}#btn-prestige,#btn-skills{font-size:.7em;padding:5px 8px}#spell-container{left:auto;right:10px;top:90px;bottom:auto;transform:none;flex-direction:row;border-radius:8px;border:2px solid var(--border-color);padding:6px;max-width:none;width:auto}#spell-header{display:none}#spell-list{flex-direction:row;gap:8px}.spell{flex-direction:column;padding:4px;min-width:40px}.spell-icon{width:28px;height:28px;font-size:1.1em}.spell-info{display:none}.spell-tooltip{bottom:auto;top:calc(100% + 10px);left:auto;right:0;transform:none;width:180px}.spell-tooltip::after{top:-16px;bottom:auto;left:auto;right:20px;border-top-color:transparent;border-bottom-color:var(--mana-color)}#research-container{right:10px;top:160px;bottom:auto;left:auto;border-radius:8px;border:2px solid var(--border-color);padding:6px;max-width:160px;max-height:45vh;overflow-y:auto}#research-header{font-size:.7em;padding-bottom:4px}.research-item{padding:5px;gap:5px}.research-icon{width:24px;height:24px;font-size:1em}.research-name{font-size:.65em}.research-level{font-size:.6em;padding:1px 4px}.research-cost,.research-effect{font-size:.55em}#grid-section{touch-action:none;-webkit-user-select:none;user-select:none}#grid-controls{bottom:10px;right:10px;gap:6px;padding:6px 10px}#grid-controls button{width:40px;height:40px;font-size:1.4em}#zoom-level{font-size:.8em}#building-menu{position:fixed!important;bottom:0!important;left:0!important;right:0!important;top:auto!important;width:100%!important;max-width:100%!important;max-height:60vh;border-radius:16px 16px 0 0;border-bottom:none;transform:none!important;padding-bottom:env(safe-area-inset-bottom,0)}#building-menu-content{flex-direction:column;padding:12px;gap:8px;width:100%}.menu-category{min-width:100%;max-width:100%;width:100%;border-right:none;border-bottom:1px solid var(--border-color);padding-right:0;padding-bottom:8px}.menu-category:last-child{border-bottom:none;padding-bottom:0}.building-option{padding:10px;width:100%}.building-option-icon{width:36px;height:36px;font-size:1.4em}.building-option-name{font-size:.9em;white-space:normal;overflow:visible;text-overflow:clip}.building-option-effect{font-size:.8em;white-space:normal}.cost-bar{height:20px}#info-bar{padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));flex-wrap:wrap;gap:8px}#tile-info{font-size:.8em;flex-basis:100%}#game-controls{width:100%;justify-content:center}#game-controls button{flex:1;padding:10px 12px;font-size:.85em}#skill-panel{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0;top:0;left:0;transform:none}#skill-panel-header{padding:12px 16px}#skill-panel-header h2{font-size:1.1em}#skill-panel-content{padding:100px 10px 20px 10px}.skill-tree-row{gap:40px}.skill-tree-nodes{gap:50px}.skill-node-icon{width:60px;height:60px;font-size:1.6em}.skill-node-tooltip{min-width:200px;font-size:.9em}#prestige-modal{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0;top:0;left:0;transform:none;overflow-y:auto}#prestige-modal h2{font-size:1.2em}#prestige-buttons{flex-direction:column}#prestige-buttons button{width:100%}#sp-tutorial{left:50%;top:50%;transform:translate(-50%,-50%);width:90%;max-width:320px}#sp-tutorial-arrow{display:none}::-webkit-scrollbar{width:4px;height:4px}#space-container{padding:8px 12px}.space-phase{flex-direction:column;gap:8px;text-align:center}.space-phase-icon{font-size:2em}.space-phase-content{align-items:center}.space-phase-title{font-size:1em}.space-phase-desc{font-size:.8em}.space-phase-requirements{font-size:.7em}.space-btn{padding:8px 16px;font-size:.9em}.space-tabs{gap:6px}.space-tab{padding:6px 12px;font-size:.9em}#space-current-view{display:none}}