.capitol-intro,.capitol-map-wrap{margin-block:1rem}.capitol-intro h1{margin:.3rem 0 .8rem}.capitol-kicker{text-transform:uppercase;letter-spacing:.12em;color:#c39857;font-weight:700}.capitol-stats{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.2rem 0}.capitol-stats span{padding:.65rem .85rem;background:rgba(113,91,51,.12);border-radius:.6rem}.capitol-stats b{font-size:1.4rem;margin-right:.2rem}.capitol-note{font-size:.9rem;opacity:.78;margin-top:.75rem}.capitol-map-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem;margin-bottom:.7rem}.capitol-map-toolbar button{border:1px solid #c39857;color:#fff;background:#30383c;border-radius:.5rem;padding:.45rem .8rem;cursor:pointer}.capitol-map-toolbar span,.capitol-slot-detail{font-size:.9rem}.capitol-map-scroll{overflow:auto;background:#1a2326;border-radius:.75rem;padding:1rem}.capitol-map{display:block;width:min(100%,950px);margin:auto;background:#283536}.capitol-slot-detail{margin-top:.7rem;min-height:1.5em}.capitol-ground{fill:#786851;stroke:#d1a35b;stroke-width:.6}.capitol-slot{stroke:#23323a;stroke-width:.12;rx:.2;cursor:pointer}.capitol-map text{font-size:.72px;fill:#10191d;font-weight:700;pointer-events:none}.capitol-map .capitol-center-label{font-size:1px;fill:#fff;paint-order:stroke;stroke:#1a2326;stroke-width:.5}.capitol-structure rect{fill:#27384a;stroke:#f1cb82;stroke-width:.45}.capitol-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:1rem;margin:1rem 0}.capitol-group h2{font-size:1.1rem;margin-bottom:.8rem}.capitol-group ul{padding:0;margin:0;list-style:none}.capitol-group li{display:flex;align-items:center;gap:.5rem;padding:.45rem 0;border-top:1px solid rgba(127,127,127,.2)}.capitol-group li span:last-child{margin-left:auto;text-align:right;font-size:.86rem}.capitol-key{width:.85rem;height:.85rem;border-radius:.2rem;background:var(--slot-color);flex:none}
.capitol-layout-controls{display:flex;gap:.6rem;margin-block:1rem}.capitol-layout-controls a{padding:.6rem 1rem;border:1px solid #c39857;border-radius:.5rem;text-decoration:none}.capitol-layout-controls a[aria-current=page]{background:#c39857;color:#10191d;font-weight:700}[data-capitol-panel][hidden]{display:none}[data-capitol-panel=attack] .capitol-slot{rx:0}[data-capitol-slot]:focus .capitol-slot{stroke:#fff;stroke-width:.8}.capitol-layout-controls a:focus-visible{outline:2px solid #c39857;outline-offset:3px}
.capitol-map .capitol-battery-label{font-size:1.6px;fill:#fff}

.capitol-map .capitol-tier{font-size:.57px}.capitol-tier-legend,.capitol-priority{font-size:.9rem;margin-top:.7rem}

.capitol-map-scroll{overflow:hidden;padding:0;max-width:950px;margin-inline:auto;aspect-ratio:1;touch-action:none;overscroll-behavior:contain;user-select:none;-webkit-user-select:none;cursor:grab}
.capitol-map-scroll.is-dragging{cursor:grabbing}
.capitol-map{width:100%;height:100%;max-width:none}
.capitol-map-toolbar button,.capitol-tier-controls button{min-height:44px;min-width:44px}
.capitol-map-toolbar button:disabled{opacity:.45;cursor:default}
.capitol-map-toolbar output{min-width:3ch;text-align:center;font-variant-numeric:tabular-nums}
.capitol-map-toolbar>span{flex-basis:100%}
.capitol-tier-controls{display:flex;flex-wrap:wrap;gap:.5rem;margin-block:.7rem}
.capitol-tier-controls>span{flex-basis:100%;font-size:.9rem}
.capitol-tier-controls button{border:1px solid #c39857;color:#fff;background:#30383c;border-radius:.5rem;padding:.45rem .7rem;cursor:pointer}
.capitol-tier-controls button[aria-pressed=true]{background:#c39857;color:#10191d;font-weight:700}
.capitol-map [data-capitol-slot].is-dimmed{opacity:.15}
.capitol-map [data-capitol-slot].is-highlighted .capitol-slot{stroke:#fff;stroke-width:.25}
.capitol-map-toolbar button:focus-visible,.capitol-tier-controls button:focus-visible{outline:2px solid #c39857;outline-offset:3px}

/* Defense orders: readable at phone widths, with a separate briefing on desktop. */
.capitol-orders {
  margin-block: 1rem;
  border-top: 3px solid #c39857;
}
.capitol-orders-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: .5rem 1rem;
}
.capitol-orders h2 { margin: 0; font-size: clamp(1.35rem, 3vw, 1.75rem); }
.capitol-orders-map-link {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  min-height: 44px;
  color: #e6bd7a;
  font-size: .875rem;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: .25em;
}
.capitol-orders-map-link:focus-visible { outline: 2px solid #e6bd7a; outline-offset: 4px; }
.capitol-orders-schedule {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
  margin: 1rem 0 1.5rem;
}
.capitol-orders-schedule > div {
  display: flex;
  flex-direction: column;
  gap: .25rem;
  padding: .85rem 1rem;
  border: 1px solid #4b4439;
  border-radius: .75rem;
  background: rgba(195, 152, 87, .08);
}
.capitol-orders-schedule dt { color: #c8cdd5; font-size: .875rem; }
.capitol-orders-schedule dd { margin: 0; color: #f3ce93; font-size: 1.75rem; line-height: 1.2; font-weight: 750; font-variant-numeric: tabular-nums; }
.capitol-orders-body { display: grid; gap: 1.5rem; }
.capitol-orders-brief {
  align-self: start;
  padding: 1rem;
  border: 1px solid #364151;
  border-radius: .75rem;
  background: rgba(10, 16, 24, .25);
}
.capitol-orders h3 { margin: 0 0 .65rem; font-size: .875rem; color: #e6bd7a; }
.capitol-orders p { margin: 0; font-size: .9375rem; line-height: 1.65; color: #cbd2dd; }
.capitol-orders .capitol-orders-capitol { margin-bottom: 1rem; color: #f1f3f6; font-weight: 650; }
.capitol-orders-steps { list-style: none; margin: 0; padding: 0; }
.capitol-orders-steps li {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: .75rem;
  padding: 1rem 0;
  border-top: 1px solid #364151;
}
.capitol-orders-steps li:last-child { padding-bottom: 0; }
.capitol-orders-number {
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: .5rem;
  background: rgba(195, 152, 87, .12);
  color: #e6bd7a;
  font-size: .75rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.capitol-orders h4 { margin: .2rem 0 .4rem; font-size: 1rem; line-height: 1.4; color: #f1f3f6; }
.capitol-map-wrap { scroll-margin-top: 7rem; }
@media (min-width: 800px) {
  .capitol-orders-body { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 2rem; }
}

/* Preserve game axes and coordinate labels within right-to-left pages. */
.capitol-map-scroll, .capitol-orders-schedule time { direction: ltr; unicode-bidi: isolate; }
