.themed-select { display:block; position:relative; min-width:0; max-width:100%; }
.themed-select-native { position:absolute !important; left:0; top:0; width:1px !important; height:1px !important; min-width:0 !important; padding:0 !important; margin:0 !important; border:0 !important; opacity:0; pointer-events:none; clip-path:inset(50%); }
.themed-select-button { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:44px; padding:10px 12px; text-align:left; color:var(--ink); font:11px/1.4 var(--mono); border:1px solid #53665a; border-radius:2px; background:linear-gradient(#25382d,#16271f); box-shadow:inset 0 1px #a1b39c30,inset 0 -2px #07130d; }
.themed-select-button span { min-width:0; overflow-wrap:anywhere; }
.themed-select-button i { flex:none; width:7px; height:7px; border-right:1px solid #c2d4b2; border-bottom:1px solid #c2d4b2; transform:rotate(45deg); margin-top:-4px; }
.themed-select-button[aria-expanded="true"] { border-color:#a2ba8d; box-shadow:inset 0 2px 6px #0008; }
.themed-select-listbox { position:fixed; z-index:12000; box-sizing:border-box; overflow:auto; overscroll-behavior:contain; padding:5px; border:1px solid #78916c; border-radius:2px; background:linear-gradient(125deg,#213429,#0f1f19); color:#d7e2ce; box-shadow:inset 0 0 0 2px #0b1711,0 8px 24px #000a; font:11px/1.5 var(--mono); scrollbar-width:thin; }
.themed-select-option { padding:10px; cursor:pointer; min-height:44px; box-sizing:border-box; overflow-wrap:anywhere; border:1px solid transparent; }
.themed-select-option[aria-selected="true"] { color:#e4e4bd; background:#3a493530; }
.themed-select-option.highlighted,.themed-select-option:hover { border-color:#617853; background:#3a4d37; }
.themed-select-option[aria-disabled="true"] { opacity:.45; cursor:default; background:none; }
input[type="checkbox"],input[type="radio"] { appearance:none; flex:none; box-sizing:border-box; width:15px; height:15px; min-width:15px; min-height:15px; aspect-ratio:1; padding:0; margin:0; border:1px solid #829476; background:#0f1d17; box-shadow:inset 0 1px 3px #0009; display:inline-grid; place-content:center; cursor:pointer; }
input[type="radio"] { border-radius:50%; }
input[type="checkbox"]::before { content:""; width:8px; height:4px; border-bottom:2px solid #d3dfb4; border-left:2px solid #d3dfb4; transform:rotate(-45deg) scale(0); }
input[type="radio"]::before { content:""; width:7px; height:7px; border-radius:50%; background:#d3dfb4; transform:scale(0); }
input[type="checkbox"]:checked::before { transform:rotate(-45deg) scale(1); }
input[type="radio"]:checked::before { transform:scale(1); }
input[type="checkbox"]:disabled,input[type="radio"]:disabled { opacity:.4; cursor:default; }
.targeting-panel { border:1px solid #65745c; background:linear-gradient(135deg,#233024,#15221b 60%); box-shadow:inset 0 0 0 3px #0c1912,0 6px 18px #0005; }
.target-panel-header { padding:4px 0 14px; border-bottom:1px solid #60704f; margin-bottom:16px; }
.target-panel-header h2 { font-size:18px; line-height:1.35; overflow-wrap:anywhere; }
.target-selection-mode { border:1px solid #4f6546; background:#0e1b1540; padding:12px; }
.target-selection-mode legend,.target-priority-controls legend { color:#c5ceac; letter-spacing:.1em; font:9px var(--mono); }
.target-missile-models { display:grid; gap:8px; }
.target-missile-models .division-model { display:flex; align-items:center; gap:9px; padding:10px; min-width:0; border:1px solid #425b3c; background:#11201670; }
.target-missile-models .division-model-name { min-width:0; flex:1; }
.target-missile-models .division-model-name .icon { width:16px; height:16px; float:left; margin-right:6px; }
.target-missile-models strong { display:block; color:#d5debb; font-size:11px; overflow-wrap:anywhere; }
.target-missile-models small { display:block; font:9px/1.5 var(--mono); color:#a5b795; margin-top:5px; }
.target-missile-models .division-quantity { flex:none; }
.target-missile-models .division-quantity button { padding:5px; min-width:28px; min-height:32px; }
.target-missile-models .different-base { opacity:.5; }
.target-selection-total { color:#a2b791; font-size:9px; }
.affiliation-control { display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid #4a5b40; border-bottom:1px solid #4a5b40; padding:14px 0; margin:8px 0; }
.affiliation-control > div { min-width:0; }
.affiliation-control label { font:9px var(--mono); color:#c3d1ad; }
.affiliation-control small { display:block; color:#9cae8d; font:9px/1.5 var(--mono); margin-top:6px; }
.affiliation-retention { flex:none; flex-direction:column; gap:6px; }
.affiliation-retention .retention-dial { width:42px; height:42px; }
.affiliation-retention .retention-dial i { transition:transform 180ms cubic-bezier(.2,.75,.3,1); }
.affiliation-retention output { font-size:8px; min-width:64px; text-align:center; }
.division-health { appearance:none; display:block; width:100%; height:8px; margin-top:7px; border:1px solid #4f6546; background:#152017; border-radius:1px; }
.division-health::-webkit-meter-bar { background:#152017; border:0; border-radius:0; }
.division-health::-webkit-meter-optimum-value { background:#8ba576; }
.division-health::-webkit-meter-suboptimum-value,.division-health::-webkit-meter-even-less-good-value { background:#c49b64; }
.division-health-summary { font:10px/1.5 var(--mono); color:#b7c8a4; }
.pinned-encounter { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px; margin-bottom:10px; border:1px solid #65744e; border-left:4px solid #c8bd7b; background:linear-gradient(110deg,#2a3423,#1b281d); }
.pinned-encounter > div:first-child { min-width:0; }
.pinned-encounter strong { display:block; font-size:12px; margin:6px 0; overflow-wrap:anywhere; }
.pinned-encounter p { font-size:11px; line-height:1.55; margin:0; }
.pinned-encounter .proposal-actions { display:flex; flex:none; flex-wrap:wrap; gap:6px; }
.combat-mini-flag,.island-owner-flag { display:inline-block; flex:none; width:22px; height:15px; margin-right:6px; vertical-align:middle; border:1px solid #66735e; box-shadow:0 1px 2px #0008; }
.unknown-affiliation rect { fill:#29352c; stroke:#7c8b74; }.unknown-affiliation path { fill:none; stroke:#b6c0ab; stroke-width:1.5; }
.encounter-equipment-name strong { display:inline-flex; align-items:center; flex-wrap:wrap; }
.battle-replay-legend > span > span { display:flex; align-items:center; }
.geospatial-island-model { width:100%; height:320px; min-height:260px; }
.geospatial-island-render h3 { display:flex; align-items:center; }
.nation-overview-editor { margin-bottom:18px; min-width:0; }
.nation-overview-editor textarea { box-sizing:border-box; width:100%; min-width:0; max-width:100%; resize:vertical; min-height:80px; padding:12px; border:1px solid #51674e; border-radius:2px; background:#0f2019; color:#d5dfc8; font:12px/1.6 var(--mono); }
.nation-overview-editor .row { flex-wrap:wrap; gap:8px; }
.nation-description { min-width:0; max-width:100%; font-size:clamp(11px,1vw,13px); line-height:1.6; white-space:pre-wrap; overflow-wrap:anywhere; word-break:break-word; unicode-bidi:plaintext; }
.flag-color-text { width:100%; font:11px var(--mono); }
@media(max-width:600px) { .pinned-encounter { flex-direction:column; align-items:stretch; }.pinned-encounter .proposal-actions { justify-content:flex-start; }.target-force-choice { padding:10px; }.geospatial-island-model { height:270px; } }
@media(prefers-reduced-motion:reduce) { .affiliation-retention .retention-dial i { transition:none; } }
body[data-motion="off"] .affiliation-retention .retention-dial i { transition:none; }

input[type="checkbox"][hidden],input[type="radio"][hidden] { display:none !important; }

input[type="number"] { appearance:textfield; }
input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button { appearance:none; margin:0; }
input[type="range"]:not(#dossier-retention):not(#target-affiliation) { appearance:none; background:transparent; padding:0; min-height:32px; --slider-color:#adcc94; }
.sensor-sea input[type="range"] { --slider-color:#d4b679; }
input[type="range"]:not(#dossier-retention):not(#target-affiliation)::-webkit-slider-runnable-track { height:6px; border:1px solid #55654e; background:linear-gradient(#07120c,#283a2b); box-shadow:inset 0 1px 3px #000a; }
input[type="range"]:not(#dossier-retention):not(#target-affiliation)::-webkit-slider-thumb { appearance:none; height:20px; width:13px; margin-top:-8px; border:1px solid #899d76; border-radius:2px; background:linear-gradient(var(--slider-color),#5c7151); box-shadow:inset 0 1px #e7edda80,0 2px 3px #0009; }
input[type="range"]:not(#dossier-retention):not(#target-affiliation)::-moz-range-track { height:6px; border:1px solid #55654e; background:#102017; }
input[type="range"]:not(#dossier-retention):not(#target-affiliation)::-moz-range-thumb { height:18px; width:12px; border:1px solid #899d76; border-radius:2px; background:var(--slider-color); }

/* The quantity control has a fixed width and a native range input. */
.division-model { display:flex; flex-wrap:wrap; }
.division-model-name,.target-missile-models .division-model-name { flex:1 1 180px; }
.unit-allocation-control { box-sizing:border-box; display:grid; gap:5px; width:216px; max-width:100%; flex:0 0 216px; margin-left:auto; }
.unit-potentiometer { position:relative; min-width:0; padding:0 10px 11px; border:1px solid #536249; border-radius:2px; background:linear-gradient(180deg,#31402c,#202d21 50%,#19251b); box-shadow:inset 0 1px #99a78538,inset 0 -1px #07110aa8,0 1px 2px #0006; }
.unit-potentiometer .unit-allocation-slider { box-sizing:border-box; display:block; width:100%; min-width:0; height:34px; min-height:34px; padding:0; margin:0; accent-color:#b5bd8c; cursor:ew-resize; }
.unit-potentiometer .unit-allocation-slider::-webkit-slider-runnable-track { height:7px; border:1px solid #0c170e; border-radius:2px; background:linear-gradient(#07120b,#121e13); box-shadow:0 1px #a5b58b32,inset 0 2px 3px #000c; }
.unit-potentiometer .unit-allocation-slider::-webkit-slider-thumb { appearance:none; width:21px; height:24px; margin-top:-9px; border:1px solid #879576; border-radius:2px; background:repeating-linear-gradient(90deg,transparent 0 3px,#10190f70 3px 4px),linear-gradient(#a2ad8a,#637052 47%,#3d4e36 51%,#768263); box-shadow:inset 0 1px #e1e6c890,inset 0 -1px #112113,0 2px 3px #000b; }
.unit-potentiometer .unit-allocation-slider::-moz-range-track { height:5px; border:1px solid #0c170e; border-radius:2px; background:#0d180f; box-shadow:0 1px #a5b58b32,inset 0 2px 3px #000c; }
.unit-potentiometer .unit-allocation-slider::-moz-range-thumb { width:19px; height:22px; border:1px solid #879576; border-radius:2px; background:repeating-linear-gradient(90deg,transparent 0 3px,#10190f70 3px 4px),linear-gradient(#a2ad8a,#637052 47%,#3d4e36 51%,#768263); box-shadow:inset 0 1px #e1e6c890,0 2px 3px #000b; }
.unit-potentiometer-scale { position:absolute; bottom:5px; left:20px; right:20px; height:7px; border-right:1px solid #a6b58b9c; pointer-events:none; background:repeating-linear-gradient(90deg,#a6b58b9c 0 1px,transparent 1px 5%) left bottom / 100% 3px no-repeat,repeating-linear-gradient(90deg,#a6b58b9c 0 1px,transparent 1px 25%) left bottom / 100% 7px no-repeat; }
.unit-potentiometer:focus-within { outline:2px solid #c7d2a6; outline-offset:2px; }
.unit-potentiometer:has(input:disabled) { opacity:.45; }
.unit-potentiometer .unit-allocation-slider:disabled { cursor:default; }
.unit-allocation-control .division-quantity { grid-template-columns:34px minmax(40px,1fr) 34px; gap:4px; }
.unit-allocation-control .division-quantity button { width:34px; height:30px; min-width:0; min-height:30px; padding:0; line-height:1; font-size:16px; border-radius:2px; }
.unit-allocation-control .division-quantity output { padding:5px 0; min-width:0; line-height:18px; font-size:11px; }
@media(forced-colors:active) { .unit-potentiometer-scale { border-color:CanvasText; background:none; }.unit-potentiometer .unit-allocation-slider { appearance:auto; } }
.targeting-panel { padding:12px; }
.targeting-panel .compact-form { gap:7px; }
.target-panel-header { padding:0 0 8px; margin-bottom:8px; }
.target-panel-header h2 { font:15px/1.25 var(--body); margin:4px 0 0; overflow-wrap:break-word; }
.target-panel-header .icon-button { width:28px; height:28px; padding:0; font-size:20px; }
.target-selection-mode { padding:6px 7px; gap:5px; margin:0; grid-template-columns:1fr 1fr; }
.target-selection-mode label { margin:0; font:10px/1.25 var(--mono); letter-spacing:0; gap:5px; }
.target-selection-mode .icon { width:15px; height:15px; }
.target-ready-choices { gap:3px; max-height:190px; }
.target-force-choice { gap:7px; padding:6px 3px; }
.target-force-choice > span { flex:1; min-width:0; }
.target-force-choice strong { font:600 11px/1.3 var(--body); letter-spacing:0; overflow-wrap:break-word; }
.target-force-choice small { font:9px/1.35 var(--mono); margin-top:3px; }
.target-force-choice .division-health { height:4px; margin-top:4px; }
.target-missile-models { gap:4px; }
.target-missile-models .division-model { gap:7px; padding:6px; }
.target-missile-models strong { font:600 10px/1.35 var(--body); letter-spacing:0; }
.target-missile-models small { font:8px/1.35 var(--mono); margin-top:2px; }
.targeting-panel .themed-select-button { min-height:32px; padding:6px 8px; gap:7px; font-size:10px; }
.targeting-panel .themed-select-button span { overflow-wrap:break-word; }
.target-priority-controls { padding:6px 8px; margin:0; }
.target-priority-controls label { margin:0 0 4px; font-size:9px; }
.target-priority-controls p { font:8px/1.4 var(--mono); margin:5px 0 0; }
.targeting-panel [data-helper] { font-size:8px; margin:4px 0 0; }
.affiliation-control { padding:6px 0; gap:8px; margin:0; }
.affiliation-retention { flex-direction:row; gap:7px; }
.affiliation-retention .retention-dial { width:27px; height:27px; }
.affiliation-retention output { font-size:8px; min-width:48px; }
.target-transit,.target-stat-grid { margin:6px 0; gap:3px 8px; }
.target-transit > div,.target-stat-grid > div { padding:4px 0; }
.target-transit dt,.target-stat-grid dt { font-size:8px; line-height:1.3; }
.target-transit dd,.target-stat-grid dd { font-size:10px; margin:3px 0 0; }
.target-force-stats { padding:4px 0; margin:4px 0; }
.target-outcome { margin:7px 0; font-size:9px; }
.target-outcome-bar { height:7px; margin-top:5px; }
.target-plan-status { margin-top:6px; gap:3px; }
.target-plan-status .badge { padding:3px 4px; font-size:7px; }
.morale-minimal { display:flex; align-items:center; flex-wrap:wrap; gap:8px 20px; padding:11px 14px; margin-bottom:14px; }
.morale-minimal h2 { display:flex; align-items:center; gap:8px; font-size:12px; margin:0; }
.morale-minimal h2 strong { font:600 14px var(--mono); }
.morale-minimal .icon { width:18px; height:18px; }
.morale-minimal p { font:10px/1.5 var(--mono); margin:0; }
.priority-dispatches { padding:14px; }
.priority-dispatches .card-heading { margin-bottom:10px; }
.priority-dispatches .card-heading h2 { font-size:13px; }
.pinned-encounter { padding:9px 10px; margin-bottom:6px; gap:10px; border-left-width:3px; }
.pinned-encounter strong { font-size:11px; line-height:1.4; margin:3px 0; }
.pinned-encounter p { font-size:10px; line-height:1.45; }
.pinned-encounter .eyebrow { font-size:8px; }
.pinned-encounter .proposal-actions { gap:3px; }
.pinned-encounter .proposal-actions button { padding:6px 7px; min-height:30px; font-size:9px; }
.priority-notices { margin-top:10px; }
.priority-notices > summary { padding:8px 0; font-size:10px; }
.priority-notices .dispatch-item { grid-template-columns:55px minmax(0,1fr); gap:8px; padding:7px 0; }
.priority-notices .dispatch-time { font-size:8px; line-height:1.5; white-space:normal; }
.priority-notices .dispatch-item strong { font-size:10px; line-height:1.4; }
.priority-notices .dispatch-item p { font-size:9px; line-height:1.45; margin:3px 0; }
.priority-notices .dispatch-item .encounter-link { font-size:9px; padding:4px 0; min-height:24px; }
@media(pointer:coarse) {
  .unit-allocation-control .division-quantity { grid-template-columns:44px minmax(40px,1fr) 44px; }
  .unit-allocation-control .division-quantity button { width:44px; height:44px; min-height:44px; }
  .unit-potentiometer .unit-allocation-slider { height:44px; min-height:44px; }
  .target-panel-header .icon-button { width:40px; height:40px; }
  .targeting-panel .themed-select-button { min-height:42px; }
}

.resource-flow-diagram { display:grid; gap:9px; }
.resource-flow-diagram > .resource-flow { white-space:normal; margin:0; }
.resource-flow { border:1px solid #46594b; background:#15251d; padding:8px; min-width:0; }
.resource-flow h3 { display:flex; align-items:center; gap:5px; margin:0 0 7px; font:600 10px/1.4 var(--mono); }
.resource-flow h3 .icon { width:14px; height:14px; flex:none; }
.resource-flow h3 > span { margin-left:auto; font-size:9px; font-weight:400; }
.resource-flow-line { display:grid; grid-template-columns:minmax(0,1fr) 12px minmax(65px,.6fr) 12px minmax(0,1fr); gap:4px; align-items:center; }
.resource-flow small { display:block; font:7px/1.5 var(--mono); color:#b0bca2; letter-spacing:.06em; }
.flow-source > strong { font:10px/1.6 var(--mono); }
.flow-source ul { list-style:none; margin:4px 0 0; padding:0; font:8px/1.5 var(--mono); }
.flow-source li { margin-top:3px; overflow-wrap:break-word; }
.flow-source li b { display:block; font-weight:400; color:#aab990; }
.flow-source li.negative b { color:var(--danger); }
.flow-arrow { color:#97a97a; font:16px var(--mono); text-align:center; }
.flow-reserve { border:1px solid #72836a; background:linear-gradient(#26382b,#19271e); box-shadow:inset 0 0 0 2px #122117; text-align:center; padding:8px 3px; min-width:0; }
.flow-reserve > strong { display:block; font:600 11px/1.7 var(--mono); overflow-wrap:anywhere; }
.flow-reserve > span { display:block; font:7px/1.5 var(--mono); color:#b3bea6; margin-top:4px; }
.flow-consumers dl { margin:4px 0 0; font:8px/1.5 var(--mono); }
.flow-consumers dl > div { display:flex; justify-content:space-between; flex-wrap:wrap; gap:0 4px; margin-top:3px; }
.flow-consumers dt,.flow-consumers dd { margin:0; }
.flow-consumers dd { color:#d0b391; }
.flow-connections { font:8px/1.5 var(--mono); color:#b8c3a9; margin:7px 0 0; border-top:1px solid #324535; padding-top:5px; overflow-wrap:break-word; }
.flow-credit { margin:12px 0; padding:8px; border:1px solid #455747; }
.flow-credit > span { display:flex; align-items:center; gap:6px; font:10px var(--mono); }
.flow-credit .icon { width:15px; height:15px; }
.flow-credit strong { margin-left:auto; }
.flow-credit small { font:8px/1.5 var(--mono); color:var(--muted); margin-top:5px; display:block; }
.flow-grid + .flow-grid { margin-top:9px; border-top:1px solid #455847; padding-top:7px; }
.flow-grid h4 { font:9px/1.5 var(--mono); color:#c8d0b4; margin:0 0 5px; }
.flow-consumers > strong { font:10px/1.6 var(--mono); }
.flow-consumers > p { font:8px/1.5 var(--mono); margin-top:4px; }
@media(max-width:450px) { .supply-chain-panel { padding:10px; }.resource-flow { padding:6px; }.resource-flow h3 { font-size:9px; flex-wrap:wrap; }.resource-flow h3 > span { font-size:8px; }.resource-flow-line { grid-template-columns:minmax(0,1fr) 8px minmax(58px,.65fr) 8px minmax(0,1fr); gap:2px; }.flow-reserve > strong { font-size:9px; } }

.government-card { min-width:0; position:relative; }
.government-emblem { display:block; width:72px; height:72px; object-fit:contain; margin:0 auto 8px; }
.government-motto { font:italic 11px/1.4 var(--body); color:#c0b692; text-align:center; margin:3px 0 10px; }
.government-stat-list { margin:0 0 10px; font:9px/1.5 var(--mono); }
.government-stat-list > div { display:flex; justify-content:space-between; gap:8px; padding:3px 0; border-bottom:1px solid #ffffff09; }
.government-stat-list dt,.government-stat-list dd { margin:0; }
.government-stat-list dd { text-align:right; white-space:nowrap; }
.government-restriction { font:9px/1.5 var(--mono); color:#d7c19e; border:1px solid #7b7052; padding:5px; }
button.operation-confirm { position:relative; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; width:100%; min-height:76px; overflow:hidden; border-radius:1px; margin-top:3px; padding:10px 12px; text-align:left; }
.operation-confirm-code { display:block; font:7px/1.5 var(--mono); letter-spacing:.13em; }
.operation-confirm > strong { display:block; font:600 11px/1.5 var(--mono); margin:4px 0; }
.operation-confirm-authority { display:block; font:8px/1.5 var(--mono); letter-spacing:0; overflow-wrap:anywhere; }
button.written-order { color:#3c3a2b; border:1px solid #b0aa88; border-top:2px solid #5a6549; background:repeating-linear-gradient(0deg,#d3ccb0 0,#d3ccb0 3px,#d7d0b6 3px,#d7d0b6 4px); box-shadow:inset 0 -3px #aaa381,inset 1px 0 #efead2; }
button.written-order:hover:enabled { color:#2e3225; background:#e0d9bd; border-color:#d9d0ad; }
button.written-order:not(.order-stamped):not(.order-transmitting):hover:enabled { cursor:var(--stamp-cursor),pointer; }
button.written-order.order-stamped { cursor:auto; padding-right:84px; }
button.written-order.order-stamped:disabled { opacity:1; }
.order-imprint { position:absolute; right:10px; top:4px; width:68px; height:68px; object-fit:contain; opacity:.78; transform:rotate(-9deg); filter:sepia(1) saturate(8) hue-rotate(307deg) brightness(.7); mix-blend-mode:multiply; pointer-events:none; }
button.missile-confirm { min-height:74px; border:3px solid #252722; border-top-color:#626152; border-bottom-color:#111612; color:#ffe6c1; background:linear-gradient(#a64235,#812d25 65%,#58231e); box-shadow:inset 0 1px #d98259,inset 0 -4px #431915,0 0 0 1px #8a7d61; padding-left:15px; }
button.missile-confirm:hover:enabled { background:linear-gradient(#b74b3d,#973629); border-color:#a08b6a; }
button.missile-confirm:active:enabled { background:#6e2b24; box-shadow:inset 0 3px 5px #351410; }
.missile-confirm::before { content:''; position:absolute; top:9px; bottom:9px; left:4px; width:3px; background:repeating-linear-gradient(0deg,#dbbb70 0,#dbbb70 5px,#473625 5px,#473625 8px); }
.missile-confirm .operation-confirm-code { color:#f0bc8a; }

/* Rotary array allocation keeps native range keyboard semantics. */
.sensor-dials { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:10px 0; }
.sensor-gain-label { font:8px/1.5 var(--mono); margin-top:10px; color:#bac5a8; }
.sensor-dial-module { display:grid; grid-template-columns:78px minmax(0,1fr); gap:6px 10px; min-width:0; padding:8px 0; border-top:1px solid #53654e; }
.sensor-dial-module > label { grid-column:1 / -1; display:flex; align-items:center; gap:5px; font:9px/1.5 var(--mono); text-transform:uppercase; margin:0; }
.sensor-dial-module > label .icon { width:17px; height:17px; }
.sensor-dial-module output { margin-left:auto; white-space:nowrap; }
.radar-knob { width:78px; height:78px; position:relative; align-self:center; }
.radar-knob-face { position:absolute; inset:15px; display:block; border:1px solid #92a082; border-radius:50%; background:repeating-conic-gradient(#233126 0 9deg,#314033 9deg 18deg); box-shadow:inset 0 2px 3px #c3ccae40,inset 0 -4px 5px #09130b,0 3px 5px #000a; }
.radar-knob-face::before { content:''; position:absolute; inset:4px; border:1px solid #142319; border-radius:50%; background:radial-gradient(circle at 40% 30%,#53604a,#243025); }
.radar-knob-face > i { position:absolute; width:3px; height:13px; left:calc(50% - 1.5px); top:3px; background:#d3d1a5; box-shadow:0 0 0 1px #172015; transform:rotate(var(--dial-angle)); transform-origin:50% 20px; }
.radar-point-leds { position:absolute; inset:0; pointer-events:none; }
.radar-point-leds > i { position:absolute; left:calc(50% - 2.5px); top:calc(50% - 2.5px); width:5px; height:5px; border:1px solid #6d8065; border-radius:50%; background:#15251a; transform:rotate(var(--point-angle)) translateY(-34px); box-shadow:inset 0 1px 2px #000a; }
.radar-point-leds > i.lit { background:#bed698; border-color:#c4d7a8; box-shadow:inset 0 1px #f0f2be70,0 0 3px #acd77f70; }
.sensor-sea .radar-point-leds > i.lit { background:#d2b975; border-color:#d9c79d; box-shadow:inset 0 1px #f0e2af70,0 0 3px #dab77d60; }
.radar-knob input[type="range"] { position:absolute; inset:0; width:100%; height:100%; min-height:0; margin:0; padding:0; opacity:0; cursor:ns-resize; touch-action:none; }
.radar-knob:focus-within { outline:2px solid var(--cyan); outline-offset:2px; border-radius:50%; }
.radar-knob:has(input:disabled) { opacity:.4; }
.sensor-installations { grid-column:1 / -1; font:8px/1.5 var(--mono); }
.radar-strength.morale-instrument { min-width:0; width:100%; max-width:140px; box-sizing:border-box; margin:0; padding:3px 5px 27px; align-self:center; }
.radar-strength svg { max-height:66px; }
.radar-strength > strong { bottom:15px; font-size:13px; }
.radar-strength > strong small { font-size:8px; }
.radar-strength > span { position:absolute; bottom:4px; left:0; right:0; text-align:center; font:7px/1.2 var(--mono); color:#a7b79a; }
.radar-strength:focus-visible { outline:2px solid var(--cyan); outline-offset:2px; }
.sensor-channels { display:flex; flex-wrap:wrap; gap:6px; padding:7px 9px; }
.sensor-channels i { width:8px; height:8px; padding:0; border-radius:50%; font-size:0; flex:none; transition:background-color 180ms,border-color 180ms; }
.sensor-channels .channel-air { background:#b2cf8f; border-color:#c9d7a6; box-shadow:inset 0 1px #f2ebbb60,0 0 3px #b4d28240; }
.sensor-channels .channel-sea { background:#c4a46c; border-color:#d8bd89; box-shadow:inset 0 1px #eadbb260,0 0 3px #cfb66c40; }
.sensor-command-row { flex-wrap:wrap; }
.sensor-presets { gap:4px; }
.sensor-presets button,.sensor-command-row button { min-height:32px; padding:6px 8px; border-radius:2px; }
.mission-inventory .division-model-name strong { display:block; font:600 11px/1.45 var(--body); overflow-wrap:break-word; }
.mission-inventory .division-model-name small { font:8px/1.5 var(--mono); margin-top:3px; }
.mission-inventory .division-model { gap:8px; padding:8px 0; }
.mission-inventory .inventory-selected { background:#b5c68c09; }
.intel-cost-resources { display:flex; flex-wrap:wrap; gap:5px 12px; }
#intel-mission-cost { display:block; padding:7px 0; border-top:1px solid #53674c; border-bottom:1px solid #53674c; }
#intel-mission-cost span[data-resource],.scan-supplies span { font:10px/1.6 var(--mono); white-space:normal; overflow-wrap:break-word; }
.intel-cost-duration { font:9px/1.6 var(--mono); color:#d3d4ac; margin:5px 0 0; }
.intel-cost-duration > span { color:#a1b091; }
.scan-supplies { margin-top:4px; font:8px/1.5 var(--mono); }
.bonus-chip small { display:block; color:#a1ae92; font:7px/1.5 var(--mono); }
.read-acknowledgement { padding:7px 0; color:#c7ba95; font-size:9px; }
button.operation-confirm.order-transmitting { cursor:auto; }
.targeting-panel button,.division-quantity button { box-sizing:border-box; border-radius:2px; }
.target-panel-header .icon-button { min-height:28px; flex-shrink:0; }
.target-force-choice { align-items:flex-start; }
.target-force-choice input { margin-top:3px; }
.target-force-choice strong { text-transform:none; white-space:normal; word-break:normal; }
.division-model-name strong { overflow-wrap:break-word; }
.force-card .force-ident [data-unit-art] { width:64px; height:64px; }
.unit-detail .force-ident [data-unit-art] { width:128px; height:128px; }
.unit-detail .force-ident { flex-wrap:wrap; }
@media(max-width:650px) { .sensor-dials { grid-template-columns:minmax(0,1fr); gap:3px; }.sensor-dial-module { grid-template-columns:78px minmax(0,1fr); }.radar-strength.morale-instrument { max-width:170px; }.sensor-dial-module > label { font-size:10px; } }
@media(pointer:coarse) { .sensor-presets button,.sensor-command-row button,.pinned-encounter .proposal-actions button { min-height:42px; }.target-panel-header .icon-button { min-height:40px; } }
@media(prefers-reduced-motion:reduce) { .sensor-channels i { transition:none; } }
body[data-motion="off"] .sensor-channels i { transition:none; }

/* Stock instruments use icon + integer; description terms remain accessible. */
.resources-strip { margin:0 0 16px; padding:0; border-radius:5px; }
.resource { min-width:0; padding:10px 9px; position:relative; }
.resource-name { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.resource-reading { display:flex; align-items:center; gap:8px; margin:0; min-width:0; }
.resource-reading > .resource-icon { width:36px; height:36px; flex:none; }
.resource-stock { display:flex; flex-direction:column; min-width:0; gap:3px; }
.resource-stock .resource-value { margin:0; font:500 clamp(16px,1.7vw,24px)/1.2 var(--mono); letter-spacing:-.6px; overflow-wrap:anywhere; }
.resource-stock .resource-flow { margin:0; font:9px/1.4 var(--mono); white-space:normal; }
.resource:focus-visible { outline:2px solid var(--cyan); outline-offset:-3px; }

/* The generated tier is a sibling of each replaceable unit portrait. */
.icon.unit-icon { position:relative; display:inline-block; overflow:visible; background:none; }
.unit-icon > .unit-portrait { position:absolute!important; inset:0; width:100%!important; height:100%!important; margin:0!important; }
.unit-icon > img.tier-badge { position:absolute; z-index:1; right:0; bottom:0; width:42%; height:42%; min-width:8px; min-height:8px; max-width:34px; max-height:34px; box-sizing:border-box; margin:0; padding:0; border:0; background:transparent; object-fit:contain; pointer-events:none; }
.force-card .force-ident > .unit-icon { width:64px; height:64px; }
.unit-detail .force-ident > .unit-icon { width:128px; height:128px; }
.unit-detail .unit-icon > img.tier-badge { max-width:48px; max-height:48px; }
.division-model-name > .unit-icon { width:32px; height:32px; float:left; margin-right:7px; }
.division-composition .chip { display:inline-flex; align-items:center; gap:6px; white-space:normal; }
.division-composition .unit-icon { width:24px; height:24px; }
.research-node-tiers { display:flex; align-items:center; margin-left:auto; gap:2px; }
.research-tier-badge { width:24px; height:24px; object-fit:contain; flex:none; }
.research-node-tiers .research-tier-badge { width:19px; height:19px; }
.research-unlock-group > div { display:flex; align-items:center; flex-wrap:wrap; gap:5px 7px; }
.research-unlock-group > div .mono { margin-left:auto; font-size:8px; }
.research-unlock-models { display:grid; grid-template-columns:minmax(0,1fr); gap:3px; list-style:none; padding:0; margin:5px 0 10px; }
.research-unlock-models button { display:flex; align-items:center; gap:7px; width:100%; min-height:36px; padding:4px 6px; text-align:left; font:10px/1.5 var(--mono); }
.research-unlock-models .unit-icon { width:28px; height:28px; }
.research-unlock-models button > span:last-child { min-width:0; overflow-wrap:anywhere; }

/* Static phosphor and shallow glass borders keep the three dispatches legible. */
.crt-display { border:1px solid #5a7258; border-radius:7px / 5px; background:repeating-linear-gradient(0deg,#9cc77f04 0,#9cc77f04 1px,transparent 1px,transparent 3px),#07110c; box-shadow:inset 0 0 0 2px #030b07,inset 0 0 18px #24392135; color:#c2d5a9; }
.recent-dispatches { margin-top:10px; padding:7px 10px; }
.recent-dispatches h3 { display:flex; align-items:center; justify-content:space-between; gap:8px; margin:0 0 3px; color:#b3c99d; font:9px/1.5 var(--mono); text-transform:uppercase; }
.recent-dispatches h3 .mono { color:#829b77; font-size:8px; }
.recent-dispatches .dispatch-item { display:grid; grid-template-columns:58px minmax(0,1fr); gap:7px; padding:5px 0; border-bottom:1px solid #28432c; }
.recent-dispatches .dispatch-item:last-child { border-bottom:0; }
.recent-dispatches .dispatch-time { color:#8da17c; font:8px/1.5 var(--mono); }
.recent-dispatches .dispatch-item > div { min-width:0; }
.recent-dispatches .dispatch-item strong { display:block; color:#c0d6aa; font:500 10px/1.5 var(--mono); overflow-wrap:anywhere; }
.recent-dispatches .dispatch-item p { margin:1px 0 0; color:#9ab78a; font:9px/1.5 var(--mono); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.recent-dispatches .encounter-open { width:auto; min-height:28px; margin:3px 0 0; padding:3px 7px; font-size:9px; }
.recent-dispatches .encounter-open .icon { width:13px; height:13px; }
.crt-empty { margin:5px 0 0; font:10px/1.5 var(--mono); color:#9ab78a; }
.atlas,.island-panel,.model-visual,.battle-replay { border-radius:7px / 5px; }
.sensor-dial-module { padding:7px 8px; border:1px solid #40553d; border-radius:4px; background:#0b181180; }
.sensor-dial-module > label { flex-wrap:wrap; font-size:10px; letter-spacing:0; }
.sensor-dial-module output { color:#d2dabb; }
.sensor-gain-label { font-size:9px; line-height:1.6; }
.sensor-installations { font-size:9px; }
.radar-strength > span { font-size:8px; }
.radar-strength[data-reading="off"],.radar-strength[data-reading="unavailable"] { color:#91a484; }
.division-card > .row { flex-wrap:wrap; }
.division-card > .row > .row { min-width:0; flex:1 1 240px; flex-wrap:wrap; gap:6px 8px; }
.division-card h3 { flex:1 1 150px; max-width:100%; margin:0; white-space:normal; overflow-wrap:anywhere; font:600 13px/1.55 var(--mono); }
.division-card .division-health-summary { flex:1 1 100%; margin:0; }
.division-card .division-health { flex:1 1 100%; margin:0; }
.target-force-choice > span { min-width:0; flex:1; }
.target-force-choice strong { overflow-wrap:anywhere; }
.target-selection-mode label { min-height:32px; }
@media(max-width:650px) {
  .resource-reading { gap:6px; }.resource-reading > .resource-icon { width:32px; height:32px; }
  .resource { padding:9px 7px; }.resource-stock .resource-value { font-size:17px; letter-spacing:-.6px; }
  .resource-stock .resource-flow { font-size:8px; }.sensor-dial-module { padding:7px; }
}
@media(max-width:380px) { .resource-reading > .resource-icon { width:29px; height:29px; }.resource-stock .resource-value { font-size:14px; }.resource-reading { gap:4px; }.resource { padding:8px 5px; } }
@media(pointer:coarse) { .recent-dispatches .encounter-open,.research-unlock-models button,.target-selection-mode label { min-height:44px; } }

/* Alpha.5 command instruments: compact readings, curved glass and stable forms. */
.resource-reading { display:grid; grid-template-columns:auto minmax(0,1fr); column-gap:7px; row-gap:2px; align-items:center; }
.resource-stock { display:contents; }
.resource-reading > .resource-icon { grid-column:1; grid-row:1; }
.resource-stock .resource-value { grid-column:2; grid-row:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; overflow-wrap:normal; font-size:clamp(14px,1.6vw,22px); }
.resource-stock .resource-flow { grid-column:2; grid-row:2; line-height:1.2; }
.resources-strip .resource-flow { padding:0; border:0; background:none; display:block; }
.radar-glass { position:relative; min-width:0; overflow:hidden; border:1px solid #53634c; border-radius:28px / 21px; background:#08120d; box-shadow:inset 0 0 0 3px #060e09,inset 0 0 35px #05100db0; }
.radar-glass::after,.crt-display::after { content:""; position:absolute; inset:0; pointer-events:none; border-radius:inherit; box-shadow:inset 0 0 0 2px #030a06,inset 0 0 0 3px #a9bba524,inset 0 14px 30px -20px #d3e7c747,inset 0 -18px 26px -22px #d1e8c236; background:radial-gradient(ellipse at 48% 28%,transparent 50%,#040d0850 100%); }
.radar-station .map-wrap { border:0; margin:8px; box-shadow:none; }
.radar-glass .map-canvas { border-radius:inherit; }
.crt-display { position:relative; isolation:isolate; border-radius:19px / 13px; border-color:#53644d; box-shadow:inset 0 0 0 2px #030b07,inset 0 0 22px #0d211380; }
.recent-dispatches { padding:9px 13px; }
.radar-contact-name { display:flex; align-items:center; gap:6px; min-width:0; overflow-wrap:anywhere; }
.radar-name-flag { display:inline-block; flex:none; width:25px; height:17px; border:1px solid #65775b; vertical-align:middle; }
.island-picker label { display:flex; gap:5px; align-items:center; }
.radar-array-counts { display:block; color:#a9baa0; font:8px/1.5 var(--mono); margin-top:3px; }
.radar-knob input,.retention-dial input { touch-action:none; }
.division-class-tabs { display:flex; flex-wrap:wrap; gap:3px; margin:0 0 9px; }
.division-class-tabs .filter { min-height:32px; padding:5px 8px; font-size:9px; }
.division-model-name { display:flex; align-items:center; gap:7px; min-width:0; }
.division-model-name > div { min-width:0; }
.unit-tier-pair { display:inline-flex; align-items:center; gap:3px; flex:none; }
.unit-tier-pair > .unit-icon { width:31px; height:31px; }
.unit-tier-pair .paired-tier-badge { width:19px; height:19px; object-fit:contain; image-rendering:auto; }
.division-card .division-health-summary { flex:0 1 auto; margin:0; font-size:9px; }
.division-card .division-health { flex:0 1 120px; width:120px; max-width:160px; height:4px; margin:0; }
.division-card .division-composition { gap:4px 7px; margin:8px 0; }
.division-composition .chip { padding:3px 5px; font-size:9px; line-height:1.4; }
.organization-form .division-unit-choices { max-height:410px; }
.organization-form .division-model { gap:7px; padding:8px 0; }
.division-selection-total { white-space:normal; }
.resource-command-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(380px,1fr); gap:15px; align-items:start; }
.resource-command-layout .stock-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px; margin:0; }
.resource-command-layout .stock-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px 7px; padding:8px 9px; min-width:0; }
.resource-command-layout .stock-item > span:first-child { display:flex; align-items:center; gap:4px; grid-column:1; grid-row:1; font-size:8px; min-width:0; white-space:normal; }
.resource-command-layout .stock-item .icon { width:17px; height:17px; flex:none; }
.resource-command-layout .stock-item > strong { grid-column:2; grid-row:1; margin:0; font-size:16px; white-space:nowrap; }
.resource-command-layout .stock-item > span:last-child { grid-column:1 / -1; text-align:right; font-size:9px; }
.resource-command-layout .energy-grid { min-width:0; margin:0 0 15px; padding:12px; }
.resource-command-layout .grid-island { padding:9px 0; }
.resource-command-layout .grid-readouts { gap:5px; }
.resource-command-layout .grid-readouts strong { font-size:14px; }
.resource-command-layout .grid-readouts span { font-size:8px; }
.resource-command-layout .energy-grid table { font-size:9px; }
.resource-command-layout .energy-grid th,.resource-command-layout .energy-grid td { padding:7px 5px; }
.stockpile-table { width:100%; table-layout:fixed; }
.stockpile-table caption { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.stockpile-table > tbody > tr > th { width:55px; vertical-align:top; padding:12px 5px 8px 0; font:9px/1.5 var(--mono); text-transform:uppercase; white-space:normal; }
.stockpile-table > tbody > tr > td { padding:5px 0 7px; }
.stockpile-cells { display:flex; flex-wrap:wrap; gap:5px; }
.stockpile-cell { position:relative; display:grid; place-items:center; flex:none; width:73px; height:68px; min-height:44px; padding:4px 6px 12px; border:1px solid #485b40; border-radius:3px; background:#16241a; }
.stockpile-cell .stockpile-unit-icon { width:49px; height:49px; }
.stockpile-cell .tier-badge { width:17px; height:17px; }
.stockpile-quantity { position:absolute; right:4px; bottom:3px; font:600 12px/1 var(--mono); color:#d5dfc3; padding:2px 3px; background:#101a12e8; border-radius:2px; }
.stockpile-reserved { position:absolute; left:3px; top:3px; font:7px/1.2 var(--mono); color:#d8c298; background:#111b13e8; padding:2px; }
.stockpile-cell:focus-visible { outline:2px solid #cbdbb2; outline-offset:2px; }
.production-stockpiles > .card-heading { flex-wrap:wrap; gap:7px; }
.report-building-observations { margin:12px 0; border-top:1px solid #4a5f46; }
.report-building-observations > summary { padding:10px 0; cursor:pointer; color:#c7d5b6; font:600 11px/1.5 var(--mono); }
.report-building-observations > .table-wrap { margin-top:3px; }
.nation-profiles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.nation-profile { padding:16px; min-width:0; display:flex; flex-direction:column; }
.nation-profile.own-nation { border-color:#758367; }
.nation-profile-heading { display:flex; align-items:flex-start; gap:11px; }
.nation-profile-heading > div { min-width:0; flex:1; }
.nation-profile-heading h3 { margin:0 0 3px; font:600 16px/1.3 var(--mono); overflow-wrap:anywhere; }
.nation-profile-heading p { margin:3px 0; font-size:9px; }
.nation-profile-heading .badge { font-size:8px; white-space:normal; max-width:90px; }
.nation-profile .nation-description { font:14px/1.6 var(--body); margin:14px 0; color:#d1dbc4; }
.nation-profile .nation-description.muted { color:var(--muted); font-size:12px; }
.nation-profile .polity-commitments { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0 0 12px; }
.nation-profile-actions { display:flex; flex-wrap:wrap; gap:7px 14px; padding-top:11px; margin-top:auto; border-top:1px solid #46563e; }
.nation-profile-actions > div { display:flex; flex-wrap:wrap; align-items:center; gap:5px; }
.nation-profile-actions button { min-height:34px; padding:6px 8px; font-size:10px; }
.nation-profile-editor > .row { margin-bottom:16px; gap:10px; }
.nation-profile-editor .nation-overview-editor { padding:0; margin:0; }
.nation-profile-editor textarea { min-height:120px; font:14px/1.6 var(--body); }
.order-imprint-anchor { position:absolute; left:var(--stamp-x,50%); top:var(--stamp-y,50%); width:74px; height:74px; transform:translate(-50%,-50%); pointer-events:none; }
.operation-confirm .order-imprint-anchor .order-imprint { position:static; width:100%; height:100%; transform:rotate(-9deg); }
.settings-buttons .recovery-code { width:100%; overflow-wrap:anywhere; box-sizing:border-box; }
@media(max-width:1100px) { .resource-command-layout { grid-template-columns:minmax(0,1fr); }.resource-command-layout .stock-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:760px) { .nation-profiles { grid-template-columns:minmax(0,1fr); }.resource-command-layout .stock-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:450px) { .resource-command-layout .stock-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.radar-glass { border-radius:20px / 15px; }.radar-station .map-wrap { margin:5px; }.crt-display { border-radius:16px / 11px; }.recent-dispatches { padding:8px 10px; }.division-card .division-health { flex-basis:90px; width:90px; }.stockpile-table > tbody > tr > th { width:43px; font-size:8px; }.stockpile-cell { width:67px; height:65px; }.nation-profile { padding:12px; }.nation-profile-heading { gap:8px; flex-wrap:wrap; }.nation-profile-heading .diplomatic-flag { width:51px; height:34px; }.nation-profile-heading h3 { font-size:14px; }.nation-profile .nation-description { font-size:13px; }.nation-profile .polity-commitments { grid-template-columns:1fr; } }
@media(pointer:coarse) { .division-class-tabs .filter,.nation-profile-actions button,.report-building-observations > summary { min-height:44px; }.unit-allocation-control .unit-allocation-slider { min-height:30px; } }

/* Alpha.6 equipment consoles: engraved banks and centered stock instruments. */
.resources-strip { grid-template-columns:repeat(9,minmax(0,1fr)); }
.resource { display:grid; place-items:center; padding:8px 5px; min-height:61px; box-sizing:border-box; }
.resource-reading { grid-template-columns:30px minmax(0,1fr); column-gap:5px; width:100%; max-width:135px; margin-inline:auto; }
.resource-reading > .resource-icon { width:30px; height:30px; justify-self:center; }
.resource-stock .resource-value { text-align:center; font-size:clamp(12px,1.2vw,18px); letter-spacing:-.4px; }
.resource-stock .resource-flow { grid-column:1 / -1; text-align:center; min-height:12px; font-size:8px; }
.resource-flow-spacer { visibility:hidden; }
.military-console { min-width:0; color:#c7d2b7; border:1px solid #56614b; border-radius:4px; background:linear-gradient(#263123,#172219); box-shadow:inset 0 1px #b4b98c24,inset 0 -1px #060e0980; container-type:inline-size; container-name:sensor-console; }
.military-console > summary,.military-console > .card-heading { display:flex; align-items:center; gap:8px; padding:10px 12px; margin:0; border-bottom:1px solid #0c170e; background:#1b281e; font:600 11px/1.5 var(--mono); text-transform:uppercase; }
.military-console > summary { cursor:pointer; }
.military-console > summary > .icon { width:23px; height:23px; flex:none; }
.military-console > summary > span { min-width:0; flex:1; }
.military-console > summary small { display:block; color:#9aaf8f; font:9px/1.5 var(--mono); text-transform:none; }
.console-status { color:#b6cda0; font:8px/1.5 var(--mono); letter-spacing:.04em; }
.military-console .radar-budget { padding:10px; }
.console-header { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:8px; }
.console-header .eyebrow { color:#b4c5a4; font-size:8px; }
.console-header button { min-height:30px; padding:4px 6px; font-size:8px; }
.console-channel-bank { padding:7px 9px; border:1px solid #43503c; background:#0e1b13; box-shadow:inset 0 1px 3px #050b0850; }
.console-channel-bank .sensor-channel-label { margin:0; font:9px/1.5 var(--mono); }
.console-channel-bank .sensor-channels { padding:6px 0 0; margin:0; gap:5px; }
.military-console .sensor-dials { gap:8px; margin:8px 0; }
.military-console .sensor-dial-module { grid-template-columns:84px minmax(0,1fr); align-items:center; gap:6px 8px; padding:9px 8px; border-radius:2px; border:1px solid #546045; background:#131f15; }
.military-console .sensor-dial-module > label { align-items:center; font:600 9px/1.5 var(--mono); gap:5px; padding-bottom:6px; border-bottom:1px solid #435039; }
.military-console .sensor-dial-module output { color:#d7dfb8; margin-left:auto; }
.sensor-knob-bank { display:grid; justify-items:center; gap:4px; }
.sensor-knob-bank small { color:#9faf8c; font:7px/1.5 var(--mono); text-align:center; }
.military-console .sensor-installations { font:8px/1.5 var(--mono); padding-top:6px; border-top:1px solid #38482f; text-align:center; }
.receiver-meter { display:grid; justify-items:center; min-width:0; padding:6px 5px; border:1px solid #778264; border-radius:3px; background:#0a160f; box-shadow:inset 0 1px 4px #050b0880; }
.receiver-meter-label { color:#b0c298; font:7px/1.5 var(--mono); letter-spacing:.06em; }
.receiver-meter svg { display:block; width:100%; max-width:150px; overflow:visible; }
.receiver-meter .morale-scale { fill:none; stroke:#9bad82; stroke-width:2; }
.receiver-meter .morale-ticks { stroke:#9cad82; stroke-width:1; fill:none; }
.receiver-meter text { font:8px var(--mono); fill:#adb99c; text-anchor:middle; }
.receiver-meter .morale-needle { fill:#d4bd86; }
.receiver-meter .morale-pivot { fill:#6a7756; stroke:#bbbc98; }
.receiver-needle { transform-box:view-box; transform-origin:75px 72px; }
.receiver-meter > strong { color:#d5dfa9; display:flex; align-items:baseline; justify-content:center; gap:4px; font:500 clamp(13px,1.2vw,19px)/1.2 var(--mono); letter-spacing:-.4px; min-height:23px; }
.receiver-meter > strong small { color:#abbd93; font:8px/1.3 var(--mono); }
.receiver-capacity,.receiver-meter .radar-array-counts { font:7px/1.5 var(--mono); color:#9eae8b; text-align:center; }
.receiver-meter[data-receiver-state="off"] > strong,.receiver-meter[data-receiver-state="standby"] > strong,.receiver-meter[data-receiver-state="unavailable"] > strong { color:#8d9e80; font-size:11px; }
.receiver-meter:focus-visible { outline:2px solid #c6d5ae; outline-offset:2px; }
.console-command-bank { border:1px solid #46533d; background:#1a291c; padding:8px; }
.console-command-bank .sensor-presets { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; margin:0 0 7px; }
.console-command-bank .sensor-presets button { font-size:8px; min-height:30px; padding:4px; }
.console-command-bank .sensor-command-row { display:flex; justify-content:space-between; gap:6px; padding-top:7px; border-top:1px solid #42523b; }
.console-command-bank .sensor-command-row button { font-size:9px; }
.console-command-bank #radar-allocation-status { font:8px/1.5 var(--mono); max-width:150px; }
.console-footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:5px 10px; font:7px/1.5 var(--mono); color:#9fae8b; margin-top:9px; }
.building-recipes { margin:11px 0; padding:8px 0; border-top:1px solid #47533d; border-bottom:1px solid #47533d; }
.building-recipe-line { display:grid; grid-template-columns:62px minmax(0,1fr); gap:6px; color:#b3ce9a; font:10px/1.6 var(--mono); }
.building-recipe-line > strong { color:#a4c58b; font-weight:600; }
.building-recipes > small { display:block; margin-top:5px; font-size:8px; }
.cost .cost-label { font:8px/1.6 var(--mono); letter-spacing:.08em; color:#b2c0a3; background:none; border:0; padding:3px 0; }
.cost .cost-missing { color:#f0a49b; border-color:#986252; background:#39251d; }
.intel-command-console { padding:0; overflow:hidden; }
.intel-command-console > form { padding:12px; }
.intel-command-console .card-heading h2 { font:600 11px/1.5 var(--mono); }
.intel-command-console .card-heading .icon { width:21px; height:21px; }
.intel-control-bank { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:10px; border:1px solid #49563e; background:#112016; }
.intel-control-bank > div:last-child { grid-column:1 / -1; }
.intel-command-console label,.intel-command-console legend { font-size:9px; letter-spacing:.04em; }
.intel-command-console .unit-fieldset { padding:9px; border-color:#49563e; background:#112016; }
.intel-command-console .note { margin:0; font-size:10px; }
.intel-mission-preview { min-height:50px; padding:9px; border:1px solid #495c42; background:#0d1c12; font:10px/1.6 var(--mono); }
.intel-mission-preview > p { margin:0; }
.intel-plan-readouts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px; margin:0 0 7px; }
.intel-plan-readouts > div { min-width:0; padding:5px 7px; border:1px solid #364b32; }
.intel-plan-readouts dt { font-size:7px; color:#9ead91; text-transform:uppercase; }
.intel-plan-readouts dd { margin:2px 0 0; font:500 12px/1.5 var(--mono); color:#d0dbb5; overflow-wrap:anywhere; }
.intel-plan-risk { margin:6px 0; }
.intel-plan-risk > div { display:flex; justify-content:space-between; gap:8px; border-bottom:1px solid #35452e; padding:4px 0; }
.intel-plan-risk dt { color:#a6b599; font-size:9px; }
.intel-plan-risk dd { margin:0; white-space:nowrap; color:#d0daba; }
.intel-uncertainty,.intel-travel-note { margin:6px 0 0!important; font-size:9px; color:#a9bb98; }
.procurement-facilities { margin:0 0 15px; padding:10px 12px; }
.procurement-facilities > summary { font:600 10px/1.6 var(--mono); cursor:pointer; }
.procurement-facility-register { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:10px; }
.procurement-facility-register article { min-width:0; }
.procurement-facility-register h3 { display:flex; align-items:center; gap:5px; margin:10px 0 0; font:600 11px/1.5 var(--mono); }
.procurement-facility-register h3 .icon { width:23px; height:23px; flex:none; }
.procurement-facility-register .building-recipes { margin:6px 0; }
.signup-reconciliation-note { margin:8px 0; color:#d8cfa4; font:11px/1.5 var(--mono); }
.join-form .signup-invite-field { grid-column:1 / -1; }
@container sensor-console (max-width:430px) { .military-console .sensor-dials { grid-template-columns:minmax(0,1fr); }.console-command-bank .sensor-presets { grid-template-columns:repeat(2,minmax(0,1fr)); }.receiver-meter > strong { font-size:19px; } }
@media(max-width:1100px) { .resources-strip { grid-template-columns:repeat(3,minmax(0,1fr)); }.resource { padding:7px 6px; }.resource-reading { max-width:145px; }.resource-stock .resource-value { font-size:17px; } }
@media(max-width:450px) { .resource-stock .resource-value { font-size:15px; }.military-console .radar-budget { padding:8px; }.military-console > summary { padding:9px; }.intel-command-console > form { padding:9px; }.intel-control-bank { grid-template-columns:minmax(0,1fr); gap:8px; }.intel-control-bank > div:last-child { grid-column:auto; } }
@media(pointer:coarse) { .console-command-bank .sensor-presets button,.console-command-bank .sensor-command-row button,.console-header button { min-height:44px; } }
