/* The complete local SVG is the initial view, including short landscape screens. */
.local-map{width:100%;min-width:0;max-width:100%}
.local-map .map-canvas{width:100%;max-width:100%;overflow:auto;overscroll-behavior:auto;scroll-behavior:auto;background:#f5f3eb;border:1px solid #b5bcae}
.local-map[data-map-zoom]:not([data-map-zoom="1"]) .map-canvas{overscroll-behavior:contain}
.local-map .arrival-map-canvas{background:#e2ebf3}
.local-map .map-canvas>svg{display:block;width:100%;min-width:0;max-width:none;height:auto;max-height:min(68vh,660px);max-height:min(68svh,660px);margin-inline:auto}
.local-map[data-map-ready] .map-canvas>svg{max-height:none}
.map-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.map-controls button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:8px 14px;font-size:14px;line-height:1.4;background:var(--paper);color:var(--ink)}
.map-controls [data-map-zoom=in],.map-controls [data-map-zoom=out]{font-size:24px;padding:2px 10px}
.map-controls button[aria-disabled=true]{opacity:.5;cursor:default}
.map-controls .map-scale{margin-inline-start:auto;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
.map-help{font-size:12px;line-height:1.6;margin:10px 0 0}
.local-map .map-canvas:focus-visible{outline:3px solid #174a95;outline-offset:4px;box-shadow:0 0 0 4px #fffaf0}
.local-map .plan-zone text{font-size:var(--map-number-size,20px)!important}
.local-map .plan-dot{r:var(--map-dot-radius,27px);stroke-width:var(--map-dot-stroke,3px)}
.local-map .plan-selection{r:var(--map-selection-radius,34px);stroke-width:var(--map-selection-stroke,3px)}
.local-map .plan-zone[aria-pressed=true] .plan-dot{stroke-width:var(--map-selected-stroke,5px)}
.local-map .plan-zone:focus-visible .plan-selection{stroke-width:var(--map-focus-stroke,5px);stroke-dasharray:var(--map-focus-dash,4px) var(--map-focus-dash,4px)}
.local-map .plan-street{font-size:var(--map-street-size,18px)}
.local-map .plan-copyright{font-size:var(--map-credit-size,13px)}
.local-map .plan-north{font-size:var(--map-north-size,14px)}
.local-map .arrival-site-label{font-size:var(--map-arrival-site-size,29px)}
.local-map .arrival-stop-label{font-size:var(--map-arrival-stop-size,25px)}
.local-map .arrival-stop-line{font-size:var(--map-arrival-line-size,20px)}
.local-map .arrival-stop-symbol{font-size:var(--map-arrival-symbol-size,25px)}
.local-map .arrival-stop-dot{r:var(--map-arrival-dot-radius,22px)}
.local-map .arrival-street{font-size:var(--map-arrival-street-size,19px)}
@media print{.local-map .map-controls,.local-map .map-help{display:none}.local-map .map-canvas{height:auto!important;overflow:visible}.local-map .map-canvas>svg{width:100%!important;height:auto!important;max-height:none}}
