*{margin:0;padding:0;box-sizing:border-box}html,body,#app{width:100%;height:100%;overflow:hidden;background:#070b10}#game{display:block;width:100%;height:100%;touch-action:none}#hud{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:13px;color:#c8d6dd;-webkit-user-select:none;user-select:none}#hud .panel{pointer-events:auto;background:#0a1016e0;border:1px solid #23303c;border-radius:4px}#missionmenu{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:30px 38px;text-align:center;display:none}#missionmenu.visible{display:block}#missionmenu h1{color:#e8f2f8;font-size:30px;letter-spacing:.35em;margin-bottom:2px}#missionmenu .tagline{color:#5a6a76;margin-bottom:14px}#missionmenu .difftabs{display:flex;justify-content:center;gap:6px;margin-bottom:14px}#missionmenu .difftabs .tab{font:inherit;padding:5px 18px;cursor:pointer;color:#c8d6dd;background:#16212b;border:1px solid #2b3a47;border-radius:3px}#missionmenu .difftabs .tab.active{background:#1d7fc4;border-color:#1d7fc4;color:#fff}#missionmenu .difftabs .tab:hover:not(.active){background:#1d2b37}#missionmenu{max-height:86vh;overflow-y:auto}#missionmenu .cards{display:grid;grid-template-columns:repeat(4,minmax(150px,190px));gap:10px}#missionmenu .card{font:inherit;padding:12px 11px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:5px;color:#c8d6dd;background:#101a24;border:1px solid #2b3a47;border-radius:4px}#missionmenu .card:hover:not(.locked){background:#16242f;border-color:#1d7fc4}#missionmenu .card.locked{opacity:.4;cursor:not-allowed}#missionmenu .card .name{color:#e8f2f8;font-size:15px}#missionmenu .card .mode{font-size:11px;text-transform:uppercase;letter-spacing:.1em}#missionmenu .card .mode.mining{color:#8fd49a}#missionmenu .card .mode.survival{color:#e07050}#missionmenu .card .desc{color:#8296a0;font-size:12px;line-height:1.5}#missionmenu .customhead{display:flex;align-items:center;gap:10px;margin:18px 0 10px;color:#8296a0;font-size:12px;text-transform:uppercase;letter-spacing:.1em}#missionmenu .customhead button{font:inherit;text-transform:none;letter-spacing:normal;padding:3px 10px;cursor:pointer;color:#c8d6dd;background:#16212b;border:1px solid #2b3a47;border-radius:3px}#missionmenu .customhead button:hover{background:#1d2b37}#missionmenu .importrow{display:none;gap:8px;margin-bottom:10px}#missionmenu .importrow.visible{display:flex}#missionmenu .importbox{flex:1;font:inherit;font-size:12px;color:#c8d6dd;background:#0d1520;border:1px solid #2b3a47;border-radius:3px;padding:6px;resize:vertical}#missionmenu .importgo{font:inherit;padding:4px 12px;cursor:pointer;align-self:flex-start;color:#fff;background:#1d7fc4;border:1px solid #1d7fc4;border-radius:3px}#missionmenu .customcards{display:grid;grid-template-columns:repeat(4,minmax(150px,190px));gap:10px}#missionmenu .customcard{cursor:default}#missionmenu .customcard .rowbtns{display:flex;gap:6px;margin-top:4px}#missionmenu .customcard .rowbtns button{font:inherit;font-size:11px;padding:3px 8px;cursor:pointer;color:#c8d6dd;background:#16212b;border:1px solid #2b3a47;border-radius:3px}#missionmenu .customcard .playcustom{color:#8fd49a}#missionmenu .customcard .delcustom{color:#e07050}#missionmenu .nocustom{color:#5a6a76;font-size:12px}#editor{position:absolute;top:12px;left:12px;bottom:12px;width:360px;padding:14px 16px;overflow-y:auto;display:none}#editor.visible{display:block}#editor h2{color:#e8f2f8;font-size:16px;letter-spacing:.06em;margin-bottom:12px}#editor label{display:block;margin:8px 0;color:#8296a0;font-size:12px}#editor input[type=text],#editor input[type=number],#editor input:not([type]),#editor select{font:inherit;font-size:13px;width:100%;margin-top:3px;padding:5px 8px;color:#e8f2f8;background:#0d1520;border:1px solid #2b3a47;border-radius:3px;box-sizing:border-box}#editor input[type=range]{width:100%;margin-top:4px}#editor .v{color:#8fd49a;float:right}#editor .fieldhead{margin:16px 0 6px;color:#59d4d4;font-size:12px;text-transform:uppercase;letter-spacing:.1em;display:flex;align-items:center;justify-content:space-between}#editor .fieldhead button,#editor .e-reroll,#editor .e-actions button{font:inherit;font-size:12px;padding:5px 10px;cursor:pointer;color:#c8d6dd;background:#16212b;border:1px solid #2b3a47;border-radius:3px}#editor .e-reroll{width:100%;margin-top:6px;padding:8px;color:#d6f2f2;background:#16303f;border-color:#2b5a74}#editor .e-reroll:hover{background:#1d3e52}#editor .waverow{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px;margin-bottom:6px;background:#0d1520;border:1px solid #223142;border-radius:3px}#editor .waverow .wtime{color:#8296a0;font-size:11px;white-space:nowrap}#editor .waverow .w-at{width:58px!important;display:inline-block}#editor .waverow .wships{display:flex;gap:4px;flex-wrap:wrap}#editor .waverow .wships label{margin:0;font-size:10px;color:#5a6a76;text-align:center}#editor .waverow .shipicon{width:24px;height:24px;display:block;margin:0 auto 1px;pointer-events:none}#editor .waverow .w-ship{width:40px!important;display:inline-block;padding:3px 4px!important}#editor .worigin{display:grid;grid-template-columns:repeat(3,14px);grid-auto-rows:12px;gap:2px}#editor .ocell{padding:0;background:#16212b;border:1px solid #2b3a47;border-radius:2px;cursor:pointer;font-size:8px;line-height:1;color:#5a6a76;display:flex;align-items:center;justify-content:center}#editor .ocell:hover{border-color:#59d4d4}#editor .ocell.sel{background:#1d7fc4;border-color:#59d4d4}#editor .threat{font-size:10px;padding:1px 6px;border-radius:999px;border:1px solid}#editor .threat.light{color:#8fd49a;border-color:#3e8a4e}#editor .threat.medium{color:#e0c050;border-color:#8a7a2e}#editor .threat.heavy{color:#e0a050;border-color:#8a5a2e}#editor .threat.extreme{color:#e07050;border-color:#8a3a2e}#editor .w-del{font:inherit;color:#e07050;background:none;border:none;cursor:pointer}#editor .nowaves{color:#5a6a76;font-size:12px}#editor .e-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}#editor .e-test{color:#8fd49a;border-color:#3e8a4e!important}#editor .e-share.locked{opacity:.55}#editor .e-hint{color:#5a6a76;font-size:11px;margin-top:10px;line-height:1.5}#topbar{position:absolute;top:10px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:14px;padding:6px 12px}#missionname{color:#e8f2f8}#musicbtn.off{opacity:.4;text-decoration:line-through}#topbar .speeds{display:flex;gap:4px}#topbar button{font:inherit;color:#c8d6dd;background:#16212b;border:1px solid #2b3a47;padding:3px 10px;border-radius:3px;cursor:pointer}#topbar button.active{background:#1d7fc4;border-color:#1d7fc4;color:#fff}#topbar button:hover:not(.active){background:#1d2b37}#progress{display:flex;align-items:center;gap:8px;min-width:220px}#progress .bar{flex:1;height:10px;background:#16212b;border:1px solid #2b3a47;border-radius:2px;overflow:hidden}#progress .fill{height:100%;width:0%;background:#3e8a4e;transition:width .2s}#progress .label{white-space:nowrap;color:#8fd49a}#time{color:#8296a0}#alert{position:absolute;top:56px;left:50%;transform:translate(-50%);padding:5px 14px;color:#e07050;display:none;border-color:#7a4030}#alert.visible{display:block}#pausedbanner{position:absolute;top:88px;left:50%;transform:translate(-50%);padding:5px 14px;color:#8fb8d0;display:none}#pausedbanner.visible{display:block}#crashbanner{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);padding:22px 34px;text-align:center;display:none;max-width:460px;border-color:#7a4030}#crashbanner.visible{display:block}#crashbanner h2{color:#e07050;font-size:18px;margin-bottom:8px;letter-spacing:.08em}#crashbanner p{color:#8296a0;margin-bottom:12px;line-height:1.6}#crashbanner button{font:inherit;color:#c8d6dd;background:#16212b;border:1px solid #2b3a47;padding:5px 14px;border-radius:3px;cursor:pointer}#buildbar{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:8px;padding:8px}#buildbar button{font:inherit;font-size:12px;min-width:78px;padding:7px 5px;color:#c8d6dd;background:#16212b;border:1px solid #2b3a47;border-radius:3px;cursor:pointer;text-align:center}#buildbar button .icon{display:block;width:36px;height:36px;margin:0 auto 2px;image-rendering:auto;pointer-events:none}#buildbar button .cost{display:block;margin-top:3px;color:#8fd49a}#buildbar button .key{display:block;margin-top:3px;color:#5a6a76;font-size:11px}#buildbar button.armed{background:#1d7fc4;border-color:#59d4d4;color:#fff}#buildbar button.armed .cost,#buildbar button.armed .key{color:#d6f2f2}#buildbar button:disabled{opacity:.45;cursor:not-allowed}#resources{position:absolute;right:12px;bottom:12px;padding:10px 14px;min-width:190px;display:flex;flex-direction:column;gap:4px}#resources .minerals{color:#8fd49a}#resources .rate{color:#6f8f7a}#resources .energy{color:#6fb7e8}#resources .brownout{color:#e07050;font-weight:700;display:none}#resources .selldepleted{font:inherit;margin-top:5px;padding:5px 10px;cursor:pointer;color:#ffe2b0;background:#3a2f1a;border:1px solid #7a6030;border-radius:3px}#resources .selldepleted:hover{background:#4a3c22}#resources.brown .brownout{display:block}#resources.brown .energy{color:#e07050}#minimapbox{position:absolute;left:12px;bottom:12px;padding:4px;line-height:0}#minimap{cursor:crosshair}#selection{position:absolute;left:12px;bottom:128px;padding:10px 14px;min-width:210px;display:none;flex-direction:column;gap:6px}#selection.visible{display:flex}#selection .title{color:#e8f2f8}#selection .row{color:#8296a0}#selection button{font:inherit;margin-top:4px;padding:5px 10px;color:#ffd9c9;background:#3a2320;border:1px solid #7a4030;border-radius:3px;cursor:pointer}#selection button:hover{background:#4a2b25}#selection button.upgrade{color:#d6ecf8;background:#16303f;border-color:#2b5a74}#selection button.upgrade:hover:not(:disabled){background:#1d3e52}#selection button:disabled{opacity:.45;cursor:not-allowed}#hint{position:absolute;bottom:92px;left:50%;transform:translate(-50%);padding:4px 12px;color:#e0a050;display:none}#hint.visible{display:block}#winbanner{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);padding:22px 34px;text-align:center;display:none;border-color:#3e8a4e}#winbanner.visible{display:block}#winbanner h2{color:#8fd49a;font-size:20px;margin-bottom:8px;letter-spacing:.08em}#winbanner p{color:#8296a0;margin-bottom:12px}#winbanner button{font:inherit;color:#c8d6dd;background:#16212b;border:1px solid #2b3a47;padding:5px 14px;border-radius:3px;cursor:pointer;margin:0 4px}#winbanner button.next{background:#1d7fc4;border-color:#1d7fc4;color:#fff}#winbanner button.toeditor,#losebanner button.toeditor{background:#16303f;border-color:#2b5a74;color:#d6f2f2}#losebanner{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);padding:22px 34px;text-align:center;display:none;border-color:#7a4030}#losebanner.visible{display:block}#losebanner h2{color:#e07050;font-size:20px;margin-bottom:8px;letter-spacing:.08em}#losebanner p{color:#8296a0;margin-bottom:12px}#losebanner button{font:inherit;color:#c8d6dd;background:#16212b;border:1px solid #2b3a47;padding:5px 14px;border-radius:3px;cursor:pointer}#help{position:absolute;top:56px;left:12px;padding:8px 12px;color:#5a6a76;font-size:11px;line-height:1.7}
