:root{--bg-color:#050510;--text-color:#aaaacc;--accent:#00ffcc;--glow:rgba(0, 255, 204, 0.15)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);font-family:'Press Start 2P',monospace;color:var(--text-color);display:flex;justify-content:center;align-items:center;min-height:100vh;overflow:hidden}#main-wrapper{display:flex;flex-direction:column;align-items:center;gap:20px}h1{font-size:1.4rem;letter-spacing:6px;color:var(--accent);text-shadow:0 0 20px var(--accent),0 0 40px rgba(0,255,204,.3)}#canvas-container{position:relative;border:1px solid rgba(0,255,204,.3);box-shadow:0 0 30px var(--glow),inset 0 0 30px rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;aspect-ratio:4/3;width:min(90vw,calc(90vh * 4 / 3));max-width:100%}canvas{display:block;width:100%;height:100%;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;background-color:#050510;cursor:crosshair}#subtitle{font-size:.6rem;letter-spacing:2px;color:rgba(170,170,204,.5);text-transform:uppercase}#version{position:fixed;bottom:10px;right:15px;font-family:'Press Start 2P',monospace;color:var(--text-color);opacity:.35;font-size:.75rem;pointer-events:none;z-index:50}#help-btn{position:fixed;top:15px;right:15px;background:0 0;color:var(--accent);border:1px solid var(--accent);border-radius:50%;width:30px;height:30px;font-family:'Press Start 2P',monospace;font-size:.8rem;cursor:pointer;z-index:100;transition:all .2s;box-shadow:0 0 10px var(--glow)}#help-btn:hover{background:var(--accent);color:var(--bg-color);box-shadow:0 0 20px rgba(0,255,204,.4)}#wiki-btn{position:fixed;bottom:15px;left:15px;background:0 0;color:var(--accent);border:1px solid var(--accent);padding:8px 15px;font-family:'Press Start 2P',monospace;font-size:.7rem;cursor:pointer;z-index:100;transition:all .2s;box-shadow:0 0 10px var(--glow)}#wiki-btn:hover{background:var(--accent);color:var(--bg-color);box-shadow:0 0 20px rgba(0,255,204,.4)}#options-btn{position:fixed;bottom:35px;right:15px;background:0 0;color:var(--accent);border:1px solid var(--accent);padding:8px 15px;font-family:'Press Start 2P',monospace;font-size:.7rem;cursor:pointer;z-index:100;transition:all .2s;box-shadow:0 0 10px var(--glow)}#options-btn:hover{background:var(--accent);color:var(--bg-color);box-shadow:0 0 20px rgba(0,255,204,.4)}#credits-btn{position:fixed;top:15px;left:15px;background:0 0;color:var(--accent);border:1px solid var(--accent);padding:8px 15px;font-family:'Press Start 2P',monospace;font-size:.7rem;cursor:pointer;z-index:100;transition:all .2s;box-shadow:0 0 10px var(--glow)}#credits-btn:hover{background:var(--accent);color:var(--bg-color);box-shadow:0 0 20px rgba(0,255,204,.4)}a{color:var(--accent);text-decoration:none;transition:all .2s}a:visited{color:#80ffea}a:hover{color:#fff;text-shadow:0 0 10px var(--accent);text-decoration:underline}#credits-overlay,#help-overlay,#howtoplay-overlay,#options-overlay,#research-overlay,#tactics-overlay,#wiki-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(5,5,16,.9);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:200}.hidden{display:none!important}button:disabled{opacity:.3;pointer-events:none;box-shadow:none}.help-content{background:#112;border:2px solid var(--accent);padding:30px;border-radius:8px;max-width:500px;max-height:85vh;box-shadow:0 0 30px var(--glow);text-align:center;overflow-y:auto;display:flex;flex-direction:column}#help-overlay .help-content,#howtoplay-overlay .help-content{width:80%;height:80%;max-width:none;display:flex;flex-direction:column;justify-content:flex-start;align-items:center}.wiki-area{width:100%;height:100%;max-width:none;max-height:none;border-radius:0;border:none;display:flex;flex-direction:column;justify-content:flex-start}.help-content h2{color:var(--accent);margin-bottom:20px;font-size:1.2rem}.wiki-area p{font-size:.7rem;line-height:2;text-align:left}.help-content ul{list-style:none;text-align:left;margin-bottom:25px;font-size:.7rem;line-height:2}.help-content li strong{color:#fff;margin-right:10px}.help-content::-webkit-scrollbar{width:10px}.help-content::-webkit-scrollbar-track{background:rgba(0,255,204,.05);border-radius:5px}.help-content::-webkit-scrollbar-thumb{background:var(--accent);border-radius:5px;box-shadow:0 0 10px var(--glow)}.help-content::-webkit-scrollbar-thumb:hover{background:#fff;box-shadow:0 0 15px var(--accent)}.options-area{width:100%;max-width:400px}.slider-container{margin-bottom:25px;display:flex;flex-direction:column;align-items:center;gap:15px}.slider-container label{font-size:.9rem;color:var(--accent)}.slider-container input[type=range]{width:80%;cursor:pointer;accent-color:var(--accent)}.mode-select-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:15px;width:100%;max-width:1000px}.mode-card{background:rgba(0,255,204,.05);border:1px solid rgba(0,255,204,.3);padding:20px 15px;border-radius:8px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center}.mode-card h3{color:var(--accent);font-size:.9rem;margin-bottom:15px}.mode-card p{font-size:.6rem;line-height:1.5;margin-bottom:10px;color:#ccc;flex-grow:1}.mode-card-lbl{font-size:.6rem;margin-top:5px;margin-bottom:5px;color:var(--accent)}.mode-select{margin-bottom:5px;font-family:'Press Start 2P',monospace;font-size:.6rem;background:rgba(0,0,0,.5);color:var(--text-color);border:1px solid var(--accent);padding:5px;width:80%;cursor:pointer;outline:0}.mode-select option{background:var(--bg-color);color:var(--text-color)}.starting-condition-desc{font-size:.5rem!important;font-style:italic;color:#888!important;margin:6px 0 4px 0!important;line-height:1.6!important;min-height:2.4em;flex-grow:0!important}.mode-keys{margin:10px 0 20px 0!important;font-size:.55rem!important;list-style:none!important;text-align:center!important;color:#fff;padding:0}.mode-card button{background:0 0;color:var(--accent);border:1px solid var(--accent);padding:10px 15px;font-family:'Press Start 2P',monospace;font-size:.65rem;cursor:pointer;transition:all .2s;width:100%}.mode-card button:hover{background:var(--accent);color:var(--bg-color)}#close-credits-btn,#close-help-btn,#close-howtoplay-btn,#close-options-btn,#close-research-btn,#close-tactics-btn,#close-wiki-btn{background:0 0;color:var(--accent);border:1px solid var(--accent);padding:10px 20px;font-family:'Press Start 2P',monospace;font-size:.7rem;cursor:pointer;transition:all .2s}.research-btn{background:rgba(0,255,204,.25);color:var(--accent);border:2px solid var(--accent);text-shadow:0 0 8px var(--accent);box-shadow:0 0 20px rgba(0,255,204,.2);white-space:nowrap;font-size:.63rem;display:inline-flex;align-items:center;justify-content:center;gap:.2rem;width:auto;padding:10px 20px}.research-btn:not(:disabled):hover{background:var(--accent);color:var(--bg-color);box-shadow:0 0 25px var(--accent)}.research-btn:disabled{background:rgba(255,255,255,.05);color:#fff!important;border:2px solid #778!important;cursor:not-allowed;box-shadow:none;text-shadow:none;opacity:1!important}#close-credits-btn:hover,#close-help-btn:hover,#close-howtoplay-btn:hover,#close-options-btn:hover,#close-research-btn:hover,#close-tactics-btn:hover,#close-wiki-btn:hover{background:var(--accent);color:var(--bg-color)}@media (max-width:850px){h1{font-size:1rem;letter-spacing:3px}#subtitle{font-size:.5rem}#canvas-container{border:none;box-shadow:none}}