/* Scoped map component; Leaflet CSS stays in vendor/leaflet. */
.sentra-map { --map-text: #172b3a; --map-surface: #f4f7fa; --map-border: #66788a; color: var(--map-text); background: var(--map-surface); padding: 1rem; border: 1px solid var(--map-border); border-radius: .75rem; overflow-wrap: anywhere; min-width: 0; font-size: 1rem; line-height: 1.5; }
.sentra-map a { color: #07558a; text-decoration: underline; }
.sentra-map button { min-height: 44px; padding: .625rem 1rem; margin: .25rem .5rem .5rem 0; border: 1px solid #07558a; border-radius: .4rem; background: #07558a; color: white; cursor: pointer; font: inherit; }
.sentra-map button:disabled { background: #536576; border-color: #536576; cursor: default; }
.sentra-map button:focus-visible, .sentra-map a:focus-visible { outline: 3px solid #a54d00; outline-offset: 3px; }
.sentra-map [hidden] { display: none !important; }
.sentra-map__canvas { height: 360px; height: clamp(260px, 55vh, 480px); width: 100%; isolation: isolate; border: 1px solid var(--map-border); }
.sentra-map__list { padding-inline-start: 1.5rem; max-height: 28rem; overflow: auto; }
.sentra-map__list li { padding-block: .5rem; }
.sentra-map .leaflet-control-attribution { font-size: 12px; background: white; color: #172b3a; }
.sentra-map .leaflet-control-zoom a { min-width: 44px; min-height: 44px; line-height: 44px; }
.sentra-map--preview { background: #fff; border: 0; padding: 0; font-size: 13px; line-height: 1.5; }
.sentra-map--preview h3 { margin: 0 0 8px; font-size: 16px; color: #10283f; }
.sentra-map--preview p { margin: 8px 0; color: #56616b; }
.sentra-map--preview .sentra-map__canvas { position: relative; height: 300px; border: 0; border-radius: 12px; background: #eef3f5; }
.sentra-map--preview button { background: #10283f; border-color: #10283f; font-size: 13px; }
.sentra-map--preview details { margin-top: 8px; color: #56616b; }
.sentra-map--preview summary { cursor: pointer; min-height: 32px; }
.sentra-map--preview details a { display: block; min-height: 32px; }
