.rdca-map { height: 440px; width: 100%; margin: 18px 0; border: 1px solid var(--rdca-border, #807785); border-radius: 18px; z-index: 1; color: #202020; background: #f2f1f3; }
.rdca-map[hidden], .rdca-map-directory [hidden] { display: none !important; }
.rdca-map-directory { color: var(--rdca-ink, #24212b); }
.rdca-map-directory .rdca-directory__filters { margin: 24px 0; }
.rdca-map-directory .rdca-directory__filters label { display: grid; gap: 8px; font-weight: 650; }
.rdca-map-directory select { min-height: 48px; max-width: 100%; width: 100%; padding: 10px; color: inherit; background: white; border: 1px solid #807785; border-radius: 8px; font: inherit; }
.rdca-map a, .rdca-map a:hover { color: #163c83; }
.rdca-map .leaflet-control-attribution { background: #fff; color: #222; }
.rdca-map .leaflet-control-zoom a { width: 44px; height: 44px; line-height: 44px; }
.rdca-map img { max-width: none !important; }
.rdca-map-pin { display: grid; place-items: center; border: 2px solid white; border-radius: 50% 50% 50% 0; transform-origin: center; background: #542a84; color: white; font: 700 16px/1 sans-serif; box-shadow: 0 2px 6px #0006; }
.rdca-map-pin--F { background: #155d60; }
.rdca-map-pin--G { background: #924019; }
.rdca-map-cluster { border-radius: 50%; background: #292137; border: 3px solid white; color: #fff; display: grid; place-items: center; font: 700 17px/1 sans-serif; box-shadow: 0 0 0 3px #29213780; }
.rdca-map-list { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.rdca-map-list > li { padding: 20px; border: 1px solid var(--rdca-border, #807785); border-radius: 14px; background: var(--rdca-surface, #fff); overflow-wrap: anywhere; }
.rdca-map-list > .rdca-map-list__card { padding: 0; border: 0; border-radius: 0; background: transparent; }
.rdca-org-card__coordinate-note { color: var(--rdca-muted); font-size: .8rem; }
.rdca-map-list h4 { margin: 8px 0; font-size: 1.1rem; }
.rdca-map-list p { margin: 8px 0; }
.rdca-map-directory nav { display: flex; align-items: center; justify-content: center; gap: 16px; flex-wrap: wrap; }
.rdca-map-directory :focus-visible, .rdca-map :focus-visible { outline: 3px solid #c03d66; outline-offset: 3px; }
.rdca-map .leaflet-popup-close-button { min-width: 32px; min-height: 32px; font-size: 24px; }
.rdca-map .leaflet-popup-content { font: 15px/1.5 system-ui, sans-serif; }
@media (max-width: 800px) { .rdca-map-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 540px) { .rdca-map { height: 350px; } .rdca-map-list { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .rdca-map * { transition: none !important; animation: none !important; } }
@media (forced-colors: active) { .rdca-map-pin, .rdca-map-cluster { border: 3px solid ButtonText; background: ButtonFace; color: ButtonText; } }
