:root{color-scheme:dark;--ink:#061013;--panel:rgba(8,21,25,.91);--line:rgba(176,183,163,.19);--copper:#d0a676;--ivory:#e9e5d5;--cyan:#76cbd0;--muted:#8b9a99;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--ink);color:var(--ivory);font-family:var(--sans);overflow:hidden;font-size:13px}button,select{font:inherit}button{color:inherit;cursor:pointer;border:1px solid var(--line);background:rgba(18,37,41,.88);transition:background .2s,border-color .2s,transform .2s;min-height:44px}button:hover{background:#243d40;border-color:var(--copper)}button:active{transform:translateY(1px)}button:disabled{cursor:wait;opacity:.45}button:focus-visible,select:focus-visible,canvas:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}[hidden]{display:none!important}#battlefield{display:block;position:absolute;inset:0;width:100%;height:100%;touch-action:none;outline:none}.vignette{position:fixed;inset:0;pointer-events:none;box-shadow:inset 0 0 160px rgba(0,8,12,.4)}#intro{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 39%,rgba(22,57,62,.65),rgba(2,10,14,.96) 68%),linear-gradient(125deg,#15272c,#050e12);overflow:auto}#intro::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(120deg,transparent 0 120px,rgba(153,190,179,.018) 121px 122px);pointer-events:none}.intro-frame{position:absolute;inset:26px;border:1px solid rgba(173,183,164,.13);pointer-events:none}.intro-frame::before,.intro-frame::after{content:"";position:absolute;width:100px;height:1px;background:var(--copper);top:-1px;left:calc(50% - 50px)}.intro-frame::after{top:auto;bottom:-1px}.intro-brand{position:absolute;top:52px;left:60px;display:flex;align-items:center;font-size:12px;font-weight:bold;letter-spacing:2px}.brand-mark{color:var(--copper);font-family:Georgia,serif;font-size:28px;font-weight:bold;margin-right:12px}.muted{color:var(--muted)}.intro-build{font-size:9px;font-weight:normal;margin-left:28px;color:var(--muted);letter-spacing:2px}.intro-content{position:relative;text-align:center;width:min(580px,86vw);padding:100px 0 90px}.eyebrow,.intro-subtitle{font-size:9px;color:var(--copper);letter-spacing:4px}.sun-sigil{width:112px;height:112px;fill:none;stroke:var(--copper);stroke-width:.8;margin:23px auto 22px;filter:drop-shadow(0 0 22px #a3bdb42b)}h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(46px,6vw,78px);letter-spacing:.18em;margin:0 0 8px .18em;text-shadow:0 3px 30px #000}.intro-subtitle{font-size:9px;letter-spacing:4px;color:#a5b2aa}.intro-rule{height:1px;width:48px;background:var(--copper);margin:25px auto}.intro-description{color:#a5b1ae;font-family:Georgia,serif;font-size:16px;line-height:1.7;margin:0}.loading-block{width:280px;max-width:85%;margin:27px auto 21px}#load-status{font-size:10px;color:#839c9c;letter-spacing:1px}.load-track{height:2px;background:#718d8b26;margin-top:15px;overflow:hidden}#load-bar{display:block;height:100%;width:0;background:var(--copper);transition:width .3s}.deploy{height:48px;width:280px;max-width:85%;border-color:#9f815e80;background:linear-gradient(120deg,#92704a28,#142c2c);font-size:10px;letter-spacing:2px;color:#e4d5b9}.deploy span{padding-left:15px;color:var(--copper)}.edition{font-size:9px;letter-spacing:2px;color:var(--copper);margin-top:24px}.edition span{color:#6d8585;margin-left:15px;font-size:8px}.intro-footer{position:absolute;bottom:49px;left:60px;right:60px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:2px;color:#738a8b}.intro-footer i{font-style:normal;color:var(--copper);margin:0 12px}#hud{position:absolute;inset:0;pointer-events:none}#hud button,#hud canvas,#hud nav,#hud select{pointer-events:auto}.topbar{display:flex;align-items:center;gap:26px;position:absolute;top:0;left:0;right:0;min-height:70px;padding:10px 22px;background:linear-gradient(#061014f5,#0a181be8);border-bottom:1px solid var(--line);box-shadow:0 8px 30px #0005}.wordmark{font-family:Georgia,serif;letter-spacing:3px;font-size:21px;color:#dfd6bd}.wordmark small{display:block;letter-spacing:2.3px;font-family:var(--sans);font-size:7px;color:#839b99;margin-top:4px}.resources{display:flex;gap:30px;margin-left:25px}.resources>div{display:grid;grid-template-columns:24px auto;align-items:center;min-width:66px;font-variant-numeric:tabular-nums}.resources>div>span:nth-child(2){font-size:16px}.resources small{grid-column:2;color:#849a97;font-size:7px;letter-spacing:1.6px;margin-top:3px}.resource-icon{font-size:21px;color:#b7c1ab;grid-row:1/3}.ore-icon{color:#d0a676}.energy-icon{color:var(--cyan)}.time{display:flex;align-items:center;gap:7px;color:#aebdb4;font-size:11px;margin-left:auto;font-variant-numeric:tabular-nums}.live-dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--cyan);box-shadow:0 0 7px var(--cyan)}.utilities{display:flex;gap:4px}.utilities button{min-width:36px;min-height:36px;font-size:13px;background:transparent}.utilities #save,.utilities #load{font-size:8px;letter-spacing:1px;padding:0 9px}.mission{position:absolute;top:94px;left:22px;width:265px;padding:17px 18px;background:linear-gradient(110deg,#08171bea,#0a191db3);border:1px solid var(--line);border-left:2px solid #c6a075}.panel-kicker{font-size:8px;letter-spacing:1.7px;color:var(--copper);display:flex;align-items:center;gap:7px}.panel-kicker>span:last-child{margin-left:auto;font-size:7px;color:#758d8d}.mission h2{font-family:Georgia,serif;font-weight:400;font-size:24px;margin:13px 0 6px}.mission-sub{color:#839b97;font-size:10px;margin:0 0 17px}.phase-tag{border:1px solid var(--line);padding:4px}.mission #objectives{font-size:11px;line-height:1.7;color:#c0c9bc}.mission #objectives p{margin:7px 0}.mission ul{padding-left:15px;margin-bottom:0}.battle-label{position:absolute;right:24px;top:94px;font-size:8px;letter-spacing:2px;color:#d7e1d299;text-shadow:0 1px 5px #000}.battle-label span{color:var(--cyan);margin:0 8px}#message{position:absolute;left:50%;bottom:228px;transform:translateX(-50%);max-width:70vw;color:#e6d8b9;background:#061317d9;padding:11px 24px;border-top:1px solid #bda07480;font-size:11px;text-align:center;line-height:1.4}.command-deck{position:absolute;bottom:18px;left:18px;right:18px;display:grid;grid-template-columns:202px 220px minmax(0,1fr);gap:10px;align-items:stretch}.map-panel,.selection-panel,.orders-panel{padding:12px;background:var(--panel);border:1px solid var(--line);box-shadow:0 8px 30px #0004;backdrop-filter:blur(14px)}.map-panel{padding:10px}.map-panel .panel-kicker{font-size:7px;letter-spacing:1.3px;margin-bottom:7px}#minimap{display:block;width:100%;height:135px;background:#13282b;border:1px solid #46636340;cursor:crosshair;touch-action:none}.map-coordinates{display:flex;justify-content:space-between;font-size:7px;color:#7f9692;letter-spacing:1px;margin-top:7px}.selection-panel .online{color:var(--cyan)!important;letter-spacing:1px}#selection-info{height:103px;padding:13px 2px;font-size:11px;color:#94a7a1}#selection-info h3{font-family:Georgia,serif;color:#e3dfcc;font-size:18px;font-weight:normal;margin:5px 0 8px}#selection-info p{font-size:10px;line-height:1.6;margin:4px 0}.selection-symbol{float:left;margin:7px 13px 0 0;font-size:40px;color:var(--copper)}.quick-actions{display:flex;gap:5px;margin-top:7px}.quick-actions button{flex:1;font-size:15px;color:var(--copper)}.quick-actions button span{font-size:9px;margin-left:4px;color:#c2cbbd}.orders{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:16px}.orders button{position:relative;text-align:left;padding:12px 9px;min-height:107px;background:linear-gradient(125deg,#20343a66,#0d2025)}.order-icon{display:block;font-size:27px;color:#c6ad86;margin-bottom:10px;height:27px}.orders strong{font-size:10px;display:block;line-height:1.5;font-weight:normal;color:#e6e2d0}.orders small{font-size:8px;display:block;color:#829a96;margin-top:5px;line-height:1.5}.orders button:nth-child(4){border-left-color:#b0916880}.desktop-hint,.mobile-hint{color:#6f8888;font-size:8px;letter-spacing:.7px;margin:12px 0 0;line-height:1.4}.mobile-hint{display:none}dialog{position:fixed;color:var(--ivory);width:min(660px,calc(100vw - 28px));max-height:85dvh;overflow:auto;padding:25px;border:1px solid #9b855760;background:linear-gradient(130deg,#10272d,#071317);box-shadow:0 35px 130px #000c}dialog::backdrop{background:#02090ec7;backdrop-filter:blur(7px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:12px}.dialog-header button{font-size:24px;width:44px;background:transparent}dialog h2{font-family:Georgia,serif;font-weight:400;font-size:29px;margin:23px 0 18px}#dialog-content{color:#afc0b9;font-size:13px;line-height:1.8}#dialog-content h3{color:var(--copper);font-size:14px;margin-top:22px}#dialog-content button{padding:10px 18px}#dialog-content table{border-collapse:collapse;font-size:11px;width:100%}#dialog-content th,#dialog-content td{border-bottom:1px solid var(--line);padding:10px 5px;text-align:left}select{display:block;width:100%;padding:13px;margin-top:10px;border:1px solid var(--line);background:#112c31;color:var(--ivory)}.noscript{position:fixed;z-index:30;bottom:0;background:#341a17;padding:20px;width:100%;text-align:center}@media(min-width:1700px){.command-deck{max-width:1350px;left:50%;transform:translateX(-50%)}.orders button{padding-left:17px}.mission{top:105px;left:30px}}@media(max-width:1100px){.topbar{gap:16px;padding:10px 14px}.resources{gap:18px;margin-left:0}.wordmark{font-size:18px}.command-deck{grid-template-columns:165px 185px minmax(0,1fr);gap:7px;left:12px;right:12px}.orders-panel{padding:10px}.orders{gap:4px}.orders button{padding:11px 6px}.orders strong{font-size:9px}.orders small{font-size:7px}.desktop-hint{font-size:7px}.mission{left:15px}}@media(max-width:820px){.wordmark{font-size:16px;letter-spacing:2px}.wordmark small{font-size:6px}.resources{gap:13px}.resources>div{min-width:48px;grid-template-columns:19px auto}.resources>div>span:nth-child(2){font-size:13px}.resource-icon{font-size:17px}.resources small{font-size:6px}.topbar{gap:10px}.time{display:none}.utilities{gap:2px;margin-left:auto}.utilities button{min-width:30px;padding:0 4px}.utilities #save,.utilities #load{font-size:7px;padding:0 5px}.command-deck{grid-template-columns:145px 150px minmax(0,1fr)}.selection-panel{padding:10px}.panel-kicker{font-size:7px;letter-spacing:1px}.orders{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:9px;gap:4px}.orders button{min-height:59px;padding:7px 6px}.order-icon{font-size:17px;height:18px;float:left;margin:3px 6px 0 0}.orders small{font-size:7px;margin-top:2px}.orders strong{font-size:8px}.desktop-hint{display:none}.mobile-hint{display:block;font-size:7px;margin-top:8px}.quick-actions button span{display:block;font-size:8px;margin:3px 0 0}.mission{width:220px;padding:12px;top:86px}.mission h2{font-size:21px}.mission-sub{font-size:9px}.battle-label{font-size:7px;right:16px}#message{bottom:232px}.intro-brand{left:40px;top:35px}.intro-footer{left:40px;right:40px;bottom:35px}}@media(max-width:600px){.topbar{min-height:94px;align-items:flex-start;padding:10px 12px;gap:12px}.wordmark{font-size:16px;padding-top:2px}.resources{margin-left:auto;gap:13px;padding-top:2px}.resources>div{min-width:44px}.utilities{position:absolute;bottom:5px;right:9px}.utilities button{min-height:29px;min-width:34px}.utilities #save,.utilities #load{padding:0 8px}.mission{top:106px;left:10px;width:195px;padding:10px 12px}.mission .panel-kicker{font-size:6px}.mission h2{font-size:19px;margin:9px 0 0}.mission-sub{display:none}.mission #objectives{font-size:9px;line-height:1.55;margin-top:9px}.battle-label{top:112px;font-size:6px;writing-mode:vertical-rl;right:12px;letter-spacing:1.5px}.battle-label span{margin:7px 0}.command-deck{left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));grid-template-columns:102px minmax(0,1fr);gap:6px}.map-panel{grid-column:1;grid-row:1;padding:6px}.map-panel .panel-kicker{font-size:6px;letter-spacing:.4px;margin-bottom:5px}.map-panel .panel-kicker span{display:none}#minimap{height:84px}.map-coordinates{font-size:5px;letter-spacing:.4px;margin-top:4px}.map-coordinates span{display:none}.selection-panel{grid-column:2;grid-row:1;padding:8px 10px;position:relative}.selection-panel .panel-kicker{font-size:6px}#selection-info{height:63px;padding:7px 0;max-width:calc(100% - 105px)}#selection-info h3{font-size:14px;margin:2px 0 5px}#selection-info p{font-size:8px;line-height:1.4}.selection-symbol{font-size:25px;margin:4px 8px 0 0}.quick-actions{position:absolute;right:7px;bottom:11px;gap:3px;width:99px}.quick-actions button{min-height:49px;font-size:12px}.quick-actions button span{font-size:7px}.orders-panel{grid-column:1/3;grid-row:2;padding:8px}.orders-panel>.panel-kicker{font-size:6px;letter-spacing:1px}.orders{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-top:7px}.orders button{min-height:67px;text-align:center;padding:6px 2px}.order-icon{float:none;display:block;margin:0 auto 4px;font-size:20px;height:21px}.orders strong{font-size:7px;line-height:1.3;white-space:nowrap}.orders small{font-size:6px;line-height:1.35;margin-top:4px}.mobile-hint{font-size:6px;letter-spacing:.35px;text-align:center;margin-top:8px}#message{bottom:256px;max-width:87vw;width:max-content;font-size:9px;padding:8px 13px}.intro-frame{inset:13px}.intro-brand{left:28px;top:22px;font-size:9px;letter-spacing:1.7px}.brand-mark{font-size:24px;margin-right:9px}.intro-build{display:none}.intro-content{padding:90px 0 80px}.eyebrow{font-size:7px;letter-spacing:2.5px}.sun-sigil{height:90px;width:90px;margin:21px auto}h1{font-size:48px;letter-spacing:.13em}.intro-subtitle{font-size:6px;letter-spacing:3px}.intro-rule{margin:20px auto}.intro-description{font-size:14px}.loading-block{margin-top:23px}#load-status{font-size:8px}.edition{font-size:7px;letter-spacing:1.5px}.edition span{font-size:6px;margin-left:9px}.intro-footer{left:28px;right:28px;bottom:27px;font-size:6px;line-height:1.8;letter-spacing:1px;gap:20px}.intro-footer span:last-child{text-align:right}.intro-footer i{margin:0 5px}dialog{padding:18px}dialog h2{font-size:25px}#dialog-content{font-size:12px}}@media(max-height:650px) and (min-width:601px){.intro-content{padding:75px 0 50px}.sun-sigil{height:65px;width:65px;margin:12px auto}h1{font-size:49px}.intro-rule{margin:14px auto}.intro-description{font-size:13px}.loading-block{margin:16px auto}.edition{margin-top:13px}.intro-brand{top:25px}.intro-footer{bottom:22px}.intro-frame{inset:13px}.command-deck{bottom:9px;grid-template-columns:125px 160px minmax(0,1fr)}#minimap{height:95px}.orders button{min-height:70px}.orders{grid-template-columns:repeat(5,minmax(0,1fr))}.order-icon{float:none;margin:0 0 5px}.mobile-hint{margin-top:6px}.orders-panel{padding:9px}.selection-panel{padding:9px}#selection-info{height:64px;padding:7px 0}#selection-info h3{font-size:15px}.selection-symbol{font-size:28px}.quick-actions{margin-top:5px}.quick-actions button{min-height:34px}.mission{top:78px;padding:10px;width:218px}.mission h2{font-size:20px;margin:7px 0}.mission-sub{display:none}#objectives{font-size:9px!important}#message{bottom:181px}.topbar{min-height:61px}.battle-label{top:79px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

#selection-box{position:fixed;pointer-events:none;border:1px solid #6be7e0;background:#6be7e018;z-index:4} #dialog-content article{border-bottom:1px solid #655b4244;padding:12px 0} #dialog-content h3{margin:6px 0;color:#dcc59c} #dialog-content p{line-height:1.65} #dialog-content select{padding:12px;background:#15282d;color:#eadbc0;border:1px solid #685c42} #dialog-content button{padding:12px;background:#263c3e;color:#eadbc0;border:1px solid #685c42}

@media(max-width:820px){.utilities button{min-width:44px;min-height:44px}.quick-actions button{min-height:44px}.utilities #save,.utilities #load{padding:0 8px}}
@media(max-width:600px){.topbar{min-height:108px}.mission{top:120px}.battle-label{top:126px}.utilities{bottom:3px}.quick-actions{width:138px}#selection-info{max-width:100%;height:60px;font-size:9px;padding-bottom:28px}.quick-actions{bottom:5px}.selection-panel{min-height:128px}.map-panel #minimap{height:100px}#message{bottom:277px}}
@media(max-width:600px) and (max-height:690px){.intro-content{padding:65px 0}.sun-sigil{width:58px;height:58px;margin:12px auto}.intro-description{font-size:12px}.intro-rule{margin:12px auto}.loading-block{margin:15px auto}.edition{margin-top:12px}.intro-footer{bottom:18px}}

/* Phase 02 command architecture: compact deck, expanding construction drawer. */
.startup-actions{display:flex;justify-content:center;gap:8px;margin:12px auto 0;max-width:340px}.startup-actions button{min-height:44px;padding:8px 12px;font-size:9px;letter-spacing:1px;background:#182c2e;border-color:#a3835866}.startup-actions:has(button:not([hidden]))+.edition{margin-top:13px}
.domain-info{border-top:1px solid #d0a67633;margin-top:13px;padding-top:11px;font-size:9px;line-height:1.6;letter-spacing:.7px;color:#a5d8cf}
.camera-controls{position:absolute;right:20px;top:132px;display:flex;flex-direction:column;gap:5px;pointer-events:auto}.camera-controls button{width:44px;min-height:44px;background:#0b1c20e8;font-size:21px;color:#dbc49e;box-shadow:0 4px 15px #0003}
.command-deck{grid-template-columns:178px 248px minmax(0,1fr);align-items:end}.map-panel,.selection-panel,.orders-panel{min-height:192px}.selection-panel{display:flex;flex-direction:column}#selection-info{height:auto;min-height:69px;padding:13px 0 9px;font-size:11px;line-height:1.55;max-width:100%}.quick-actions{position:static;width:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0}.quick-actions button{min-height:44px;padding:5px 2px;font-size:14px}.quick-actions button span{display:block;font-size:8px;margin:3px 0 0}.queue-info{font-size:9px;line-height:1.5;color:#a7bbac;border-top:1px solid #b4a37526;padding-top:8px;margin-top:9px;max-height:45px;overflow:auto;overflow-wrap:anywhere}.unit-orders{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px;gap:6px}.unit-orders button{min-height:69px;padding:8px 10px}.unit-orders .order-icon{float:left;margin:4px 10px 0 0;height:30px;font-size:25px}.orders strong{font-size:10px}.orders small{font-size:8px}.construction-menu{position:relative;margin-top:8px;pointer-events:auto}.construction-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 12px;border:1px solid #ad926146;background:#1d3030d9;font-size:10px;color:#dfcca7;letter-spacing:1px;user-select:none}.construction-menu summary::-webkit-details-marker{display:none}.construction-chevron{margin-left:auto;font-size:16px}.construction-menu[open] .construction-chevron{transform:rotate(180deg)}.building-orders{position:absolute;bottom:50px;right:0;left:0;z-index:8;padding:10px;margin:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:min(470px,60dvh);overflow:auto;background:linear-gradient(130deg,#122c30fa,#07171bfa);border:1px solid #bfa16e70;box-shadow:0 -14px 50px #0008;overscroll-behavior:contain}.building-orders button{min-height:88px;padding:10px}.building-orders .order-icon{font-size:22px;margin:0 0 6px;height:23px;float:none}.building-orders button:hover,.unit-orders button:hover{background:#2a4545}.desktop-hint,.mobile-hint{margin-top:8px;font-size:7px}#message{bottom:224px;max-width:min(650px,75vw)}
#placement-panel{position:absolute;z-index:10;left:50%;transform:translateX(-50%);bottom:228px;width:min(610px,calc(100vw - 32px));padding:14px;display:flex;align-items:center;gap:10px;pointer-events:auto;background:linear-gradient(120deg,#143139f5,#0a1a1ff5);border:1px solid #ac946e;box-shadow:0 8px 45px #0009}#placement-panel[hidden]{display:none}#placement-panel>div{flex:1}#placement-info{font-size:11px;line-height:1.5;margin:6px 0 0;color:#d3decf}#placement-panel button{min-height:44px;padding:9px 14px;white-space:nowrap;font-size:10px}#confirm-placement{background:#335a51;border-color:#9cd6be70;color:#dcebd8}#cancel-placement{background:#1b2a2e}#placement-panel:not([hidden])~#message{visibility:hidden}
@media(max-width:1100px){.command-deck{grid-template-columns:146px 210px minmax(0,1fr)}.unit-orders button{padding:8px 6px}.unit-orders .order-icon{font-size:21px;margin-right:7px}.orders strong{font-size:9px}.orders small{font-size:7px}.building-orders button{padding:8px}.building-orders{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.command-deck{grid-template-columns:132px 190px minmax(0,1fr);gap:6px}.map-panel,.selection-panel,.orders-panel{min-height:183px}.unit-orders{gap:4px}.unit-orders button{min-height:66px;padding:7px 4px;text-align:center}.unit-orders .order-icon{float:none;height:20px;font-size:20px;margin:0 0 5px}.orders strong{font-size:8px}.orders small{font-size:6px}.camera-controls{right:12px;top:130px}.building-orders{grid-template-columns:repeat(2,minmax(0,1fr));max-height:54dvh}.building-orders button{min-height:77px}.building-orders strong{font-size:9px}.building-orders small{font-size:7px}#selection-info{min-height:62px;font-size:10px}.quick-actions button{min-height:44px}.construction-menu summary{font-size:8px;letter-spacing:.6px;padding:9px 8px}.queue-info{font-size:8px;max-height:35px}.utilities button{min-width:44px;min-height:44px}.camera-controls button{min-height:44px}.domain-info{font-size:8px}}
@media(max-width:600px){.command-deck{left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));grid-template-columns:90px minmax(0,1fr);gap:5px}.map-panel,.selection-panel,.orders-panel{min-height:0}.map-panel{grid-column:1;grid-row:1;padding:5px}#minimap,.map-panel #minimap{height:89px}.selection-panel{grid-column:2;grid-row:1;padding:7px 8px;min-height:115px}.selection-panel .panel-kicker{font-size:6px}#selection-info{height:auto;min-height:33px;font-size:9px;padding:5px 0;max-width:100%;line-height:1.35}.quick-actions{position:static;grid-template-columns:repeat(4,minmax(0,1fr));width:auto;gap:3px;margin:0}.quick-actions button{min-height:44px;font-size:12px;padding:3px 1px}.quick-actions button span{font-size:7px;margin-top:3px}.queue-info{padding-top:4px;margin-top:4px;max-height:24px;font-size:7px;line-height:1.3}.orders-panel{grid-column:1/3;grid-row:2;padding:7px 8px}.unit-orders{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:6px}.unit-orders button{min-height:47px;padding:5px 4px;text-align:left}.unit-orders .order-icon{float:left;height:20px;margin:4px 7px 0 2px;font-size:21px}.unit-orders strong{font-size:8px;white-space:normal}.unit-orders small{font-size:6px;margin-top:3px}.construction-menu{margin-top:5px}.construction-menu summary{min-height:44px;font-size:9px;padding:8px 10px}.building-orders{grid-template-columns:repeat(3,minmax(0,1fr));max-height:48dvh;gap:4px;padding:7px}.building-orders button{min-height:73px;padding:7px 5px}.building-orders .order-icon{height:20px;font-size:20px;margin:0 0 5px}.building-orders strong{font-size:8px;white-space:normal}.building-orders small{font-size:6px;line-height:1.5}.mobile-hint{font-size:6px;letter-spacing:0;margin:6px 0 0}.mission{top:119px;width:min(220px,64vw);padding:9px 11px}.mission #objectives{font-size:9px;line-height:1.4;margin-top:7px;max-height:58px;overflow:hidden}.mission h2{font-size:18px}.domain-info{font-size:7px;padding-top:7px;margin-top:8px}.camera-controls{right:10px;top:125px;gap:4px}.camera-controls button{width:44px;min-height:44px;font-size:20px}.battle-label{display:none}#message{bottom:279px;max-width:90vw;font-size:8px;padding:7px 11px}#placement-panel{bottom:280px;padding:10px;gap:7px;flex-wrap:wrap;width:calc(100vw - 20px)}#placement-panel>div{flex-basis:100%}#placement-panel .panel-kicker{font-size:7px}#placement-info{font-size:10px;margin-top:4px}#placement-panel button{flex:1;font-size:10px;min-height:44px}.startup-actions{max-width:90%;flex-wrap:wrap}.startup-actions button{font-size:8px;flex:1}}
@media(max-height:650px) and (min-width:601px){.command-deck{grid-template-columns:112px 190px minmax(0,1fr);bottom:8px}.map-panel,.selection-panel,.orders-panel{min-height:152px}.map-panel #minimap{height:95px}.unit-orders button{min-height:47px;padding:5px 6px;text-align:left}.unit-orders .order-icon{float:left;height:20px;margin:4px 8px 0 0;font-size:20px}.construction-menu{margin-top:5px}.construction-menu summary{min-height:44px}.building-orders{grid-template-columns:repeat(3,minmax(0,1fr));max-height:52dvh}.building-orders button{min-height:64px}.building-orders .order-icon{display:none}.quick-actions button{min-height:44px}#selection-info{min-height:35px;font-size:9px;padding:7px 0}.queue-info{max-height:23px;font-size:7px;padding-top:4px;margin-top:4px}.mission{top:75px}.camera-controls{top:78px}.domain-info{font-size:7px;padding-top:5px;margin-top:6px}#message{bottom:177px}#placement-panel{bottom:178px}.utilities button{min-height:44px}.mobile-hint{font-size:6px}.desktop-hint{font-size:6px}}
.production-status{position:relative;display:flex;align-items:center;gap:5px;margin-top:5px}.production-status .queue-info{flex:1;margin-top:0;padding-top:5px}.production-status #cancel-production{width:44px;min-width:44px;min-height:44px;font-size:21px;background:#16272b;color:#b9b7a3}.quick-actions [data-action="selectWorkers"]{background:#27413d;border-color:#a4bb8c55;color:#c8d8ad}.quick-actions [data-action="selectWorkers"] span{color:#d5e2bb}
@media(max-width:600px){.production-status{margin-top:2px;min-height:0}.production-status #cancel-production{min-height:44px;position:absolute;right:0;bottom:0;background:transparent;border-color:transparent;font-size:17px}.production-status .queue-info{padding-right:42px;max-height:24px}.selection-panel{min-height:120px}.quick-actions{padding-right:0}.production-status #cancel-production:disabled{opacity:.35}}
#cancel-production:disabled{display:none}@media(max-width:600px){.production-status #cancel-production{position:static;min-height:44px;right:auto;bottom:auto;border:1px solid var(--line);background:#16272b}.production-status .queue-info{padding-right:0;max-height:30px}.production-status:has(#cancel-production:not(:disabled)){min-height:44px}.production-status:has(#cancel-production:not(:disabled)) .queue-info{max-height:40px}}
/* Optional compact panels retain the same touch target sizes. */
body[data-panels="compact"] .mission{padding:8px 11px;max-width:220px}
body[data-panels="compact"] .mission-sub,body[data-panels="compact"] .battle-label{display:none}
body[data-panels="compact"] .map-panel{display:none}
body[data-panels="compact"] .command-deck{grid-template-columns:220px minmax(0,1fr)}
body[data-panels="compact"] .map-panel+.selection-panel{grid-column:1;grid-row:1}
body[data-panels="compact"] .orders-panel{grid-column:2;grid-row:1}
@media(max-width:600px){body[data-panels="compact"] .command-deck{grid-template-columns:1fr}body[data-panels="compact"] .map-panel+.selection-panel{grid-column:1;grid-row:1}body[data-panels="compact"] .orders-panel{grid-column:1;grid-row:2}body[data-panels="compact"] .mission{max-width:180px}}

/* Phase 03: specialist armies, formations and accessible touch command wheel. */
.tactical-info{color:#b6cabb;font-size:7px;line-height:1.5;letter-spacing:.65px;border-top:1px solid #a0b19c20;padding-top:6px;margin-top:7px;overflow-wrap:anywhere}
.orders-panel{position:relative}.orders-panel>.construction-menu{margin-top:5px}.construction-menu summary:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.specialist-orders{grid-template-columns:repeat(3,minmax(0,1fr));z-index:12}.specialist-orders button{min-height:108px}.specialist-orders .unit-cost{color:#c5ad84;margin-top:7px}.tactics-drawer{position:absolute;bottom:50px;right:0;left:0;z-index:13;max-height:min(570px,65dvh);overflow:auto;overscroll-behavior:contain;border:1px solid #bfa16e70;box-shadow:0 -14px 50px #0008;background:linear-gradient(130deg,#122c30fa,#07171bfa);padding:14px;pointer-events:auto}.tactics-section+.tactics-section{border-top:1px solid #a9b89a25;margin-top:12px;padding-top:12px}.tactic-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:8px}.tactic-buttons button{min-height:44px;font-size:16px;color:#cab288;padding:5px}.tactic-buttons button span{font-size:9px;color:#d7dfd0;margin-left:5px}.tactic-buttons button[aria-pressed=true]{border-color:#7cd3c9;background:#2a504b}.ability-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.ability-buttons button{min-height:58px;padding:9px;text-align:left;border-color:#66aaa54d;background:linear-gradient(135deg,#2b4d49,#122d32)}.ability-buttons span{display:block;color:#dce8d4;font-size:11px}.ability-buttons small{display:block;color:#a6c0b4;font-size:8px;line-height:1.5;margin-top:5px}.ability-status{font-size:9px;line-height:1.6;color:#8eaaa4;margin:8px 0 0}.control-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:8px}.control-groups>div{display:grid;grid-template-columns:1fr 1fr;gap:3px}.control-groups button{min-height:44px;padding:4px 1px;font-size:15px;color:var(--copper)}.control-groups button span{display:block;font-size:7px;color:#b2c2b5;margin-top:4px}.tactics-section>.panel-kicker>span{font-size:6px;letter-spacing:.6px}#formation-info{color:#92d8cf}.wheel-toggle{position:absolute;z-index:7;right:20px;top:285px;min-height:44px;padding:9px 12px;display:flex;align-items:center;gap:8px;font-size:8px;letter-spacing:1px;border-color:#baa27588;background:linear-gradient(130deg,#28433e,#10282e);pointer-events:auto;box-shadow:0 5px 20px #0005}.wheel-toggle>span{font-size:21px}.wheel-toggle[aria-expanded=true]{border-color:#8be6d7;background:#315a50}#command-wheel{position:absolute;z-index:16;right:20px;bottom:280px;width:302px;max-width:calc(100vw - 24px);padding:14px;pointer-events:auto;border:1px solid #a89467a6;border-radius:20px;background:radial-gradient(ellipse at 50% 48%,#31524cfa,#0a1e26fa 76%);box-shadow:0 8px 50px #000a;backdrop-filter:blur(18px)}.wheel-heading{text-align:center;font-size:8px;letter-spacing:1.8px;color:#d0b68c}.wheel-heading small{display:block;color:#9bafa8;font-size:8px;letter-spacing:0;margin-top:5px}.wheel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:12px}.wheel-grid button{min-width:44px;min-height:60px;padding:7px 2px;border-radius:12px;background:#172f32b3;border-color:#8da99b42}.wheel-grid button>span{display:block;color:#d9bd8e;font-size:22px;height:26px}.wheel-grid small{display:block;color:#c9d8cb;font-size:6px;letter-spacing:.4px;line-height:1.4}.wheel-grid button.wheel-center{border-radius:50%;background:radial-gradient(#426d60,#24463e);border-color:#a4c5a37d}.wheel-grid button:hover{background:#3a5e53;border-color:#c0ba8d}#command-wheel>p{font-size:8px;line-height:1.6;text-align:center;color:#9fb4aa;margin:10px 3px 0}#hud:has(#command-wheel:not([hidden])) .wheel-toggle{z-index:17}.orders-panel{min-height:0}.selection-panel,.map-panel{min-height:236px}.selection-panel{align-self:stretch}#selection-info{min-height:56px}.unit-orders button{min-height:64px}.unit-orders{margin-top:9px}.construction-menu summary{min-height:44px}.command-deck{align-items:stretch}#message{bottom:270px}#placement-panel{bottom:274px}
@media(max-width:1100px){.specialist-orders{grid-template-columns:repeat(2,minmax(0,1fr))}.tactics-drawer{padding:10px}.tactic-buttons button span{font-size:8px;margin-left:3px}.ability-buttons span{font-size:10px}.ability-buttons small{font-size:7px}.control-groups{gap:5px}.control-groups button span{font-size:6px}.wheel-toggle{right:12px}}
@media(max-width:820px){.command-deck{grid-template-columns:126px 190px minmax(0,1fr)}.selection-panel,.map-panel{min-height:228px}.tactical-info{font-size:6px;letter-spacing:.3px}.tactics-drawer{max-height:60dvh;min-width:260px;left:auto;width:100%}.specialist-orders{min-width:260px;left:auto;width:100%}.tactic-buttons button span{display:block;margin:3px 0 0}.wheel-toggle{right:12px;top:286px}.wheel-toggle>span{font-size:19px}#command-wheel{bottom:272px;right:12px;width:285px}#message{bottom:267px}#placement-panel{bottom:270px}}
@media(max-width:600px){.command-deck{grid-template-columns:90px minmax(0,1fr)}.map-panel,.selection-panel{min-height:0}.selection-panel{padding:7px 8px}.selection-panel #selection-info{min-height:31px;font-size:8px}.tactical-info{display:none}.production-status{margin-top:2px}.orders-panel{padding:6px 8px}.unit-orders{margin-top:5px}.unit-orders button{min-height:46px}.orders-panel>.construction-menu{display:inline-block;position:static;vertical-align:top;width:calc(33.333% - 3px);margin-top:5px}.orders-panel>.construction-menu+details{margin-left:2px}.construction-menu summary{min-height:44px;padding:6px 4px;font-size:6px;letter-spacing:0;gap:3px;line-height:1.4}.construction-menu summary>span:first-child{font-size:15px}.construction-chevron{font-size:11px}.building-orders,.specialist-orders,.tactics-drawer{bottom:69px;left:0;right:0;width:auto;min-width:0;max-height:50dvh}.specialist-orders{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.specialist-orders button{min-height:94px;padding:8px}.specialist-orders strong{font-size:9px}.specialist-orders small{font-size:7px}.specialist-orders .unit-cost{font-size:7px}.building-orders{grid-template-columns:repeat(3,minmax(0,1fr))}.tactics-drawer{padding:11px;max-height:48dvh}.tactic-buttons button{min-height:44px}.tactic-buttons button span{display:inline;font-size:8px;margin-left:5px}.ability-buttons button{min-height:56px}.ability-buttons span{font-size:10px}.ability-buttons small{font-size:7px}.tactics-section>.panel-kicker{font-size:7px}.tactics-section>.panel-kicker>span{font-size:5px}.control-groups button{min-height:44px}.control-groups button span{font-size:6px}.wheel-toggle{top:283px;right:10px;padding:7px 9px;min-height:44px;font-size:7px;gap:6px}.wheel-toggle>span{font-size:20px}#command-wheel{right:10px;bottom:258px;width:266px;padding:11px;border-radius:18px}.wheel-grid{gap:4px;margin-top:9px}.wheel-grid button{min-height:54px;border-radius:10px}.wheel-grid button>span{font-size:20px;height:24px}.wheel-grid small{font-size:6px}.wheel-heading{font-size:7px}#command-wheel>p{font-size:7px;margin-top:8px}#message{bottom:260px}#placement-panel{bottom:262px}.mobile-hint{font-size:5px;margin-top:5px}.mission #objectives{max-height:49px}.domain-info{font-size:6px}.mission{max-width:58vw}}
@media(max-height:650px) and (min-width:601px){.selection-panel,.map-panel{min-height:198px}.orders-panel>.construction-menu{display:inline-block;position:static;width:calc(33.333% - 4px);vertical-align:top;margin-top:5px}.orders-panel>.construction-menu+details{margin-left:3px}.construction-menu summary{font-size:6px;letter-spacing:0;padding:5px;gap:4px}.building-orders,.specialist-orders,.tactics-drawer{bottom:63px;max-height:54dvh;left:0;right:0;width:auto}.unit-orders{margin-top:6px}.unit-orders button{min-height:45px}.tactical-info{font-size:6px}#selection-info{min-height:35px}#message{bottom:219px}#placement-panel{bottom:221px}.wheel-toggle{right:12px;top:236px;font-size:7px;padding:6px 9px}#command-wheel{bottom:214px;width:260px;padding:10px}.wheel-grid button{min-height:49px}.wheel-grid button>span{font-size:19px;height:22px}#command-wheel>p{display:none}}
.tactic-buttons [data-action="toggleQueue"]{grid-column:1/-1;font-size:12px}.tactic-buttons [data-action="toggleQueue"] span{font-size:9px}.wheel-queue{width:100%;min-height:44px;margin-top:8px;font-size:8px;letter-spacing:1px;border-radius:8px;color:#c6d7c6;background:#233d3e}.wheel-queue[aria-pressed=true],[data-action="toggleQueue"][aria-pressed=true]{background:#3b6252;border-color:#a8d6ac;color:#e0ecd6}
#command-wheel{max-height:min(440px,70dvh);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
@media(max-width:600px){#command-wheel{max-height:calc(100dvh - 370px);min-height:180px}.tactics-drawer,.building-orders{scrollbar-width:thin}}
/* Keep transient commands above the actual responsive command deck. */
#message,#placement-panel{bottom:calc(var(--command-height,290px) + 30px);z-index:9}
#command-wheel{bottom:calc(var(--command-height,290px) + 28px);max-height:max(180px,calc(100dvh - var(--command-height,290px) - 110px))}
#dialog-content{overflow-x:auto}

/* Phase 04: live reconnaissance and domain logistics. */
.world-intel{display:grid;gap:6px;margin-top:11px;padding-top:10px;border-top:1px solid #bea77525;font-size:8px;line-height:1.4;letter-spacing:1px;color:#9cb9b3}
.world-intel #region-info{color:#d5bc8e;font-size:9px;letter-spacing:1.5px}
.world-intel #exploration-info{color:#92c6bf}
.alloy-icon{color:#b5bfe7!important}.alloy-resource>span:nth-child(2){color:#d8deee}
.camera-hint{position:absolute;right:24px;top:94px;margin:0;font-size:8px;letter-spacing:1.2px;color:#a8c4bd;text-shadow:0 2px 9px #000;pointer-events:none;background:#081b21b3;border:1px solid #bda98020;border-radius:3px;padding:9px 11px}
#battlefield[data-panning=true]{cursor:grabbing}#battlefield[data-space-pan=true]{cursor:grab}#battlefield:focus-visible{outline:none}
#minimap{touch-action:none;cursor:crosshair;display:block}.logistics-summary{grid-column:1/-1;padding:10px 11px;border:1px solid #b29d6233;background:#082128}
.logistics-summary>strong{display:block;font-size:9px;letter-spacing:1.4px;color:#d6bd88}.logistics-summary>strong span{color:#7dbab5;margin:0 8px}
.logistics-summary>p{font-size:10px;line-height:1.5;color:#9db9ae;margin:7px 0 0}
.building-orders button.chain-building{border-color:#a8b78d66;background:linear-gradient(130deg,#304037,#12262a)}
.building-orders button.chain-building small:last-child{color:#b8cdba}
body[data-panels=compact] .world-intel{gap:4px;margin-top:6px;padding-top:6px;font-size:7px}
@media(max-width:1100px){.resources{gap:17px}.camera-hint{right:16px;top:84px;font-size:7px;max-width:260px;line-height:1.6;text-align:right}.world-intel{font-size:7px;gap:5px}.world-intel #region-info{font-size:8px}}
@media(max-width:820px){.resources{gap:11px}.resources>div{min-width:43px}.world-intel{gap:4px;margin-top:7px;padding-top:7px;font-size:6px}.world-intel #region-info{font-size:7px}.camera-hint{max-width:180px;font-size:6px}.logistics-summary>strong{font-size:8px;letter-spacing:.7px}.logistics-summary>p{font-size:9px}}
@media(max-width:600px){.topbar{gap:7px}.wordmark{font-size:14px;letter-spacing:1.5px}.resources{gap:8px}.resources>div{min-width:38px;grid-template-columns:14px auto}.resources>div>span:nth-child(2){font-size:12px}.resources .resource-icon{font-size:14px}.resources small{font-size:5px}.camera-hint{display:none}.world-intel{font-size:6px;letter-spacing:.6px}.world-intel #region-info{font-size:7px}.mission .world-intel #exploration-info{font-size:6px}.mission #objectives{max-height:36px}.logistics-summary{padding:8px}.logistics-summary>strong{font-size:7px}.logistics-summary>strong span{margin:0 4px}.logistics-summary>p{font-size:8px;margin-top:5px}.intro-footer{font-size:6px;letter-spacing:.6px}}
@media(max-height:650px) and (min-width:601px){.camera-hint{top:74px;right:70px}.world-intel{grid-template-columns:1fr;gap:3px;font-size:6px;margin-top:6px;padding-top:5px}.world-intel #region-info{font-size:7px}.mission #objectives{max-height:42px}.mission{max-width:230px}}

#battlefield[data-interaction=pan]{cursor:grabbing}#battlefield[data-interaction=pan-ready]{cursor:grab}
@media(max-width:600px){
 .orders-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:4px;align-items:start}
 .orders-panel>.panel-kicker,.orders-panel>.unit-orders,.orders-panel>.mobile-hint,.orders-panel>.desktop-hint{grid-column:1/-1}
 .orders-panel>.construction-menu{display:block;width:auto;min-width:0;margin:5px 0 0!important}
}
@media(max-height:500px) and (min-width:601px){
 .command-deck{grid-template-columns:106px 182px minmax(0,1fr);gap:6px}
 .selection-panel,.map-panel{min-height:148px}.map-panel #minimap{height:78px}
 .selection-panel #selection-info{min-height:27px;font-size:8px;padding:6px 0}
 .selection-panel .tactical-info{display:none}.selection-panel .quick-actions{margin-top:3px}
 .orders-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:4px;padding:8px;align-items:start}
 .orders-panel>.panel-kicker,.orders-panel>.unit-orders{grid-column:1/-1}
 .orders-panel>.construction-menu{display:block;width:auto;min-width:0;margin:5px 0 0!important}
 .orders-panel>.desktop-hint,.orders-panel>.mobile-hint{display:none}
 .mission{width:220px;top:72px;padding:8px 11px}.mission h2{font-size:16px;margin:6px 0}
 .mission #objectives,.mission .mission-sub,.mission .domain-info{display:none}
 .mission .world-intel{margin-top:5px;padding-top:5px;grid-template-columns:1fr 1fr}.world-intel #region-info{grid-column:1/-1}
 .camera-controls{top:75px;display:flex;flex-direction:row;gap:4px}.camera-controls button{min-height:40px;width:40px}
 .wheel-toggle{top:122px;right:12px}.camera-hint{display:none}
 #placement-panel{bottom:calc(var(--command-height,148px) + 17px)}
}

#hud:has(.construction-menu[open]) #message{opacity:0}

@media(max-height:500px) and (min-width:601px){#message{width:max-content;max-width:calc(100vw - 280px);font-size:8px;line-height:1.3;padding:6px 9px;bottom:calc(var(--command-height,148px) + 16px)}}
