.map-container,.map-container.leaflet-container{background:var(--color-paper);width:100%;height:100%}.map-container .leaflet-tile-pane{filter:brightness(.92)contrast(1.35)}.map-container .map-province-boundary{stroke:var(--color-ink);stroke-opacity:.18;stroke-width:.8px}.map-container .map-region--north{--region-fill:var(--color-map-north-fill);--region-line:var(--color-map-north-line);--region-hover:var(--color-map-north-hover)}.map-container .map-region--central{--region-fill:var(--color-map-central-fill);--region-line:var(--color-map-central-line);--region-hover:var(--color-map-central-hover)}.map-container .map-region--south{--region-fill:var(--color-map-south-fill);--region-line:var(--color-map-south-line);--region-hover:var(--color-map-south-hover)}.map-container .map-region{fill:var(--region-fill);stroke:var(--region-line);stroke-width:1px;stroke-linejoin:round;cursor:inherit;transition:fill .15s}.map-container .map-region:hover{fill:var(--region-hover)}.map-marker{background:var(--color-teal);border:2px solid var(--color-surface);box-sizing:border-box;border-radius:50%;width:14px;height:14px;transition:transform .15s;display:block}.leaflet-marker-icon:hover .map-marker{transform:scale(1.15)}.map-marker--selected{background:var(--color-signal);border:3px solid var(--color-surface);outline:2px solid var(--color-ink);width:22px;height:22px}.map-container .leaflet-marker-icon:focus-visible{outline:2px solid var(--color-ink);outline-offset:3px;border-radius:50%}.map-marker--photo{background:var(--color-paper);border:2px solid var(--color-surface);outline:1px solid color-mix(in srgb,var(--color-ink)20%,transparent);width:44px;height:44px;animation:.18s ease-out map-pin-in;position:relative}.leaflet-marker-icon:hover .map-marker--photo{transform:none}.map-marker--photo.map-marker--selected{background:var(--color-paper);border:3px solid var(--color-signal);outline:2px solid var(--color-ink);width:56px;height:56px}.map-marker-img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.map-marker-name{text-overflow:ellipsis;white-space:nowrap;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-button);max-width:180px;color:var(--color-ink);pointer-events:none;padding:2px 7px;font-size:12px;font-weight:600;line-height:1.4;display:none;position:absolute;top:calc(100% + 6px);left:50%;overflow:hidden;transform:translate(-50%)}.map-marker--selected .map-marker-name,.leaflet-marker-icon:focus-visible .map-marker-name{display:block}@media (hover:hover){.leaflet-marker-icon:hover .map-marker-name{display:block}}@keyframes map-pin-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.map-marker{transition:none}.leaflet-marker-icon:hover .map-marker{transform:none}.map-marker--photo{animation:none}}.map-container .leaflet-bar{border:1px solid var(--color-line);border-radius:var(--radius-button);box-shadow:none}.map-container .leaflet-bar a{background:var(--color-surface);width:32px;height:32px;color:var(--color-ink);border-bottom:1px solid var(--color-line);font-weight:400;line-height:30px}.map-container .leaflet-bar a:last-child{border-bottom:none}.map-container .leaflet-bar a:first-child,.map-container .leaflet-bar a:last-child{border-radius:0}.map-container .leaflet-bar a:hover{background:var(--color-paper);color:var(--color-ink)}.map-container .leaflet-bar a:focus-visible{outline:2px solid var(--color-teal);outline-offset:-2px}.map-container .leaflet-control-attribution{background:color-mix(in srgb,var(--color-surface)85%,transparent);color:var(--color-ink-2);font-size:10px}.map-popup{z-index:1000;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card);width:280px;position:absolute;bottom:24px;left:20px;overflow:hidden}.map-popup--top{top:20px;bottom:auto}.map-popup-card-link{color:inherit;text-decoration:none;display:block}.map-popup-card-link:focus-visible{outline:2px solid var(--color-teal);outline-offset:-2px}.map-popup-thumb{aspect-ratio:16/9;background:var(--color-paper);width:100%;position:relative;overflow:hidden}.map-popup-thumb-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .2s ease-out;display:block}.map-popup-thumb-img.is-loaded{opacity:1}@media (prefers-reduced-motion:reduce){.map-popup-thumb-img{transition:none}}.map-popup-body{padding:12px 14px 14px}.map-popup-type{margin-bottom:4px}.map-popup-name{font-family:var(--font-serif),"Source Serif 4",serif;color:var(--color-ink);margin-bottom:3px;font-size:17px;font-weight:600;line-height:1.25}.map-popup-card-link:hover .map-popup-name{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.map-popup-province{letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-2);margin-bottom:10px;font-size:10px;font-weight:500}.map-popup-link{color:var(--color-teal);text-underline-offset:3px;font-size:13px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px}.map-popup-card-link:hover .map-popup-link{color:var(--color-signal-text)}.map-popup-close{z-index:1;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-button);width:28px;height:28px;color:var(--color-ink);cursor:pointer;justify-content:center;align-items:center;font-size:16px;line-height:1;display:flex;position:absolute;top:6px;right:6px}.map-popup-close:hover{border-color:var(--color-ink-2)}.map-popup-close:focus-visible{outline:2px solid var(--color-teal);outline-offset:2px}@media (max-width:768px){.map-popup{touch-action:pan-x;width:auto;max-width:420px;margin:0 auto;bottom:12px;left:12px;right:12px}.map-popup--top{top:12px;bottom:auto}.map-popup-card-link{display:flex}.map-popup-thumb{aspect-ratio:auto;flex-shrink:0;width:112px;min-height:100px}.map-popup-body{min-width:0;padding:10px 50px 10px 12px}.map-popup-name{overflow-wrap:anywhere;font-size:16px}.map-popup-province{margin-bottom:6px}.map-popup-close{width:40px;height:40px;top:4px;right:4px}}
