/* Regional playback chrome is isolated from the board, drawers and War Rooms. */
.round-reveal-player { position:relative; z-index:1; width:min(1080px, calc(100% - 48px)); height:100%; min-height:0; margin:0 auto; padding:0 0 10px; }
.round-reveal[data-stage="regional"] { grid-template-columns:minmax(0, 1fr); grid-template-rows:auto minmax(0, 1fr) auto; }
.round-reveal[data-stage="regional"] .round-reveal-header { min-width:0; width:min(1080px, calc(100% - 48px)); padding:16px 0; }
.round-reveal[data-stage="regional"] .round-reveal-footer { padding:4px 0 12px; }
.regional-replay-loading { display:grid; place-items:center; height:100%; margin:0; padding:24px; color:#c4d0d8; font-size:13px; text-align:center; }
.regional-replay { --rr-panel:#172633; --rr-line:#30414d; --rr-text:#edece5; --rr-muted:#a1b1bd; --rr-gold:#d8b677; --rr-mono:ui-monospace,SFMono-Regular,Consolas,monospace; position:relative; display:flex; flex-direction:column; gap:10px; width:100%; height:100%; min-width:0; min-height:0; color:var(--rr-text); font:14px/1.5 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.regional-replay, .regional-replay * { box-sizing:border-box; }
.regional-replay [hidden] { display:none!important; }
.regional-replay button { margin:0; font-family:inherit; cursor:pointer; -webkit-tap-highlight-color:transparent; }
.regional-replay button:disabled { opacity:.4; cursor:default; }
.regional-replay button:focus-visible { outline:2px solid var(--rr-gold); outline-offset:3px; }
.regional-replay .rr-chapters { position:relative; display:flex; flex:0 0 auto; gap:6px; min-width:0; max-width:100%; overflow-x:auto; overflow-y:hidden; padding:3px; scrollbar-width:thin; scrollbar-color:#526574 transparent; }
.regional-replay .rr-chapter { display:flex; align-items:center; justify-content:center; gap:8px; flex:1 0 100px; min-width:44px; max-width:170px; min-height:44px; padding:6px 10px; border:1px solid var(--rr-line); border-radius:4px; background:#192934; color:#a9bdc9; font:10px var(--rr-mono); letter-spacing:.015em; }
.regional-replay .rr-chapter small { color:#92a5af; font-size:9px; }
.regional-replay .rr-chapter span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.regional-replay .rr-chapter[aria-current="true"] { background:#d8b67717; border-color:#b79761; color:#f0d3a3; }
.regional-replay .rr-chapter[aria-current="true"] small { color:var(--rr-gold); }
.regional-replay .rr-theatre { display:flex; flex-direction:column; flex:1 1 auto; min-height:0; border:1px solid #51626b; border-radius:9px; overflow:hidden; background:var(--rr-panel); box-shadow:0 28px 85px #0004; }
.regional-replay .rr-frame-heading { display:flex; align-items:center; justify-content:space-between; flex:0 0 auto; gap:12px; height:34px; padding:0 17px; background:#13222d; color:#bac9d0; font:10px var(--rr-mono); letter-spacing:.08em; text-transform:uppercase; }
.regional-replay .rr-region { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.regional-replay .rr-scene-count { flex:0 0 auto; color:var(--rr-gold); }
.regional-replay .rr-map-viewport { position:relative; isolation:isolate; overflow:hidden; flex:1 1 auto; min-height:160px; background:#c8d7d8; }
.regional-replay .rr-map-canvas.map-canvas { position:absolute; inset:0; display:block; min-width:0; max-width:none; width:100%; height:100%; min-height:0; padding:0; pointer-events:none; }
.regional-replay .rr-map-canvas.map-canvas>svg { display:block; width:100%!important; min-width:0!important; max-width:none!important; height:100%!important; min-height:0; overflow:hidden; transform:none!important; }
.regional-replay .rr-frame-corner { position:absolute; width:15px; height:15px; border-color:#15263066; border-style:solid; pointer-events:none; }
.regional-replay .rr-corner-tl { left:12px; top:12px; border-width:1px 0 0 1px; }
.regional-replay .rr-corner-tr { right:12px; top:12px; border-width:1px 1px 0 0; }
.regional-replay .rr-corner-bl { left:12px; bottom:12px; border-width:0 0 1px 1px; }
.regional-replay .rr-corner-br { right:12px; bottom:12px; border-width:0 1px 1px 0; }
.regional-replay .rr-map-moment, .regional-replay .rr-phase-tag { position:absolute; bottom:14px; font:9px var(--rr-mono); text-transform:uppercase; letter-spacing:.06em; color:#334b55; background:#eef0e5ee; padding:5px 7px; border:1px solid #344b552b; border-radius:3px; pointer-events:none; }
.regional-replay .rr-map-moment { left:18px; }
.regional-replay .rr-phase-tag { right:18px; max-width:45%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.regional-replay .rr-dispatch { display:flex; flex-direction:column; align-items:flex-start; flex:0 0 auto; min-height:156px; max-height:30%; padding:15px 20px 13px; overflow-y:auto; scrollbar-width:thin; }
.regional-replay .rr-dispatch-kicker { display:flex; justify-content:space-between; gap:10px; width:100%; margin-bottom:7px; color:var(--rr-gold); font:9px var(--rr-mono); letter-spacing:.11em; text-transform:uppercase; }
.regional-replay .rr-time-stage { flex-shrink:0; color:#a0b7c5; letter-spacing:.03em; }
.regional-replay .rr-scene-title { margin:0; color:var(--rr-text); font:25px/1.12 Georgia,serif; letter-spacing:-.02em; }
.regional-replay .rr-narration { margin:8px 0 0; max-width:900px; color:#c3d0d8; font-size:13px; line-height:1.55; }
.regional-replay .rr-powers { display:flex; flex-wrap:wrap; gap:8px 13px; margin-top:11px; color:#b9cbd5; font:9px var(--rr-mono); text-transform:uppercase; letter-spacing:.04em; }
.regional-replay .rr-power { display:inline-flex; align-items:center; gap:6px; }
.regional-replay .rr-power i { display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--power); box-shadow:0 0 0 1px #dce8ef40; }
.regional-replay .rr-progress { flex:0 0 auto; height:2px; background:#30424d; }
.regional-replay .rr-progress>span { display:block; width:0; height:100%; background:var(--rr-gold); }
.regional-replay .rr-controls { display:flex; align-items:center; flex:0 0 auto; gap:10px; padding:11px 18px; background:#13222d; }
.regional-replay .rr-icon-button { display:grid; place-items:center; flex:0 0 44px; min-width:44px; height:44px; padding:0; border:1px solid #526777; border-radius:5px; background:transparent; color:#d6e0e5; font-size:19px; line-height:1; }
.regional-replay .rr-play-button { display:flex; align-items:center; justify-content:center; gap:10px; min-width:160px; height:44px; padding:0 12px; border:1px solid #d5b57d; border-radius:5px; background:#d6b77f; color:#172633; font-size:12px; font-weight:750; }
.regional-replay .rr-play-icon { font-size:10px; }
.regional-replay .rr-orders-button { display:flex; align-items:center; justify-content:center; gap:10px; min-width:60px; min-height:44px; margin-left:auto; padding:0 3px; border:0; background:transparent; color:#d0dce2; font-size:11px; }
.regional-replay .rr-footnote { flex:0 0 auto; margin:0; color:#9fb1bd; font-size:10px; line-height:1.45; text-align:center; }
.regional-replay .rr-path { fill:none; stroke-linecap:round; stroke-linejoin:round; }
.regional-replay .rr-cut-support { stroke:#bb6656; }
.regional-replay .rr-inactive-support:not(.rr-cut-support) { stroke:#7d8289; }
.regional-replay .rr-map-result { fill:#873d34; stroke:#eee9dd; stroke-width:3; paint-order:stroke; text-anchor:middle; font:700 9px var(--rr-mono); letter-spacing:.07em; }
.regional-replay .map-canvas svg .rr-unit-piece { filter:drop-shadow(0 0 2.2px rgba(255,255,255,.98)) drop-shadow(0 2.5px 2px rgba(14,24,31,.78)); }
.regional-replay .map-canvas[data-map-style="relief"] svg .rr-unit-piece { filter:drop-shadow(0 0 2.2px #fff8df) drop-shadow(0 3px 2px rgba(8,23,29,.85)); }
.regional-replay .map-canvas[data-map-style="tactical"] svg .rr-unit-piece { color:var(--tactical-power, #bad8e9); filter:drop-shadow(0 1px 2px #000b); }
.regional-replay[data-map-style="tactical"] { --rr-gold:#91d0e8; --rr-panel:#111c27; }
.regional-replay[data-map-style="tactical"] .rr-map-moment, .regional-replay[data-map-style="tactical"] .rr-phase-tag { color:#c0dde8; background:#101d28ef; border-color:#4d6f80; }
.regional-replay[data-map-style="tactical"] .rr-scene-title { font-family:Inter,ui-sans-serif,sans-serif; font-weight:550; }
.regional-replay[data-map-style="tactical"] .rr-play-button { border-color:#87cbe4; background:#82c6df; color:#0b1a23; }
.regional-replay[data-map-style="tactical"] .rr-chapter[aria-current="true"] { border-color:#81aabc; color:#bfe7f6; background:#1d3442; }
.regional-replay[data-map-style="tactical"] .rr-result-tag rect { fill:#182735; stroke:#bf8c83; }
.regional-replay[data-map-style="tactical"] .rr-map-result { fill:#ffc2b5; stroke:#182735; }
.regional-replay .rr-orders-dialog { padding:24px; width:min(580px, calc(100vw - 24px)); max-height:85svh; margin:auto; overflow:auto; border:1px solid #526575; border-radius:12px; background:#172633; color:var(--rr-text); box-shadow:0 30px 90px #0008; }
.regional-replay .rr-orders-dialog::backdrop { background:#071018bb; backdrop-filter:blur(4px); }
.regional-replay .rr-orders-dialog header { display:flex; gap:16px; justify-content:space-between; align-items:center; }
.regional-replay .rr-orders-dialog h2 { margin:8px 0 0; color:var(--rr-text); font:24px/1.12 Georgia,serif; }
.regional-replay .rr-eyebrow { margin:0; color:var(--rr-gold); font:10px var(--rr-mono); text-transform:uppercase; letter-spacing:.14em; }
.regional-replay .rr-order-list { list-style:none; padding:0; margin:20px 0; }
.regional-replay .rr-order-list li { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:12px 0; border-bottom:1px solid var(--rr-line); }
.regional-replay .rr-order-list li>div { min-width:0; }
.regional-replay .rr-order-list small { display:block; margin-bottom:5px; color:var(--rr-gold); font:9px var(--rr-mono); }
.regional-replay .rr-order-list code { padding:0; border:0; background:transparent; color:#d6e0e5; font:12px var(--rr-mono); overflow-wrap:anywhere; white-space:normal; }
.regional-replay .rr-order-result { flex:0 0 auto; max-width:38%; color:#b9cbd5; font:9px/1.5 var(--rr-mono); text-transform:uppercase; text-align:right; }
.regional-replay .rr-results-heading { margin:18px 0 8px; color:var(--rr-gold); font:10px var(--rr-mono); text-transform:uppercase; letter-spacing:.1em; }
.regional-replay .rr-event-list { padding-left:18px; margin:0 0 20px; color:#c3d0d8; font-size:12px; line-height:1.6; }
.regional-replay .rr-event-list li+li { margin-top:7px; }
.regional-replay .rr-orders-context { margin:18px 0 0; color:#b5c6d0; font-size:12px; }
.regional-replay .rr-orders-footnote { margin:0; color:#a1b1bd; font-size:11px; line-height:1.6; }
@media(max-width:650px) {
  .round-reveal-player { width:calc(100% - 20px); padding-bottom:8px; }
  .round-reveal[data-stage="regional"] .round-reveal-header { min-width:0; width:calc(100% - 24px); padding:12px 0; }
  .round-reveal[data-stage="regional"] .round-reveal-footer { display:none; }
  .round-reveal[data-stage="regional"][data-retreat-deadline="true"] .round-reveal-footer { display:flex; width:calc(100% - 24px); padding:0 0 10px; color:#c7d3dc; font-size:10px; line-height:1.4; letter-spacing:0; text-transform:none; }
  .round-reveal[data-stage="regional"][data-retreat-deadline="true"] .round-reveal-footer>span:first-child { display:none; }
  .round-reveal[data-stage="regional"] .round-reveal-header { gap:8px; }
  .round-reveal[data-stage="regional"] .round-reveal-header .brand-lockup { min-width:0; }
  .round-reveal[data-stage="regional"] .round-reveal-header .brand-lockup>span:last-child { min-width:0; display:block; }
  .round-reveal[data-stage="regional"] .round-reveal-header .brand-mark { flex-shrink:0; }
  .round-reveal[data-stage="regional"] .round-reveal-header .brand-lockup small { display:block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .round-reveal[data-stage="regional"] .round-reveal-header .brand-lockup strong { display:block; font-size:18px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .round-reveal[data-stage="regional"] .round-reveal-header .round-reveal-skip { flex:0 0 auto; min-height:44px; padding:8px 10px; font-size:8px; }
  .regional-replay { gap:7px; }
  .regional-replay .rr-chapters { gap:5px; }
  .regional-replay .rr-chapter { flex:1 0 44px; max-width:80px; min-height:44px; padding:4px 0; }
  .regional-replay .rr-chapter span { display:none; }
  .regional-replay .rr-chapter small { font-size:10px; }
  .regional-replay .rr-theatre { border-radius:7px; }
  .regional-replay .rr-frame-heading { height:32px; padding:0 12px; font-size:9px; letter-spacing:.055em; }
  .regional-replay .rr-dispatch { min-height:176px; max-height:31%; padding:13px 13px 11px; }
  .regional-replay .rr-dispatch-kicker { margin-bottom:7px; font-size:8px; letter-spacing:.07em; }
  .regional-replay .rr-scene-title { font-size:23px; }
  .regional-replay .rr-narration { font-size:12px; line-height:1.5; }
  .regional-replay .rr-powers { gap:7px 10px; margin-top:10px; font-size:8px; }
  .regional-replay .rr-controls { gap:7px; padding:10px; }
  .regional-replay .rr-play-button { flex:1 1 auto; min-width:0; padding:0 5px; gap:7px; font-size:11px; }
  .regional-replay .rr-orders-button { gap:4px; min-width:51px; font-size:10px; }
  .regional-replay .rr-map-moment, .regional-replay .rr-phase-tag { bottom:14px; padding:5px; font-size:8px; }
  .regional-replay .rr-map-moment { left:14px; }
  .regional-replay .rr-phase-tag { right:14px; }
  .regional-replay .rr-footnote { font-size:9px; }
  .regional-replay .rr-orders-dialog { padding:19px; }
  .regional-replay .rr-orders-dialog h2 { font-size:22px; }
}
@media(max-width:350px) {
  .regional-replay .rr-scene-title { font-size:21px; }
  .regional-replay .rr-dispatch-kicker { font-size:7px; }
  .regional-replay .rr-narration { font-size:11px; }
  .regional-replay .rr-controls { gap:5px; padding:9px 7px; }
  .regional-replay .rr-play-button { font-size:10px; }
  .regional-replay .rr-orders-button { min-width:45px; font-size:9px; }
  .regional-replay .rr-dispatch { min-height:167px; }
}
@media(max-height:620px) {
  .round-reveal[data-stage="regional"] { overflow-y:auto; }
  .round-reveal-player { height:max(470px, 100%); }
  .regional-replay .rr-dispatch { min-height:137px; }
  .regional-replay .rr-footnote { display:none; }
}
@media(prefers-reduced-motion:reduce) {
  .regional-replay *, .regional-replay *::before, .regional-replay *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
