/* RTS command deck. Load after style.css; all existing IDs and controls are retained. */
:root {
  --hud-height: 238px;
  --realm-width: 284px;
  --map-width: 238px;
  --hud-gap: 8px;
  --panel: #191d1bf5;
  --line: #88795166;
  --text: #f0eee3;
  --muted: #b8bcad;
  --gold: #d7bb7a;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
body { font-size: 14px; }
button, input, select, textarea { font: inherit; }
button { border-radius: 2px; padding: 6px 9px; background: #30372d; border-color: #85856b55; transition: background-color .12s, border-color .12s; }
button:hover:not(:disabled) { background: #46503d; border-color: #d7bb7ab3; }
button:active:not(:disabled) { background: #655637; }
button:disabled { opacity: .48; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, a:focus-visible { outline: 2px solid #f0cf79; outline-offset: 2px; }
[hidden] { display: none !important; }
.topbar {
  min-height: 60px; height: 60px; padding: 6px 14px; gap: 16px;
  background: linear-gradient(180deg, #30352c, #191f1d);
  border-bottom: 2px solid #a28a535e; box-shadow: 0 2px 8px #0005;
}
.brand { min-width: 190px; gap: 9px; }
.brand strong { font-family: Georgia, serif; font-size: 17px; letter-spacing: .08em; }
.brand small { display: block; margin-top: 2px; font-size: 10px; color: #b5b59e; }
.crest { width: 30px; height: 36px; font-size: 25px; border-radius: 1px 1px 8px 8px; }
.resources { flex: 1; justify-content: center; gap: clamp(10px, 2.4vw, 35px); min-width: 0; }
.resource { gap: 6px; }
.resource b { font-size: 17px; font-weight: 700; min-width: 30px; font-variant-numeric: tabular-nums; }
.resource small { display: block; font-size: 10px; line-height: 1.2; color: #b8bfaa; }
.resource .symbol { font-size: 21px; }
.identity { gap: 6px; font-size: 11px; flex-shrink: 0; }
.identity button { min-width: 30px; min-height: 32px; padding: 5px 8px; font-size: 13px; }
.panel {
  border-radius: 2px; border-color: #9b88535c;
  background: linear-gradient(135deg, #2a3028fa, #171d1bfa);
  box-shadow: 0 2px 12px #0006, inset 0 1px #e4d2a21c;
  backdrop-filter: none;
}
.realm-panel, .selection-panel, .minimap-panel {
  top: auto; bottom: var(--hud-gap); height: var(--hud-height); max-height: var(--hud-height); z-index: 3;
  scrollbar-width: thin; scrollbar-color: #998b62 #1c241d;
  overscroll-behavior: contain;
}
.realm-panel {
  left: var(--hud-gap); width: var(--realm-width); padding: 10px;
  display: flex; flex-direction: column; gap: 7px; overflow-y: auto;
}
.realm-panel > * { flex-shrink: 0; }
.realm-panel .panel-heading { order: 0; min-height: 22px; }
.realm-panel .panel-heading .eyebrow { font-size: 10px; letter-spacing: .12em; }
.realm-panel #home { padding: 0 7px; min-width: 28px; min-height: 25px; font-size: 18px; }
.realm-panel h2 { order: 1; margin: 0; font-family: Georgia, serif; font-size: 19px; line-height: 1.15; overflow-wrap: anywhere; }
.realm-panel h2[data-faction]::after { display: inline; font: 600 10px system-ui, sans-serif; letter-spacing: .08em; margin: 0 0 0 9px; }
.quick-select { order: 2; display: flex; gap: 5px; margin: 0; }
.quick-select button { flex: 1; font-size: 12px; min-height: 30px; padding: 4px 6px; }
kbd { font-family: system-ui, sans-serif; font-size: 10px; border-color: #c5ba8c40; color: #c9cdbb; }
#build-menu { order: 3; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; }
#build-menu .section-label { grid-column: 1 / -1; margin: 2px 0; font-size: 10px; letter-spacing: .12em; color: #d2c59e; }
.build-card { min-width: 0; min-height: 53px; padding: 6px; gap: 6px; margin: 0; background: linear-gradient(#353c31, #262e26); align-items: flex-start; }
.build-icon { display: grid; flex: 0 0 23px; width: 23px; height: 28px; font-size: 21px; border: 1px solid #ad956734; border-radius: 1px; background: #121b1790; }
.build-card > span:last-child { min-width: 0; }
.build-card strong { display: block; font-size: 11px; line-height: 1.2; overflow-wrap: anywhere; }
.build-card small { margin-top: 4px; font-size: 10px; line-height: 1.25; color: #c1c5b3; }
.build-card.selected { border-color: #efd18a; box-shadow: inset 3px 0 #e5bd66; background: #514932; }
#objective { order: 4; }
.objective { margin: 2px 0; padding: 8px; border-radius: 2px; border-color: #b79a5847; font-size: 12px; line-height: 1.4; background: #bca57509; }
.objective strong { font-size: 12px; }
.objective p { margin: 5px 0 7px; font-size: 11px; line-height: 1.45; }
.objective button { min-height: 30px; font-size: 11px; padding: 5px 6px; }
#hunting-open { order: 5; }
#feedback-open { order: 6; }
.feedback-button { margin: 0; min-height: 31px; padding: 5px 8px; font-size: 12px; }
.selection-panel {
  left: calc(var(--realm-width) + var(--hud-gap) * 2); right: calc(var(--map-width) + var(--hud-gap) * 2);
  width: auto; max-width: none; transform: none; padding: 13px 16px; overflow-y: auto;
  border-top: 2px solid #b89b58;
}
.selection-panel h2 { font-family: Georgia, serif; font-size: 23px; line-height: 1.15; margin: 3px 0 7px; }
.selection-panel p { font-size: 12px; line-height: 1.45; margin: 5px 0; max-width: 72ch; }
.owner-tag { font-size: 10px; letter-spacing: .1em; }
.selection-actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(125px, 1fr)); gap: 6px; margin-top: 10px; }
.selection-actions button { min-height: 38px; padding: 7px 9px; font-size: 12px; line-height: 1.3; }
.health { height: 5px; border-radius: 0; margin: 9px 0; background: #070e0b; border: 1px solid #b6bea52b; }
.health i { background: linear-gradient(90deg, #668b4e, #b8c98a); }
.demolish-button { margin-top: 10px; padding: 5px 7px; font-size: 11px; min-height: 28px; color: #aaa99d; border-radius: 2px; }
.minimap-panel {
  right: var(--hud-gap); width: var(--map-width); padding: 8px; overflow: hidden;
  display: grid; grid-template-columns: minmax(0, 1fr) 83px; grid-template-rows: 18px minmax(0, 1fr) 28px 28px; gap: 4px;
}
.minimap-heading { grid-column: 1 / -1; padding: 0; align-items: center; gap: 4px; font-size: 9px; white-space: nowrap; }
#world-count { color: #e2d5aa; font-variant-numeric: tabular-nums; }
#minimap { grid-column: 1 / -1; width: 184px; height: 128px; max-width: 100%; align-self: center; justify-self: center; border: 1px solid #a695685e; border-radius: 0; background: #16231c; }
#realm-jump { grid-column: 1 / -1; width: 100%; min-width: 0; margin: 0; padding: 3px 5px; border-radius: 2px; font-size: 11px; color: #eae7d8; background: #1b241c; }
#cornucopia { grid-column: 1; width: 100%; margin: 0; padding: 3px 4px; font-size: 10px; white-space: nowrap; }
.map-actions { grid-column: 2; display: flex; justify-content: space-between; gap: 2px; margin: 0; font-size: 10px; }
.map-actions button { min-width: 24px; height: 28px; padding: 0 4px; font-size: 19px; }
.bottom-hint { left: 12px; bottom: calc(var(--hud-height) + 16px); max-width: 520px; font-size: 10px; line-height: 1.4; color: #f1ebd3bf; pointer-events: none; }
.events-toggle { top: 70px; right: 8px; padding: 6px 10px; min-height: 30px; font-size: 11px; z-index: 3; }
.events-panel { top: 106px; right: 8px; width: 305px; max-height: calc(100dvh - var(--hud-height) - 125px); padding: 12px; z-index: 4; }
.placement { top: 72px; max-width: calc(100vw - 190px); padding: 8px 12px; border-radius: 2px; font-size: 12px; z-index: 4; }
#toast { top: 72px; max-width: min(540px, calc(100vw - 32px)); padding: 9px 14px; font-size: 13px; border-radius: 2px; }
#map-credit { right: 9px; bottom: calc(var(--hud-height) + 11px); font-size: 9px; color: #e3ddca; background: #18221bba; padding: 2px 4px; }
.auth-panel { top: calc(50% + 25px); max-height: calc(100dvh - 86px); border-radius: 3px; padding: 26px; }
.auth-panel h1 { font-size: 36px; }
.auth-panel .intro { font-size: 14px; line-height: 1.6; }
.loading-panel { border-radius: 3px; }
dialog { max-height: calc(100dvh - 32px); overflow-y: auto; border-radius: 3px; border-color: #aa935b80; background: #202920; }
.hunting-dialog { border-radius: 3px; background: #202920; }
.hunter-level, .bestiary article, .hunt-item { border-radius: 2px; background: #2b372b; }
@media (max-width: 1100px) {
  :root { --realm-width: 250px; --map-width: 218px; }
  .brand { min-width: 148px; }
  .brand strong { font-size: 14px; }
  .identity #connection { display: none; }
  .resources { gap: 12px; }
  .resource b { font-size: 15px; }
  .selection-panel { padding: 11px; }
  .selection-panel h2 { font-size: 20px; }
  .selection-actions { grid-template-columns: repeat(auto-fit, minmax(105px, 1fr)); }
}
@media (max-width: 900px) {
  :root { --realm-width: 224px; --map-width: 194px; --hud-height: 218px; --hud-gap: 5px; }
  .topbar { padding: 5px 8px; gap: 8px; }
  .brand { min-width: 0; }
  .brand small, .crest { display: none; }
  .brand strong { font-size: 12px; letter-spacing: .04em; }
  .resources { gap: 9px; }
  .resource b { min-width: 24px; font-size: 14px; }
  .resource .symbol { font-size: 17px; }
  .identity button { min-width: 28px; padding: 4px 6px; font-size: 12px; }
  .realm-panel { padding: 8px; }
  .build-card { padding: 5px; gap: 4px; }
  .build-icon { flex-basis: 19px; width: 19px; font-size: 18px; }
  .build-card strong { font-size: 10px; }
  .selection-actions { grid-template-columns: repeat(auto-fit, minmax(95px, 1fr)); }
  .minimap-heading { font-size: 8px; }
  #minimap { width: 161px; height: 112px; }
  .minimap-panel { grid-template-columns: minmax(0, 1fr) 73px; }
  #cornucopia { font-size: 9px; }
  .map-actions { font-size: 9px; }
  .map-actions button { min-width: 21px; }
}
@media (max-width: 700px) and (min-height: 541px) {
  :root { --hud-height: 146px; --hud-gap: 5px; --map-width: 154px; }
  .topbar { height: 76px; min-height: 76px; flex-wrap: wrap; gap: 3px 8px; }
  .brand { flex: 1; }
  .brand strong { font-size: 13px; }
  .resources { order: 3; flex-basis: 100%; justify-content: space-between; gap: 7px; padding: 1px 3px; }
  .resource small { display: none; }
  .resource b { font-size: 14px; }
  .identity button { min-height: 28px; }
  .realm-panel { left: 5px; right: 5px; width: auto; height: 146px; max-height: 146px; display: flex; flex-direction: row; flex-wrap: wrap; align-content: flex-start; gap: 6px 10px; padding: 8px; }
  .realm-panel .panel-heading { width: 110px; }
  .realm-panel h2 { flex: 1; min-width: 120px; align-self: center; font-size: 16px; }
  .realm-panel .quick-select { width: 100%; }
  #build-menu { width: 100%; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .realm-panel #objective, .realm-panel .feedback-button { width: 100%; }
  .selection-panel { left: 5px; right: 164px; bottom: 156px; height: 174px; max-height: 174px; max-width: none; padding: 9px; }
  .selection-panel h2 { font-size: 18px; }
  .selection-panel p { font-size: 11px; }
  .selection-actions { grid-template-columns: repeat(auto-fit, minmax(90px, 1fr)); margin-top: 6px; }
  .selection-actions button { min-height: 34px; font-size: 11px; padding: 5px; }
  .minimap-panel { bottom: 156px; height: 174px; max-height: 174px; padding: 5px; grid-template-columns: minmax(0, 1fr) 65px; grid-template-rows: 14px minmax(0, 1fr) 25px 25px; gap: 3px; }
  .minimap-heading { white-space: normal; font-size: 8px; line-height: 1.1; }
  #minimap { width: 119px; height: 83px; }
  #realm-jump { font-size: 10px; }
  #cornucopia { white-space: normal; font-size: 9px; line-height: 1.05; }
  .map-actions button { min-width: 20px; height: 25px; padding: 0 3px; }
  .bottom-hint { display: none; }
  #map-credit { bottom: 334px; font-size: 8px; }
  .events-toggle { top: 83px; }
  .events-panel { top: 120px; max-height: calc(100dvh - 285px); width: min(305px, calc(100vw - 16px)); }
  .placement { top: 85px; bottom: auto; max-width: calc(100vw - 120px); width: auto; left: 8px; transform: none; font-size: 11px; }
  #toast { top: 85px; }
  .auth-panel { left: 50%; width: min(380px, calc(100vw - 22px)); transform: translate(-50%, -50%); max-height: calc(100dvh - 94px); padding: 20px; }
}
@media (max-height: 540px) {
  :root { --hud-height: 166px; --realm-width: 216px; --map-width: 182px; --hud-gap: 4px; }
  .topbar { height: 48px; min-height: 48px; padding: 4px 8px; }
  .brand strong { font-size: 12px; }
  .brand small, .crest, .resource small, .identity #connection { display: none; }
  .realm-panel { padding: 6px; }
  .realm-panel h2 { font-size: 16px; }
  .selection-panel { padding: 8px; }
  .selection-panel h2 { font-size: 18px; }
  .selection-panel p { font-size: 11px; }
  .minimap-panel { padding: 5px; grid-template-rows: 12px minmax(0, 1fr) 23px 23px; gap: 2px; }
  #minimap { width: 128px; height: 89px; }
  #realm-jump { padding: 1px 4px; font-size: 10px; }
  .map-actions button { height: 23px; }
  .bottom-hint { display: none; }
  .events-toggle, .placement, #toast { top: 55px; }
  .events-panel { top: 91px; max-height: calc(100dvh - 110px); }
}
@media (prefers-reduced-motion: reduce) { button { transition: none; } }

/* Selection scales with commands, never with the height of the other docks. */
.selection-panel.unit-selection { height:auto; max-height:none; min-height:0; width:fit-content; max-width:calc(100vw - var(--realm-width) - var(--map-width) - 40px); right:auto; padding:8px 10px; display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; overflow:visible; }
.unit-selection .army-heading {min-width:85px;}
.unit-selection h2 {font:600 15px/1.2 system-ui;margin:2px 0 0;}
.unit-selection .selection-actions {display:flex;gap:5px;margin:0;}
.unit-selection button {min-height:32px;padding:5px 9px;font-size:12px;}
.unit-selection .veteran-summary {font-size:11px;margin:0;}
.army-more {position:static;margin-left:auto;}
.army-more summary {cursor:pointer;list-style:none;padding:1px 10px;font-size:24px;border:1px solid #88795166;}
.army-more summary::-webkit-details-marker {display:none;}
.army-menu {position:absolute;bottom:calc(100% + 10px);right:0;width:230px;padding:12px;background:#202920;border:1px solid #887951;box-shadow:0 4px 18px #0008;}
.army-menu .demolish-button {width:100%;margin-top:8px;}
@media(max-width:700px) and (min-height:541px){.selection-panel.unit-selection{max-width:calc(100vw - 179px);left:5px;bottom:156px;gap:6px;padding:7px;}.unit-selection .selection-actions{flex-wrap:wrap;}}

.selection-panel.landmark-selection{height:auto;max-height:230px;max-width:520px;}

.army-menu{max-height:calc(100dvh - 180px);overflow-y:auto;}.army-menu button,.army-menu select{display:block;width:100%;margin-top:5px;}.army-menu select{padding:6px;background:#273328;color:#ede9da;}
@media(max-width:900px){.selection-panel.unit-selection{gap:4px 8px;padding:6px 8px;}.unit-selection .army-heading{min-width:70px;}.unit-selection button{padding:4px 7px;}}

/* A stable objective and tabs, with scrolling confined to the active tools. */
.realm-panel{height:320px;max-height:calc(100dvh - 110px);overflow:hidden;flex-direction:column;flex-wrap:nowrap;}
.realm-panel .panel-heading,.realm-panel h2{display:none;}
.realm-panel #objective{order:0;width:100%;flex:0 0 auto;}
.realm-panel .quick-select{order:1;width:100%;}
#realm-tabs{order:2;display:flex;gap:5px;width:100%;}
#realm-tabs button{flex:1;font-size:12px;}
#realm-tabs [aria-pressed=true]{border-color:#e2c680;background:#4c4933;}
#build-menu,#realm-goal-tools{order:3;flex:1 1 auto;min-height:0;overflow-y:auto;width:100%;}
#build-menu{grid-template-columns:minmax(0,1fr);align-content:start;}
.build-card strong{font-size:13px;overflow-wrap:normal;word-break:normal;}
.build-card small{display:block;font-size:12px;}
.build-card{min-height:90px;text-align:left;}
.realm-panel #realm-goal-tools .feedback-button{display:block;width:100%;margin-bottom:6px;}
.realm-panel #feedback-open{font-size:11px;opacity:.8;}
.army-readout{flex-basis:100%;font-size:11px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;}
.army-types{display:flex;gap:4px;max-width:100%;overflow-x:auto;}
.army-readout button{font-size:11px;min-height:25px;padding:3px 6px;white-space:nowrap;}
.selection-actions small{display:inline-block;line-height:1.45;}
.owner-tag{text-shadow:0 1px 2px #000,1px 0 2px #000;}
@media(max-width:700px) and (min-height:541px){.realm-panel{height:230px;max-height:230px;}.selection-panel,.selection-panel.unit-selection,.minimap-panel{bottom:240px;}.realm-panel .objective p{margin:3px 0;}.realm-panel .objective{padding:4px;}#map-credit{bottom:420px;}}
.resources button.resource{background:none;border:0;text-align:left;color:inherit;padding:2px;display:flex;}
.resources button.resource:hover{background:#ffffff12;}
.management-dialog{width:min(500px,calc(100vw - 28px));padding:24px;}
.management-dialog p{font-size:14px;line-height:1.55;}
.management-dialog article{border-top:1px solid #88795166;padding:12px 0;}
.quick-select #home{flex:0 0 30px;}

.expedition-dialog{width:min(680px,calc(100vw - 24px));max-height:82vh;overflow:auto;box-sizing:border-box;background:#20271f;color:#eee9d8;border:1px solid #92815b;border-radius:10px;padding:22px;box-shadow:0 16px 70px #000b;font-size:14px;line-height:1.5}.expedition-dialog::backdrop{background:#071009aa}.expedition-dialog header,.expedition-project,.expedition-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.expedition-dialog h2{margin:4px 0 8px;font-size:27px}.expedition-dialog h3{font-size:17px;margin:8px 0}.expedition-dialog section,.expedition-quote{padding:14px 0;border-top:1px solid #8b805044;margin:12px 0}.expedition-dialog p{margin:8px 0}.expedition-dialog button,.expedition-dialog select{padding:8px 10px;border:1px solid #a593604f;border-radius:5px;background:#343c2c;color:inherit}.expedition-dialog button:disabled{opacity:.5}.expedition-dialog .owner-tag,.expedition-promise{color:#d4bd83}.expedition-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.expedition-form label{display:grid;gap:5px}.expedition-crew{display:grid;grid-template-columns:1fr 1fr;gap:5px;max-height:120px;overflow:auto;margin:10px 0}.expedition-crew label{display:flex;gap:6px;align-items:center}.expedition-dialog small{display:block;opacity:.65;margin-top:16px}.expedition-dialog details{margin:12px 0}@media(max-width:600px){.expedition-dialog{padding:15px}.expedition-form,.expedition-crew{grid-template-columns:1fr}.expedition-project{align-items:flex-start;flex-direction:column}}

.expedition-crew input{width:16px;height:16px;flex:0 0 16px;margin:0}.expedition-dialog header{position:sticky;top:-22px;background:#20271f;z-index:1;padding:6px 0}

.faction-comparison{width:min(800px,calc(100vw - 24px));max-height:84vh;overflow:auto;box-sizing:border-box;background:#20271f;color:#eee9d8;border:1px solid #92815b;border-radius:8px;padding:20px;font:14px/1.45 system-ui,sans-serif;box-shadow:0 16px 70px #000b}
.hunting-collection{margin-top:22px;border-top:1px solid #99855366;padding-top:14px}.hunting-collection h3,.hunting-collection h4{margin:8px 0}.hunting-collection .collection-summary{color:#dec993}.trophy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.trophy-card{padding:8px;border:1px solid #797e655e;background:#17221f;border-radius:5px;min-width:0;display:flex;flex-direction:column;gap:4px}.trophy-picture{width:100%;aspect-ratio:1;background-image:url('/assets/hunting/trophies-v1.png');background-size:300% 200%;background-repeat:no-repeat;background-color:#17221f;border-radius:3px}.trophy-card.missing .trophy-picture{filter:grayscale(.8);opacity:.35}.trophy-card strong{font-size:13px;line-height:1.3;overflow-wrap:anywhere}.trophy-quality,.trophy-count{font-size:11px;line-height:1.3}.trophy-card .trophy-quality{color:#bdc1a9}.trophy-card.rare{border-color:#5c8faa}.trophy-card.rare .trophy-quality{color:#a2d6f2}.trophy-card.epic{border-color:#9b72b0}.trophy-card.epic .trophy-quality{color:#dfb4f5}.trophy-card.missing .trophy-count{color:#b2b4a9}.trophy-card.found .trophy-count{color:#e6cf90}.collection-next{padding:10px 0}.collection-next button{padding:7px 10px;background:#344032;color:#eee4ca;border:1px solid #96835566;border-radius:4px}.collection-history{list-style:none;padding:0;margin:0}.collection-history li{display:grid;gap:3px;border-top:1px solid #887e5544;padding:8px 0;font-size:12px}.collection-history time,.collection-history-note{color:#b6baac}.hunting-dialog .collection-history-note{font-size:12px}@media(max-width:480px){.hunting-dialog{box-sizing:border-box;width:calc(100vw - 20px);padding:16px}.trophy-grid{gap:5px}.trophy-card{padding:5px}.trophy-card strong{font-size:11px}.trophy-quality,.trophy-count{font-size:10px}.hunter-level{flex-wrap:wrap}}
.faction-comparison::backdrop{background:#071009aa}.faction-comparison header{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:-20px;background:#20271f;z-index:1;padding:6px 0}.faction-comparison h2{font-size:24px;margin:0}.faction-comparison button{color:inherit;background:#343c2c;border:1px solid #a5936066;border-radius:4px;padding:6px 9px;font:inherit;cursor:pointer}.faction-comparison header button{font-size:23px;line-height:1}.faction-comparison p{margin:8px 0}.faction-comparison details{margin:10px 0}.faction-comparison summary{cursor:pointer;color:#ddca96}.faction-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.faction-comparison-grid article{border:1px solid #877b594f;border-top:3px solid var(--faction-color,#aaa);padding:14px;border-radius:5px;min-width:0}.faction-comparison h3{font-size:17px;margin:0}.faction-comparison h4{font-size:15px;margin:14px 0 0}.faction-comparison .faction-motto{font-size:12px;color:#c3c4b5}.faction-comparison .faction-role{color:#dcc993}.faction-comparison dl{display:grid;grid-template-columns:1fr auto;gap:3px 10px;margin:12px 0}.faction-comparison dd{margin:0;font-variant-numeric:tabular-nums}.faction-comparison .faction-cost{font-size:12px}.faction-comparison .faction-lands{display:grid;gap:6px;margin-top:12px}.faction-comparison .faction-lands button{text-align:left;overflow-wrap:anywhere}.faction-comparison small{color:#bfc1b4}@media(max-width:600px){.faction-comparison{padding:14px}.faction-comparison header{top:-14px}.faction-comparison-grid{grid-template-columns:1fr}}

/* A release is offered without covering the map or interrupting commands. */
.client-update{position:fixed;top:72px;left:50%;transform:translateX(-50%);z-index:80;width:auto;max-width:calc(100vw - 24px);padding:8px 14px;border:1px solid #b3a471;background:#252d24;color:#f2e4bb;border-radius:5px;font:600 13px Manrope,sans-serif;box-shadow:0 3px 14px #0005}
.client-update[hidden]{display:none}.client-update:disabled{opacity:.8;cursor:wait}
@media(max-width:700px){.client-update{top:92px;font-size:12px;padding:7px 10px}}

.training-queue{list-style:none;margin:8px 0;padding:0;display:grid;gap:6px}.training-queue li{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;padding:5px 7px;background:#d9b5780d;border-left:2px solid #b49b60;font-size:12px;overflow-wrap:anywhere}.training-queue small{color:var(--muted);font-size:11px}.training-queue progress{display:block;width:100%;height:5px;accent-color:#b6bd85}.training-queue [data-training-state=ready]{border-color:#a3ba85}

.damage-notice{position:fixed;z-index:24;top:72px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 20px);display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #cda374;background:#332b20f5;color:#f1e7d2;box-shadow:0 3px 12px #0005;border-radius:4px;font-size:12px}.damage-notice[hidden]{display:none}.damage-notice span{min-width:0;overflow-wrap:anywhere}.damage-notice button{font-size:12px;padding:5px 8px;min-height:28px;flex-shrink:0}.damage-notice button:disabled{opacity:.55}@media(max-width:700px){.damage-notice{top:62px;width:calc(100vw - 20px);box-sizing:border-box;font-size:11px;gap:5px;padding:5px 7px;}}

.worker-status{flex-basis:100%;display:flex;align-items:center;gap:8px;font-size:11px;line-height:1.4;color:var(--muted);padding-top:4px;border-top:1px solid var(--line)}.worker-status span{min-width:0;overflow-wrap:anywhere}.worker-status button{flex-shrink:0}@media(max-width:700px){.worker-status{flex-wrap:wrap;gap:4px}}

.worker-selection .army-heading .owner-tag,.worker-selection .army-types{display:none}.worker-selection .army-heading{flex-basis:100%}.worker-selection .selection-actions button{font-size:11px;padding:4px 6px}.worker-selection .army-readout{flex-basis:auto}.worker-selection .worker-status{margin-top:0}
