/* One HUD: a compact command dock, and panels opened on demand. */
:root{--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--hud-top:64px;--dock-height:194px;--hud-gap:16px}
html,body{width:100%;height:100%;overscroll-behavior:none}
#app{position:fixed;height:100dvh;overflow:hidden}
button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.topbar{height:calc(var(--hud-top) + var(--safe-top));padding:var(--safe-top) max(18px,var(--safe-right)) 0 max(18px,var(--safe-left));gap:16px;background:#102128f2;border-color:#4a687344}
.brand{font-size:14px;letter-spacing:1.6px;gap:8px}.brand>svg{width:26px;height:26px}.brand small{display:none}
.resources{gap:28px}.resource{min-width:82px;gap:9px}.resource>svg{width:20px;height:20px}.resource span{font-size:9px;letter-spacing:1px}.resource strong{font-size:21px}.resource em{font-size:13px}.resource small{display:none}
.session{gap:6px}.session>span{display:block;font-size:11px}.session button{display:grid!important;place-items:center;min-width:40px;height:40px;padding:0 8px;border-color:#36525c}.session button svg{width:18px;height:18px}
.map-note{display:none}.panel{background:#10232bf5;border:1px solid #48636d88;border-radius:12px;box-shadow:0 8px 30px #0004;backdrop-filter:blur(12px)}
.quick-status{position:absolute;top:calc(var(--hud-top) + var(--safe-top) + 12px);left:max(16px,var(--safe-left));z-index:6;max-width:calc(100% - 90px)}
#core-status{display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 12px;background:#112831e8;border-color:#51716f;font:10px monospace;color:#aec7cb;border-radius:8px}
#core-mini{color:#90e7cf}.status-dot{width:6px;height:6px;border-radius:50%;background:#76d8bb}#match-clock{display:none;color:#a4bac1}
#compact-queue{max-width:260px;margin-top:6px;padding:6px 10px;border-radius:5px;background:#142d34ec;color:#b8ddcd;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.camera-tools{position:absolute;top:calc(var(--hud-top) + var(--safe-top) + 12px);right:max(16px,var(--safe-right));z-index:6;display:flex;gap:4px}.camera-tools button{width:42px;height:42px;display:grid;place-items:center;background:#132b34e8;border-radius:8px}.camera-tools svg{width:19px;height:19px}
.command{position:absolute;left:50%;right:auto;transform:translateX(-50%);bottom:calc(16px + var(--safe-bottom));width:580px;max-width:calc(100% - 32px);min-width:0;padding:10px 12px;z-index:12}
.selection-row{display:flex;align-items:center;justify-content:space-between;min-height:28px;margin-bottom:8px;gap:8px}.selection-info{margin:0;gap:8px;min-width:0}.selection-info>svg{width:23px;height:23px;flex-shrink:0}.selection-info b{font-size:12px}.selection-info small{font-size:10px;margin:0}.selection-info>div{min-width:0}#selected-stats{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.commands{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;flex-wrap:nowrap}.commands button,.commands #mobile-workshop{position:static;transform:none;display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:44px;padding:6px 4px;font-size:11px;z-index:auto;border-radius:7px;background:#1d343e;color:#dcebea}.commands svg{width:18px;height:18px;flex-shrink:0}.commands kbd{font-size:8px;margin-left:2px}
.commands button[aria-expanded=true],.commands button.active{background:#23534e;border-color:#6bd5bd;color:#b6f8e9}.commands #attack{border-color:#598e85;color:#9be3d0}.commands #attack.active{background:#498a67;color:#fff;border-color:#b0f5cc}
#refit-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 3px;border-radius:5px;background:#e4bd76;color:#25271c;font:10px monospace;vertical-align:middle}
.control-hint{margin-top:7px;font-size:10px;color:#8faeb9}.command.aiming .control-hint{color:#b9efd8}.command.aiming{border-color:#83d9b7}#cancel-order{min-height:32px;padding:4px 10px;color:#f0c88d;border-color:#826f49;background:#3c3529;font-size:11px}
#hud-scrim{position:absolute;inset:calc(var(--hud-top) + var(--safe-top)) 0 0;background:#06131938;border:0;border-radius:0;z-index:9;cursor:default}
.hud-panel{position:absolute;z-index:11;transform:none;max-height:none;margin:0}
.panel-heading{display:flex;align-items:center;gap:8px;padding:6px 10px 6px 16px;border-bottom:1px solid #3e596366;min-height:49px;flex-shrink:0}.panel-heading>b{font-size:13px;font-weight:600}.panel-heading button{margin-left:auto;width:36px;height:36px;font-size:25px;background:transparent;border-color:transparent;flex-shrink:0}.panel-heading button:hover{border-color:#5e7f83}.panel-live{margin-left:auto;font-size:9px;color:#a0babb}.panel-live+button{margin-left:0}
.workshop{top:calc(var(--hud-top) + var(--safe-top) + 12px);right:max(16px,var(--safe-right));bottom:calc(var(--dock-height) + var(--safe-bottom) + 16px);width:340px;display:flex;flex-direction:column;overflow:hidden}
.workshop-title{padding:12px 16px}.workshop-title>.eyebrow{display:none}.title-row h2{font-size:16px;margin:0 0 7px}.title-row>span{font-size:11px}.queue{font-size:11px;padding-top:8px}.tabs{flex-shrink:0}.tabs button{min-height:44px;font-size:11px;padding:8px 3px}.upgrade-list-title{padding:12px 4px 3px;font-size:9px;letter-spacing:.5px}#upgrade-list{min-height:0;padding:0 12px 14px;overscroll-behavior:contain;touch-action:pan-y}
.upgrade{border-radius:8px;padding:12px 10px;margin-top:8px;gap:10px}.upgrade b{font-size:13px}.upgrade p{font-size:11px}.upgrade-bottom .effect{font-size:10px}.upgrade-bottom .price{font-size:11px}.upgrade-icon{width:29px;min-width:29px}.upgrade:disabled{opacity:.62}.upgrade-content .upgrade-visual{font-size:10px;color:#baa77f}
#firmware-alert{flex-shrink:0;min-height:40px;font-size:11px}.feed{display:none}.defense-card{padding:12px}.defense-heading b{font-size:13px}.defense-card small,.defense-card p{font-size:11px}.defense-actions button{min-height:44px;font-size:12px}
.mission{top:calc(var(--hud-top) + var(--safe-top) + 12px);left:max(16px,var(--safe-left));bottom:auto;width:300px;padding:0 16px 16px;max-height:calc(100dvh - var(--hud-top) - var(--dock-height) - var(--safe-top) - var(--safe-bottom) - 40px);overflow:auto;overscroll-behavior:contain}.mission>.panel-heading{margin:0 -16px 12px}.mission>.eyebrow{font-size:9px}.mission h1{font-size:18px}.mission p{display:block;font-size:12px}.mission .faction{font-size:12px;margin:12px 0}.mission-actions button{min-height:44px;font-size:12px}.mission-actions{font-size:10px}
.minimap-wrap{left:max(16px,var(--safe-left));bottom:calc(var(--dock-height) + var(--safe-bottom) + 16px);width:320px;padding:0 12px 12px}.minimap-wrap .panel-heading{margin:0 -12px}.minimap-wrap>.eyebrow{gap:6px;margin-top:8px}.minimap-wrap button{min-height:44px;padding:8px 10px;font-size:11px}.minimap-wrap .eyebrow button{font-size:11px}#minimap{width:100%;height:auto!important;aspect-ratio:600/328;touch-action:none;margin:8px 0}.minimap-wrap #fog-toggle{font-size:11px;min-height:44px;margin-bottom:8px}.mini-legend{display:flex;font-size:10px}
.orders-panel{left:50%;transform:translateX(-50%);bottom:calc(var(--dock-height) + var(--safe-bottom) + 16px);width:440px;max-width:calc(100% - 32px);max-height:calc(100dvh - var(--hud-top) - var(--dock-height) - var(--safe-top) - var(--safe-bottom) - 40px);overflow:auto;overscroll-behavior:contain}.order-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}.order-grid button{min-height:54px;padding:9px;text-align:left;font-size:12px}.order-grid small{display:block;margin-top:3px;color:#9db9c2;font-size:10px}.order-grid kbd{margin-left:4px}.support{padding:12px;gap:8px;background:transparent}.support button{min-height:52px;border-radius:8px;padding:10px}.support button span{font-size:12px}.support small{font-size:10px}
#toast{position:absolute;bottom:calc(var(--dock-height) + var(--safe-bottom) + 24px);width:max-content;max-width:min(540px,calc(100% - 32px));padding:10px 14px;text-align:center;z-index:16;font-size:12px}
#paused-tag{top:calc(var(--hud-top) + var(--safe-top) + 14px);left:50%;right:auto;transform:translateX(-50%);font-size:10px;letter-spacing:.5px;z-index:7;padding:9px 12px;pointer-events:none}
.modal-backdrop{position:fixed;z-index:30;padding:calc(14px + var(--safe-top)) max(14px,var(--safe-right)) calc(14px + var(--safe-bottom)) max(14px,var(--safe-left));overflow:auto;overscroll-behavior:contain}.small-card,.intro-card{max-height:100%;overflow:auto;overscroll-behavior:contain;border-radius:14px}.small-card button,.intro-card button{min-height:44px}.small-card h2{font-size:26px}.small-card .primary{margin:12px 0}.manual{margin-top:18px;border-top:1px solid #47616a;padding-top:10px}.manual summary{min-height:44px;display:list-item;padding:10px 0;cursor:pointer;color:#b9dacf}.menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 20px}.menu-actions button{font-size:12px;padding:9px}.menu-status{font-size:11px!important;color:#b2dfce!important;margin:0!important}.touch-guide{padding:10px 12px;background:#203a40;border-radius:8px;margin-top:10px}.touch-guide p{margin:5px 0}.mobile-intro{display:none}.match-setting select{min-height:44px}.danger-link{font-size:12px;min-height:44px}.small-card dl{line-height:1.6}
#network-bar{top:auto;left:max(16px,var(--safe-left));bottom:calc(16px + var(--safe-bottom));transform:none;max-width:calc((100vw - 630px)/2);font-size:10px;padding:8px;z-index:8;border-radius:8px;gap:7px}#leave-online{min-height:32px;padding:5px 8px}
.lobby-overlay{padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);overscroll-behavior:contain;touch-action:pan-y}.lobby-overlay input,.lobby-overlay select{font-size:16px;min-height:46px}.lobby-overlay button{min-height:44px}.lobby-mode-tabs{display:none}.lobby-seat b{overflow-wrap:anywhere}.room-heading h1{overflow-wrap:anywhere}.lobby-list-row{gap:10px}.lobby-list-row>span:first-child{min-width:0;overflow-wrap:anywhere}
@media(max-width:1100px){.brand{font-size:12px}.brand>svg{width:22px}.resources{gap:16px}.resource{min-width:70px}.session>span{display:none}#match-clock{display:inline}#network-bar{max-width:240px;bottom:calc(var(--dock-height) + var(--safe-bottom) + 16px)}}
@media(max-width:900px),(pointer:coarse){
 :root{--hud-top:58px;--dock-height:172px;--hud-gap:8px}
 .topbar{padding-left:max(10px,var(--safe-left));padding-right:max(10px,var(--safe-right));gap:8px}.brand{display:none}.resources{flex:1;min-width:0;display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:10px}.resource{min-width:0;gap:5px}.resource>svg{display:block;width:16px;height:16px;flex-shrink:0}.resource span{font-size:8px;letter-spacing:.7px}.resource strong{font-size:18px;white-space:nowrap}.resource em{font-size:12px}.session{gap:4px}.session>span,.session #speed{display:none!important}.session button{width:44px;height:44px;min-width:44px;padding:0}.session #help{display:grid!important}
 .quick-status{top:calc(var(--hud-top) + var(--safe-top) + 8px);left:max(8px,var(--safe-left));max-width:calc(100% - 110px)}#core-status{min-height:44px;padding:8px 10px;gap:8px;font-size:10px}.camera-tools{top:calc(var(--hud-top) + var(--safe-top) + 8px);right:max(8px,var(--safe-right));display:grid;grid-template-columns:44px;gap:4px}.camera-tools button{width:44px;height:44px}.camera-tools #zoom-in,.camera-tools #zoom-out{display:none}
 .command{left:max(8px,var(--safe-left));right:max(8px,var(--safe-right));bottom:calc(8px + var(--safe-bottom));transform:none;width:auto;max-width:none;padding:7px 8px;border-radius:12px}.selection-row{min-height:22px;margin-bottom:5px}.selection-info>svg{width:17px;height:17px}.selection-info b{font-size:11px}.selection-info small{display:none}.commands{gap:5px}.commands button,.commands #mobile-workshop{flex-direction:column;gap:3px;min-height:50px;padding:5px 2px;font-size:10px;line-height:1.15}.commands svg{width:19px;height:19px}.commands kbd{display:none}.control-hint{font-size:10px;margin-top:5px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#cancel-order{min-height:44px;min-width:56px;padding:5px 8px;font-size:11px}
 #hud-scrim{background:#07131c66;backdrop-filter:blur(2px)}
 .panel-heading{padding-left:16px;min-height:49px}.panel-heading button{width:44px;height:44px}.panel-live{font-size:10px}
 .workshop{top:auto;bottom:calc(var(--dock-height) + var(--safe-bottom) + 8px);left:max(8px,var(--safe-left));right:max(8px,var(--safe-right));width:auto;height:min(62dvh,calc(100dvh - var(--hud-top) - var(--dock-height) - var(--safe-top) - var(--safe-bottom) - 24px));border-radius:16px;transform:none}.workshop.open{transform:none}.workshop-title{padding:10px 14px}.title-row h2{font-size:14px}.queue{font-size:10px}.tabs button{font-size:11px;min-height:44px}#upgrade-list{padding:0 10px 12px}.upgrade b{font-size:13px}.upgrade p{font-size:11px}.upgrade .upgrade-visual{display:none}.upgrade-icon{width:30px;min-width:30px}.upgrade-list-title{font-size:9px}.upgrade-bottom{gap:8px}.upgrade-bottom .effect{font-size:10px;line-height:1.5}.upgrade-head small{font-size:10px}
 .orders-panel{left:max(8px,var(--safe-left));right:max(8px,var(--safe-right));bottom:calc(var(--dock-height) + var(--safe-bottom) + 8px);transform:none;width:auto;max-width:none;max-height:calc(100dvh - var(--hud-top) - var(--dock-height) - var(--safe-top) - var(--safe-bottom) - 24px);border-radius:16px}.order-grid{gap:8px}.order-grid button{min-height:56px;font-size:13px}.order-grid kbd{display:none}
 .mission{left:max(8px,var(--safe-left));right:max(8px,var(--safe-right));top:auto;bottom:calc(var(--dock-height) + var(--safe-bottom) + 8px);width:auto;max-height:calc(100dvh - var(--hud-top) - var(--dock-height) - var(--safe-top) - var(--safe-bottom) - 24px);border-radius:16px}.mission h1{font-size:18px}.mission p{display:block}.mission .faction{margin:11px 0;font-size:13px}.mission .faction small{font-size:11px}.mission-actions button{font-size:12px}
 .minimap-wrap{left:max(8px,var(--safe-left));right:max(8px,var(--safe-right));bottom:calc(var(--dock-height) + var(--safe-bottom) + 8px);width:auto;max-height:calc(100dvh - var(--hud-top) - var(--dock-height) - var(--safe-top) - var(--safe-bottom) - 24px);overflow:auto;border-radius:16px}.mini-legend{display:flex}.minimap-wrap .eyebrow button{font-size:11px}#minimap{width:100%;max-width:76.8dvh;max-height:none;margin-left:auto;margin-right:auto}.minimap-wrap #fog-toggle{font-size:11px}
 #paused-tag{top:calc(var(--hud-top) + var(--safe-top) + 58px);left:50%;right:auto;font-size:9px;padding:6px 10px;width:max-content;max-width:80%;text-align:center}
 #toast{bottom:calc(var(--dock-height) + var(--safe-bottom) + 16px);font-size:12px;width:calc(100% - 32px);max-width:460px;line-height:1.5;z-index:16}
 .modal-backdrop{padding:calc(10px + var(--safe-top)) max(10px,var(--safe-right)) calc(10px + var(--safe-bottom)) max(10px,var(--safe-left));backdrop-filter:blur(4px)}.intro-card,.small-card{padding:22px 18px;width:100%;max-width:600px;max-height:100%;border-radius:16px}.intro-card h2{font-size:34px}.intro-card .lead{font-size:13px}.intro-steps{display:none}.intro-controls{display:none}.mobile-intro{display:block;font-size:13px;color:#c0e0d7;background:#24413f;padding:12px;border-radius:8px;line-height:1.7}.deploy-row{display:grid;grid-template-columns:1fr;gap:14px}.deploy-row select{width:100%;font-size:16px;height:46px}.deploy-row .primary{width:100%;min-height:48px}.intro-card .resume{min-height:44px;font-size:13px}.local-note{font-size:10px;line-height:1.6}.small-card h2{font-size:24px}.small-card dl{grid-template-columns:1fr;gap:4px;font-size:12px}.small-card dd{margin:0 0 10px}.match-setting{display:block;font-size:12px}.match-setting select{display:block;max-width:100%;width:100%;font-size:16px;margin-top:6px}.small-card p{font-size:12px}.result-stats{gap:20px}.intel-card{padding:20px 14px}.intel-card #intel-table td,.intel-card #intel-table th{font-size:11px;padding:8px 5px}
 #network-bar{top:calc(var(--hud-top) + var(--safe-top) + 56px);bottom:auto;left:max(8px,var(--safe-left));max-width:calc(100% - 74px);padding:5px 8px;gap:5px;background:#11272fe8;font-size:9px;border-color:#3f6662}#leave-online{display:none}#app.online #paused-tag{display:none}
 .lobby-shell{width:calc(100% - 28px);padding:18px 0}.lobby-header{padding-bottom:16px}.lobby-brand{font-size:14px;letter-spacing:.12em}.lobby-version{display:none}.lobby-hero{margin:22px 0 18px}.lobby-overlay h1{font-size:34px}.lobby-hero p{font-size:13px}.lobby-hero .eyebrow{font-size:9px}.lobby-identity{display:grid;grid-template-columns:1fr;gap:8px;margin:18px 0}.lobby-identity input{width:100%;min-width:0}.lobby-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:16px 0 10px;background:#0d2026;padding:5px;border-radius:10px}.lobby-mode-tabs button{background:transparent;border-color:transparent;font-size:13px}.lobby-mode-tabs button[aria-pressed=true]{background:#2b514d;color:#b6f1df;border-color:#5b9e8e}.lobby-grid{display:block}.lobby-grid[data-view=join] [data-lobby-card=host],.lobby-grid[data-view=host] [data-lobby-card=join]{display:none}.lobby-card{padding:18px;border-radius:12px}.lobby-section-head{margin-bottom:16px}.lobby-section-head button{font-size:12px}.lobby-empty{padding:24px 12px;font-size:14px}.join-form{margin-top:18px;padding-top:18px}.join-form input{max-width:none;min-width:0;flex:1}.join-form button{flex-shrink:0}.lobby-form-row{grid-template-columns:1fr 1fr;gap:10px}.lobby-overlay input,.lobby-overlay select{font-size:16px}.solo-card{padding:18px;gap:12px;margin-top:14px;flex-wrap:wrap}.solo-card>div{flex:1}.solo-card>button{width:100%;font-size:13px}.solo-symbol{font-size:27px}.lobby-footer{flex-direction:column;gap:6px;font-size:10px}.lobby-footer #lobby-status{max-width:100%}#lobby-waiting{padding-top:24px}.room-heading{display:block;margin:16px 0}.room-heading h1{font-size:29px}.invite-box{min-width:0;margin-top:14px;padding:12px 14px;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:12px}.invite-box small{grid-column:1}.invite-box strong{grid-column:1;margin:6px 0;font-size:23px}.invite-box button{grid-column:2;grid-row:1/3;min-height:44px;font-size:11px;padding:8px 10px}#lobby-seats{grid-template-columns:1fr;gap:8px}.lobby-seat{padding:12px;gap:12px}.seat-number{font-size:17px}.lobby-seat small{margin-top:3px}.lobby-seat b{font-size:13px}.room-actions{position:sticky;bottom:0;display:flex;flex-wrap:wrap;background:#10252df5;padding:12px 0 calc(12px + var(--safe-bottom));border-top:1px solid #45636a;gap:8px}.room-actions button{flex:1;min-width:100px;min-height:46px}.room-actions #lobby-start{flex-basis:100%;justify-content:center}
}
@media(max-width:360px){.resource>svg{display:none}.resources{gap:5px}.resource strong{font-size:17px}.resource em{font-size:11px}.topbar{gap:5px}.commands{gap:4px}.commands button,.commands #mobile-workshop{font-size:10px}.control-hint{font-size:9px}.tabs button{font-size:10px}.order-grid{padding:10px}.panel-live{font-size:9px}}
@media(max-height:500px) and (min-width:600px){
 :root{--hud-top:48px;--dock-height:140px}.topbar{padding-top:var(--safe-top)}.resources{max-width:420px}.command{left:50%;right:auto;width:520px;max-width:calc(100% - var(--safe-left) - var(--safe-right) - 24px);transform:translateX(-50%);bottom:calc(6px + var(--safe-bottom));padding:5px 8px}.selection-row{min-height:18px;margin-bottom:3px}.commands button,.commands #mobile-workshop{flex-direction:row;min-height:44px;gap:5px}.control-hint{display:none}.workshop{left:auto;right:max(8px,var(--safe-right));top:calc(var(--hud-top) + var(--safe-top) + 6px);height:auto;width:min(390px,60vw);bottom:calc(var(--dock-height) + var(--safe-bottom) + 6px)}.workshop-title{padding:6px 12px}.title-row,.health{display:none}.queue{padding:0}.panel-heading{min-height:44px;padding-top:0;padding-bottom:0}.panel-heading button{height:40px}.tabs button{min-height:44px}.mission{width:300px;right:auto}.orders-panel{left:50%;right:auto;width:500px;transform:translateX(-50%)}.order-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding:8px;gap:6px}.order-grid button{min-height:46px;padding:6px}.support{display:grid;grid-template-columns:1fr 1fr;padding:8px;gap:6px}.support button{padding:6px;min-height:48px}.support small{font-size:9px}.minimap-wrap{width:330px;right:auto;top:calc(var(--hud-top) + var(--safe-top) + 6px);bottom:calc(var(--dock-height) + var(--safe-bottom) + 6px)}.minimap-wrap #minimap{max-height:none}.minimap-wrap .mini-legend{display:none}#paused-tag{top:calc(var(--hud-top) + var(--safe-top) + 10px)}.intro-card h2{font-size:28px}.mobile-intro{font-size:12px}.quick-status,.camera-tools{top:calc(var(--hud-top) + var(--safe-top) + 6px)}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* The emergency defender is always within one click of the battlefield. */
.command .bulwark-main{width:100%;min-height:52px;display:flex;align-items:center;gap:12px;margin:0 0 8px;padding:8px 14px;text-align:left;border:1px solid #efb66b;border-radius:8px;background:linear-gradient(110deg,#6b4528,#3d3526);color:#ffe1aa;box-shadow:inset 0 1px #ffdf9420}
.command .bulwark-main>svg{width:30px;height:30px;flex-shrink:0}.bulwark-main>span{flex:1;min-width:0}.bulwark-main b{display:block;font-size:15px;letter-spacing:.2px}.bulwark-main small{display:block;margin-top:3px;font-size:11px;color:#e0c29b}.bulwark-main>kbd{font-size:11px;background:#1b2829;color:#ffe1aa;border-color:#bd905b}.command .bulwark-main:hover:not(:disabled){background:linear-gradient(110deg,#885831,#55432c);border-color:#ffe2a2}.command .bulwark-main:disabled{opacity:1;background:#293638;border-color:#57696a;color:#b6c7c6;box-shadow:none}.bulwark-main:disabled small{color:#a0b2b3}.command .bulwark-main.deployed{border-color:#f5b45b;background:#513c28;color:#ffd394}.commands #move.active{background:#23534e;border-color:#9be3d0}
@media(max-width:900px),(pointer:coarse){.command .bulwark-main{min-height:52px;padding:7px 11px;margin-bottom:6px;gap:10px}.bulwark-main b{font-size:14px}.bulwark-main small{font-size:10px}.bulwark-main>kbd{display:none}}
@media(max-height:500px) and (min-width:600px){.command .bulwark-main{min-height:44px;margin-bottom:5px;padding:5px 10px}.bulwark-main b{font-size:13px}.bulwark-main small{font-size:10px}.command .bulwark-main>svg{width:24px;height:24px}}

/* Fast purchases stay beside troop commands and never open a blocking panel. */
.quick-upgrades{position:relative;margin:-2px 0 9px;padding:0 0 9px;border-bottom:1px solid #45616a66}
.quick-upgrade-heading{display:flex;align-items:center;gap:9px;height:25px;margin-bottom:4px}.quick-upgrade-heading>b{flex-shrink:0;font-size:10px;letter-spacing:.7px;text-transform:uppercase;color:#b5d9d0}.quick-upgrade-heading>span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;color:#8faeb9}.quick-upgrade-heading>button{min-width:28px;height:25px;padding:0 6px;margin-left:auto;font-size:17px;background:transparent;border-color:#47606a;color:#bdcfcf}
[data-quick-groups]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-bottom:5px}[data-quick-groups] button{min-width:0;min-height:27px;padding:4px 2px;font-size:10px;background:#192f37;border-color:transparent;border-radius:5px;color:#9db9bf;white-space:nowrap}[data-quick-groups] kbd{display:inline-block;margin-right:3px;font-size:9px;background:#102329;border-color:#486165;color:#a1c5c2}[data-quick-groups] button[aria-pressed=true]{background:#284943;border-color:#609f8b;color:#c5f1de}
[data-quick-items]{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(84px,1fr);gap:5px;overflow-x:auto;overscroll-behavior-x:contain;touch-action:pan-x;scrollbar-width:thin;scrollbar-color:#486c6a transparent;padding-bottom:2px}[data-quick-items]>button{min-width:0;min-height:44px;padding:6px 8px;border-radius:6px;background:#1d353b;text-align:left;color:#d2e9e0;border-color:#42695e}[data-quick-items]>button.affordable:hover{background:#2e5146;border-color:#9ad8b5}[data-quick-items]>button:disabled{opacity:1;background:#182b32;border-color:#344a53;color:#8a9fa5}.quick-item-title{display:flex;justify-content:space-between;align-items:center;gap:4px;white-space:nowrap}.quick-item-title b{font-size:11px;font-weight:600}.quick-item-title kbd{font-size:8px;padding:1px 3px;flex-shrink:0;background:#102329;color:#91b7ae;border-color:#3f5c5a}[data-quick-price]{display:block;font-size:10px;margin-top:4px;white-space:nowrap;color:#e2c48a}[data-quick-items]>button:disabled [data-quick-price]{color:#91a5ab}.shortcut-armed [data-quick-status]{color:#f3d190}.shortcut-armed [data-quick-items]>button{border-color:#a58855}.shortcut-armed .quick-item-title kbd{color:#ffe0a5;border-color:#a58855}.upgrade-shortcut{display:inline-block!important;white-space:nowrap;margin-left:5px;font-size:9px!important;color:#a3d1bf}.tabs kbd{font-size:8px;margin-right:2px}.defense-actions kbd{font-size:9px;margin-left:4px}
@media(min-width:901px){.command{width:620px}}
@media(max-width:900px),(pointer:coarse){.quick-upgrades{margin-bottom:6px;padding-bottom:6px}.quick-upgrade-heading{height:28px;margin-bottom:3px}.quick-upgrade-heading>b{font-size:9px}.quick-upgrade-heading>span{font-size:9px}.quick-upgrade-heading>button{height:28px;min-width:36px}[data-quick-groups] button{min-height:34px;font-size:9px}[data-quick-groups] kbd{font-size:8px;margin-right:1px}[data-quick-items]{grid-auto-columns:minmax(73px,1fr);gap:4px}[data-quick-items]>button{padding:6px;min-height:44px}.quick-item-title{display:block}.quick-item-title b{font-size:10px}.quick-item-title kbd{display:none}[data-quick-price]{font-size:9px}.tabs kbd{display:none}}
@media(max-height:500px) and (min-width:600px){.quick-upgrades{margin:0 0 4px;padding:0 0 4px}.quick-upgrade-heading{height:25px;margin:0}[data-quick-body]{position:absolute;bottom:calc(100% + 8px);left:-8px;right:-8px;padding:8px;background:#10232bfa;border:1px solid #58746c;border-radius:9px;box-shadow:0 8px 25px #0006}[data-quick-groups] button{min-height:32px}.command{width:560px}.quick-item-title{display:flex}.quick-item-title kbd{display:inline-block}}

#deployment-error{padding:12px;border:1px solid #a87055;border-radius:8px;background:#412d28;color:#ffe0ca;font-size:13px}

.tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.upgrade-bottom{flex-wrap:wrap}.upgrade .effect{white-space:normal}.result-stats{flex-wrap:wrap}#kernel-impact{color:#a9daca;font-size:11px;line-height:1.6}
/* Long prerequisite and final-upgrade prices stay inside compact HUD buttons. */
[data-quick-price]{overflow:hidden;text-overflow:ellipsis}
