.area-map{margin:0;background:var(--ink);color:var(--paper);border-radius:5px;overflow:hidden;min-width:0;border:1px solid #43564d}.area-map-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px}.area-map-top span{font-size:11px;font-weight:600;letter-spacing:1.3px;color:var(--lime)}.area-replay{font:inherit;font-size:12px;background:transparent;color:var(--paper);border:1px solid #788b7c;border-radius:3px;padding:8px 12px;min-height:36px}.area-replay:hover{background:#ffffff12}.area-map-scene{display:block;width:100%;height:auto;background:#1b3330}.area-map-scene .terrain{fill:none;stroke:#40564b;stroke-width:1;opacity:.65}.area-map-scene .river{fill:none;stroke:#5c8d88;stroke-width:10;opacity:.48}.area-map-scene .river-edge{fill:none;stroke:#8ab2a6;stroke-width:1;opacity:.5}.area-map-scene .route{fill:none;stroke:var(--lime);stroke-width:2;stroke-dasharray:5 7;opacity:.65}.area-map-scene .town circle{fill:var(--lime);stroke:#1b3330;stroke-width:3}.area-map-scene .town text{fill:#f6f7f2;font:600 15px 'DM Sans',sans-serif;paint-order:stroke;stroke:#1b3330;stroke-width:5;stroke-linejoin:round}.area-map-scene .town .small{font-size:10px;fill:#b9c9b8;letter-spacing:1px;font-weight:400}.area-map-scene .area-ring{fill:none;stroke:#d6f36a;stroke-width:1;opacity:0;transform-box:fill-box;transform-origin:center}.area-map-scene .map-note{font:10px 'DM Sans',sans-serif;letter-spacing:1px;fill:#b9c9b8}.area-map figcaption{padding:22px}.area-map h2{font-size:26px;line-height:1.25;letter-spacing:-.8px;margin:0 0 13px}.area-map p{font-size:14px;line-height:1.7;color:#d1dbcc;margin:0}.area-map .map-disclaimer{border-top:1px solid #43564d;padding-top:13px;margin-top:16px;font-size:12px;color:#b9c9b8}.area-map .text-link{color:var(--lime);margin-top:15px}.area-map.is-playing .town{animation:town-arrive .6s both}.area-map.is-playing .town:nth-of-type(2){animation-delay:.9s}.area-map.is-playing .town:nth-of-type(3){animation-delay:1.6s}.area-map.is-playing .town:nth-of-type(4){animation-delay:2.3s}.area-map.is-playing .route{stroke-dasharray:500;animation:route-arrive 2.6s .4s both}.area-map.is-playing .area-ring{animation:area-pulse 2.5s .2s 2 both}@keyframes town-arrive{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes route-arrive{from{stroke-dashoffset:500;opacity:0}to{stroke-dashoffset:0;opacity:.65}}@keyframes area-pulse{0%{opacity:0;transform:scale(.4)}25%{opacity:.5}100%{opacity:0;transform:scale(1.8)}}@media(prefers-reduced-motion:reduce){.area-map.is-playing .town,.area-map.is-playing .route,.area-map.is-playing .area-ring{animation:none}.area-replay{display:none}}@media(max-width:760px){.area-map{width:100%;max-width:540px;margin:auto}.area-map-top{padding:16px 18px}.area-map figcaption{padding:20px}.area-map h2{font-size:25px}}
