@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=DM+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap');
:root{--paper:#f2f1e9;--ink:#24302b;--muted:#788073;--line:#dadcd0;--lime:#c8dd91;--green:#657d4e;--orange:#d77d4e;--mono:'IBM Plex Mono',monospace;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:14px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #b98136;outline-offset:4px}button{transition:background .15s,border-color .15s,transform .15s}button:active:not(:disabled){transform:translateY(1px)}.app{max-width:1920px;margin:auto;padding:0 48px}.header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-family:var(--display);font-size:28px;font-weight:800;line-height:.9;letter-spacing:.3px}.brand-mark{background:var(--ink);color:var(--lime);width:43px;height:43px;display:grid;place-items:center;font:35px Arial}.brand-light{font-weight:500}.brand small{display:block;font:8px var(--mono);letter-spacing:3.8px;margin-top:8px}.header-center{display:flex;gap:10px;align-items:center;font:10px var(--mono);letter-spacing:1.5px;color:var(--muted)}.status-dot{display:inline-block;width:6px;height:6px;background:#6d8d42;border-radius:50%;box-shadow:0 0 0 3px #71884914}.header-divider{margin:0 8px;color:#bdc1b3}nav{display:flex;gap:22px}.icon-button{border:0;background:none;font-size:18px;display:flex;gap:8px;align-items:center}.icon-button span{font:11px var(--mono)}.icon-button:hover{color:var(--green)}.page-heading{display:flex;justify-content:space-between;align-items:center;padding:32px 0 28px}.eyebrow{font:10px var(--mono);letter-spacing:1.8px;color:var(--muted)}.eyebrow span{color:#bcc1af;margin:0 8px}h1{font:600 34px var(--display);margin:8px 0 0;letter-spacing:.1px}h1 span{color:#858b7a;font-weight:500}.mode-tag{border:1px solid var(--line);padding:11px 14px;display:flex;gap:10px;align-items:center;font:10px var(--mono);letter-spacing:1px}.battle-shell{border:1px solid #b9c2ab;box-shadow:0 6px 25px #23312508}.scoreboard{display:grid;grid-template-columns:1fr 190px 1fr;align-items:center;background:#fffef7;padding:18px 28px}.commander{display:flex;gap:13px;align-items:center;max-width:400px;width:100%}.commander.cpu{justify-self:end}.avatar{width:44px;height:44px;display:grid;place-items:center;background:#e5ead7;border:1px solid #bcc9a4;font:27px var(--display);color:#66804a}.cpu .avatar{background:#f1e2d4;border-color:#d7b59c;color:#b3633c}.commander-info{flex:1}.commander-name{display:flex;align-items:center;gap:9px;font:700 15px var(--display);letter-spacing:1.2px}.commander-name span{font:8px var(--mono);padding:2px 5px;background:#e8ecd9;color:#687e4a;letter-spacing:.6px}.cpu .commander-name{justify-content:flex-end}.cpu .commander-name span{background:#f0e3d7;color:#ac6946}.base-bar{height:5px;background:#e4e7da;margin:7px 0 5px;overflow:hidden}.base-bar i{display:block;background:#79984f;width:100%;height:100%;transition:width .2s}.cpu .base-bar i{background:var(--orange);margin-left:auto}.base-caption{display:flex;justify-content:space-between;font:8px var(--mono);color:#939984;letter-spacing:.3px}.base-caption strong{font-weight:500;color:#657252}.cpu .base-caption strong{color:#ac6946}.match-clock{text-align:center}.match-clock>span{display:block;font:8px var(--mono);color:#7c866e;letter-spacing:1.3px}.match-clock strong{font:600 29px var(--display);display:block;line-height:1.15;letter-spacing:2px}.match-clock small{font:8px var(--mono);letter-spacing:.8px;color:#8d9481}.battlefield-wrap{position:relative;overflow:hidden;background:#a5b08b;aspect-ratio:1600/690}#battlefield{width:100%;height:100%;display:block;image-rendering:pixelated}.map-caption{position:absolute;top:22px;left:24px;display:flex;align-items:center;gap:9px;font:9px var(--mono);letter-spacing:1px;color:#37482c}.map-caption b{font-weight:500;padding-left:8px;border-left:1px solid #53614250}.live-dot{width:5px;height:5px;background:#495c37}.map-tools{position:absolute;top:16px;right:20px;display:flex;gap:6px}.map-tools button{width:31px;height:31px;background:#f3f2e2ab;border:1px solid #4e5f3633;font:17px var(--mono)}.map-tools button:hover{background:#fff9e5}.map-tools button:disabled{opacity:.35}.route-chip{pointer-events:none;position:absolute;left:22%;display:flex;align-items:center;gap:8px;font:8px var(--mono);letter-spacing:1px;padding:6px 9px;color:#46583c;background:#f4f1db70;border:1px solid #64764b40}.route-chip.upper{top:31%}.route-chip.lower{top:65%}.route-chip span{opacity:.55}.route-chip b{font-size:7px;font-weight:500;color:#405321;display:none}.route-chip.active{background:#e7edc8d9;border-color:#708c48}.route-chip.active b{display:block}.battle-ticker{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);font:9px var(--mono);color:#eff0d9;background:#263b29c9;border:1px solid #e4ecc323;padding:8px 15px;white-space:nowrap;pointer-events:none}.screen-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#1b2a2155;backdrop-filter:blur(2px);z-index:3}.hidden{display:none!important}.mission-panel{width:345px;background:#f7f5e9;padding:27px 32px;text-align:center;border:1px solid #edeedc;box-shadow:7px 7px 0 #24372a40;position:relative}.mission-panel:before,.mission-panel:after{content:'';width:10px;height:10px;position:absolute;border:1px solid #64754a}.mission-panel:before{top:7px;left:7px;border-right:0;border-bottom:0}.mission-panel:after{right:7px;bottom:7px;border-left:0;border-top:0}.mission-icon{font:25px Arial;color:#657e46;margin-bottom:13px}.mission-panel .eyebrow{font-size:8px;letter-spacing:1.4px}.mission-panel h2{font:700 44px/.97 var(--display);margin:13px 0 15px;letter-spacing:.2px}.mission-panel h2 em{font-style:normal;color:#788b58}.mission-panel p{font-size:12px;line-height:1.7;color:#7a806f;margin:0 0 19px}.mission-panel>small{display:block;font:8px var(--mono);color:#969b86;margin-top:13px}.difficulty{display:flex;border:1px solid #d8ddca;margin:18px 0 12px;padding:3px;gap:3px}.difficulty button{flex:1;border:0;background:none;padding:8px 3px;font:10px var(--mono);color:#889174}.difficulty button.selected{color:#f8fae8;background:#43563a}.primary-button{width:100%;display:flex;justify-content:space-between;align-items:center;border:1px solid #25332a;background:#263a2d;color:#e4eccd;padding:15px 18px;font:500 10px var(--mono);letter-spacing:1px}.primary-button:hover{background:#3b513b}.primary-button span{font-size:17px}.compact{padding:35px}.compact h2{font-size:37px}.field-footer{padding:10px 24px;background:#f9f8ef;display:flex;justify-content:space-between;font:8px var(--mono);letter-spacing:.7px;color:#8b927e}.field-footer>span:first-child{display:flex;align-items:center;gap:7px}.legend-square{display:inline-block;width:6px;height:6px}.legend-square.green{background:#78944d}.legend-square.orange{background:#cf774a;margin-left:12px}.command-deck{display:grid;grid-template-columns:1.45fr .65fr 1.1fr;gap:25px;margin-top:27px}.section-heading{height:28px;display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}.section-heading h3{font:500 9px var(--mono);letter-spacing:1px;margin:0;padding-top:3px;white-space:nowrap}.section-heading h3>span{color:#a6ad97;margin-right:8px}.capacity{font:8px var(--mono);color:#919880;padding-top:3px;white-space:nowrap}.capacity span{font-weight:600;color:#50623e;margin-right:3px}.troop-cards{display:flex;flex-direction:column;gap:7px}.troop-card{position:relative;overflow:hidden;text-align:left;display:flex;align-items:center;gap:12px;background:#faf9f1;border:1px solid #d7dccb;padding:0 15px 0 0;min-height:65px;width:100%}.troop-card:not(:disabled):hover{border-color:#6b8648;background:#e9edda;transform:translateX(2px)}.troop-card:disabled{opacity:.62}.troop-card.ready{opacity:1}.unit-portrait{display:flex;align-items:center;justify-content:center;align-self:stretch;width:75px;background:#e9eddf;border-right:1px solid #d8ddcc;flex-shrink:0}.unit-portrait canvas{width:68px;height:54px;image-rendering:pixelated}.unit-info{display:flex;flex-direction:column;gap:3px;flex:1}.unit-type{font:7px var(--mono);letter-spacing:1px;color:#7e8a6b}.unit-info strong{font:600 19px/.95 var(--display);letter-spacing:.3px}.unit-info small{font-size:9px;color:#929782}.unit-price{text-align:right;min-width:44px;display:flex;flex-direction:column}.unit-price b{font:600 20px var(--display)}.unit-price small{font:6px var(--mono);letter-spacing:.8px;color:#8d967c}kbd{font:9px var(--mono);border:1px solid #cfd5c1;padding:3px 5px;border-radius:2px;color:#8b957d;background:#f4f5ec}.troop-card kbd{margin-left:5px}.cooldown-fill{position:absolute;bottom:0;left:0;height:2px;background:#93a66c;pointer-events:none}.route-section{border-left:1px solid var(--line);border-right:1px solid var(--line);padding:0 24px}.route-buttons{display:flex;flex-direction:column;gap:9px}.route-buttons button{height:65px;display:flex;gap:12px;align-items:center;border:1px solid #d6dcc8;background:#f7f7ee;padding:0 14px;color:#869076}.route-buttons button>span{font-size:24px}.route-buttons button>b{font:600 21px var(--display);flex:1;text-align:left}.route-buttons button.selected{background:#e1e8ce;border-color:#829765;color:#465b33}.route-buttons button.selected kbd{border-color:#9cac83;color:#596f40;background:#eaf0d9}.route-section p{font:9px/1.7 var(--mono);color:#8b937e;margin-top:17px}.wallet{display:flex;align-items:center;gap:6px;margin-top:-7px}.wallet>span{color:#7a9252;font-size:21px}.wallet strong{font:600 28px var(--display)}.wallet small{font:8px var(--mono);color:#819265;margin-left:3px}.upgrade-buttons{display:flex;flex-direction:column;gap:7px}.upgrade-buttons button{display:flex;align-items:center;gap:12px;min-height:65px;text-align:left;width:100%;padding:10px 14px;border:1px solid #d7dccb;background:#faf9f1}.upgrade-buttons button:not(:disabled):hover{background:#e9edda;border-color:#829765}.upgrade-buttons button:disabled{opacity:.57}.upgrade-icon{font-size:25px;color:#7d8c65;width:28px;text-align:center}.upgrade-buttons button>span:nth-child(2){display:flex;flex-direction:column;gap:4px;flex:1}.upgrade-buttons strong{font:600 18px var(--display)}.upgrade-buttons small{font:8px var(--mono);color:#8a937b}.upgrade-price{font:600 21px var(--display)}.page-footer{display:flex;justify-content:space-between;padding:26px 0;font:8px var(--mono);letter-spacing:1px;color:#a2a791}.page-footer b{font-weight:400;margin:0 9px;color:#bac0aa}.result-stats{display:flex;justify-content:space-around;border-top:1px solid #dce0ce;border-bottom:1px solid #dce0ce;padding:16px 0;margin:20px 0}.result-stats strong{display:block;font:600 27px var(--display)}.result-stats span{font:7px var(--mono);color:#939b83;letter-spacing:.3px}.results-panel{width:400px}.results-panel h2{font-size:42px}.text-button{margin-top:14px;border:0;background:none;font:9px var(--mono);color:#7b8967;text-decoration:underline;text-underline-offset:4px}#toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,20px);padding:13px 20px;background:#253a2e;color:#edf0dd;box-shadow:0 4px 20px #0002;border:1px solid #9cae7b;font:11px var(--mono);opacity:0;transition:.2s;pointer-events:none;z-index:20}#toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid #bdc8aa;background:#f7f6ed;color:var(--ink);padding:30px;max-width:520px;width:calc(100% - 32px);box-shadow:10px 10px 0 #132f2430}dialog::backdrop{background:#1d3024a8;backdrop-filter:blur(3px)}.manual-top{display:flex;align-items:center;justify-content:space-between}.manual-top button{border:0;background:none;font-size:25px;color:#778568}dialog h2{font:600 39px var(--display);margin:17px 0}dialog p,dialog li{font-size:12px;line-height:1.8;color:#748064}dialog ol{padding-left:19px}dialog li{margin-bottom:14px}dialog kbd{padding:1px 4px}.manual-note{border-left:2px solid #99ac74;padding-left:13px;font-size:11px!important}.manual-shortcuts{display:flex;gap:25px;font:9px var(--mono);color:#80906c;margin:20px 0}.manual-shortcuts kbd{margin-right:6px}
@media(min-width:1650px){.app{padding:0 65px}.command-deck{grid-template-columns:1.5fr .65fr 1.1fr}.troop-cards{flex-direction:row}.troop-card{min-height:160px;flex-direction:column;gap:7px;padding:10px;align-items:flex-start}.unit-portrait{height:60px;width:100%;border:0;background:transparent}.unit-info{gap:4px}.unit-info small{display:none}.unit-price{position:absolute;right:12px;bottom:12px}.troop-card kbd{position:absolute;top:8px;right:8px}.command-deck .section-heading{margin-bottom:13px}.upgrade-buttons button{min-height:48px}.route-buttons button{height:75px}}
@media(max-width:1150px){.app{padding:0 24px}.header-center{display:none}.command-deck{gap:15px;grid-template-columns:1.2fr .65fr 1.05fr}.route-section{padding:0 15px}.section-heading h3{font-size:8px;letter-spacing:.3px}.wallet strong{font-size:25px}.wallet small{font-size:7px}.section-heading{height:28px}.economy-section .section-heading{height:28px}.economy-section h3{max-width:90px;white-space:normal}.troop-card{gap:8px}.unit-portrait{width:56px}.unit-info strong{font-size:17px}.unit-info small{font-size:8px}.unit-price b{font-size:18px}.troop-card kbd{display:none}.scoreboard{padding:16px 20px;grid-template-columns:1fr 150px 1fr}.mission-panel{padding:18px 26px;width:320px}.mission-panel h2{font-size:37px;margin:10px 0}.mission-panel p{font-size:11px;margin-bottom:10px}.mission-icon{margin-bottom:9px}.difficulty{margin:12px 0 10px}.mission-panel>small{margin-top:9px}.battle-ticker{font-size:8px}.map-caption{font-size:8px}.route-chip{font-size:7px;left:24%}.route-chip b{display:none!important}}
@media(max-width:760px){.app{padding:0 14px}.header{height:77px}.brand{font-size:23px;gap:8px}.brand-mark{height:36px;width:36px;font-size:27px}.brand small{font-size:6px;letter-spacing:3.3px}.icon-button span{display:none}nav{gap:15px}.page-heading{padding:22px 0 18px}.eyebrow{font-size:8px}h1{font-size:27px}h1 span{display:block}.mode-tag{font-size:8px;padding:8px}.scoreboard{padding:13px 12px;grid-template-columns:1fr 72px 1fr;gap:8px}.commander{gap:7px}.avatar{display:none}.commander-name{font-size:12px;gap:4px;letter-spacing:.4px}.commander-name span{font-size:6px}.base-caption{font-size:6px}.base-caption>span{display:none}.cpu .base-caption{justify-content:flex-end}.match-clock>span{font-size:5px;letter-spacing:.5px}.match-clock strong{font-size:23px}.match-clock small{font-size:5px}.battlefield-wrap{aspect-ratio:auto;height:360px}#battlefield{object-fit:cover}.map-caption{left:12px;top:13px;font-size:6px;gap:5px}.map-caption b{display:none}.map-tools{right:10px;top:9px}.map-tools button{height:25px;width:25px;font-size:14px}.route-chip{display:none}.battle-ticker{bottom:9px;font-size:6px;max-width:95%;overflow:hidden;text-overflow:ellipsis;padding:6px 9px}.field-footer{padding:9px 10px;font-size:6px;letter-spacing:0}.footer-tip{display:none}.mission-panel{width:285px;padding:20px 24px}.mission-panel h2{font-size:37px}.mission-panel p{font-size:10px}.mission-panel>small{font-size:7px}.mission-icon{font-size:22px}.mission-panel .eyebrow{font-size:7px}.primary-button{padding:12px 14px;font-size:9px}.command-deck{grid-template-columns:1fr 1fr;gap:20px 14px;margin-top:21px}.deployment-section{grid-column:1/-1}.troop-cards{flex-direction:row;gap:6px}.troop-card{min-height:143px;flex-direction:column;gap:6px;padding:8px;align-items:flex-start}.unit-portrait{height:50px;width:100%;border:0;background:transparent}.unit-info{gap:4px}.unit-info strong{font-size:19px}.unit-info small{display:none}.unit-type{font-size:6px;letter-spacing:.4px}.unit-price{position:absolute;right:9px;top:9px;min-width:0}.unit-price small{font-size:5px}.unit-price b{font-size:18px}.unit-portrait canvas{width:60px;height:48px}.route-section{border:0;padding:0}.section-heading h3{font-size:8px}.economy-section h3{max-width:80px;font-size:7px}.wallet strong{font-size:23px}.wallet small{font-size:6px}.wallet{gap:3px}.upgrade-buttons button{min-height:56px;padding:8px;gap:6px}.upgrade-icon{font-size:20px;width:22px}.upgrade-buttons strong{font-size:16px}.upgrade-buttons small{font-size:6px}.upgrade-price{font-size:17px}.route-buttons button{height:56px}.route-buttons button>b{font-size:20px}.route-section p{font-size:8px}.page-footer{font-size:6px;padding:23px 0;gap:15px;line-height:1.8}.page-footer span:last-child{text-align:right}.results-panel{width:300px}.result-stats strong{font-size:24px}.result-stats span{font-size:6px}.results-panel h2{font-size:36px}}
@media(max-width:760px){.battlefield-wrap{height:350px;background:#b3be99}#battlefield{object-fit:contain}.battle-ticker{white-space:normal;text-align:center;width:90%;line-height:1.5}.mode-tag{white-space:nowrap;font-size:7px}.mode-tag .status-dot{flex-shrink:0}.eyebrow{line-height:1.7}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}.screen-overlay{backdrop-filter:none}}

/* Field upgrade 02: stronger contrast and a separate audio/visual control surface. */
.battle-shell{border-color:#98aa85;box-shadow:0 8px 30px #283c2910}.scoreboard{background:#fbfcf2}.unit-portrait{background:#e3ead8}.unit-info strong{color:#263d30}.troop-card:not(:disabled):hover{box-shadow:inset 3px 0 #759752}.route-buttons button.selected{box-shadow:inset 3px 0 #6b8a4b}.base-bar.critical i{background:#c97048;animation:base-warning 1s ease-in-out infinite}.mission-panel{border-top:3px solid #8fae67}.mission-panel>small{font-size:7px;letter-spacing:.1px}.map-caption{background:#edf2d29c;border:1px solid #647e423b;padding:7px 9px}.map-tools button{background:#f2f5dfd6}.battle-ticker{background:#203b30e8;border-color:#b6c89240}.field-footer{background:#f7f9ec}.icon-button[aria-pressed="true"]{color:#577740}
@keyframes base-warning{0%,100%{opacity:1}50%{opacity:.55}}
#field-settings{max-width:480px;max-height:calc(100dvh - 32px);overflow-y:auto;padding:25px 30px}#field-settings h2{font-size:35px;margin:12px 0 8px}.settings-intro{font-size:11px;line-height:1.6;margin:0 0 17px}.setting-toggle{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid #dce2ce}.setting-toggle label{display:flex;flex-direction:column;gap:3px;cursor:pointer}.setting-toggle strong{font:600 17px var(--display)}.setting-toggle small{font:8px/1.6 var(--mono);color:#8a967b}.setting-toggle input{accent-color:#597944;width:19px;height:19px;cursor:pointer;flex-shrink:0}.master-toggle{border:1px solid #c7d3b4;background:#edf1e0;padding:12px}.audio-sliders{display:grid;grid-template-columns:1fr 1fr;gap:15px 22px;padding:21px 0 17px}.mix-row{display:grid;grid-template-columns:1fr auto;gap:7px}.mix-row label{font:9px var(--mono);color:#627252}.mix-row output{font:9px var(--mono);color:#465e35}.mix-row input{grid-column:1/-1;width:100%;margin:0;accent-color:#6a894e;cursor:pointer;height:22px}.mix-row input:focus-visible,.setting-toggle input:focus-visible{outline:2px solid #b08d51;outline-offset:3px}.audio-preview-button{display:flex;align-items:center;gap:9px;width:100%;padding:11px 13px;border:1px solid #bfcfaf;background:#e9efda;font-size:16px;color:#5d7545}.audio-preview-button span{font:9px var(--mono);flex:1;text-align:left}.audio-preview-button small{font:7px var(--mono);color:#8a9777}.audio-preview-button:hover{background:#dde8c7}.settings-section-label{font:8px var(--mono);letter-spacing:1.4px;color:#99a58a;margin-top:23px;border-bottom:1px solid #dce2ce;padding-bottom:9px}.settings-note{font:8px/1.7 var(--mono)!important;color:#97a083!important;margin:15px 0 18px}#field-settings .primary-button{padding:12px 16px}
@media(max-width:760px){#field-settings{padding:20px}.audio-sliders{gap:12px 16px}.mix-row label{font-size:8px}.audio-preview-button small{font-size:6px}.map-caption{padding:5px 6px}.mission-panel>small{font-size:6px}.setting-toggle small{font-size:7px}}
@media(prefers-reduced-motion:reduce){.base-bar.critical i{animation:none}}

/* Open Front: navigable world, camera overview, and deliberate cover placement. */
.camera-strip{display:flex;gap:9px;align-items:center;padding:11px 18px;background:#263c31;color:#d7e4b4;border-top:1px solid #7a92585c}.camera-jump,.pan-button{border:1px solid #9db68055;background:#354c3c;color:#e2edc3;height:37px;padding:0 11px}.camera-jump{display:flex;align-items:center;gap:7px;font-size:18px}.camera-jump span{font:8px var(--mono);letter-spacing:.7px;white-space:nowrap}.pan-button{width:35px;font-size:18px;padding:0}.camera-jump:hover,.pan-button:hover{background:#4a6447}.overview{flex:1;min-width:0;position:relative}#minimap{width:100%;height:43px;display:block;cursor:crosshair;border:1px solid #b8ce9270;image-rendering:pixelated;touch-action:none}#camera-position{width:100%;display:block;height:12px;margin:3px 0 0;accent-color:#b6cf82;cursor:ew-resize}#camera-readout{position:absolute;top:3px;left:6px;font:6px var(--mono);color:#f3f3d8;pointer-events:none;background:#273f32b3;padding:2px 4px;letter-spacing:.7px}.engineer-section{border-left:1px solid var(--line);border-right:1px solid var(--line);padding:0 22px}.build-card{display:flex;flex-direction:column;align-items:center;width:100%;min-height:155px;border:1px solid #bfcaa8;background:#eef2df;padding:14px 9px;gap:8px}.build-card:hover:not(:disabled){border-color:#6f8d4d;background:#e0e9c9}.build-card:disabled{opacity:.6;cursor:not-allowed}.build-card[aria-pressed="true"]{border:2px solid #718d4d;background:#dbe7c2;padding:13px 8px}.build-card>strong{font:600 22px var(--display)}.build-card>small{font:7px/1.5 var(--mono);color:#869375;text-align:center}.build-price{display:flex;align-items:center;gap:5px;font:600 23px var(--display)}.build-price small{font:6px var(--mono);color:#8b977d}.build-price kbd{margin-left:8px}.bag-icon{display:grid;grid-template-columns:17px 17px;gap:2px;transform:skew(-10deg);padding:4px}.bag-icon i{height:10px;background:#afa275;border:1px solid #8a825b;border-top:3px solid #d7c897;border-radius:3px}.bag-icon i:nth-child(3){grid-column:1/-1;width:24px;justify-self:center;margin-top:-1px}.cover-count{font:7px var(--mono);color:#8b9779;margin:11px 0 7px;text-align:center}.cover-count span{color:#526b3f;font-weight:600}.engineer-note{font:8px/1.7 var(--mono);color:#8b977d;margin:0}.placement-panel{margin-top:18px;padding:15px 18px;border:1px solid #92a66f;background:#e7edda;display:flex;align-items:center;gap:16px;box-shadow:inset 3px 0 #718d4d}.placement-panel>div:first-child{flex:1;display:flex;flex-direction:column;gap:7px}.placement-panel strong{font:600 10px var(--mono);letter-spacing:.5px}.placement-panel>div>span{font:8px/1.6 var(--mono);color:#7f8e6d}.placement-panel>button{font:9px var(--mono);border:1px solid #b5c39f;background:#f5f7eb;padding:10px;white-space:nowrap}.placement-panel kbd{margin-left:5px}.cover-options{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.cover-options button{font:8px var(--mono);padding:5px 9px;border:1px solid #a6b68e;background:#f7f9ec;color:#526944}.cover-options button:disabled{background:#d7dec9;opacity:.5}.cover-options button:hover:not(:disabled){background:#cddfb0}.placing-cover #battlefield{cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2040%2040%22%3E%3Cg%20fill%3D%22none%22%20stroke-linecap%3D%22round%22%3E%3Cg%20stroke%3D%22%23101c20%22%20stroke-width%3D%225%22%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22M20%203v10m0%2014v10M3%2020h10m14%200h10%22%2F%3E%3C%2Fg%3E%3Cg%20stroke%3D%22%23ffffff%22%20stroke-width%3D%222%22%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22M20%203v10m0%2014v10M3%2020h10m14%200h10%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%223%22%20fill%3D%22%23f4cd69%22%20stroke%3D%22%23101c20%22%20stroke-width%3D%221.5%22%2F%3E%3C%2Fsvg%3E") 20 20,crosshair}.placing-cover .battle-shell{border-color:#6e8d4e;box-shadow:0 0 0 2px #9fb77c44}.placing-cover .battle-ticker{background:#426039ed;color:#f3f5db}.troop-card{touch-action:manipulation}
@media(max-width:1150px){.engineer-section{padding:0 14px}.build-card>strong{font-size:20px}.build-card>small{font-size:6px}.camera-strip{padding:8px 12px;gap:6px}.camera-jump{padding:0 8px}.camera-jump span{font-size:7px}}
@media(max-width:760px){.camera-strip{padding:8px;gap:5px}.camera-jump{width:28px;justify-content:center;padding:0;height:30px}.camera-jump span{display:none}.pan-button{width:25px;height:30px;font-size:16px}.overview #minimap{height:35px}#camera-position{height:17px}#camera-readout{font-size:5px}.engineer-section{padding:0;border:0}.build-card{min-height:155px}.build-card>strong{font-size:21px}.engineer-note{font-size:7px}.placement-panel{flex-wrap:wrap;padding:13px;gap:12px}.placement-panel>div:first-child{flex-basis:100%}.placement-panel>button{margin-left:auto}.placement-panel strong{font-size:8px}.placement-panel>div>span{font-size:7px}}
/* Always available master volume; the detailed mixer remains in Settings. */
.quick-volume{display:grid;grid-template-columns:auto 100px 32px;align-items:center;gap:7px;font:10px var(--mono)}.quick-volume label{color:var(--muted)}.quick-volume input{width:100%;margin:0;accent-color:#658442;cursor:pointer;min-height:28px}.quick-volume output{text-align:right;font-variant-numeric:tabular-nums}.quick-volume output.muted{opacity:.5}.header nav{align-items:center;gap:18px}
@media(max-width:1400px){.header-center{display:none}}
@media(max-width:760px){.header{flex-wrap:wrap;height:auto;min-height:94px;padding:14px 0;gap:12px}.header nav{gap:12px;margin-left:auto}.quick-volume{grid-template-columns:65px 28px;gap:5px;font-size:8px}.quick-volume label{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.quick-volume input{min-height:28px}}
.ability-note{font:9px var(--mono);color:#6c7f56;margin:-7px 0 12px;min-height:12px;line-height:1.6}.page-footer a{text-decoration:underline;text-underline-offset:3px}@media(max-width:760px){.ability-note{font-size:7px}}

/* Development balance editor */
.balance-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;font:11px var(--mono);color:#586c52}.balance-toolbar>span{display:flex;align-items:center;gap:12px}.balance-toolbar b{color:#536a3d;background:#6b843012;padding:6px 8px;border:1px solid #c9d58b33;font-size:10px}.balance-toolbar button,.balance-actions button,.balance-bottom button:not(.primary-button){border:1px solid #6f8062;background:#283a31;color:#e4eccb;padding:10px 14px;cursor:pointer;font:11px var(--mono)}
#balance-settings{width:min(1040px,94vw);max-width:1040px;max-height:90dvh;padding:28px;background:#1e2c27;color:#e4eccb;border:1px solid #6f8062;overflow:auto}#balance-settings::backdrop{background:#0a1515cc}.balance-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.balance-heading h2{font:36px var(--display);margin:8px 0}.balance-heading button{font-size:24px;background:none;color:#e4eccb;border:0;cursor:pointer}.balance-intro{line-height:1.7;color:#b8c5b5;font-size:13px;max-width:850px}.balance-actions{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.balance-unit{border-top:1px solid #ffffff1c;padding:20px 0}.balance-unit h3{font:24px var(--display);margin:0 0 16px;color:#e1e7ba}.balance-unit h4{margin:24px 0 4px;font-size:15px}.balance-unit p{font-size:12px;color:#acbdad;margin:0 0 15px}.balance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.balance-grid label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#cbd8c7}.balance-grid input{width:100%;box-sizing:border-box;min-height:42px;background:#14231e;color:#edf1cf;border:1px solid #53664f;padding:10px;font:16px var(--mono);border-radius:3px}.balance-grid small{font:10px var(--mono);color:#97ab99}.balance-bottom{position:sticky;bottom:-28px;background:#1e2c27;border-top:1px solid #53664f;padding:12px 0 16px;box-shadow:0 -10px 20px #1e2c27}.balance-bottom p{font-size:12px;color:#d3dfb0;min-height:18px;margin:0 0 10px}.balance-bottom p.error{color:#ffac8b}.balance-bottom>div{display:flex;gap:12px;flex-wrap:wrap}.balance-bottom .primary-button{width:auto;padding:12px 20px;font-size:11px}.balance-bottom>small{display:block;font-size:11px;color:#a9b8a7;margin-top:12px}#balance-settings button:focus-visible,#balance-settings input:focus-visible,.balance-toolbar button:focus-visible{outline:2px solid #e3df97;outline-offset:3px}@media(max-width:760px){.balance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#balance-settings{padding:18px}.balance-bottom{bottom:-18px}.balance-toolbar>span{align-items:flex-start;flex-direction:column;gap:5px}.balance-toolbar{font-size:10px}.balance-bottom>div button{flex:1}.balance-intro{font-size:12px}}

/* Breakwater art direction: an inset battlefield in a worn command console. */
:root{--paper:#242d30;--ink:#e2deca;--muted:#a6afa3;--line:#535d58;--lime:#d8bd70;--green:#88adc0;--orange:#cf8e70}
body{background:radial-gradient(ellipse at 50% 10%,#39433f,#20292d 75%)}.app{padding:0 28px;max-width:1920px}.header{height:76px;border-bottom-color:#596259}.brand{font-size:25px}.brand-mark{background:#c5b27c;color:#25373e;box-shadow:inset 0 0 0 2px #e4c995,3px 3px 0 #111c22}.brand small{color:#a9b0a3}.icon-button:hover,.icon-button[aria-pressed="true"]{color:#9cc6d9}.quick-volume label,.quick-volume output{color:#abb7b4}.quick-volume input{accent-color:#99b8bc}.page-heading{padding:19px 0 14px}h1{font-size:27px}h1 span{color:#a3afa4}.mode-tag{background:#313e40;border-color:#637165;color:#c9cdb4}.status-dot{background:#8fbdc5}.balance-toolbar{color:#aab7b0;margin-bottom:10px}.balance-toolbar b{color:#c9b981;background:#c5b27c0c;border-color:#756f52}.balance-toolbar button{background:#3c4948;border-color:#7f8974;color:#e2d6ae;padding:8px 13px}
.battle-shell{border:3px solid #687368;box-shadow:0 0 0 1px #141f25,0 12px 40px #0c151b66}.scoreboard{background:linear-gradient(#4c5651,#374440);border-bottom:2px solid #1b2b32;padding:12px 22px;box-shadow:inset 0 1px #98a18b55}.commander-name{color:#ece4c9;font-size:14px}.commander-name span{background:#547587;color:#dfebdf}.cpu .commander-name span{background:#805644;color:#f0d5b5}.avatar{background:#3c5967;border-color:#759ca8;color:#c6dfe1}.cpu .avatar{background:#694c43;border-color:#b48b68;color:#e4c7a0}.base-bar{height:7px;background:#182b30;border:1px solid #18272d;box-shadow:0 1px #a9ad9250}.base-bar i{background:linear-gradient(#92bac4,#54899c)}.cpu .base-bar i{background:linear-gradient(#d0a078,#aa6650)}.base-caption,.base-caption strong,.cpu .base-caption strong{color:#bfc7b6}.match-clock>span,.match-clock small{color:#b5c0b0}.match-clock strong{color:#f1e7c1;font-size:27px}.battlefield-wrap{background:#285779}.map-caption{background:#293c43dd;color:#d6d8bc;border-color:#91a7a466;box-shadow:2px 2px #13252f40;top:16px;left:16px}.map-caption b{border-color:#b8c2ac55}.live-dot{background:#8cc1ce}.map-tools button{background:#3b4d50e8;border-color:#9aa58a77;color:#e0dcc1}.map-tools button:hover{background:#63756b}.battle-ticker{background:#243941db;color:#e4ddba;border-color:#9da58b60;bottom:12px}
.camera-strip{background:linear-gradient(#444f48,#343f3b);border-top:2px solid #7d8975}.camera-strip button{background:#2e3d3f;color:#c4d0c4;border-color:#74806c}.camera-strip button:hover{background:#506364}.overview{border-color:#a19c73;background:#253f4e}.overview input{accent-color:#d8bd70}.field-footer{background:#303e40;color:#b9c7bc;border-top:1px solid #657268}.legend-square.green{background:#7eacbf}.legend-square.orange{background:#c58a70}.command-deck{background:linear-gradient(#47524d,#38433f);border:2px solid #737f6c;box-shadow:inset 0 1px #aeb39b55,0 5px 0 #18292e;gap:20px;padding:18px;margin-top:14px}.section-heading h3{color:#d1d5bd}.section-heading h3 span{color:#9cae9f}.capacity,.ability-note{color:#b2c4bb}.troop-card{background:linear-gradient(120deg,#38494e,#2e3b3d);border:1px solid #7b8b7c;box-shadow:inset 0 1px #c1c8af33;opacity:1}.troop-card:disabled{opacity:.55}.troop-card:not(:disabled):hover{background:#465b5d;border-color:#c4cb9a;box-shadow:inset 3px 0 #7da6b2}.unit-portrait{background:radial-gradient(#9caa96,#6a7f77);border-color:#7d9287;box-shadow:inset 0 0 16px #1e37354d}.unit-info strong{color:#f0e8cd}.unit-type{color:#a6bfbb}.unit-info small{color:#adbeb1}.unit-price b{color:#e6ca84}.unit-price small{color:#b2b8a3}.troop-card kbd{background:#293b3f;color:#b9c8be;border-color:#8a9580}.cooldown-fill{background:#8db5c138}.build-card{background:linear-gradient(#48564c,#34433e);border-color:#88927a;color:#d7dec1}.build-card:disabled{opacity:.5}.build-card strong{color:#ebe2c0}.build-card small,.engineer-note,.cover-count{color:#b3c1b0}.build-price{color:#e5c785}.build-card[aria-pressed="true"]{background:#59654b;outline:1px solid #c9c68b}.engineer-section{border-color:#78816a}.wallet strong{color:#f3d58c}.wallet small{color:#c3ccae}.wallet>span{color:#e3c581}.upgrade-buttons button{background:#2e3e3e;border-color:#7a8877;box-shadow:inset 0 1px #bcc5aa26;color:#d9dec8}.upgrade-buttons button:disabled{opacity:.5}.upgrade-buttons button:hover:not(:disabled){background:#4a5c50}.upgrade-buttons strong{color:#e6e4cc}.upgrade-buttons small{color:#adbcaa}.upgrade-price{color:#e8ca87}.upgrade-icon{color:#aebf9b}.page-footer{color:#9aa99e}.page-footer a{color:#c6cbb3}.screen-overlay{background:#132a3540;backdrop-filter:blur(2px)}.mission-panel{background:linear-gradient(135deg,#46564e,#2a3d3e);border:1px solid #9ca68b;border-top:3px solid #d0b97a;box-shadow:8px 8px 0 #13242d88;color:#e8e6cb}.mission-panel h2 em{color:#bacb9c}.mission-panel p,.mission-panel>small{color:#b8c9ba}.mission-icon{color:#c7c58d}.mission-panel .eyebrow{color:#bac6aa}.difficulty{border-color:#79866e}.difficulty button{color:#c6d1bd}.difficulty button.selected{background:#b7ab76;color:#23383d}.primary-button{background:linear-gradient(#cbb77d,#a49364);color:#263b3b;border:1px solid #e1cc91;box-shadow:inset 0 1px #fff1b870}.primary-button:hover{background:#dcc78c}.primary-button span{color:#34483e}.result-stats{border-color:#7d8872}.result-stats span,.text-button{color:#c2cfb8}.placement-panel{background:#354941;border-color:#9ba77e;color:#e3e3bc}.cover-options button{background:#293f42;color:#dfe4bf;border-color:#8a9b7f}
/* Settings retain their light paper surface for readable controls. */
#manual,#field-settings{color:#24302b}#manual .primary-button,#field-settings .primary-button{color:#253b35}#balance-settings .primary-button{color:#293c35}
@media(min-width:1650px){.app{padding:0 32px}}@media(max-width:760px){.app{padding:0 10px}.header{height:72px}.page-heading{padding:16px 0 12px}h1{font-size:24px}.command-deck{padding:12px;gap:16px 10px}.scoreboard{padding:10px;grid-template-columns:1fr 74px 1fr}.commander-name{font-size:11px}.match-clock strong{font-size:22px}.battlefield-wrap{background:#285779}.unit-portrait{background:transparent;box-shadow:none}.page-heading .eyebrow{font-size:7px}.balance-toolbar{font-size:9px}.balance-toolbar button{font-size:9px}.troop-card{min-height:145px}}

/* Compact purchase console: price and field-point badges stay visible in every slot. */
.command-deck.compact-console{display:block;padding:10px 12px;margin-top:10px;background:linear-gradient(#656653,#424a40);border:2px solid #96937a;box-shadow:inset 0 1px #d0c5a16b,0 4px 0 #1a272b}.console-top{display:grid;grid-template-columns:110px 1fr 112px;gap:12px;align-items:stretch;margin-bottom:9px}.console-wallet{background:#253234;border:1px solid #9a997e;box-shadow:inset 0 2px 5px #111b21;padding:4px 10px;display:grid;grid-template-columns:1fr auto;align-items:center}.console-wallet>small:first-child{grid-column:1/-1;font:7px var(--mono);color:#aeb8a2;letter-spacing:1px}.console-wallet>span{font:25px var(--display);color:#ede0ad}.console-wallet strong{font-weight:600}.console-wallet i{font:12px var(--mono);color:#aeb590}.console-wallet #income{font:8px var(--mono);color:#bcc9a8;grid-column:1/-1}.console-upgrades{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.console-upgrades button{display:flex;align-items:center;gap:8px;padding:7px 9px;background:linear-gradient(#70715c,#505a4b);border:1px solid #a6a487;box-shadow:inset 0 1px #d3ccaa55,2px 2px #263632;color:#efe6c5;min-width:0}.console-upgrades button:disabled{opacity:.5}.console-upgrades button:not(:disabled):hover{background:#7b8064;border-color:#e1cd8d}.console-upgrades button>span:nth-child(2){display:flex;flex:1;flex-direction:column;text-align:left;gap:3px;min-width:0}.console-upgrades strong{font:600 15px var(--display);white-space:nowrap}.console-upgrades small{font:8px var(--mono);color:#d1d6b9;line-height:1.4}.console-upgrades .upgrade-price{font:600 19px var(--display);color:#f1d382}.upgrade-glyph{background:#bdba8c;color:#314644;box-shadow:inset 0 0 0 1px #e5d6a4,1px 1px #253b3b;width:28px;height:28px;display:grid;place-items:center;font-size:20px;flex-shrink:0}.console-capacity{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;border:1px solid #a09f82;background:#485548}.console-capacity>span{display:flex;align-items:center;gap:8px;font:600 20px var(--display);color:#ecdfb3}.console-capacity small{font:7px var(--mono);color:#c5ccb7;letter-spacing:.5px}.console-capacity svg{width:12px;height:16px;fill:#a5cada}.purchase-rack{display:grid;grid-template-columns:repeat(7,minmax(86px,1fr));gap:6px;overflow-x:auto;padding:3px 1px 5px;scrollbar-color:#9eaa8b #2b3d3d;scrollbar-width:thin}.purchase-slot,.ability-slot,.empty-slot{height:100px;position:relative;min-width:0;box-sizing:border-box;border:2px solid #8d9a8a;background:linear-gradient(135deg,#74939b,#496771);box-shadow:inset 0 0 0 2px #263d414d,2px 2px #263b36;overflow:hidden}.purchase-slot{display:grid;grid-template-rows:58px 17px 19px;padding:0 7px;color:#e9e6c9;transition:border-color .12s,filter .12s}.purchase-slot:not(:disabled):hover{border-color:#edda9e;filter:brightness(1.12)}.purchase-slot:disabled{filter:saturate(.5) brightness(.63);cursor:not-allowed}.purchase-slot canvas{width:75px;height:60px;image-rendering:pixelated;justify-self:center;align-self:end;grid-row:1}.purchase-slot .slot-name{grid-row:2;position:relative;z-index:2;font:600 12px var(--display);line-height:17px;letter-spacing:.3px;white-space:nowrap;text-align:left}.purchase-slot>kbd{position:absolute;right:5px;top:4px;font:8px var(--mono);color:#d6ddc4;background:#324c5280;border:1px solid #a5b49e66;padding:1px 4px;z-index:3}.slot-stats{display:flex;align-items:center;gap:12px;grid-row:3;position:relative;z-index:2}.purchase-slot .unit-price,.purchase-slot .field-price{display:flex;align-items:center;gap:4px;position:static;min-width:0;font:9px var(--mono);color:#e7e9cf}.purchase-slot .unit-price b,.purchase-slot .field-price b{font:500 10px var(--mono);color:#eff1d7}.purchase-slot .unit-price i{font-style:normal;font-size:12px;color:#c7d6aa}.field-price svg{width:9px;height:12px;fill:#c3dae0}.purchase-slot .cooldown-fill{position:absolute;left:0;top:0;bottom:0;height:auto;background:#192c357d;pointer-events:none;z-index:1}.slot-timer{position:absolute;left:50%;top:27px;transform:translateX(-50%);z-index:3;font:600 18px var(--mono);color:#f7e6b3;text-shadow:1px 2px #233b40}.structure-slot{background:linear-gradient(135deg,#93936b,#5c7057)}.structure-slot[aria-pressed="true"]{border-color:#f0d58a;box-shadow:inset 0 0 0 2px #e9c97480}.purchase-slot .bag-icon{width:55px;height:38px;position:relative;align-self:center;justify-self:center;margin:10px 0 0;display:block}.purchase-slot .bag-icon i{position:absolute;width:26px;height:12px;background:#c9bb85;border:1px solid #e3d3a1;box-shadow:2px 3px 0 #6f7251;transform:skew(-12deg)}.purchase-slot .bag-icon i:nth-child(1){left:0;top:16px}.purchase-slot .bag-icon i:nth-child(2){left:27px;top:16px}.purchase-slot .bag-icon i:nth-child(3){left:14px;top:2px}.ability-slot{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;background:linear-gradient(135deg,#60694f,#414e40);border-color:#969d7e}.ability-slot strong{font:600 12px var(--display);color:#dedcbb}.ability-slot small{font:8px var(--mono);color:#c4cbb0}.auto-tag{position:absolute;right:5px;top:5px;font:7px var(--mono);color:#e5d6a0;background:#354c40;padding:2px 4px}.grenade-glyph{font-size:32px;color:#ced1a2;transform:rotate(-35deg);line-height:40px}.empty-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:linear-gradient(#58604f,#434e41);border-color:#7e8771;opacity:.65}.empty-slot>span{font-size:24px;color:#87977f}.empty-slot small{font:7px var(--mono);color:#9ba98d;letter-spacing:1px}.console-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding-top:5px;border-top:1px solid #9ba08755;font:8px var(--mono);color:#c4ccb4}.console-foot>span:first-child{display:flex;align-items:center;gap:5px}.console-foot svg{width:8px;height:11px;fill:#bbd2d2}.console-foot .ability-note{font:8px var(--mono);margin:0;color:#d4d3ae}.console-foot b{font-weight:500}.compact-console button:focus-visible,.ability-slot:focus-visible{outline:2px solid #f1d88b;outline-offset:2px}
@media(max-width:1000px){.console-top{grid-template-columns:90px 1fr 90px;gap:7px}.console-upgrades button{gap:5px;padding:5px}.console-upgrades strong{font-size:12px}.console-upgrades small{font-size:7px}.console-upgrades .upgrade-price{font-size:17px}.upgrade-glyph{width:23px;height:25px;font-size:17px}.console-foot .ability-note{font-size:7px}}
@media(max-width:700px){.command-deck.compact-console{padding:8px}.console-top{grid-template-columns:1fr 1fr;gap:7px}.console-wallet{grid-template-columns:auto 1fr auto;gap:6px;padding:6px 10px}.console-wallet>small:first-child,.console-wallet #income{grid-column:auto}.console-wallet>span{font-size:23px}.console-capacity{flex-direction:row;gap:8px}.console-capacity>span{font-size:18px}.console-capacity small{font-size:6px}.console-capacity #army-count{display:none}.console-upgrades{grid-row:2;grid-column:1/-1}.console-upgrades button{min-height:43px}.console-upgrades strong{font-size:13px}.console-upgrades .upgrade-glyph{display:none}.purchase-rack{grid-template-columns:repeat(7,92px)}.console-foot{font-size:7px;gap:6px}.console-foot .ability-note{flex-basis:100%;order:3}.console-foot>span:last-child{margin-left:auto}}

.purchase-slot .unit-price,.purchase-slot .field-price{flex-direction:row;line-height:15px}.console-upgrades .upgrade-price::before{content:'◈';font:9px var(--mono);margin-right:4px;color:#d1d8ae}

.missile-slot{background:linear-gradient(135deg,#99835e,#695d48)}.missile-icon{grid-row:1;align-self:center;justify-self:center;width:59px;height:56px}.missile-icon svg{width:100%;height:100%;filter:drop-shadow(2px 3px 0 #33474380)}#missile-status{color:#e7ce94}
/* Ten-slot armory and XP command economy. */
.console-top{grid-template-columns:100px 90px minmax(0,1fr) 100px;gap:8px}.console-points{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;background:#293b3c;border:1px solid #aaa482;color:#e9d48c}.console-points span{font:25px var(--display)}.console-points small{font:7px var(--mono);color:#c7cdb7}.xp-strip{display:flex;align-items:center;gap:9px;font:9px var(--mono);color:#d5dcc4;margin:8px 0}.xp-strip output{min-width:115px;text-align:right}#xp-meter{height:7px;flex:1;background:#293c3c;border:1px solid #849480;overflow:hidden}#xp-fill{display:block;height:100%;width:0;background:#c5d997;transition:width .2s}.purchase-rack{grid-template-columns:repeat(10,minmax(0,1fr));gap:4px}.purchase-slot,.empty-slot{height:88px}.purchase-slot{grid-template-rows:48px 16px 18px;padding:0 5px}.purchase-slot .weapon-svg{grid-row:1;align-self:center;justify-self:center;width:100%;max-width:91px;height:45px;filter:drop-shadow(2px 2px #203b4666)}.purchase-slot .slot-name{font-size:11px}.slot-stats{gap:8px}.empty-slot small{font-size:6px}.missile-icon{height:45px;width:49px}.console-upgrades .upgrade-price::before{content:'★'}.balance-heading{position:sticky;top:0;z-index:5;background:#f4f2e6;padding:12px 0}.balance-bottom{z-index:6}#map-editor{width:min(1280px,96vw);max-width:1280px;max-height:92vh;padding:22px;color:#24302b;background:#f4f2e6}#map-canvas{width:100%;height:auto;display:block;border:1px solid #6b7d67;cursor:crosshair;touch-action:none}.map-tools-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:14px 0}.map-tools-row label{display:flex;align-items:center;gap:7px;font:11px var(--mono)}#map-editor button,#map-editor select{padding:9px 12px;border:1px solid #b0b69d;background:#e5e8d7}#map-editor .primary-button{width:auto;background:#b8c598}#map-editor .balance-heading h2{font:600 28px var(--display)}#map-editor p{font-size:12px;line-height:1.6}#map-editor .error{color:#a63f29}.balance-toolbar{gap:8px}.balance-toolbar>span{margin-right:auto}
@media(max-width:1000px){.console-top{grid-template-columns:86px 72px minmax(0,1fr) 78px;gap:5px}.purchase-rack{grid-template-columns:repeat(10,minmax(65px,1fr))}.console-upgrades strong{font-size:12px}.console-points small{font-size:6px}.console-upgrades .upgrade-glyph{display:none}}
@media(max-width:700px){.console-top{grid-template-columns:1fr 1fr 1fr}.console-upgrades{grid-row:2;grid-column:1/-1}.purchase-rack{grid-template-columns:repeat(10,74px)}.balance-toolbar{flex-wrap:wrap}.balance-toolbar>span{width:100%}.console-points span{font-size:22px}}
#balance-settings .balance-heading{background:#1e2c27}#map-editor .balance-heading button{color:#24302b}#map-editor .balance-bottom{bottom:-22px;padding:12px;background:#263b37}#map-editor .balance-bottom p{color:#e4edcf}#map-editor .balance-bottom p.error{color:#ffb6a0}.balance-heading{scroll-margin-top:90px}.balance-unit{scroll-margin-top:90px}
/* Unified command UI: slate panels, brushed brass accents and category organization. */
:root{--panel:#1d2e34;--panel-raised:#283d43;--panel-line:#4a6265;--brass:#d0b578;--ui-text:#e6e8d8;--ui-muted:#a8bab7}
.command-deck.compact-console{padding:18px;background:linear-gradient(135deg,#2b3e42,#192a31);border:1px solid #607472;border-top:3px solid var(--brass);box-shadow:0 8px 22px #101e2630;border-radius:8px}.console-top{gap:12px;grid-template-columns:115px 100px minmax(0,1fr) 115px}.console-wallet,.console-points,.console-capacity{background:#14262d;border:1px solid #4d6566;border-radius:5px;box-shadow:inset 0 1px #bfd1bd0c;padding:9px 12px}.console-wallet>small:first-child,.console-capacity small,.console-points small{font-size:8px;letter-spacing:1px}.console-wallet>span,.console-points span{font-size:30px;color:#f2d99c}.console-wallet #income{color:#a7c6a5}.console-upgrades{gap:8px}.console-upgrades button{background:linear-gradient(#344a4b,#283c3e);border:1px solid #65776b;border-radius:5px;box-shadow:inset 0 1px #b7c5a41a;padding:10px}.console-upgrades button:not(:disabled):hover{background:#465b50;border-color:#d5bc82}.console-upgrades strong{font-size:16px}.console-upgrades small{color:#b8c8bd}.upgrade-glyph{background:#c8b77d;color:#273e40;border-radius:4px;box-shadow:none}.console-upgrades .upgrade-price{padding-left:5px}.xp-strip{margin:13px 0 0;font-size:9px;color:#a6bfbd}#xp-meter{height:6px;border:0;background:#101f26;border-radius:3px}#xp-fill{background:linear-gradient(90deg,#7dabb3,#d8d597)}
.armory-heading{display:flex;align-items:end;justify-content:space-between;margin:20px 0 10px}.armory-heading>div{display:flex;align-items:center;gap:12px}.armory-heading span{font:8px var(--mono);letter-spacing:1.8px;color:#d3be8a}.armory-heading strong{font:500 20px var(--display);color:#e0e5d4}.armory-heading small{font:9px var(--mono);color:#a2b7b3}.purchase-rack{grid-template-columns:minmax(0,6fr) minmax(0,1.15fr) minmax(0,2fr) minmax(0,1.15fr);gap:10px;overflow:visible;padding:0 0 13px}.purchase-group{min-width:0;padding:8px;background:#13252c;border:1px solid #3d555c;border-radius:6px;--category:#96bfc7}.group-vehicles{--category:#bbc49a}.group-defenses{--category:#d8bd80}.group-abilities{--category:#d4a88c}.group-heading{display:flex;align-items:center;gap:7px;padding:1px 0 9px;border-bottom:1px solid #43575a80;margin-bottom:8px;color:var(--category)}.group-heading>span{font:8px var(--mono);opacity:.7}.group-heading h3{font:600 14px var(--display);margin:0;letter-spacing:.5px;white-space:nowrap}.group-heading>small{margin-left:auto;font:8px var(--mono);opacity:.6}.group-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.group-vehicles .group-cards,.group-abilities .group-cards{grid-template-columns:1fr}.group-defenses .group-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-slot{height:117px;grid-template-rows:52px 20px 16px 23px;padding:0 7px;border:1px solid #6b8586;border-top:2px solid var(--category);border-radius:4px;background:linear-gradient(140deg,#6a8990,#3b5964);box-shadow:inset 0 1px #bfd0bf20,0 2px 3px #08171e55;text-align:left}.purchase-slot.structure-slot{background:linear-gradient(140deg,#7d8262,#465c50)}.purchase-slot.missile-slot{background:linear-gradient(140deg,#917b5d,#605346)}.purchase-slot:disabled{filter:saturate(.65) brightness(.77)}.purchase-slot:not(:disabled):hover{transform:translateY(-2px);border-color:#ebd59f;filter:brightness(1.12);box-shadow:0 4px 10px #06182060}.purchase-slot .slot-name{font:600 13px/20px var(--display);letter-spacing:.1px;overflow:hidden;text-overflow:ellipsis;color:#fbf1d6}.purchase-slot .slot-role{grid-row:3;font:8px/15px var(--display);letter-spacing:.15px;color:#d3ded0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slot-stats{grid-row:4;justify-content:space-between;gap:3px;border-top:1px solid #d9e1c52e;padding-top:2px}.purchase-slot .unit-price b{font-size:11px;color:#fff0bd}.purchase-slot .field-price{background:#18343b60;border-radius:2px;padding:0 3px}.purchase-slot>kbd{border:1px solid #bdccb66b;background:#193139bc;color:#eff0d3;border-radius:3px}.purchase-slot .weapon-svg{height:46px;max-width:90px}.slot-timer{top:26px;font-size:16px}.console-foot{border-color:#49606466;padding-top:12px;line-height:1.7;color:#adc0b8}.placement-panel{border:1px solid #697c6b;border-left:3px solid #d2b67e;border-radius:6px;background:#243c3e}.cover-options button{border-radius:4px;padding:9px 12px}.balance-toolbar{border:1px solid #4a6265;border-radius:5px;padding:9px 12px;background:#20343a}.balance-toolbar button{border-radius:4px;background:#30494b;border-color:#6a7f72}.balance-toolbar b{color:#c9bc8b;background:none;border:0}.balance-toolbar #balance-status{color:#a6bab6}.header nav .icon-button{border:1px solid #506967;border-radius:5px;padding:9px 10px;background:#233b40}.header nav{gap:8px}.quick-volume{border-radius:5px;background:#1c323a}
/* Dialog family: consistent surfaces, clear sections, and accessible controls. */
dialog,#manual,#field-settings,#balance-settings,#map-editor{background:#21363c;color:var(--ui-text);border:1px solid #748477;border-top:3px solid var(--brass);border-radius:9px;box-shadow:0 24px 90px #08151bc9}dialog::backdrop{background:#08151bbb;backdrop-filter:blur(3px)}dialog h2{color:#eee5c9}dialog p,#manual li,.settings-intro,.balance-intro{color:#bccbc1}dialog .eyebrow{color:#c6b784}dialog button{border-radius:4px}dialog .manual-top button{color:#d5dcca}.balance-category{font:600 29px var(--display);letter-spacing:.6px;color:#d0be89!important;border-bottom:1px solid #61756b;padding:18px 0 10px;margin:18px 0 0}.balance-unit{background:#1a3036;border:1px solid #465f61;border-radius:5px;padding:18px;margin:12px 0}.balance-unit h3{color:#dce4cf}.balance-unit h4{color:#cfbc87}.balance-unit p{color:#a9c1b7}.balance-grid input{background:#12272f;border-color:#57716e;border-radius:4px;color:#edf0d7}.balance-grid label{color:#c9d5c5}.balance-grid small{color:#9fb8b1}#balance-settings .balance-heading,#map-editor .balance-heading{background:#21363c;top:-1px;border-bottom:1px solid #607367;padding:12px 0 16px;margin-bottom:16px}.balance-heading button,#map-editor .balance-heading button{color:#e0e5ce;background:#304a4d;border-radius:4px;padding:3px 9px}.balance-actions button,.balance-bottom button:not(.primary-button){background:#304a4d;border-color:#688074}.balance-bottom,#map-editor .balance-bottom{background:#21363c;border-color:#61796e;box-shadow:0 -8px 15px #21363c}.primary-button,dialog .primary-button,#map-editor .primary-button{background:linear-gradient(#d3bd80,#ad9d6a);color:#243a3b!important;border:1px solid #e3cf96;border-radius:4px;font-weight:600}.primary-button:hover{background:#dfca92}.mix-row,.setting-toggle{border-color:#526a65}.setting-toggle label strong,.mix-row label{color:#e0e6cf}.setting-toggle small,.setting-toggle label small{color:#a7bcb2}.settings-section-label{color:#c9b985}dialog input[type=range]{accent-color:#cbb981}dialog input[type=checkbox]{accent-color:#b9bb87}#map-editor button,#map-editor select{background:#314c4e;color:#e0e6cd;border-color:#718273;border-radius:4px}#map-editor .balance-intro{color:#b8c9bd}#map-canvas{border-radius:5px;border-color:#9aab8a}.map-tools-row{padding:12px;background:#182e35;border:1px solid #506960;border-radius:5px}.mission-panel{border-radius:7px;border-top-color:#d2b77c}.difficulty{border-radius:4px}.difficulty button{border-radius:3px}.audio-preview-button{background:#314b4d;color:#e1e6cd;border-color:#6a8171}
@media(max-width:1150px){.purchase-rack{grid-template-columns:minmax(0,6fr) minmax(0,1.2fr) minmax(0,2.2fr) minmax(0,1.3fr);gap:7px}.purchase-group{padding:6px}.group-heading{gap:4px}.group-heading>span{display:none}.group-heading h3{font-size:12px}.purchase-slot{padding:0 4px}.console-top{grid-template-columns:90px 85px minmax(0,1fr) 95px;gap:7px}.console-upgrades button{padding:6px}.console-upgrades strong{font-size:14px}}
@media(max-width:1000px){.purchase-rack{grid-template-columns:1fr 2fr 1fr}.group-infantry{grid-column:1/-1}.group-heading h3{font-size:15px}.console-upgrades .upgrade-glyph{display:none}.armory-heading small{font-size:8px}.group-cards{gap:8px}.purchase-slot .slot-name{font-size:14px}.purchase-slot .slot-role{font-size:10px}}
@media(max-width:700px){.console-top{grid-template-columns:repeat(3,minmax(0,1fr))}.console-upgrades{grid-row:2;grid-column:1/-1}.console-upgrades strong{font-size:13px}.console-upgrades .upgrade-price{font-size:18px}.console-wallet>small:first-child,.console-wallet #income{grid-column:1/-1}.console-wallet{display:grid;gap:2px}.console-upgrades button{min-height:56px}.armory-heading{align-items:start}.armory-heading>div{flex-direction:column;gap:4px;align-items:start}.armory-heading small{max-width:115px;text-align:right;line-height:1.6}.group-infantry .group-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.purchase-rack{gap:7px}.group-cards{gap:5px}.group-heading h3{font-size:12px}.group-heading>small{display:none}.purchase-slot .slot-name{font-size:12px}.purchase-slot .slot-role{font-size:9px}.header nav .icon-button{padding:7px}.balance-unit{padding:13px}.balance-grid{gap:12px}.balance-bottom>div{gap:7px}.balance-bottom button{font-size:9px!important}.console-foot .ability-note{font-size:8px}}
#manual h2,#field-settings h2{color:#eee5c9}#manual p,#manual li,#field-settings .settings-intro{color:#bccbc1}#manual .manual-note{background:#172e35;border-color:#516b65;color:#acc1b5}#manual .manual-shortcuts{color:#bacbbf}.group-abilities .group-heading h3{white-space:normal;line-height:1.1}.group-abilities .group-heading{min-height:26px}
.purchase-rack{grid-template-columns:minmax(0,6fr) minmax(0,3fr) minmax(0,2fr) minmax(0,2fr)}.group-vehicles .group-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.group-abilities .group-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1400px){.purchase-rack{grid-template-columns:3fr 2fr 2fr}.group-infantry{grid-column:1/-1}}
@media(max-width:700px){.purchase-rack{grid-template-columns:1fr 1fr}.group-vehicles{grid-column:1/-1}}
.map-tools-row>span{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.map-tools-row>span[hidden]{display:none}.map-tools-row input[type=number]{width:85px;background:#142c33;border:1px solid #627e70;color:#e6ead4;padding:8px;border-radius:4px}#map-object-list{max-width:330px}#map-editor .map-tools-row label{white-space:nowrap}
.balance-grid .balance-field-heading{grid-column:1/-1;margin:7px 0 0;padding:9px 0 5px;border-bottom:1px solid #4d6a6270;font:10px var(--mono);letter-spacing:1.1px;text-transform:uppercase;color:#cbbb8a}.balance-grid .balance-field-heading:not(:first-child){margin-top:18px}
.group-infantry .group-cards{grid-template-columns:repeat(7,minmax(0,1fr))}@media(max-width:700px){.group-infantry .group-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
.group-abilities .group-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.purchase-rack{grid-template-columns:minmax(0,7fr) minmax(0,3fr) minmax(0,2fr) minmax(0,3fr)}@media(max-width:1400px){.purchase-rack{grid-template-columns:3fr 2fr 3fr}}@media(max-width:700px){.purchase-rack{grid-template-columns:1fr}.group-infantry,.group-vehicles{grid-column:auto}}
#call-airlift[aria-pressed=true]{border-color:#efda9e;box-shadow:inset 0 0 0 1px #efda9e80,0 0 9px #ddc28030}
/* Compact command console: stable category order, lighter chrome, no footer status row. */
.command-deck.compact-console{padding:7px 9px;margin-top:6px;border:1px solid #6e867d;border-top:2px solid #b9ab7d;border-radius:7px;background:linear-gradient(180deg,#30494b,#1a3038);box-shadow:inset 0 1px #cbd1ac16,0 3px 12px #07171d45;flex-shrink:0}
.compact-console .console-top{grid-template-columns:112px 76px minmax(0,1fr) 102px;gap:7px;margin:0 0 5px;min-height:43px}
.console-wallet,.console-points,.console-capacity{border:1px solid #5b7770;border-radius:4px;background:#172e35;box-shadow:inset 0 1px 5px #0b202b60;padding:3px 8px}
.console-wallet{grid-template-columns:1fr;gap:0}.console-wallet>small:first-child{font-size:6px;letter-spacing:1px}.console-wallet>span{font:600 22px/22px var(--display);display:flex;align-items:center;gap:5px}.console-wallet #income{font:7px/10px var(--mono);white-space:nowrap}.resource-icon{width:13px;height:13px;flex-shrink:0;vertical-align:middle}
.console-points{gap:0}.console-points span{font:600 21px/24px var(--display)}.console-points small{font:6px/9px var(--mono);letter-spacing:.25px}.console-capacity{gap:0}.console-capacity>span{font:600 19px/22px var(--display)}.console-capacity small{font:6px/9px var(--mono)}.console-capacity #army-count{display:none}
.console-upgrades{display:grid;grid-template-columns:repeat(3,minmax(0,190px));gap:5px;justify-content:center;align-content:center}
.console-upgrades button{min-height:39px;max-height:43px;padding:4px 7px;gap:6px;border:1px solid #6b8375;border-radius:4px;background:linear-gradient(145deg,#425b52,#2d4544);box-shadow:inset 0 1px #d5d3ad16;text-align:left}
.console-upgrades button:not(:disabled):hover{background:linear-gradient(145deg,#5d7560,#3c5c52);border-color:#d8c28a;box-shadow:0 0 0 1px #d8c28a30}
.console-upgrades button:disabled{opacity:.68}.console-upgrades button>span:nth-child(2){gap:1px;overflow:hidden}.console-upgrades strong{font:600 13px/14px var(--display);letter-spacing:.1px}.console-upgrades small{font:7px/10px var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-upgrades .upgrade-price{font:600 16px/19px var(--display);margin-left:auto;white-space:nowrap}.console-upgrades .upgrade-price::before{content:'★';font-size:8px;color:#d8c793;margin-right:3px}
.console-upgrades .upgrade-glyph{display:grid;width:28px;height:29px;flex-shrink:0;box-shadow:none;background:#162f3566;border-radius:3px;color:inherit}.upgrade-svg{width:29px;height:27px;display:block}
.xp-strip{margin:3px 1px 5px;gap:6px;font:7px/10px var(--mono);height:10px}.xp-strip output{min-width:91px}#xp-meter{height:4px;border:0;background:#10272d;border-radius:2px}#xp-fill{background:linear-gradient(90deg,#699a83,#d2ce93)}
.compact-console .purchase-rack{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr) minmax(0,2fr) minmax(0,3fr);gap:6px;padding:0;overflow:visible}
.compact-console .purchase-group{grid-column:auto;min-width:0;padding:4px;border:1px solid #425e61;background:#142b32;border-radius:4px}
.group-heading,.group-abilities .group-heading{height:17px;min-height:0;gap:5px;margin:0 0 4px;padding:0 2px 3px;border-bottom:1px solid #79938730}.group-heading>span{display:none}.group-heading h3,.group-abilities .group-heading h3{font:600 11px/12px var(--display);letter-spacing:1px;white-space:nowrap;text-transform:uppercase}.group-heading>small{font:7px var(--mono);display:block;opacity:.65}
.group-cards{gap:4px}.group-infantry .group-cards{grid-template-columns:repeat(7,minmax(0,1fr))}.group-vehicles .group-cards,.group-abilities .group-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.group-defenses .group-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.compact-console .purchase-slot{height:88px;min-height:0;display:grid;grid-template-rows:39px 26px 19px;padding:0 4px;border:1px solid #628184;border-top:2px solid var(--category);border-radius:3px;background:linear-gradient(150deg,#426871,#2c4a57);box-shadow:inset 0 1px #d1e2cb16;text-align:left;gap:0}
.compact-console .purchase-slot.structure-slot{background:linear-gradient(150deg,#68775a,#3d5549)}.compact-console .purchase-slot.missile-slot{background:linear-gradient(150deg,#817251,#4e5043)}
.purchase-slot .weapon-svg{display:block;grid-row:1;width:100%;max-width:76px;height:36px;align-self:center;justify-self:center;filter:drop-shadow(1px 2px 0 #0b273662)}
.purchase-slot .slot-name{grid-row:2;display:flex;align-items:center;min-width:0;white-space:normal;overflow:hidden;text-overflow:clip;font:600 12px/12px var(--display);color:#f2e8cc;letter-spacing:.05px}
.purchase-slot .slot-role{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.purchase-slot .slot-stats{grid-row:3;gap:2px;padding:1px 0 0;border-top:1px solid #bdcfc02b;justify-content:space-between;align-items:center}.purchase-slot .unit-price,.purchase-slot .field-price{gap:2px;font:9px/14px var(--mono);padding:0;min-width:0;white-space:nowrap}.purchase-slot .unit-price b,.purchase-slot .field-price b{font:500 10px/14px var(--mono)}.purchase-slot .field-price{padding:0 2px;background:#102b354d;border-radius:2px}.purchase-slot .resource-icon{width:11px;height:11px;filter:none}.purchase-slot .field-price .resource-icon{width:10px}.purchase-slot>kbd{top:3px;right:3px;font:7px/10px var(--mono);padding:0 2px;opacity:.85}.slot-timer{top:17px;font:600 15px var(--mono)}
.compact-console .purchase-slot:not(:disabled):hover{transform:none;border-color:#edd496;background:linear-gradient(150deg,#5a8185,#365b67);box-shadow:inset 0 0 0 1px #e3cf8d40}.compact-console .purchase-slot:disabled{filter:saturate(.7) brightness(.79)}.compact-console button:focus-visible{outline:2px solid #f5db91;outline-offset:2px}
/* Fit desktop play into the available height; contain preserves the full canvas and click mapping. */
@media(min-width:1000px) and (min-height:600px){
 .app{height:100dvh;display:flex;flex-direction:column;padding:0 16px 8px;gap:6px;max-width:1920px}
 .header{height:48px;min-height:48px;flex-shrink:0;padding:0;border-bottom:1px solid #5b73644d}.brand{font-size:23px;gap:8px}.brand-mark{width:31px;height:31px;font-size:24px}.brand small{font-size:6px;letter-spacing:2.8px;margin-top:4px}.header nav .icon-button{padding:5px 8px}.header-center{font-size:8px}.quick-volume{padding:2px 6px}
 .app>main{flex:1;min-height:0;display:flex;flex-direction:column;gap:6px}.page-heading{display:none}.page-footer{display:none}
 .balance-toolbar{flex:none;min-height:29px;padding:3px 8px;margin:0;flex-wrap:nowrap;gap:7px;font-size:9px}.balance-toolbar>span{width:auto;flex-direction:row;align-items:center;gap:8px}.balance-toolbar b{padding:1px 4px;font-size:8px}.balance-toolbar button{font-size:9px;padding:4px 9px}
 .battle-shell{flex:1;min-height:240px;display:flex;flex-direction:column;border-width:2px;overflow:hidden;border-radius:6px}
 .scoreboard{flex-shrink:0;height:49px;padding:5px 15px;grid-template-columns:1fr 140px 1fr}.commander{gap:9px}.avatar{width:31px;height:31px;font-size:21px}.commander-name{font-size:12px}.base-bar{margin:3px 0;height:4px}.base-caption{font-size:6px}.match-clock strong{font-size:23px}.match-clock>span,.match-clock small{font-size:6px}
 .battlefield-wrap{flex:1;min-height:0;height:auto;aspect-ratio:auto;background:#152e36}#battlefield{width:100%;height:100%;object-fit:contain}
 .camera-strip{flex:none;height:35px;padding:3px 8px;gap:5px}.overview{height:27px;min-width:0;position:relative}.overview #minimap{height:20px;width:100%;display:block}#camera-position{height:7px;display:block;min-height:0;margin:0}#camera-readout{display:none}.camera-jump{height:25px;font-size:12px;padding:0 7px}.camera-jump span{font-size:7px}.pan-button{width:25px;height:25px;padding:0;font-size:15px}
 .field-footer{flex:none;padding:3px 10px;height:16px;font-size:6px}.field-footer span{line-height:9px}.battle-ticker{bottom:9px;padding:4px 9px;font-size:8px}
 .command-deck.compact-console{margin:0;flex:none}
 .placement-panel{position:fixed;bottom:196px;left:24px;right:24px;z-index:5;max-height:135px;overflow:auto;padding:8px 12px}.placement-panel strong{font-size:9px}.placement-panel>div>span{font-size:8px}.cover-options button{padding:5px 8px;font-size:9px}
}
@media(min-width:1000px) and (max-width:1250px){.console-top{gap:5px!important;grid-template-columns:98px 66px minmax(0,1fr) 86px!important}.console-upgrades button{gap:4px;padding:4px}.console-upgrades .upgrade-glyph{width:23px}.upgrade-svg{width:24px}.console-upgrades strong{font-size:12px}.console-upgrades small{font-size:6px}.purchase-slot .slot-name{font-size:11px}.purchase-slot .unit-price b,.purchase-slot .field-price b{font-size:9px}.purchase-slot .resource-icon{width:9px}.purchase-slot .weapon-svg{height:32px}.group-heading h3,.group-abilities .group-heading h3{font-size:10px;letter-spacing:.4px}.header-center{display:none}}
@media(max-width:999px){.compact-console .purchase-rack{grid-template-columns:3fr 2fr 3fr}.compact-console .group-infantry{grid-column:1/-1}.console-upgrades .upgrade-glyph{display:grid}.console-upgrades strong{font-size:12px}.compact-console .console-top{grid-template-columns:90px 64px minmax(0,1fr) 82px;gap:5px}.console-upgrades button{padding:4px;gap:4px}.console-upgrades .upgrade-glyph{display:none}.command-deck.compact-console{margin-top:8px}.group-heading h3{font-size:12px}.purchase-slot .slot-name{font-size:13px}}
@media(max-width:700px){.compact-console .console-top{grid-template-columns:repeat(3,minmax(0,1fr))}.console-upgrades{grid-row:2;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}.console-upgrades button{min-height:38px;max-height:44px}.console-upgrades .upgrade-glyph{display:grid;width:22px}.upgrade-svg{width:23px}.console-wallet{grid-template-columns:1fr}.console-wallet #income,.console-wallet>small:first-child{grid-column:1/-1}.compact-console .purchase-rack{grid-template-columns:3fr 2fr}.compact-console .group-infantry{grid-column:1/-1}.compact-console .group-vehicles{grid-column:auto}.compact-console .group-abilities{grid-column:1/-1}.group-infantry .group-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.group-abilities .group-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.group-heading h3{font-size:11px}.compact-console .purchase-slot{height:82px;grid-template-rows:33px 26px 19px}.purchase-slot .weapon-svg{height:32px}.console-upgrades strong{font-size:12px}}

/* Free infantry batch: all sixteen choices stay in the compact desktop rack. */
.compact-console .purchase-rack{grid-template-columns:minmax(0,8fr) minmax(0,3fr) minmax(0,2fr) minmax(0,3fr)}.group-infantry .group-cards{grid-template-columns:repeat(8,minmax(0,1fr))}.deploy-charges{position:absolute;left:3px;top:3px;z-index:3;padding:1px 3px;border:1px solid #a5bd8a55;border-radius:2px;background:#18343ccb;color:#dce6b9;font:7px/10px var(--mono)}
@media(max-width:999px){.compact-console .purchase-rack{grid-template-columns:3fr 2fr 3fr}}
@media(max-width:700px){.compact-console .purchase-rack{grid-template-columns:3fr 2fr}.group-infantry .group-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}

.balance-actions [hidden]{display:none!important}
@media(min-width:1000px){.balance-toolbar button{white-space:nowrap}.balance-toolbar #balance-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.balance-toolbar>span{min-width:0}}

#launch-drones[aria-pressed=true]{border-color:#efda9e;box-shadow:inset 0 0 0 1px #efda9e80,0 0 9px #ddc28030}

/* Reinvest the former 16px battlefield legend row in readable command controls. */
.compact-console .console-top{min-height:59px}
.compact-console .console-upgrades{grid-template-columns:repeat(3,minmax(0,220px))}
.compact-console .console-upgrades button{min-height:55px;max-height:none;padding:5px 8px;gap:7px}
.compact-console .console-upgrades strong{font-size:16px;line-height:18px}
.compact-console .console-upgrades small{font-size:9px;line-height:13px;white-space:normal;overflow:visible}
.compact-console .console-upgrades .upgrade-price{font-size:21px;line-height:24px}
.compact-console .console-upgrades .upgrade-price::before{font-size:10px}
.compact-console .console-upgrades .upgrade-glyph{width:34px;height:37px}
.compact-console .upgrade-svg{width:35px;height:34px}
.compact-console .console-wallet>span{font-size:30px;line-height:32px}
.compact-console .console-wallet>small:first-child{font-size:8px}
.compact-console .console-wallet #income{font-size:8px;line-height:12px}
.compact-console .console-capacity>span{font-size:25px;line-height:30px;white-space:nowrap}
.compact-console .console-capacity small{font-size:8px;line-height:12px}
.compact-console .console-points span{font-size:26px;line-height:32px}
.compact-console .deploy-charges{font-size:13px;line-height:16px;padding:2px 4px;background:#142d35f2;border-color:#bed29b99;box-shadow:0 1px 3px #081b24aa}
.compact-console .purchase-slot .field-price b{font-size:12px;line-height:15px}
@media(min-width:1000px) and (max-width:1250px){
 .compact-console .console-top{grid-template-columns:112px 76px minmax(0,1fr) 108px!important}
 .compact-console .console-upgrades button{padding:5px;gap:4px}
 .compact-console .console-upgrades .upgrade-glyph{width:27px;height:32px}
 .compact-console .upgrade-svg{width:28px;height:30px}
 .compact-console .console-upgrades strong{font-size:14px;line-height:16px}
 .compact-console .console-upgrades small{font-size:8px;line-height:11px}
}
@media(min-width:701px) and (max-width:999px){.compact-console .console-top{grid-template-columns:112px 76px minmax(0,1fr) 108px}.compact-console .console-upgrades .upgrade-glyph{display:none}}
@media(max-width:700px){.compact-console .console-upgrades button{min-height:55px;padding:5px;gap:4px}.compact-console .console-upgrades .upgrade-glyph{display:none}.compact-console .console-upgrades strong{font-size:15px;line-height:17px}.compact-console .console-upgrades small{font-size:8px}.compact-console .console-upgrades .upgrade-price{font-size:19px}}
@media(min-width:1000px) and (min-height:600px){.placement-panel{bottom:212px}}

/* Header authoring controls replace the separate developer toolbar. */
.header{gap:14px}.header nav{align-items:center;gap:6px}.header nav .header-editor{font:10px var(--mono);white-space:nowrap;min-height:30px;color:#e1d2aa;border-color:#8e8b68}
.balance-state{display:block;font:10px var(--mono);color:#b9cbbd;margin-bottom:8px}
.compact-console .console-top{min-height:67px}
.compact-console .console-upgrades button{min-height:63px}
.compact-console .console-upgrades strong{font-size:17px;line-height:20px}
.compact-console .console-upgrades small{font-size:10px;line-height:14px}
.compact-console .console-upgrades .upgrade-glyph{height:42px;width:38px}
.compact-console .upgrade-svg{width:39px;height:39px}
.compact-console .purchase-slot{height:115px;grid-template-rows:57px 31px 23px}
.compact-console .purchase-slot .weapon-svg{height:51px;max-width:90px}
.compact-console .purchase-slot .slot-name{font-size:14px;line-height:15px}
.compact-console .purchase-slot .unit-price b,.compact-console .purchase-slot .field-price b{font-size:13px;line-height:18px}
.compact-console .purchase-slot .resource-icon{width:13px;height:13px}
.compact-console .purchase-slot .slot-stats{padding-top:3px}
.compact-console .deploy-charges{font-size:15px;line-height:19px}
@media(max-width:1650px){.header-center{display:none}}
@media(min-width:1000px) and (max-width:1250px){.header{gap:8px}.header nav{gap:4px}.header nav .icon-button{padding:5px 6px}.header nav .icon-button span{font-size:9px}.header nav .header-editor{font-size:9px}.quick-volume{gap:4px}.quick-volume input{width:65px}.quick-volume label{display:none}.compact-console .console-upgrades .upgrade-glyph{width:27px}.compact-console .upgrade-svg{width:28px}.compact-console .console-upgrades strong{font-size:15px}.compact-console .console-upgrades small{font-size:9px}}
@media(max-width:999px){.header{height:auto;min-height:100px;flex-wrap:wrap;justify-content:center;padding:12px 0}.header nav{flex-wrap:wrap;justify-content:center}.compact-console .console-upgrades .upgrade-glyph{display:none}}
@media(max-width:700px){.compact-console .purchase-slot{height:106px;grid-template-rows:48px 31px 23px}.compact-console .purchase-slot .weapon-svg{height:43px}.compact-console .console-upgrades strong{font-size:15px}.compact-console .console-upgrades small{font-size:9px}}

/* Reinforcements and the field-point lamps form one ordered HUD control. */
.compact-console .console-top{grid-template-columns:112px 76px minmax(0,1fr) clamp(320px,24vw,450px)!important}
.compact-console .console-upgrades{grid-template-columns:repeat(2,minmax(0,220px))}
.console-field-points{display:flex;align-items:center;gap:10px;min-width:0}
.reinforcement-button{display:grid;place-items:center;flex:0 0 60px;width:60px;height:60px;padding:5px;border:1px solid #81977f;border-radius:5px;background:linear-gradient(145deg,#425b52,#263f40);box-shadow:inset 0 1px #d5d3ad30,0 2px 3px #091e2660;cursor:pointer}
.reinforcement-button svg{display:block;width:48px;height:48px;filter:drop-shadow(0 2px 1px #0b202b80)}
.reinforcement-button:disabled{opacity:.55;cursor:default}
.reinforcement-button:not(:disabled):hover{background:linear-gradient(145deg,#617856,#3c5c52);border-color:#d8c28a;box-shadow:0 0 0 1px #d8c28a30}
.reinforcement-button:not(:disabled):active{transform:translateY(1px)}
.field-lights{display:grid;flex:1;grid-template-columns:repeat(10,8px);grid-template-rows:repeat(3,8px);align-content:center;justify-content:space-between;column-gap:2px;row-gap:8px;min-width:0;height:60px;padding:5px}
.field-light{display:block;width:8px;height:8px;border:1px solid #4a655d;border-radius:50%;background:#10272a;box-shadow:inset 0 1px 3px #06171f,0 1px #9db19b22;transition:background .15s,border-color .15s,box-shadow .15s}
.field-light.active{border-color:#d2dfa0;background:#b6d67c;box-shadow:inset 0 1px 2px #f1f5bd,0 0 5px #b6d67c80,0 0 10px #b6d67c30}
.console-field-points .console-capacity{flex:0 0 102px;align-self:stretch;box-sizing:border-box}
@media(min-width:701px) and (max-width:1250px){.compact-console .console-top{grid-template-columns:100px 70px minmax(0,1fr) 290px!important}.console-field-points{gap:6px}.console-field-points .console-capacity{flex-basis:96px}.field-lights{column-gap:2px}}
@media(max-width:700px){.compact-console .console-top{grid-template-columns:repeat(2,minmax(0,1fr))!important}.console-field-points{grid-row:2;grid-column:1/-1;min-height:60px}.compact-console .console-upgrades{grid-row:3;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}.console-field-points .console-capacity{flex-direction:column}.field-lights{column-gap:2px}}
@media(prefers-reduced-motion:reduce){.field-light{transition:none}}
@media(min-width:1000px) and (min-height:600px){.placement-panel{bottom:247px}}
.kick-identity{display:flex;align-items:center;gap:7px;min-width:0;max-width:145px;color:#caefae;font:13px var(--mono)}.kick-identity[hidden]{display:none}.kick-identity img{width:32px;height:32px;border-radius:5px;object-fit:cover;border:1px solid #91b56e}.kick-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kick-settings{border-block:1px solid #5f746b;padding:12px 0;margin-top:20px}.kick-settings>label{font-size:12px}.kick-connect-row{display:flex;gap:7px;margin-top:8px;flex-wrap:wrap}.kick-connect-row input{min-width:120px;flex:1;background:#142b32;color:#e2edce;border:1px solid #819a7b;padding:9px}.kick-connect-row button{background:#3b5851;color:#f2e9ce;border:1px solid #819a7b;padding:8px}.kick-connect-row button:disabled{opacity:.5}#kick-status{color:#d4dfb7;font-size:12px}.kick-settings .mix-row{margin-top:14px}.kick-settings code{font-size:11px}
@media(max-width:1400px){.header nav #sound span,.header nav #settings span,.header nav #help span{display:none}.header nav .quick-volume{display:none}.kick-identity{max-width:115px;font-size:11px}.header .brand{font-size:20px}.header nav .header-editor{font-size:9px}}
.cpu-kick-profile{display:flex!important;align-items:center;gap:6px;background:none!important;font:inherit!important;color:#edc4a6!important;max-width:200px}.cpu-kick-profile[hidden]{display:none!important}.cpu-kick-profile img{width:27px;height:27px;border-radius:4px;object-fit:cover}.cpu-kick-profile strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cpu-kick-profile:not([hidden])+.cpu-default-name{display:none}.cpu-default-name{font:inherit}.kick-settings>label{display:block;margin-top:12px}

/* Mirrored streamer identities belong to their outpost, with room for full names. */
.scoreboard .commander{min-width:0;max-width:460px}.scoreboard .commander-info{min-width:0}
.scoreboard .profile-avatar{width:44px;height:44px;flex:0 0 44px;overflow:hidden;position:relative;padding:0}
.profile-avatar img{display:block;width:100%;height:100%;object-fit:cover}.profile-avatar img[hidden]{display:none}
.profile-avatar:has(img:not([hidden])) .avatar-fallback{display:none}.profile-avatar .avatar-fallback{font:27px var(--display);background:none;padding:0}
.scoreboard .commander-name{flex-wrap:wrap;gap:4px 8px;line-height:16px;min-width:0}
.scoreboard .commander-name .streamer-name{min-width:0;flex:1;font:700 14px/16px var(--display);letter-spacing:.3px;overflow:visible;white-space:normal;overflow-wrap:anywhere;color:#d9edc1}
.scoreboard .cpu .commander-name .streamer-name{color:#edc4a6;text-align:right}
.scoreboard .streamer-name[hidden]{display:none}.scoreboard .streamer-name span{font:inherit!important;letter-spacing:inherit;background:none!important;padding:0!important;color:inherit!important;white-space:normal;overflow:visible;text-overflow:clip}
.commander-name:has(.streamer-name:not([hidden])) .outpost-default-name{display:none}.outpost-default-name{font:inherit}.commander-name>.army-badge,.cpu .commander-name>span{flex:0 0 auto}
@media(min-width:1000px) and (min-height:600px){.scoreboard{height:auto;min-height:59px;padding:5px 15px}}
@media(max-width:700px){.scoreboard .profile-avatar{width:38px;height:38px;flex-basis:38px}.scoreboard .commander{gap:6px}.scoreboard .commander-name .streamer-name{font-size:12px;line-height:14px}.scoreboard .commander-name{gap:3px}}
#kick-donos{max-width:820px;width:94vw;max-height:90dvh;overflow:auto}#kick-donos h3{color:#d8c390;margin-bottom:6px}#kick-donos .balance-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px 0}#kick-donos .donos-bottom{position:sticky;bottom:-30px;background:#21363c;padding:10px 0 20px;border-top:1px solid #688173}#kick-donos button:not(.manual-top button){padding:9px 13px;border:1px solid #819579;background:#304d4d;color:#e4edce}#kick-donos input[type=number]{min-height:40px}#donos-status{font-size:11px;color:#c8dbba}@media(max-width:600px){#kick-donos .balance-grid{grid-template-columns:1fr}.header nav .header-editor{padding:5px}}
#multiplayer-lobby{width:min(820px,95vw);max-width:820px;max-height:92dvh;overflow:auto}#multiplayer-lobby .balance-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0}#multiplayer-lobby fieldset{border:1px solid #61766c;padding:15px;margin-top:16px}#multiplayer-lobby fieldset>label{display:block;margin:10px 0}#multiplayer-lobby fieldset:disabled{opacity:.75}#multiplayer-lobby button{padding:8px 12px;background:#304d4d;border:1px solid #819579;color:#e8efd4}.lobby-code-label{text-align:center;font:11px var(--mono)}#lobby-code{display:block;font:700 45px var(--display);letter-spacing:10px;color:#ebd394}.lobby-players{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lobby-players p{padding:10px;border:1px solid #748675;background:#162d34}.lobby-actions{display:flex;gap:10px}#lobby-ready{background:#758b50!important;color:#fff!important}#multiplayer-lobby .donos-bottom{position:sticky;bottom:-30px;background:#21363c;padding:8px 0 20px;border-top:1px solid #819579}.header nav{flex-wrap:wrap;justify-content:flex-end}.header{min-height:48px;height:auto}#lobby-rewards-form input[type=number]{width:100%;padding:9px;color:#e8efd4;background:#142a32;border:1px solid #789373}#lobby-rewards-form .balance-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px}#lobby-fairness{font-size:11px;color:#d9c98d}@media(max-width:600px){#multiplayer-lobby .balance-grid,.lobby-players{grid-template-columns:1fr}.header{flex-wrap:wrap;justify-content:center}}

/* End-of-match chatter impact report. */
.results-panel{width:min(940px,96%);max-width:940px;max-height:calc(100% - 18px);overflow-y:auto;padding:20px 26px}.results-panel h2{margin:8px 0}.results-panel .result-stats{margin:14px 0;padding:12px 0}#contribution-results{text-align:left;margin:16px 0}#contribution-results h3{font:600 17px var(--display);letter-spacing:1px;color:#dbc58d;margin:12px 0}.contribution-champions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.contribution-champions>div{display:flex;flex-direction:column;gap:5px;padding:12px;background:#182e35;border:1px solid #60776b;border-radius:5px;min-width:0}.contribution-champions small{font:9px var(--mono);color:#a8c4ad}.contribution-champions strong{font-size:15px;overflow-wrap:anywhere;color:#edf0cf}.contribution-champions span{font:12px var(--mono);color:#e5c687}.contribution-controls{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.contribution-controls button,.contribution-controls select{font:11px var(--mono);background:#21383c;border:1px solid #6a8274;color:#d7e4ce;padding:7px 9px;border-radius:4px}.contribution-controls button[aria-pressed=true]{background:#66714e;color:#fff0c5;border-color:#d5bc7e}.contribution-table-wrap{max-height:220px;overflow:auto;border:1px solid #526d63;border-radius:4px}.contribution-table-wrap>p{padding:12px}.contribution-table-wrap table{width:100%;border-collapse:collapse;min-width:610px;font:12px var(--mono)}.contribution-table-wrap th{position:sticky;top:0;background:#192f36;color:#d1bb83;text-align:left;font-size:10px}.contribution-table-wrap td,.contribution-table-wrap th{padding:9px 8px;border-bottom:1px solid #415d59}.contribution-table-wrap td:nth-child(2){font-family:var(--body);font-weight:600;overflow-wrap:anywhere;max-width:190px}.contribution-table-wrap tbody tr:nth-child(even){background:#213d3d}.results-panel .contribution-note{font:10px/1.6 var(--mono);color:#b4c9b8;margin:8px 0}.results-panel #rematch{margin-top:10px}@media(max-width:600px){.results-panel{padding:14px}.contribution-champions{gap:5px}.contribution-champions>div{padding:8px}.contribution-champions strong{font-size:12px}.contribution-champions small{font-size:8px}}

/* Lobby arsenal and simultaneous draft. */
#lobby-mode-settings{border:1px solid #5c776b;border-radius:5px;padding:14px;margin:16px 0}#lobby-mode-settings legend{color:#e5cc91;padding:0 8px}#lobby-mode-settings select{background:#142d33;color:#e4e9cf;border:1px solid #648174;padding:8px;border-radius:4px}.mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mode-option-group{background:#182f35;border:1px solid #49675f;border-radius:4px;padding:10px}.mode-option-group h4{margin:0 0 9px;color:#d4bc83;font:12px var(--mono)}.mode-option-group label{display:flex;align-items:center;gap:8px;margin:7px 0;font-size:12px}.mode-option-group label span{flex:1}.mode-option-group input{accent-color:#a2c179}.shared-choice{margin-left:auto}#lobby-mode-summary,#lobby-draft-progress{color:#c9d7ae!important}.draft-deal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:12px 0}.draft-card{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-height:90px;padding:10px;background:#203b40;border:1px solid #617c6d;border-radius:5px;text-align:left}.draft-card small{color:#9fb7af;font:9px var(--mono)}.draft-card strong{color:#e3e9c9;font-size:12px}.draft-card span{font:9px var(--mono);color:#c7b17b}.draft-card[aria-pressed=true]{background:#40593f;border-color:#c2d28c;box-shadow:inset 0 0 0 1px #c2d28c}.draft-card:disabled{opacity:.6}.draft-card[aria-pressed=true]:disabled{opacity:1}#lobby-draft-save{padding:8px 12px;background:#4d654d;border:1px solid #a6b88a;color:#eef0cf}#lobby-draft h3{color:#d9c58b}#lobby-draft{border-bottom:1px solid #536f62;padding-bottom:12px}#lobby-mode-settings p,#lobby-draft p{font-size:11px;line-height:1.5}@media(max-width:600px){.draft-deal{grid-template-columns:repeat(2,minmax(0,1fr))}.mode-options{grid-template-columns:1fr}}
[hidden]{display:none!important}
/* Battlefield selection shares the compact command-panel styling. */
.map-picker{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;text-align:left;margin:12px 0}.map-picker label{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#e6dec0;font:12px var(--mono)}.map-picker select{min-width:170px;max-width:100%;padding:8px 12px;background:#172f35;color:#eee7cb;border:1px solid #829374;border-radius:4px;font:14px var(--display)}.map-picker img{display:block;width:100%;height:auto;max-height:144px;object-fit:cover;border:1px solid #789078;border-radius:4px;background:#173e49}.map-picker p{font:11px/1.45 var(--mono);margin:0!important;color:#bfceba!important}.mission-panel .map-picker img{max-height:82px}.mission-panel .map-picker p{font-size:10px}.mission-panel:has(.map-picker){max-height:96%;overflow:auto;padding:20px 28px}.mission-panel:has(.map-picker) h2{font-size:32px;margin:5px 0}.mission-panel:has(.map-picker)>p{margin:8px 0;font-size:12px}.mission-panel:has(.map-picker) .mission-icon{display:none}#lobby-map-settings{border-color:#829271}#lobby-map-settings .map-picker{margin:0}#lobby-map-settings:has(select:disabled){opacity:.85}@media(max-width:550px){.map-picker label{align-items:flex-start;flex-direction:column;gap:6px}.map-picker select{width:100%}.mission-panel:has(.map-picker){padding:14px 18px}.mission-panel:has(.map-picker) h2{font-size:27px}}


/* Eighteen purchase positions: eight infantry, four vehicles, two defenses, four abilities. */
.group-vehicles .group-cards,.group-abilities .group-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.compact-console .purchase-slot{height:102px;grid-template-rows:48px 29px 21px;padding-inline:3px}
.compact-console .purchase-slot .weapon-svg{height:43px;max-width:78px}
.compact-console .purchase-slot .slot-name{font-size:12px;line-height:13px}
.compact-console .purchase-slot .unit-price b,.compact-console .purchase-slot .field-price b{font-size:11px;line-height:16px}
.compact-console .purchase-slot .resource-icon{width:11px;height:11px}
.compact-console .purchase-slot .slot-stats{padding-top:2px}
.compact-console .reserved-vehicle-slot{background:linear-gradient(150deg,#243d43,#1c3038);border:1px dashed #62818466;box-shadow:inset 0 0 0 3px #10272d33;pointer-events:none}
@media(min-width:1000px){.compact-console .purchase-rack{grid-template-columns:minmax(0,8fr) minmax(0,4fr) minmax(0,2fr) minmax(0,4fr)}}



/* Compact lobby disclosures and themed numeric controls. */
#multiplayer-lobby .lobby-options{margin:14px 0;border:1px solid #61796a;border-radius:5px;background:#1a3238;overflow:hidden}
#multiplayer-lobby .lobby-options>summary{padding:13px 15px;cursor:pointer;color:#e4cb90;font:600 14px var(--display);letter-spacing:.3px;background:linear-gradient(#304b49,#253e40)}
#multiplayer-lobby .lobby-options>summary:hover{background:#385349}#multiplayer-lobby .lobby-options>summary:focus-visible{outline:2px solid #c5d28f;outline-offset:-3px}
#multiplayer-lobby .lobby-options>fieldset{margin:0;border:0;border-radius:0;padding:12px 15px}#multiplayer-lobby .lobby-options legend{display:none}
#lobby-mode-settings input[type=number]{width:100%;min-width:0;padding:9px 11px;color:#e8efd4;background:#142d33;border:1px solid #789373;border-radius:4px;font:14px var(--mono);color-scheme:dark;box-shadow:inset 0 2px 3px #0004}
#lobby-mode-settings input[type=number]:focus{outline:2px solid #c4ce8e;outline-offset:1px}#lobby-mode-settings input:disabled{opacity:.55}

.results-panel #rematch.host-new-game{display:flex;width:auto;min-width:180px;max-width:100%;margin:16px auto 4px;padding:11px 24px;justify-content:center;font-size:17px;gap:0}

.multiplayer-results #contribution-results{margin-bottom:8px}.multiplayer-results #rematch.host-new-game{margin-top:8px}

#multiplayer-lobby #lobby-code{display:block;margin:8px auto 6px;min-width:200px;padding:10px 20px 10px 30px;background:#142c33;border:1px solid #718676;border-radius:5px;color:#ebd394;font:700 45px var(--display);letter-spacing:10px}#multiplayer-lobby #lobby-code:hover{background:#294441}#lobby-code-hint{display:block;color:#b7c9b6;font:10px var(--mono);letter-spacing:.3px}

/* Home and setup stay separate from the battlefield. */
#home-screen[hidden],#game-view[hidden]{display:none!important}
.home-screen{min-height:100dvh;background:radial-gradient(ellipse at 82% 8%,#49665038,transparent 50%),repeating-linear-gradient(0deg,transparent,transparent 59px,#b0bd8d06 60px),#152b32;color:#e6e5cd;padding:0 clamp(20px,6vw,100px)}
.home-header{max-width:1250px;margin:auto;padding:30px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #70816c66}.home-header .brand{color:#e7dbb0}.home-header .brand-mark{background:#baa36c;color:#19363b}
.home-main{max-width:1150px;margin:auto;padding:clamp(32px,7vh,80px) 0 24px}.home-main>.eyebrow{color:#a8bb92;letter-spacing:3px}.home-main h1{font:700 clamp(48px,6vw,80px)/.98 var(--display);margin:22px 0;color:#e9e5ca}.home-main h1 em{color:#c9af73;font-style:normal}.home-intro{color:#aebfb5;font-size:16px;line-height:1.6;margin:0 0 36px}
.home-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.home-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:25px;text-align:left;background:linear-gradient(140deg,#314b47,#1e353b);border:1px solid #657a67;border-top:3px solid #b9a574;border-radius:8px;box-shadow:0 12px 25px #05151b40;min-width:0}.home-card:hover{background:linear-gradient(140deg,#415d4c,#29444a);border-color:#cbbb88;transform:translateY(-3px)}.home-card-number{font:10px var(--mono);color:#a5baaa;letter-spacing:1px}.home-card svg{width:115px;height:65px;align-self:center;filter:drop-shadow(0 7px 3px #081d2855)}.home-card strong{font:600 31px var(--display);color:#f0e7c8}.home-card>span:not(.home-card-number){font-size:13px;color:#bbccc0;line-height:1.6;min-height:42px}.home-card b{margin-top:auto;padding-top:12px;border-top:1px solid #69817066;width:100%;font:10px var(--mono);color:#dcc58d;letter-spacing:.6px}.home-footnote{margin:28px 0 0;color:#7e9a90;font:9px var(--mono);letter-spacing:1.5px}
.setup-screen{position:fixed;inset:0;z-index:8;background:#152b32;overflow:auto;padding:24px;align-items:center}.setup-screen .mission-panel{width:min(520px,100%);max-height:95dvh;overflow:auto}.setup-screen .text-button{display:block;margin:14px auto}
.results-panel #return-lobby{display:block;width:auto;min-width:180px;margin:12px auto;padding:11px 24px;justify-content:center;font-size:17px}.results-panel #return-lobby[hidden]{display:none}.results-panel #results-home{display:block;margin:12px auto 0}
@media(max-width:700px){.home-modes{grid-template-columns:1fr}.home-card{display:grid;grid-template-columns:1fr 100px;gap:12px;padding:20px}.home-card svg{grid-column:2;grid-row:1/4;width:100px}.home-card b{grid-column:1/-1}.home-card strong{font-size:28px}.home-card>span:not(.home-card-number){min-height:0}.home-header .brand{font-size:23px}.home-main{padding-top:30px}.home-intro{margin-bottom:22px}}
/* Compact home operations, followed by the real battlefield showcase. */
.home-main{max-width:1250px;padding:22px 0 28px}
.home-card{display:grid;grid-template-columns:minmax(0,1fr) 95px;gap:10px 12px;padding:19px 21px}
.home-card svg{grid-column:2;grid-row:1/4;width:95px;height:65px;align-self:center}
.home-card strong{font-size:29px}.home-card>span:not(.home-card-number){min-height:0;font-size:12px}.home-card b{grid-column:1/-1;padding-top:10px}
.home-showcase{margin-top:22px;border:1px solid #657a67;border-radius:8px;overflow:hidden;background:#142c31;box-shadow:0 14px 32px #05151b55}
.home-showcase canvas{display:block;width:100%;height:auto;aspect-ratio:1600/690;image-rendering:auto}
.home-showcase-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 15px;background:#1e353b;color:#b8c6af;font:10px var(--mono);letter-spacing:1px;border-top:1px solid #657a6766}
.home-showcase-caption button{padding:6px 10px;font:11px var(--mono);color:#e0d4ad;background:#2b4546;border:1px solid #70816b;border-radius:4px}
@media(max-width:700px){.home-main{padding-top:18px}.home-modes{gap:12px}.home-card{padding:15px 18px;gap:8px}.home-card strong{font-size:26px}.home-showcase{margin-top:18px}.home-showcase canvas{min-height:260px;object-fit:cover}.home-showcase-caption{padding:8px 10px;letter-spacing:.4px}}
.home-demo-controls{display:flex;align-items:center;gap:8px}.home-showcase-caption .home-demo-sound{display:grid;place-items:center;width:33px;height:29px;padding:4px}.home-demo-sound svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.home-demo-sound .demo-sound-waves{display:none}.home-demo-sound[aria-pressed="true"] .demo-sound-waves{display:inline}.home-demo-sound[aria-pressed="true"] .demo-sound-muted{display:none}.home-demo-sound[aria-pressed="true"]{background:#3e594c;color:#f4dd9b}
.home-demo-controls{flex-shrink:0}.home-demo-controls button{white-space:nowrap}

/* Readable compact HUD: let the field and large values carry the status. */
.header-center[hidden],.base-caption [hidden],.match-clock [hidden],.battle-ticker[hidden],.console-wallet>small[hidden],.console-points>small[hidden],.console-capacity>small[hidden]{display:none!important}
.compact-console .console-wallet>span{font-size:36px;line-height:38px}
.compact-console .console-wallet #income{font-size:10px;line-height:14px}
.compact-console .console-points span{font-size:32px;line-height:38px}
.compact-console .console-capacity>span{font-size:31px;line-height:36px}
.base-caption{justify-content:center}
.base-caption strong{font-size:10px;letter-spacing:.25px}
.match-clock strong{font-size:31px}
@media(max-width:700px){.compact-console .console-wallet>span{font-size:28px;line-height:30px}.compact-console .console-points span{font-size:28px;line-height:32px}.compact-console .console-capacity>span{font-size:27px;line-height:31px}.base-caption strong{font-size:9px}.match-clock strong{font-size:25px}}
/* Multiplayer lobby: compact entry, code-and-ready header, and clear state. */
#multiplayer-lobby{position:relative;padding:22px 26px 20px}
#multiplayer-lobby h2{margin:0 44px 14px 0;font-size:30px}
#multiplayer-lobby>.lobby-close{position:absolute;right:13px;top:9px;width:38px;height:38px;padding:0;border:1px solid #728876;background:#182e34;color:#e9e4ca;font-size:27px;line-height:1;border-radius:4px}
#multiplayer-lobby>.lobby-close:hover{background:#405b4f;border-color:#d8c28a}
.lobby-code-row{display:flex;align-items:center;gap:20px;margin:4px 0 10px;padding:10px 14px;background:#182f35;border:1px solid #526c61;border-radius:5px}
.lobby-code-label{flex:1;margin:0!important;text-align:left!important;font:11px var(--mono);letter-spacing:.8px;color:#c6d4b9}
#multiplayer-lobby #lobby-code{margin:5px 0 2px;min-width:190px;width:max-content;max-width:100%;padding:4px 14px;background:#10272f;border:1px solid #718676;border-radius:5px;color:#ebd394;font:700 38px var(--display);letter-spacing:9px}
#lobby-code-hint{display:block;color:#9db3a7;font:9px var(--mono)}
#multiplayer-lobby #lobby-ready{flex:0 0 170px;min-height:66px;border:2px solid #e4c375!important;border-radius:6px;background:linear-gradient(150deg,#92713b,#6d542c)!important;color:#fff4d4!important;box-shadow:0 0 0 3px #d2b36724,inset 0 1px #fff4c340;font:800 19px var(--display);letter-spacing:1px}
#multiplayer-lobby #lobby-ready.ready-waiting:not(:disabled){animation:lobby-ready-pulse 2s ease-in-out infinite}
#multiplayer-lobby #lobby-ready.is-ready{background:linear-gradient(150deg,#78a55c,#476e48)!important;border-color:#d5e5a5!important;color:#f5ffdf!important;box-shadow:0 0 0 3px #a5d47b33,inset 0 1px #fff8c650}
#multiplayer-lobby #lobby-ready:disabled{filter:saturate(.55);opacity:.62}
@keyframes lobby-ready-pulse{50%{box-shadow:0 0 0 5px #d2b36712,inset 0 1px #fff4c340}}
.lobby-channel-row{display:flex;align-items:center;gap:10px;margin:14px 0;color:#e6dec0}
.lobby-channel-row label{display:block;flex:0 0 auto;margin:0!important;white-space:nowrap;font:12px var(--mono)}
#lobby-channel{flex:0 1 20ch;width:20ch;min-width:20ch;max-width:20ch;text-align:left;background:#142b32;color:#e2edce;border:1px solid #819a7b;padding:9px}
#lobby-mode-settings .donos-grid label:has(#lobby-draft-size){display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:9px;white-space:nowrap}
#lobby-draft-size{width:76px!important;min-width:76px!important;max-width:76px!important;padding:8px 5px!important;text-align:center}
#lobby-rewards-form .dono-bonus-toggle{display:flex;align-items:center;gap:10px;padding:12px 14px;margin:0 0 12px;border:1px solid #82976f;border-radius:5px;background:#2b493e;color:#f0eccd;font-size:15px;font-weight:700}
#lobby-rewards-form .dono-bonus-toggle input{width:20px;height:20px;accent-color:#b8d37a}
@media(max-width:560px){#multiplayer-lobby{padding:20px 16px}.lobby-code-row{gap:9px;padding:8px}.lobby-code-label{font-size:9px}#multiplayer-lobby #lobby-code{min-width:0;font-size:30px;letter-spacing:5px}#multiplayer-lobby #lobby-ready{flex-basis:112px;min-height:58px;font-size:15px}.lobby-channel-row{flex-wrap:wrap}.lobby-channel-row label{width:100%}}
#multiplayer-lobby{padding:18px 26px 20px}
#multiplayer-lobby .lobby-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
#multiplayer-lobby .lobby-title-row h2{margin:0;font-size:30px}
#multiplayer-lobby .lobby-title-row>.lobby-close{position:static;flex:0 0 38px;width:38px;height:38px;padding:0;border:1px solid #728876;background:#182e34;color:#e9e4ca;font-size:27px;line-height:1;border-radius:4px}
.skirmish-mode{display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;color:#e6dec0;font:12px var(--mono);margin:14px 0}.skirmish-mode select{min-width:190px;max-width:100%;padding:9px 12px;background:#172f35;color:#eee7cb;border:1px solid #829374;border-radius:4px;font:14px var(--display)}@media(max-width:550px){.skirmish-mode{align-items:stretch;flex-direction:column;gap:6px}.skirmish-mode select{width:100%}}

.skirmish-kick{text-align:left;margin:12px 0}.skirmish-kick>label{display:block;margin-bottom:7px;color:#e6dec0;font:12px var(--mono)}.skirmish-kick label small{color:#aebeae}.skirmish-kick input{min-width:0;flex:1;width:100%;padding:9px 12px;background:#172f35;color:#eee7cb;border:1px solid #829374;border-radius:4px;font:14px var(--display)}.skirmish-kick button{padding:8px 12px;background:#304d4d;border:1px solid #819579;border-radius:4px;color:#e8efd4}.skirmish-kick p{margin:7px 0!important;font:10px/1.45 var(--mono)!important;color:#bfceba!important}

/* Centered, larger purchase names with room for a balanced two-line title. */
.compact-console .purchase-slot .slot-name{justify-content:center;text-align:center;width:100%;font-size:14px;line-height:15px;font-weight:700;letter-spacing:.12px;text-wrap:balance;overflow-wrap:anywhere;text-shadow:0 1px 1px #102a32;align-self:stretch}

.compact-console .purchase-slot{grid-template-rows:45px 32px 21px}

.battlefield-wrap>#toast{position:absolute;bottom:16px;max-width:calc(100% - 32px);box-sizing:border-box;text-align:center}

.cpu-level{font:12px var(--mono);color:#d6c58d;border:1px solid #71816b;background:#203b39;padding:10px 14px;letter-spacing:.5px}

/* Support alerts have their own celebration cards; army identity stays in the small badge. */
#support-toast{--support-accent:#c4e69b;--support-line:#86b45f;position:fixed;left:50%;bottom:30px;transform:translate(-50%,12px);width:440px;max-width:calc(100% - 32px);min-height:100px;box-sizing:border-box;display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:15px;align-items:center;padding:15px 18px 17px;border:1px solid var(--support-line);border-radius:7px;background:radial-gradient(ellipse at 0 50%,#53763e60,transparent 65%),linear-gradient(120deg,#1c3931f7,#10282bf7);color:#f8f0d6;text-align:left;box-shadow:0 6px 24px #081d26a6,0 0 0 3px #90bb6c14,inset 0 1px #efffca20;opacity:0;transition:opacity .18s,transform .18s;pointer-events:none;z-index:21;overflow:hidden}
#support-toast[data-kind="subs"]{--support-accent:#eed29c;--support-line:#bfa1ce;background:radial-gradient(ellipse at 0 50%,#9366a450,transparent 65%),linear-gradient(120deg,#393047f7,#202a36f7);box-shadow:0 6px 24px #081d26a6,0 0 0 3px #ba97cf16,inset 0 1px #fae5ff25}
#support-toast.visible{opacity:1;transform:translate(-50%,0)}.support-emblem{display:grid;place-items:center;width:54px;height:60px;border-radius:8px;background:#081f254d;border:1px solid #b4d1992b;box-shadow:inset 0 1px 8px #071b294d}.support-emblem svg{width:44px;height:48px;filter:drop-shadow(0 2px 3px #071e2580)}.support-heading{display:block;margin-bottom:5px;color:var(--support-accent);font:700 9px/1.3 var(--mono);letter-spacing:1.3px}.support-sender{display:block;font:700 24px/1.05 var(--display);letter-spacing:.2px;color:#fff7e2;overflow-wrap:anywhere}.support-army{display:inline-flex;align-items:center;gap:5px;margin-top:6px;font:9px/1.3 var(--mono);color:#b9d5dc}.support-army:before{content:'';width:5px;height:5px;background:#8dbfd3;border-radius:50%;box-shadow:0 0 5px #8dbfd344}#support-toast[data-team="1"] .support-army{color:#e0b994}#support-toast[data-team="1"] .support-army:before{background:#dba078;box-shadow:0 0 5px #dba07844}.support-amount{padding-left:15px;border-left:1px solid #d8e3b526;text-align:center;color:var(--support-accent)}.support-amount b{display:block;font:700 30px/1 var(--display);letter-spacing:.5px}.support-amount small{display:block;margin-top:5px;font:700 9px/1 var(--mono);letter-spacing:1.5px}.support-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--support-accent);transform-origin:left;box-shadow:0 0 8px #d4e8b344;animation:support-countdown 4.5s linear forwards}
#support-toast.visible .support-emblem{animation:support-emblem-arrive .45s ease-out}
@keyframes support-countdown{to{transform:scaleX(0)}}@keyframes support-emblem-arrive{0%{transform:scale(.82);filter:brightness(1.4)}100%{transform:scale(1);filter:brightness(1)}}
.battlefield-wrap>#support-toast{position:absolute;bottom:16px}.battlefield-wrap:has(>#support-toast.visible)>#toast{bottom:140px}
@media(max-width:560px){#support-toast{width:390px;padding:12px;gap:10px;grid-template-columns:44px minmax(0,1fr) auto}.support-emblem{width:44px;height:52px}.support-emblem svg{width:36px;height:42px}.support-sender{font-size:21px}.support-heading{font-size:8px;letter-spacing:.8px}.support-amount{padding-left:10px}.support-amount b{font-size:27px}}
@media(prefers-reduced-motion:reduce){#support-toast{transition:none}#support-toast.visible .support-emblem,.support-progress{animation:none}}

/* Compact, aligned post-match actions and readable contribution identities. */
.results-panel .result-stats span{font-size:12px;letter-spacing:1px}
.results-panel .result-actions{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}
.results-panel .result-actions>button,.results-panel .result-actions #rematch.host-new-game,.results-panel .result-actions #return-lobby,.results-panel .result-actions #results-home{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:0;max-width:100%;margin:0;padding:11px 22px;font-size:15px;gap:12px}
.results-panel .result-actions>button[hidden]{display:none}
.contribution-person{display:flex;align-items:center;gap:9px}
.contribution-avatar{flex:none;position:relative;display:grid;place-items:center;width:34px;height:34px;border-radius:5px;overflow:hidden;background:#395458;border:1px solid #87997b;color:#e8dbb0;font:600 12px var(--mono)}
.contribution-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* Override the older ID-specific replay margin so all result actions share an edge. */
.results-panel .result-actions #rematch{margin:0}
.results-panel .result-actions>button{height:44px;line-height:20px}

.contribution-champion-person{display:flex;align-items:center;gap:9px;min-width:0;min-height:34px}
.contribution-champion-person strong{min-width:0;line-height:1.25}
.contribution-champions .contribution-avatar{font:600 12px var(--mono);color:#e8dbb0}

/* Compact, centered skirmish setup actions. */
.skirmish-actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:16px}
.setup-screen #start{display:inline-flex;align-items:center;justify-content:center;gap:30px;width:auto;max-width:100%;min-width:210px;margin:0;padding:14px 24px;font-size:14px}
.setup-screen #setup-home{display:inline-flex;align-items:center;justify-content:center;min-width:148px;margin:0;padding:10px 22px;border:1px solid #788b7b;border-radius:4px;background:linear-gradient(#354d4c,#263d40);color:#e3e4cb;font-size:15px;line-height:1.4;box-shadow:inset 0 1px #b9c7a51a}
.setup-screen #setup-home:hover{background:#415c54;border-color:#c6b984}

/* Multiplayer diagnostics expand only when requested and never show addresses. */
.network-diagnostics{position:absolute;right:12px;bottom:38px;z-index:4;max-width:min(420px,calc(100% - 24px));padding:6px 9px;background:#172e35ed;border:1px solid #6b8375;border-radius:4px;color:#e0e6cb;font:10px/1.5 var(--mono)}.network-diagnostics summary{cursor:pointer}.network-diagnostics p{margin:7px 0 0;color:#becfbe}.network-metrics{font:10px/1.6 var(--mono);color:#b8c8bd;overflow-wrap:anywhere}.network-diagnostics[hidden]{display:none}
/* Readable deployment costs, base status and upgrade availability. */
.scoreboard .base-caption strong{font:600 13px/17px var(--mono);letter-spacing:.2px}
.scoreboard .commander-name .streamer-name{font-size:18px;line-height:22px}
.scoreboard .commander-name .outpost-default-name{font-size:16px;line-height:20px}
.compact-console #xp-meter{height:9px;border-radius:4px;box-shadow:inset 0 0 0 1px #a3c2a52b}
.compact-console .purchase-slot .unit-price b,.compact-console .purchase-slot .field-price b{font-size:13px;line-height:17px;font-weight:600}
.compact-console .purchase-slot .resource-icon{width:14px;height:14px;flex:none}
.compact-console .purchase-slot .field-price .resource-icon{width:13px;height:14px}
.compact-console .purchase-slot .unit-price,.compact-console .purchase-slot .field-price{gap:3px}
.console-points{border-radius:6px;border:1px solid transparent;transition:background .2s,border-color .2s,box-shadow .2s}
.console-points.points-available{background:#c5b77616;border-color:#d8c78980;box-shadow:inset 0 0 12px #d4bc6c12,0 0 9px #d4bc6c12}
.console-points.points-available span{color:#f2d88f;text-shadow:0 0 9px #ddba5b30}
/* Balance workspace: navigation, collapsible cards and aligned field groups. */
#balance-settings{width:min(1100px,96vw);max-width:1100px}
#balance-settings .balance-intro{font-size:12px;line-height:1.65;margin:8px 0 14px;max-width:none}
#balance-settings .balance-actions{gap:7px;margin:10px 0 18px;flex-wrap:wrap}
#balance-settings .balance-actions button{font:11px var(--mono);padding:8px 11px}
#balance-settings .balance-actions [id$='-jump']{display:none}
.balance-jump-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(94px,1fr));gap:7px;padding:12px;background:#152c33;border:1px solid #506663;border-radius:7px;margin:10px 0 24px}
.balance-jump-grid button{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:69px;padding:7px 5px;background:linear-gradient(145deg,#324e50,#243c41);color:#e4e8d2;border:1px solid #5c756c;font:600 13px/1.15 var(--display)}
.balance-jump-grid button:hover{border-color:#dfcc92;background:#3d5752}
.balance-jump-grid svg{width:62px;height:36px;flex:none}
#balance-settings .balance-category{font-size:22px;margin:24px 0 12px;padding:0 0 8px}
#balance-settings .balance-card{padding:0;margin:10px 0;overflow:clip;scroll-margin-top:105px;border-color:#4b6864}
.balance-card>summary{display:flex;align-items:center;gap:13px;cursor:pointer;list-style:none;padding:11px 16px;background:linear-gradient(110deg,#2c4547,#223a40);min-height:66px}
.balance-card>summary::-webkit-details-marker{display:none}
.balance-card>summary svg{width:66px;height:40px;flex:none}
.balance-card>summary h3{font:600 22px var(--display);margin:0;flex:1}
.balance-card>summary small{font:10px var(--mono);color:#b3c2b2}
.balance-card>summary:after{content:'+';font:24px var(--mono);color:#d4c38c;width:20px;text-align:center}
.balance-card[open]>summary:after{content:'−'}
.balance-card[open]>summary{border-bottom:1px solid #526b61}
.balance-mark{display:grid;place-items:center;width:44px;height:38px;font-size:22px;color:#d9c48c;background:#142c32;border:1px solid #607463;border-radius:5px}
.balance-card-body{padding:16px 18px 20px}
.balance-card-body>p{font:12px/1.65 var(--body);margin:0 0 15px;max-width:900px}
.balance-card-body>h4{font:600 19px var(--display);margin:22px 0 8px;padding-top:15px;border-top:1px solid #536b5c}
#balance-settings .balance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px}
#balance-settings .balance-grid label{display:grid;grid-template-rows:minmax(28px,auto) 38px minmax(15px,auto);gap:4px;padding:10px 12px;background:#20383d;border:1px solid #405b59;border-radius:5px;font:12px/1.35 var(--body)}
#balance-settings .balance-grid input{width:100%;min-width:0;padding:7px 9px;font:14px var(--mono);height:38px}
#balance-settings .balance-grid small{font:10px/1.4 var(--mono)}
#balance-settings .balance-field-heading{grid-column:1/-1;font:600 14px var(--display);text-transform:uppercase;letter-spacing:1px;margin:8px 0 0;padding:8px 0;color:#cbbd8e;border-bottom:1px solid #526b5c}
#balance-settings .balance-bottom{padding:12px 0 8px}
#balance-settings .balance-bottom small{font-size:10px;line-height:1.5}
@media(max-width:700px){#balance-settings .balance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.balance-card>summary{padding:9px;gap:8px}.balance-card>summary h3{font-size:19px}.balance-card>summary small{display:none}.balance-card-body{padding:12px}.balance-jump-grid{grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:5px;padding:8px}.scoreboard .commander-name .streamer-name{font-size:15px;line-height:18px}.scoreboard .base-caption strong{font-size:11px}}
@media(max-width:450px){#balance-settings .balance-grid{grid-template-columns:1fr}}
/* Keep the enlarged costs inside narrow cards at laptop widths. */
.compact-console .purchase-slot{grid-template-columns:minmax(0,1fr);padding-inline:2px}
.compact-console .purchase-slot .slot-stats{min-width:0;width:100%;gap:1px}
.compact-console .purchase-slot .unit-price,.compact-console .purchase-slot .field-price{gap:1px;padding:0}
.compact-console .purchase-slot .unit-price b,.compact-console .purchase-slot .field-price b{font-size:12px}
.compact-console .purchase-slot .resource-icon{width:12px;height:12px}
.compact-console .purchase-slot .field-price .resource-icon{width:11px;height:12px}
#lobby-rewards-form input:disabled{opacity:.4;background:#1a2c30;color:#8c9a94;border-color:#455653;cursor:not-allowed}
#lobby-draft-size{background:#18333a;color:#e8e5cd;border:1px solid #708677;border-radius:4px;padding:7px 9px;font:13px var(--mono);width:76px}
.skirmish-rules{margin:14px 0;padding:12px;background:#1a3037;border:1px solid #526e64;border-radius:5px;text-align:left}
.skirmish-rules>label{display:flex;align-items:center;justify-content:space-between;gap:12px;font:12px var(--mono);margin:0 0 10px}
.skirmish-rules select,.skirmish-rules input[type=number]{background:#18333a;color:#e8e5cd;border:1px solid #708677;border-radius:4px;padding:7px 9px;font:14px var(--display)}
.skirmish-rules input[type=number]{width:76px}
.skirmish-rules summary{cursor:pointer;color:#d6c58b;font:600 15px var(--display);padding:8px 0}
.skirmish-rules .mode-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
.skirmish-rules .mode-option-group{padding:8px}.skirmish-rules .mode-option-group h4{font-size:13px;margin:0 0 6px}.skirmish-rules .mode-option-group label{display:flex;align-items:center;gap:6px;font:12px var(--display);margin:5px 0}.skirmish-rules .mode-option-group input{width:auto;accent-color:#c6bd88}
.mission-panel .skirmish-rules>p{font:11px/1.5 var(--body);margin:9px 0 0;color:#bac9b7}
.skirmish-kick-row{display:grid;grid-template-columns:134px minmax(0,1fr);gap:8px;align-items:center;margin-top:12px}
.skirmish-kick-row>label{font:11px var(--mono);color:#e6dec0;white-space:nowrap}
.skirmish-kick-row .kick-connect-row{min-width:0;margin:0;gap:6px}
.mission-panel:has(.map-picker)>h2{margin:0 0 20px;font-size:36px}
@media(max-width:480px){.skirmish-kick-row{grid-template-columns:112px minmax(0,1fr);gap:6px}.skirmish-kick-row>label{font-size:10px}.skirmish-kick-row button{padding:8px}.skirmish-kick-row input{padding:8px}}
/* Homepage identity and operation cards. */
.home-header{max-width:1150px;padding:22px 0 25px;border-bottom:1px solid #9aab8340}
.home-brand{display:flex;align-items:center;gap:18px}
.home-brand-mark{width:88px;height:88px;flex:none;filter:drop-shadow(0 5px 8px #071b2455)}
.home-brand h1{font:800 clamp(38px,5.4vw,72px)/.95 var(--display);letter-spacing:1px;margin:0;color:#f0e7c9;text-shadow:0 3px 0 #0c242d,0 8px 20px #071b2440}
.home-brand h1>span{color:#d6be81}
.home-main{padding-top:24px}
.home-modes{gap:16px}
.home-card{--operation-accent:#88b9bc;display:grid;grid-template-columns:minmax(0,1fr) 115px;grid-template-rows:18px auto 1fr auto;gap:7px 12px;min-height:190px;padding:20px 22px 14px;border:1px solid #79948a80;border-top:1px solid #abc1a780;border-radius:9px;background:radial-gradient(ellipse at 95% 20%,#8aa99b18,transparent 70%),linear-gradient(135deg,#34504f,#1c343d);box-shadow:inset 0 1px #d1dec615,inset 0 -2px #071d2940,0 9px 22px #071a2445;overflow:hidden;transition:transform .15s,border-color .15s,box-shadow .15s}
#home-host{--operation-accent:#b6c19a;background:radial-gradient(ellipse at 95% 20%,#a3b28218,transparent 70%),linear-gradient(135deg,#3c5148,#213a3e)}
#home-join{--operation-accent:#dac18a;background:radial-gradient(ellipse at 95% 20%,#b9a36d18,transparent 70%),linear-gradient(135deg,#485047,#263b3e)}
.home-card:before{content:'';position:absolute;left:0;top:18px;width:3px;height:48px;background:var(--operation-accent);box-shadow:0 0 14px #a3b78d30}
.home-card:after{content:'';position:absolute;right:8px;top:8px;width:14px;height:14px;border-top:1px solid var(--operation-accent);border-right:1px solid var(--operation-accent);opacity:.7;pointer-events:none}
.home-card .home-card-number{grid-column:1;grid-row:1;font:10px var(--mono);letter-spacing:1px;color:var(--operation-accent)}
.home-card>svg{grid-column:2;grid-row:1/4;width:115px;height:85px;align-self:center;padding:8px 0;overflow:visible;background:radial-gradient(ellipse at center,#8da58619,transparent 68%);filter:drop-shadow(0 6px 3px #0a202b80)}
.home-card>strong{grid-column:1;grid-row:2;font:700 34px/1.06 var(--display);letter-spacing:.2px;color:#f0e8cc}
.home-card>span:not(.home-card-number){grid-column:1;grid-row:3;min-height:0;font:12px/1.55 var(--body);color:#c0d0c5}
.home-card>b{grid-row:4;grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:5px;padding-top:10px;border-top:1px solid #a5b49b30;font:9px var(--mono);letter-spacing:.7px;color:var(--operation-accent)}
.home-card-arrow{display:grid;place-items:center;width:25px;height:25px;border:1px solid #adbf9c4d;border-radius:4px;background:#112c3555;font:17px var(--body);color:#e4dbb4}
.home-card:hover{transform:translateY(-3px);border-color:var(--operation-accent);background:linear-gradient(135deg,#45615a,#29454b);box-shadow:inset 0 1px #e5e4c12b,0 12px 24px #071a245c}
.home-card:active{transform:translateY(-1px);box-shadow:inset 0 2px 8px #0a22294d}
.home-card:focus-visible{outline:2px solid #e9d496;outline-offset:4px}
.home-showcase-caption{justify-content:flex-end}
@media(max-width:1000px) and (min-width:701px){.home-card{grid-template-columns:minmax(0,1fr) 76px;padding:18px 15px 12px;gap:7px}.home-card>svg{width:76px;height:70px}.home-card>strong{font-size:29px}.home-card>span:not(.home-card-number){font-size:11px}}
@media(max-width:700px){.home-header{padding:20px 0}.home-brand{gap:12px}.home-brand-mark{width:66px;height:66px}.home-brand h1{font-size:clamp(30px,7vw,48px)}.home-main{padding-top:20px}.home-card{min-height:150px;grid-template-columns:minmax(0,1fr) 112px;padding:16px 20px 12px}.home-card>svg{width:112px;height:80px}.home-card>strong{font-size:31px}.home-card>span:not(.home-card-number){font-size:12px}.home-modes{gap:12px}}
@media(max-width:390px){.home-brand-mark{width:52px;height:52px}.home-brand{gap:9px}.home-brand h1{font-size:30px;letter-spacing:.3px}.home-card{grid-template-columns:minmax(0,1fr) 82px;padding-inline:15px}.home-card>svg{width:82px;height:70px}}
@media(prefers-reduced-motion:reduce){.home-card{transition:none}.home-card:hover{transform:none}}

/* Tactical Minimal: symbol-only linked command controls. */
.army-commands{display:flex;gap:7px;align-items:center;justify-content:center}
button.army-command{--tone:235,193,99;position:relative;isolation:isolate;overflow:hidden;flex:0 0 auto;width:clamp(42px,4vw,58px);height:clamp(42px,4vw,58px);padding:7px;border:1px solid #a7b8ba;border-radius:5px;background:#142d32;box-shadow:inset 0 0 0 2px #102329;touch-action:none;user-select:none}
button.army-command.defense{--tone:119,210,231}
.army-command:before{content:'';position:absolute;z-index:-1;bottom:0;left:0;right:0;height:var(--charge,0%);background:rgba(var(--tone),.28);border-top:1px solid rgba(var(--tone),.8);transition:height .1s linear}
.army-command svg{display:block;width:100%;height:100%;fill:rgb(var(--tone));stroke:#e6e9d0;stroke-width:.6}
button.army-command.active{border-color:rgb(var(--tone));box-shadow:0 0 9px rgba(var(--tone),.4),inset 0 0 7px rgba(var(--tone),.16)}
button.army-command:disabled{opacity:.48;cursor:default}
.compact-console .console-top{grid-template-columns:100px 100px minmax(180px,1fr) auto clamp(240px,23vw,400px)!important}
@media(max-width:1000px){.compact-console .console-top{grid-template-columns:90px 100px minmax(150px,1fr) auto!important}.console-field-points{grid-column:1/-1}}
@media(max-width:700px){.compact-console .console-top{grid-template-columns:1fr 1fr auto!important}.compact-console .console-upgrades{grid-row:2;grid-column:1/3}.army-commands{grid-row:2;grid-column:3}.console-field-points{grid-row:3;grid-column:1/-1}}

/* Reserve stable room for the star and points; digit changes must not wrap. */
.compact-console .console-points{box-sizing:border-box;min-width:100px;align-self:stretch}
.compact-console .console-points>span{display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap;flex-wrap:nowrap;line-height:38px}
.console-points #upgrade-points{display:inline-block;min-width:2ch;text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}

/* Command Emblems homepage cards, approved option D. */
.home-modes{gap:16px}
.home-card.command-card{display:grid;grid-template-columns:clamp(88px,9vw,126px) minmax(0,1fr) 12px;grid-template-rows:1fr;align-items:center;gap:14px;min-height:160px;padding:13px 16px;position:relative;border:1px solid #8e9f91;border-radius:5px;background:radial-gradient(ellipse at 25% 0%,#65776a21,transparent 75%),linear-gradient(135deg,#213c3d,#102c31);box-shadow:inset 0 0 0 3px #11292dcc,inset 0 1px #d7d5b44a,0 5px 16px #071b2445;text-align:left}
.home-card.command-card:before{inset:5px auto auto 5px;width:9px;height:9px;border-top:2px solid #c4aa69;border-left:2px solid #c4aa69;background:none;box-shadow:none}
.home-card.command-card:after{inset:auto 5px 5px auto;width:9px;height:9px;border-bottom:2px solid #c4aa69;border-right:2px solid #c4aa69;border-top:0;opacity:1}
.home-card.command-card>.home-emblem{grid-column:1;grid-row:1;width:100%;aspect-ratio:1;background-image:url('assets/home-command-emblems.webp');background-size:300% 100%;background-repeat:no-repeat;min-height:0;filter:drop-shadow(0 3px 3px #071a2480);transition:filter .18s}
.home-emblem.emblem-skirmish{background-position:0% 50%}.home-emblem.emblem-host{background-position:50% 50%}.home-emblem.emblem-join{background-position:100% 50%}
.home-card.command-card>.home-card-copy{grid-column:2;grid-row:1;display:flex;flex-direction:column;gap:9px;min-height:0;border-left:1px solid #9fae943d;padding:7px 0 7px 15px}
.home-card.command-card .home-card-copy strong{font:700 clamp(24px,2.2vw,33px)/1.1 var(--display);letter-spacing:.2px;white-space:nowrap;color:#f0ead4}
.home-card.command-card .home-card-copy>span{font:12px/1.4 var(--body);color:#bac8b6;padding-top:8px;border-top:1px solid #a3b49a38}
.home-card.command-card>.home-command-arrow{grid-column:3;grid-row:1;align-self:end;font:30px/1 var(--display);color:#d4b77a;min-height:0}
.home-card.command-card:hover,.home-card.command-card:focus-visible{border-color:#ebcc85;background:radial-gradient(ellipse at 25% 0%,#8d906a29,transparent 75%),linear-gradient(135deg,#2b4541,#173338);box-shadow:inset 0 0 0 3px #11292daa,0 0 12px #d8b96826,inset 0 1px #f1d79766;transform:translateY(-2px)}
.home-card.command-card:hover>.home-emblem{filter:brightness(1.14) drop-shadow(0 2px 5px #ceb96c22)}
@media(min-width:701px) and (max-width:1050px){.home-card.command-card{grid-template-columns:78px minmax(0,1fr);gap:7px;padding:12px;min-height:140px}.home-card.command-card .home-card-copy{padding-left:9px}.home-card.command-card .home-card-copy strong{font-size:24px}.home-card.command-card>.home-command-arrow{display:none}.home-card.command-card .home-card-copy>span{font-size:11px}}
@media(max-width:700px){.home-card.command-card{grid-template-columns:94px minmax(0,1fr) 12px;min-height:122px;padding:12px 18px;gap:14px}.home-card.command-card .home-card-copy strong{font-size:29px}}
@media(prefers-reduced-motion:reduce){.home-card.command-card:hover{transform:none}.home-card.command-card>.home-emblem{transition:none}}

.home-showcase-caption{justify-content:space-between}
.home-demo-maps{display:flex;align-items:center;gap:8px;min-width:0}
#home-battle-label{min-width:108px;text-align:center;font:600 13px/1.2 var(--body);color:#e3dcc1;letter-spacing:.3px}
.home-showcase-caption .home-demo-maps button{width:29px;height:29px;padding:0;font:24px/1 var(--body)}
.home-demo-maps button:hover{border-color:#dbc68d;background:#3c5650}
.home-demo-maps button:focus-visible{outline:2px solid #dbc68d;outline-offset:2px}
@media(max-width:480px){.home-showcase-caption{gap:6px;padding:8px}.home-demo-maps{gap:4px}#home-battle-label{min-width:90px;font-size:12px}.home-demo-controls{gap:5px}.home-showcase-caption button{font-size:10px;padding:6px}}

.home-header:has(.home-signal-logo){padding:10px 0 15px}
.home-brand h1.home-signal-logo{position:relative;overflow:hidden;width:min(640px,82vw);aspect-ratio:3.3;margin:0;line-height:1;text-shadow:none}
.home-signal-logo img{display:block;width:100%;height:auto;position:absolute;top:50%;left:0;transform:translateY(-50%);filter:drop-shadow(0 3px 4px #071b2450)}
@media(max-width:700px){.home-header:has(.home-signal-logo){padding:12px 0}.home-brand h1.home-signal-logo{width:min(640px,90vw)}}

/* Selected F: text-only silver/copper wordmark centered above operations. */
.home-header:has(.home-wordmark-logo){justify-content:center;padding:14px 0 18px}
.home-header .home-brand:has(.home-wordmark-logo){justify-content:center;width:100%}
.home-brand h1.home-wordmark-logo{position:relative;overflow:hidden;width:min(740px,90vw);aspect-ratio:4.8;margin:0;line-height:1;text-shadow:none}
.home-wordmark-logo img{position:absolute;display:block;width:100%;height:auto;top:50%;left:0;transform:translateY(-50%);filter:drop-shadow(0 3px 4px #071b2450)}
@media(max-width:700px){.home-header:has(.home-wordmark-logo){padding:16px 0}.home-brand h1.home-wordmark-logo{width:92vw}}

/* Wider, shallower centered wordmark matching the approved red-box proportions. */
.home-brand h1.home-wordmark-logo{width:min(900px,92vw);aspect-ratio:7}
.home-wordmark-logo img{transform:translateY(-50%) scaleY(.68);transform-origin:center}

.home-card.command-card>.home-emblem.emblem-skirmish,.home-card.command-card>.home-emblem.emblem-host{background-image:url('assets/home-crossed-fronts.webp');background-size:200% 100%}
.home-card.command-card>.home-emblem.emblem-skirmish{background-position:0% 50%}
.home-card.command-card>.home-emblem.emblem-host{background-position:100% 50%}
.home-card.command-card>.home-emblem.emblem-skirmish{clip-path:inset(0 6% 0 0)}

#balance-settings .territory-toggle{display:flex;align-items:center;gap:8px;font:14px var(--display);margin:14px 0}#balance-settings .territory-toggle input{width:20px;height:20px;accent-color:#c6bd88}#balance-settings .balance-grid input:disabled{opacity:.45;cursor:not-allowed}


/* Five abilities fit the existing single purchase row. */
.group-abilities .group-cards{grid-template-columns:repeat(5,minmax(0,1fr))}

@media(min-width:1000px){.compact-console .purchase-rack{grid-template-columns:minmax(0,8fr) minmax(0,4fr) minmax(0,2fr) minmax(0,5fr)}}
#call-airstrike .slot-name{white-space:nowrap;overflow-wrap:normal;font-size:13px}

#call-airstrike .airstrike-button-art{object-fit:contain;max-width:100%;width:100%;filter:drop-shadow(0 2px 1px #09212a80)}.balance-airstrike-icon{width:44px;height:32px;object-fit:contain;flex-shrink:0}

/* Crop the shared artwork to each equipment silhouette without changing card layout. */
svg[data-equipment-art]{overflow:hidden}.purchase-slot svg[data-equipment-art]{object-fit:contain;filter:drop-shadow(0 2px 1px #09212a70)}
/* Joining needs only a four-digit code; the connected lobby retains its full width. */
#multiplayer-lobby:has(#lobby-room[hidden]){width:min(360px,95vw);max-width:360px;padding:22px 24px}
#lobby-entry .kick-connect-row{flex-wrap:nowrap;align-items:center;gap:12px}
#lobby-entry #join-code{flex:0 0 110px;width:110px;min-width:0;padding:8px;font:600 22px/26px var(--mono);letter-spacing:4px;text-align:center}
#lobby-entry #lobby-join{white-space:nowrap;min-height:44px}
#multiplayer-lobby:has(#lobby-room[hidden]) .donos-bottom{position:static;border:0;margin-top:16px;padding:0}
#multiplayer-lobby:has(#lobby-room[hidden]) #lobby-status{margin:0;font-size:12px}
#multiplayer-lobby:has(#lobby-room[hidden]) #lobby-connection:empty{display:none}
/* Brief visual reference for the six command-bar controls. */
#manual{width:min(670px,95vw);max-width:670px;padding:24px}
#manual .manual-top{align-items:center;margin-bottom:16px}
#manual #manual-title{margin:0;font:700 32px var(--display);color:#f0e6c8}
#manual .manual-controls{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#manual .manual-controls li{display:flex;align-items:center;gap:12px;margin:0;padding:12px;border:1px solid #5d776b;border-radius:5px;background:#18333b}
#manual .manual-control-icon{flex:0 0 58px;width:58px;height:60px;display:grid;place-items:center;border:1px solid #7e9581;border-radius:4px;background:linear-gradient(145deg,#425b52,#203b42)}
#manual .manual-control-icon img{width:55px;height:55px;object-fit:contain}
#manual .manual-control-icon svg{width:36px;height:42px}
#manual .manual-star{font:800 38px var(--display);color:#edcf80}
#manual .manual-controls h3{font:700 20px/22px var(--display);color:#ebd594;margin:0 0 5px}
#manual .manual-controls p{font:12px/1.5 var(--body);color:#c3d0bc;margin:0}
#manual #manual-done{display:block;width:auto;min-width:110px;margin:18px auto 0;padding:10px 24px}
@media(max-width:600px){#manual .manual-controls{grid-template-columns:1fr}#manual{padding:18px}}
