.shc-results-map{margin:24px 0;padding:18px;border:1px solid #bdceca;border-radius:12px;background:#fff}
.shc-results-map summary{cursor:pointer;min-height:48px;font-size:1.1rem;font-weight:700;color:#215d4b;display:list-item;padding:10px}
.shc-results-map summary:focus-visible,.shc-locate:focus-visible{outline:3px solid #b36c00;outline-offset:3px}
.shc-results-map p{line-height:1.7}.shc-map-canvas{height:420px;max-height:65vh;min-height:280px;isolation:isolate;border-radius:8px;background:#eaf0ed}
.shc-map-legend{display:flex;flex-wrap:wrap;gap:20px}.shc-map-legend span:first-child{color:#205d49}.shc-map-legend span:last-child{color:#8b3f5c}.shc-map-legend span:last-child::first-letter{color:#d987a6}
.shc-locate{padding:12px 18px;min-height:48px;border:1px solid #245c89;border-radius:8px;background:#fff;color:#245c89;font:inherit;cursor:pointer}.shc-locate:disabled{opacity:.6}
.shc-results-map .shc-map-marker{display:flex;align-items:center;justify-content:center;color:white;background:#205d49;border:2px solid white;border-radius:50%;box-shadow:0 1px 5px #333;font-weight:700;font-size:14px;line-height:1;padding:0;text-align:center}.shc-results-map .shc-map-marker>span{display:block;line-height:1;margin:0;padding:0}
.shc-map-marker.is-clinic{background:#f2bfd1;color:#653047;border-color:#fff;border-radius:9px}.shc-results-map .leaflet-popup-content{font-size:16px;line-height:1.6}.shc-results-map .leaflet-popup-content a{display:inline-block;padding:8px 0;color:#205d49;text-decoration:underline}.shc-results-map .leaflet-control-attribution{font-size:11px}
.shc-visit-summary{margin:20px 0 28px;padding:20px;background:#fff8e6;border-left:5px solid #c38a24;border-radius:8px}.shc-visit-summary h3{margin:0 0 16px}.shc-visit-summary ul{padding:0;list-style:none;margin:0}.shc-visit-summary li{display:grid;grid-template-columns:5em 1fr;gap:12px;padding:10px 0;border-bottom:1px solid #e1d4b3}.shc-visit-summary p{margin:16px 0 0;line-height:1.8}
@media(max-width:600px){.shc-results-map{padding:12px}.shc-map-canvas{height:340px}.shc-visit-summary{padding:16px}}

/* Screen-distance clusters and location controls. */
.shc-map-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.shc-map-overview{padding:12px 18px;min-height:48px;border:1px solid #9bac9f;border-radius:8px;background:#f1f5f3;color:#244e3f;font:inherit;cursor:pointer}
.shc-locate:hover,.shc-locate:focus-visible,.shc-locate:active{background:#245c89;color:#fff}
.shc-map-overview:hover,.shc-map-overview:focus-visible,.shc-map-overview:active{background:#205d49;color:#fff}
.shc-map-overview:focus-visible{outline:3px solid #b36c00;outline-offset:3px}
.shc-map-overview:disabled{opacity:.6;cursor:default}
.shc-map-location-help{font-size:15px;margin:8px 0 12px}
.shc-map-legend span:nth-child(2){color:#8b3f5c}.shc-map-legend span:last-child{color:#52635b}
.shc-results-map .shc-map-marker{box-shadow:0 1px 4px #17251f55;font-size:14px}
.shc-results-map .shc-map-marker.is-cluster{font-size:16px;outline:3px solid #ffffff88;outline-offset:0}
.shc-results-map .shc-map-marker.is-clinic{background:#f2bfd1;color:#653047;border-radius:10px}
.shc-results-map .shc-map-marker.is-mixed{background:linear-gradient(135deg,#dceee3 50%,#f6dbe5 50%);color:#223c30;border-color:#fff}
.shc-results-map .shc-map-marker:focus-visible{outline:3px solid #e4a02f;outline-offset:3px}
.shc-map-popup-list>p{border-top:1px solid #d9e2de;padding-top:12px;margin:12px 0;overflow-wrap:anywhere}
.shc-map-status{min-height:2em;font-size:15px}
@media(max-width:600px){.shc-map-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.shc-map-actions button{padding:10px 6px;font-size:15px;line-height:1.5}.shc-map-legend{gap:6px 14px;font-size:14px}.shc-map-canvas{height:380px}}

/* Map-linked facility lists; all location calculations stay in the browser. */
.shc-map-list-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.shc-map-list-actions button,.shc-standard-results,.shc-linked-pagination button{min-height:48px;padding:11px 16px;border:1px solid #17684d;border-radius:8px;background:#fff;color:#0f4d39;font:inherit;font-weight:700;cursor:pointer}
.shc-map-list-actions .shc-map-filter{background:#17684d;color:#fff}
.shc-map-list-actions button:hover,.shc-map-list-actions button:focus-visible,.shc-standard-results:hover,.shc-linked-pagination button:not(:disabled):hover{background:#0f4d39;color:#fff}
.shc-map-list-actions button:disabled,.shc-linked-pagination button:disabled{opacity:.5;cursor:default}
.shc-map-list-actions button:focus-visible,.shc-standard-results:focus-visible,.shc-linked-pagination button:focus-visible{outline:3px solid #e4a02f;outline-offset:3px}
.shc-results-hidden,.shc-linked-results[hidden]{display:none!important}
.shc-linked-results{margin:30px 0;scroll-margin-top:110px}
.shc-linked-results>h2{font-size:27px;margin:0 0 12px}
.shc-linked-count{font-weight:700;margin:8px 0}
.shc-linked-note{color:#52635b;font-size:14px;line-height:1.7;margin:12px 0}
.shc-linked-results .facility-card h3{font-size:23px;line-height:1.45;margin:0 0 10px}
.shc-linked-results .facility-card h3 a{color:#17251f;text-decoration:none}
.shc-facility-distance{font-size:17px;color:#0f4d39;font-weight:750;margin:4px 0 12px}
.shc-card-specialties{margin:0 0 12px;font-size:14px}.shc-card-specialties summary{padding:10px 0;min-height:44px;cursor:pointer;font-weight:700}.shc-card-specialties p{overflow-wrap:anywhere}
.shc-card-phone{display:inline-flex;align-items:center;min-height:44px;font-weight:700;margin-bottom:12px}
.shc-linked-pagination{display:flex;justify-content:center;align-items:center;gap:18px;margin:24px 0}
.shc-linked-pagination span{font-weight:700;white-space:nowrap}
@media(max-width:650px){.shc-map-list-actions{display:grid;grid-template-columns:1fr}.shc-map-list-actions button{width:100%;font-size:16px}.shc-linked-results>h2{font-size:23px}.shc-linked-pagination{gap:10px}.shc-linked-pagination button{padding:10px;font-size:15px}}
