*{box-sizing:border-box;margin:0;padding:0}body{color:#e6edf3;overflow:hidden;background:#0d1117;font-family:ui-monospace,Menlo,Consolas,monospace}#app,#canvas-container{position:absolute;inset:0}#canvas-container canvas{display:block}.hidden{display:none!important}.muted{color:#7d8590;font-size:12px}#topbar{position:absolute;display:flex;z-index:10;background:#0d1117eb;border-bottom:1px solid #21262d;align-items: center;gap:18px;padding:8px 14px;top:0;left:0;right:0}#turn-banner{font-size:14px;font-weight:700}#timer{color:#ffc94d;min-width:52px;font-size:14px}#timer.urgent{color:#f44}#resources{display:flex;gap:14px;margin-left:auto;font-size:13px}#resources span b{color:#e6edf3}#resources .inc{font-size:11px;font-style:normal}#resources .inc.pos{color:#39d353}#resources .inc.neg{color:#f44}#effects-btn,#tech-btn{color:#e6edf3;cursor:pointer;background:#21262d;border:1px solid #30363d;border-radius:5px;margin-left:14px;padding:4px 10px;font-family:inherit;font-size:12px}#effects-btn:hover,#tech-btn:hover{border-color:#4da6ff}#tech-window{position:absolute;z-index:20;overflow:hidden;display:flex;background:#0d1117f2;border:1px solid #30363d;border-radius:8px;flex-direction:column;width:320px;max-height:60vh;top:52px;right:570px}#tech-content{overflow-y:auto;padding:10px 12px;font-size:12px;line-height:1.55}.tech-row{background:#0d1117;border:1px solid #21262d;border-radius:6px;margin-bottom:8px;padding:8px 10px}.tech-row h5{margin-bottom:2px;font-size:12.5px}.tech-row .desc{color:#7d8590;font-size:11.5px}.tech-row .cost{color:#ffc94d;font-size:11.5px}.tech-row button{color:#fff;cursor:pointer;background:#1f6feb;border:none;border-radius:5px;margin-top:6px;padding:4px 10px;font-family:inherit;font-size:11.5px}.tech-row button:disabled{color:#7d8590;cursor:not-allowed;background:#21262d}.tech-row .owned{color:#39d353;font-weight:700}.tech-row .queued{color:#4da6ff;font-weight:700}#effects-window{position:absolute;z-index:20;overflow:hidden;display:flex;background:#0d1117f2;border:1px solid #30363d;border-radius:8px;flex-direction:column;width:300px;max-height:60vh;top:52px;right:260px}.effects-header{display:flex;border-bottom:1px solid #21262d;justify-content:space-between;align-items: center;padding:8px 12px;font-size:13px;font-weight:700}.effects-header button{color:#7d8590;cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:14px}.effects-header button:hover{color:#f44}#effects-content{overflow-y:auto;padding:10px 12px;font-size:12px;line-height:1.6}#effects-content h4{color:#7d8590;text-transform:uppercase;margin:8px 0 3px;font-size:11px}#effects-content h4:first-child{margin-top:0}#effects-content .pos{color:#39d353}#effects-content .neg{color:#f44}#effects-content .esp{color:#b266ff}#side{position:absolute;display:flex;z-index:10;overflow-y:auto;background:#0d1117eb;border-left:1px solid #21262d;flex-direction:column;gap:10px;width:250px;padding:10px;top:46px;bottom:0;right:0}#selection-panel{font-size:12px;line-height:1.55}#selection-panel h3{margin-bottom:4px;font-size:13px}#selection-panel .stat{color:#7d8590}#selection-panel .pos{color:#39d353}#selection-panel .neg{color:#f44}#selection-panel .warn{color:#e0a13a}#selection-panel .terrain{border-top:1px solid #21262d;margin-top:8px;padding-top:6px}#selection-panel .terrain h3{color:#9dbce0}#selection-panel button,#orders-panel button{display:block;color:#e6edf3;cursor:pointer;text-align:left;background:#21262d;border:1px solid #30363d;border-radius:5px;width:100%;margin-top:6px;padding:6px 8px;font-family:inherit;font-size:12px}#selection-panel button:hover:not(:disabled){background:#30363d;border-color:#4da6ff}#selection-panel button:disabled{opacity:.4;cursor:not-allowed}#selection-panel button .cost{color:#ffc94d;float:right}#selection-panel button .unit-desc{display:block;color:#7d8590;clear:both;margin-top:2px;font-size:10.5px;font-weight:400;line-height:1.35}#orders-panel h3{color:#7d8590;margin-bottom:4px;font-size:12px}#orders-list{list-style:none;font-size:11.5px}#orders-list li{display:flex;background:#161b22;border-radius:4px;justify-content:space-between;align-items: center;margin-bottom:2px;padding:3px 6px}#orders-list .undo{cursor:pointer;color:#f44;background:0 0;border:none;padding:0 4px;font-family:inherit;font-size:13px}#end-turn{color:#fff;cursor:pointer;background:#1f6feb;border:none;border-radius:6px;margin-top:auto;padding:12px;font-family:inherit;font-size:14px;font-weight:700}#end-turn:hover:not(:disabled){background:#388bfd}#end-turn:disabled{color:#7d8590;cursor:not-allowed;background:#21262d}#log-panel{position:absolute;z-index:10;overflow:hidden;background:#0d1117d9;border:1px solid #21262d;border-radius:6px;width:340px;max-height:200px;bottom:10px;left:10px}#log{overflow-y:auto;max-height:184px;padding:8px 10px;font-size:11.5px;line-height:1.5}#log .t{color:#7d8590;margin-right:4px}#menu-overlay,#gameover-overlay{position:absolute;z-index:100;display:flex;background:#05070ce6;justify-content:center;align-items: center;inset:0}.menu-box{text-align:center;background:#161b22;border:1px solid #30363d;border-radius:10px;max-width:720px;padding:32px 40px}.menu-box h1{letter-spacing:2px;margin-bottom:6px;font-size:30px}.subtitle{color:#7d8590;margin-bottom:22px}#faction-cards{display:flex;gap:12px;margin-bottom:20px}.faction-card{cursor:pointer;text-align:left;background:#0d1117;border:2px solid #30363d;border-radius:8px;flex:1;padding:14px;font-size:12px;line-height:1.5}.faction-card:hover{border-color:#7d8590}.faction-card.selected{background:#10203a;border-color:#4da6ff}.faction-card h3{margin-bottom:4px;font-size:14px}.faction-card .style{color:#ffc94d;font-size:11px}.faction-card .blurb{color:#7d8590;margin-top:6px;font-size:11px}.menu-row{display:flex;justify-content:center;gap:18px;margin-bottom:20px;font-size:13px}.menu-row label{display:flex;color:#7d8590;align-items: center;gap:6px}.menu-row select,.menu-row input{color:#e6edf3;background:#0d1117;border:1px solid #30363d;border-radius:5px;padding:4px 6px;font-family:inherit}#start-game,#gameover-overlay button{color:#fff;cursor:pointer;background:#238636;border:none;border-radius:6px;padding:12px 40px;font-family:inherit;font-size:15px;font-weight:700}#start-game:hover,#gameover-overlay button:hover{background:#2ea043}.help{color:#57606a;margin-top:16px;font-size:11px}
