.story-stage{position:absolute;z-index:1100;top:78px;bottom:78px;right:23px;width:390px;max-width:calc(100% - 46px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #568277;background:#0a202aee;backdrop-filter:blur(22px);border-radius:13px;box-shadow:0 18px 65px #0007;animation:story-arrive .4s both}.story-stage[hidden]{display:none}.story-stage-top{display:flex;align-items:center;justify-content:space-between;padding:11px 13px 10px 20px;border-bottom:1px solid #43635770;flex-shrink:0}.story-stage-top>span{font:8px Space;letter-spacing:.13em;color:#acd8c7;display:flex;align-items:center;gap:9px}.story-stage-top i{height:5px;width:5px;border-radius:50%;background:#9dd7c0;box-shadow:0 0 9px #79cbb4}.story-stage-top .icon-button{width:34px;height:34px;border-color:#43645b}.story-scene{overflow:auto;overscroll-behavior:contain;padding:22px 22px 19px;min-height:0;flex:1;scrollbar-color:#477c6b transparent}.story-scene>small{font:8px Space;letter-spacing:.1em;color:#83b6a4;display:block;margin-bottom:10px}.story-scene .scene-date{font:11px Space;color:#b6dbc8;display:block;margin-bottom:12px}.story-scene h3{font:500 29px/1.12 Space;letter-spacing:-.04em;color:#eff5ed;margin:0 0 18px;text-wrap:balance}.story-scene .scene-narration{font:16px/1.85 Georgia,serif;color:#c9dbd4;margin:0 0 17px}.scene-note{border-left:2px solid #80b399;padding:2px 0 2px 12px;margin:18px 0}.scene-note>strong{display:block;font:8px Space;letter-spacing:.1em;color:#8dbca7;margin-bottom:8px}.scene-note p{font:12px/1.85 'Segoe UI',Arial,sans-serif;color:#a9c4ba;margin:0}.scene-image{margin:-2px 0 18px;border:1px solid #3c6257;border-radius:7px;overflow:hidden}.scene-image button{width:100%;display:block;padding:0}.scene-image img{width:100%;height:138px;object-fit:contain;display:block;background:#07131b}.scene-image figcaption{padding:7px 9px;font:8px/1.6 'Segoe UI',sans-serif;color:#83aa9b}.scene-sources{display:flex;gap:8px 12px;flex-wrap:wrap;margin-top:16px}.scene-sources a{font-size:9px;color:#8bb7a5;text-decoration:underline;text-underline-offset:3px;min-height:24px;display:inline-flex;align-items:center}.story-stage-bottom{border-top:1px solid #43635770;background:#0b1e25;padding:13px 18px 11px;flex-shrink:0}.story-segments{display:flex;gap:4px;margin-bottom:10px;overflow:auto;padding:5px 0}.story-segments button{height:24px;min-width:20px;flex:1;padding:8px 0;border-radius:2px;position:relative}.story-segments button:before,.story-segments button:after{content:'';display:block;height:3px;border-radius:2px;position:absolute;left:0;right:0;top:10px;background:#2d4f48}.story-segments button:after{background:#a4d5b8;transform:scaleX(var(--scene-progress,0));transform-origin:left}.story-segments button.past:after{transform:scaleX(1)}.story-segments button[aria-current=step]:before{background:#4a7163}.story-main-controls{display:flex;align-items:center;gap:8px}.story-main-controls .icon-button{height:41px;width:38px;border-color:#36594f;background:#14322e}.story-main-controls .primary-button{font:500 11px Space;background:#acddc2;color:#0b2a23;height:41px;flex:1;justify-content:center;min-width:100px}.story-main-controls>span{font:9px Space;color:#7caa99;text-align:right;min-width:38px}.story-options{display:flex;align-items:center;flex-wrap:wrap;gap:4px 9px;margin-top:10px}.story-options>label{display:flex;align-items:center;gap:6px;font:9px Space;color:#86b49f}.story-options select{font:9px Space;color:#bcdbcb;border-color:#3f6254;padding:6px 4px;background:#102b28;min-height:35px;max-width:132px}.story-options>button{font-size:9px;min-height:35px;padding:6px 0;color:#8bb39e;text-decoration:underline;text-decoration-color:#456d58;text-underline-offset:4px}.story-options>button[aria-pressed=true]{color:#d1e9d8}.story-device-note{font:8px/1.6 'Segoe UI',sans-serif;color:#69927f;margin:7px 0 0}.story-stage.is-paused .story-stage-top i{background:#839791;box-shadow:none}.story-completed{font:10px Space;letter-spacing:.03em;color:#bdd7ba;margin-top:13px;padding:10px;border:1px solid #4c7355;border-radius:5px;background:#8fc49b0a}
body.story-active .explorer{grid-template-columns:minmax(0,1fr)}body.story-active .sidebar{display:none}body.story-active .workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:730px 154px auto}body.story-active .detail-panel{grid-column:1;grid-row:3;height:auto;max-height:none}body.story-active .detail-panel .events{columns:2;column-gap:35px}body.story-active .detail-panel .event{break-inside:avoid}body.story-active .map-topbar{padding:20px 25px}body.story-active .map-legend{right:440px;left:22px;bottom:41px}body.story-active .map-disclaimer{right:440px;left:22px;text-align:left}body.story-active .map-floating-list{display:none!important}body.story-active .map-panel{border-color:#50756b;box-shadow:0 0 0 1px #789f8908,0 22px 80px #0003}body.story-active .map-panel:after{box-shadow:inset 0 0 150px #050f18aa}body.story-active .map-top-actions{margin-right:0}.story-footprint{stroke:#b9b288;stroke-width:1.7;stroke-dasharray:3 9;fill:none;opacity:.65}.story-footprint+title{display:none}.scene-point{background:#a7d9bd;border:2px solid #e2f2d9;box-shadow:0 0 0 5px #99d8bb18,0 0 20px #83cda745;border-radius:50%;width:13px;height:13px;position:relative}.scene-point:before{content:'';position:absolute;inset:-10px;border:1px solid #98d9b7;border-radius:50%;animation:scene-wave 3s ease-out 2}.scene-point-label{font:10px Space;display:block;white-space:nowrap;color:#cee5d5;position:absolute;left:22px;top:-3px;max-width:210px;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 6px #03131b,0 0 4px #03131b;background:#0b202ccc;padding:3px 6px;border-radius:4px}.scene-trail-marker{width:7px;height:7px;border:1px solid #9cb99a;background:#263e3c;border-radius:50%;opacity:.7}.story-mode-map .actor-label{max-width:170px;white-space:normal;font-size:9px}.story-mode-map .connection-path{stroke-width:2.3;filter:drop-shadow(0 0 3px #6eada122)}.story-mode-map .connection-path.combat{stroke-dasharray:5 8;animation:story-line-flow 16s linear infinite}.map-event:not([hidden]){animation:map-note-in .35s ease-out}.war-card{transition:background .2s,border-color .2s,transform .2s}.war-card:hover{transform:translateX(2px)}.detail-header{animation:map-note-in .3s ease-out}.primary-button:hover{box-shadow:0 4px 19px #6cbfa61c}.story-active .map-topbar{transition:opacity .2s}.story-active .map-label>span:last-child{max-width:500px}.scene-motion{animation:story-copy-in .45s both}
@keyframes scene-wave{0%{transform:scale(.5);opacity:.6}100%{transform:scale(2.2);opacity:0}}@keyframes story-line-flow{to{stroke-dashoffset:-208}}@keyframes story-copy-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes story-arrive{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:translateX(0)}}@keyframes map-note-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){body.story-active .workspace{grid-template-rows:720px 154px auto}.story-stage{width:355px;right:18px;top:83px;bottom:83px}.story-scene{padding:20px}.story-scene h3{font-size:26px}.story-scene .scene-narration{font-size:15px}.story-stage-bottom{padding:12px 15px}.story-options{gap:3px 7px}.story-options>button{font-size:8px}.story-options select{max-width:120px;font-size:8px}body.story-active .map-legend,body.story-active .map-disclaimer{right:395px}}
@media(max-width:650px){body.story-active .workspace{grid-template-rows:max(700px,calc(100svh - 20px)) auto auto}body.story-active .map-topbar{padding:14px 16px}body.story-active .map-label>span:last-child{max-width:245px;font-size:8px}body.story-active .detail-panel .events{columns:1}.story-stage{top:auto;bottom:64px;left:10px;right:10px;width:auto;max-width:none;max-height:61%;border-radius:10px;backdrop-filter:blur(18px)}.story-stage-top{padding:7px 10px 7px 16px}.story-stage-top>span{font-size:7px}.story-stage-top .icon-button{width:31px;height:31px}.story-scene{padding:16px 18px 14px;min-height:100px}.story-scene>small{font-size:7px;margin-bottom:7px}.story-scene h3{font-size:25px;margin-bottom:12px}.story-scene .scene-narration{font-size:15px;line-height:1.8;margin-bottom:10px}.story-scene .scene-date{font-size:10px;margin-bottom:10px}.scene-note{margin:14px 0 0}.scene-note p{font-size:11px}.scene-image img{height:105px}.scene-sources{margin-top:12px}.story-stage-bottom{padding:7px 14px 8px}.story-segments{margin-bottom:5px;padding:0}.story-main-controls .primary-button{height:39px}.story-main-controls .icon-button{height:39px}.story-options{margin-top:6px;gap:1px 10px}.story-options>label{font-size:8px}.story-options>button{font-size:8px}.story-options select{min-height:31px}.story-device-note{font-size:7px;line-height:1.5;margin-top:4px}.story-main-controls>span{font-size:8px}body.story-active .map-legend{right:10px;left:10px;bottom:21px;font-size:7px;padding:7px 8px;gap:8px}body.story-active .map-disclaimer{left:12px;right:12px;bottom:3px;font-size:6px}body.story-active .leaflet-control-zoom{margin-top:95px!important;margin-bottom:0!important}body.story-active .leaflet-bottom.leaflet-right{bottom:auto;top:0}.scene-point-label{font-size:8px;max-width:140px}.scene-point:before{animation-iteration-count:1}.story-completed{font-size:9px;margin-top:10px}.story-stage.is-paused{border-color:#668573}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.story-stage,.scene-motion,.map-event:not([hidden]),.detail-header{animation:none!important}.scene-point:before{animation:none!important}.story-mode-map .connection-path,.connection-path,.event-marker:after,.live-dot{animation:none!important}.war-card{transition:none}.war-card:hover{transform:none}.primary-button:hover{box-shadow:none}.reader-scroll{scroll-behavior:auto}}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
/* The narrative is the first action on every record. */
.story-launch{margin:12px 18px 18px;padding:0;border:1px solid #6ea99a;border-radius:11px;background:linear-gradient(125deg,#244b47,#112b36);box-shadow:0 7px 28px #020e1745;overflow:hidden}.story-launch-button{display:flex;align-items:center;width:100%;gap:13px;padding:16px;color:#e7fff3;text-align:left}.story-launch-icon{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:50%;background:#a8e9cb;color:#0b302a;box-shadow:0 0 24px #9de3c225}.story-launch-icon svg{width:22px;height:22px;fill:currentColor;stroke-width:1}.story-launch-button>span:nth-child(2){flex:1;min-width:0}.story-launch-button strong{font:500 15px/1.35 Space,sans-serif;display:block;letter-spacing:-.02em}.story-launch-button small{display:block;font:9px/1.6 Space,sans-serif;color:#a0c9ba;margin-top:4px}.story-launch-button>svg{width:19px;height:19px;color:#acd9c9;flex-shrink:0}.story-launch>p{margin:0;padding:0 16px 13px;font:9px/1.7 'Segoe UI',sans-serif;color:#aac6be}.story-launch>p span{display:block;color:#82b7a4}.story-launch-button:hover{background:#9cdebc0d}.story-launch-button:focus-visible{outline:2px solid #ccf6d7;outline-offset:-4px;border-radius:10px}.story-jump-label{display:block;font:7px Space,sans-serif;letter-spacing:.1em;color:#a0c3b4;margin:0 0 6px}.story-jump{width:100%;min-width:0;max-width:100%;padding:8px;background:#122d2a;border:1px solid #44685b;border-radius:5px;color:#d1e7da;font:10px Space,sans-serif;margin-bottom:2px}.story-segments{scrollbar-width:thin;scrollbar-color:#537a67 transparent;gap:5px}.story-segments button{flex:1 0 20px;min-width:20px}.story-scene .scene-date{line-height:1.7}.story-scene h3{font-size:27px}.story-scene .scene-narration{font-size:15px;line-height:1.8}.event-theater{display:inline-block;font:8px/1.6 Space,sans-serif;color:#90bfb6;border:1px solid #385c59;padding:3px 6px;border-radius:4px;margin:4px 0 8px}.event-explanation{font:11px/1.85 'Segoe UI',sans-serif;margin:3px 0 16px;color:#b3cfc8}.event-explanation summary{color:#9edcc8;font-size:10px;cursor:pointer;min-height:30px;align-content:center}.event-explanation p{border-left:1px solid #456b61;padding-left:12px;margin:7px 0 0}.story-visual{position:absolute;z-index:1040;left:22px;right:440px;top:84px;bottom:104px;background:#07121bf5;border:1px solid #537969;border-radius:11px;overflow:hidden;box-shadow:0 14px 65px #0006;animation:archive-reveal .7s both}.story-visual[hidden]{display:none}.story-visual figure{margin:0;display:flex;flex-direction:column;height:100%}.story-visual-expand{padding:0;display:block;width:100%;background:#020b11;flex:1;min-height:0;cursor:zoom-in;overflow:hidden}.story-visual img{display:block;width:100%;height:100%;object-fit:contain}.story-visual figcaption{flex-shrink:0;padding:17px 20px 16px;background:linear-gradient(115deg,#102b2a,#0a202c);border-top:1px solid #355a53}.story-visual figcaption small{display:block;font:8px/1.6 Space,sans-serif;letter-spacing:.07em;color:#94c6ac}.story-visual figcaption strong{display:block;font:500 20px/1.25 Space,sans-serif;letter-spacing:-.02em;color:#e0efe2;margin-top:7px}.story-visual figcaption p{font:12px/1.7 'Segoe UI',sans-serif;color:#b2cbbf;margin:9px 0}.story-visual figcaption span{font:9px/1.6 'Segoe UI',sans-serif;color:#8bac9a}.story-visual figcaption a{color:#c0d9bf;text-decoration:underline;text-underline-offset:3px}.story-visual-toggle{position:absolute;z-index:1080;top:87px;left:28px;font:9px Space,sans-serif;color:#e0f1df;border:1px solid #6c9281;background:#0a222ded;border-radius:30px;padding:10px 14px;backdrop-filter:blur(10px);box-shadow:0 4px 17px #0004}.story-visual-toggle[hidden]{display:none}.story-image-visible .story-visual-toggle{top:94px;left:32px}.story-image-visible .story-visual-expand{padding-top:43px}.story-image-visible .map-panel:after{display:none}.story-active .map-disclaimer{color:#8ca99e}.story-active .detail-panel{min-height:0}.story-completed{border-color:#799e65}.story-stage-bottom .story-device-note{font-size:8px;color:#93b19f}
@keyframes archive-reveal{from{opacity:0;transform:translateY(9px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:1000px){.story-visual{right:395px;left:18px}.story-visual figcaption{padding:13px 15px}.story-visual figcaption strong{font-size:17px}.story-visual figcaption p{font-size:11px}.story-visual-toggle{left:25px;font-size:8px}.story-stage{width:355px}.story-scene h3{font-size:24px}}
@media(max-width:650px){.story-launch{margin:12px 18px 17px}.story-launch-button{padding:16px}.story-launch-button strong{font-size:17px}.story-launch-button small{font-size:10px}.story-launch>p{font-size:10px;padding-bottom:14px}.story-launch>p span{display:inline}.story-launch-icon{width:46px;height:46px}.story-stage{max-height:57%;bottom:64px}.story-stage-bottom{padding:8px 13px}.story-jump-label{font-size:7px;margin-bottom:4px}.story-jump{padding:8px 5px;font-size:9px}.story-scene{padding:15px 17px}.story-scene h3{font-size:24px}.story-scene .scene-narration{font-size:15px;line-height:1.75}.story-visual{top:74px;left:10px;right:10px;bottom:calc(57% + 73px);min-height:145px;border-radius:8px}.story-visual-expand{flex:1}.story-visual figcaption{padding:7px 10px}.story-visual figcaption small{font-size:7px}.story-visual figcaption strong{font-size:12px;margin-top:3px;line-height:1.3}.story-visual figcaption p{display:none}.story-visual figcaption span{font-size:7px;line-height:1.3}.story-visual-toggle,.story-image-visible .story-visual-toggle{top:82px;left:18px;font-size:7px;padding:7px 10px}.story-image-visible .story-visual-expand{padding-top:28px}.event-explanation{font-size:12px}.event-explanation summary{font-size:11px;min-height:35px}.story-stage-bottom .story-device-note{font-size:7px}.story-active .map-label>span:last-child{max-width:220px}}
@media(prefers-reduced-motion:reduce){.story-visual{animation:none!important}.story-launch-button{transition:none}}
.legend-line.green{color:#78e0cd}.story-mode-map .scene-arrow{stroke-width:3;stroke-dasharray:7 5;animation:story-line-flow 22s linear infinite}.connection-path.defense{stroke:#78e0cd}.scene-arrow-label{font:9px Space,sans-serif;fill:#e6ece4;paint-order:stroke;stroke:#0b202c;stroke-width:5px;stroke-linejoin:round}.story-mode-map .actor-label{opacity:.7}.story-mode-map .scene-point-label{max-width:230px}.story-active .map-legend{gap:8px}
@media(max-width:650px){.scene-arrow-label{font-size:8px;stroke-width:4px}.story-mode-map .scene-point-label{max-width:160px}}
.map-story-entry{position:absolute;left:18px;bottom:105px;z-index:1030;display:flex;align-items:center;gap:12px;padding:10px 16px 10px 11px;color:#e7fae8;background:linear-gradient(120deg,#234e45f5,#112e38f5);border:1px solid #7ba58f;border-radius:40px;box-shadow:0 8px 28px #0006;backdrop-filter:blur(12px)}.map-story-entry[hidden],body.story-active .map-story-entry{display:none}.map-story-entry>span{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#b2e4c2;color:#123c30}.map-story-entry>span svg{width:17px;height:17px;fill:currentColor}.map-story-entry strong{font:500 12px Space,sans-serif;letter-spacing:-.01em}.map-story-entry>svg{width:17px;height:17px;color:#b0d4bd}.map-story-entry:hover{border-color:#c7eac7;box-shadow:0 8px 32px #6da88725}.map-story-entry:focus-visible{outline:2px solid #c4edcb;outline-offset:3px}.story-image-visible:after{display:none}
@media(max-width:650px){.map-story-entry{bottom:104px;left:14px;padding:9px 13px 9px 9px;gap:9px}.map-story-entry strong{font-size:12px}.map-story-entry>span{width:30px;height:30px}}
.war-story-route{padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid #34534e}.war-story-route>.eyebrow{font-size:8px;color:#98c0ae;margin-bottom:10px}.war-story-route>h3{font:500 20px/1.3 Space,sans-serif;margin:0 0 10px;color:#d6e9dc;letter-spacing:-.03em}.war-story-route>p:not(.eyebrow){font:11px/1.75 'Segoe UI',sans-serif;color:#94b6aa;margin-bottom:16px}.war-story-route>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.war-story-route>div>button{padding:12px 10px;text-align:left;border:1px solid #355b52;border-radius:7px;background:linear-gradient(140deg,#17393066,#0f273233);color:#c9e0d2;transition:background .2s,border-color .2s}.war-story-route button small{display:block;font:6px/1.6 Space,sans-serif;letter-spacing:.03em;color:#88ae9c;margin-bottom:8px}.war-story-route button strong{display:block;font:500 11px/1.6 Space,sans-serif}.war-story-route button span{display:flex;gap:5px;align-items:center;font-size:8px;margin-top:9px;color:#8fbaa3}.war-story-route button span svg{width:10px;height:10px}.war-story-route button:hover{background:#214b3f66;border-color:#83b79c}.war-story-route button:focus-visible{outline:2px solid #bcdfbd;outline-offset:2px}.story-jump optgroup{background:#102b28;color:#cbe2cf}.story-jump option{color:#cbe2cf;background:#102b28}
@media(min-width:1161px){body.story-active .war-story-route>div{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1160px){.war-story-route>div{grid-template-columns:repeat(4,1fr)}.war-story-route button strong{font-size:12px}.war-story-route button small{font-size:7px}}
@media(max-width:650px){.war-story-route>div{grid-template-columns:1fr 1fr}.war-story-route>h3{font-size:21px}.war-story-route button strong{font-size:12px}.war-story-route button span{font-size:9px}.war-story-route button small{font-size:7px}}
@media(prefers-reduced-motion:reduce){.war-story-route>div>button{transition:none}}
.scene-arrow-label.attack{fill:#ffb0a3}.scene-arrow-label.defense{fill:#a6f1df}.scene-arrow-label.support{fill:#d3bdff}.scene-arrow-label.alliance{fill:#a7d4ff}

.story-voice-entry{font-size:10px;color:#a6d7c6;padding:3px 0 8px;min-height:32px;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#446d60}.story-launch .story-voice-entry{margin-top:-5px}.voice-options-dialog{width:620px;max-width:calc(100vw - 24px);max-height:90dvh;padding:27px;background:#0a202a;overflow:auto}.voice-options-dialog h2{font-size:30px;max-width:410px}.voice-options-intro{font-size:13px;line-height:1.85;color:#a8c5cb}.voice-options-dialog>label{display:block;margin:18px 0 8px;font-size:11px;color:#bed8d5}.voice-options-dialog select{display:block;width:100%;max-width:100%;padding:12px 10px;margin-top:8px;font-size:12px;min-height:44px;white-space:normal}.voice-availability{font-size:10px;color:#87b9aa;line-height:1.8;margin:9px 0 20px}.voice-preview-box{border:1px solid #3a605b;background:#112d32;border-radius:9px;padding:20px;margin-top:22px}.voice-preview-box>p:not(.eyebrow){font:16px/1.9 Georgia,serif;color:#cfe0d9}.voice-preview-box .text-button{font-size:12px;min-height:40px}.voice-preview-box #voice-test-status{font:11px/1.8 'Segoe UI',sans-serif;color:#8fbaab;margin:10px 0 0}.voice-options-note{font:11px/1.9 'Segoe UI',sans-serif;color:#87a9af;margin:18px 0}.voice-options-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px}.voice-options-actions .primary-button{min-height:44px}.voice-options-actions .text-button{min-height:44px;font-size:11px}.current-play .text-button{font-size:10px}
@media(max-width:650px){.voice-options-dialog{padding:20px 18px}.voice-options-dialog h2{font-size:27px}.voice-options-intro{font-size:12px}.voice-options-dialog select{font-size:11px}.voice-preview-box{padding:16px}.voice-preview-box>p:not(.eyebrow){font-size:15px}}
