/* iDD Providers: the provider finder. Mobile first.
   Colours follow the active theme through these variables; each has a neutral fallback. */
.iddp-finder{
  --iddp-ink:var(--ink,#0B2431);--iddp-accent:var(--orange,#F69F55);--iddp-accent-2:var(--ember,#E65A35);
  --iddp-muted:var(--muted,#5C6E77);--iddp-line:var(--line,rgba(9,36,50,.14));--iddp-surface:var(--surface,#fff);
  --iddp-r:var(--r,18px);--iddp-map-h:340px;--iddp-tiles:grayscale(1) contrast(.94) brightness(1.03);
  display:grid;gap:16px;color:var(--iddp-ink)
}
.iddp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.iddp-finder__map{order:-1;min-width:0}
.iddp-map{position:relative;z-index:0;height:var(--iddp-map-h);border:1px solid var(--iddp-line);border-radius:var(--iddp-r);overflow:hidden;background:#E9EEF0}
.iddp-map__wait{position:absolute;inset:0;display:grid;place-items:center;margin:0;font-weight:600;color:var(--iddp-muted)}
.iddp-map .leaflet-tile-pane{filter:var(--iddp-tiles)}
.iddp-map .leaflet-container,.iddp-map.leaflet-container{font:inherit;background:#E9EEF0}
.iddp-map .leaflet-control-attribution{font-size:10px;background:rgba(255,255,255,.8)}
.iddp-map .leaflet-bar a{width:36px;height:36px;line-height:36px;color:var(--iddp-ink)}
.iddp-pin span{display:block;width:28px;height:28px;margin:2px 1px;border-radius:50% 50% 50% 0;background:linear-gradient(135deg,var(--iddp-accent),var(--iddp-accent-2));border:3px solid #fff;box-shadow:0 3px 8px rgba(0,0,0,.35);transform:rotate(-45deg);transition:transform .2s}
.iddp-pin:hover span{transform:rotate(-45deg) scale(1.15)}
.iddp-map .leaflet-popup-content-wrapper{border-radius:14px;box-shadow:0 12px 32px -12px rgba(0,0,0,.4)}
.iddp-map .leaflet-popup-content{margin:14px 16px;font-size:14px;line-height:1.45;color:#0B2431}
.iddp-map .leaflet-popup-content strong{display:block;font-size:15px}
.iddp-map .leaflet-popup-content span{display:block;margin:2px 0 8px;color:#5C6E77}
.iddp-map .leaflet-popup-content a{font-weight:600;color:#B8401C}

.iddp-finder__side{display:flex;flex-direction:column;min-width:0}
.iddp-search{display:flex;gap:8px}
.iddp-search__box{flex:1;min-width:0}
.iddp-search input{width:100%;min-height:52px;padding:0 18px;border:1px solid var(--iddp-line);border-radius:999px;background:var(--iddp-surface);font:inherit;font-size:16px;color:var(--iddp-ink)}
.iddp-search input:focus{outline:0;border-color:var(--iddp-accent-2);box-shadow:0 0 0 4px rgba(246,159,85,.28)}
.iddp-near{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 16px;border:1px solid var(--iddp-line);border-radius:999px;background:var(--iddp-surface);font:inherit;font-size:14px;font-weight:600;color:var(--iddp-ink);cursor:pointer}
.iddp-near span{width:10px;height:10px;border-radius:50%;border:2px solid currentColor;box-shadow:0 0 0 3px rgba(45,127,249,.18)}
.iddp-near.is-on{background:var(--iddp-ink);border-color:var(--iddp-ink);color:#fff}
.iddp-chips{display:flex;gap:8px;margin:14px -16px 0;padding:0 16px 4px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.iddp-chips::-webkit-scrollbar{display:none}
.iddp-chips button{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--iddp-line);border-radius:999px;background:var(--iddp-surface);font:inherit;font-size:14px;font-weight:600;color:var(--iddp-ink);cursor:pointer}
.iddp-chips button small{font-size:12px;color:var(--iddp-muted)}
.iddp-chips button.is-on{background:var(--iddp-ink);border-color:var(--iddp-ink);color:#fff}
.iddp-chips button.is-on small{color:var(--iddp-accent)}
.iddp-count{margin:16px 0 8px;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--iddp-muted)}
.iddp-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--iddp-line)}
.iddp-item{border-bottom:1px solid var(--iddp-line)}
.iddp-item[hidden]{display:none}
.iddp-item__main{display:flex;gap:14px;align-items:flex-start;width:100%;padding:16px 4px 8px;border:0;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer}
.iddp-item__pin{flex:none;width:14px;height:14px;margin-top:5px;border-radius:50% 50% 50% 0;background:linear-gradient(135deg,var(--iddp-accent),var(--iddp-accent-2));transform:rotate(-45deg)}
.iddp-item__txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.iddp-item__txt strong{font-size:16px;font-weight:600;line-height:1.3}
.iddp-item__txt span{font-size:14px;line-height:1.45;color:var(--iddp-muted)}
.iddp-item__txt small{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:2px;font-size:13px;font-weight:600}
.iddp-item__km{font-style:normal;color:var(--iddp-accent-2)}
.iddp-item__links{display:flex;flex-wrap:wrap;gap:8px;padding:2px 4px 16px 32px}
.iddp-item__links a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:1px solid var(--iddp-line);border-radius:999px;font-size:13px;font-weight:600;color:var(--iddp-ink);text-decoration:none}
.iddp-item__links a:hover,.iddp-item__links a:focus-visible{background:var(--iddp-ink);border-color:var(--iddp-ink);color:#fff}
.iddp-item.is-on .iddp-item__main strong{color:var(--iddp-accent-2)}
.iddp-empty{margin:20px 0 0;padding:22px;border:1px dashed var(--iddp-line);border-radius:var(--iddp-r);text-align:center;color:var(--iddp-muted)}
.iddp-empty[hidden]{display:none}
.iddp-finder--map{--iddp-map-h:420px}

@media (min-width:960px){
  .iddp-finder--list{grid-template-columns:minmax(340px,430px) minmax(0,1fr);gap:28px;align-items:start;--iddp-map-h:min(74vh,700px)}
  .iddp-finder--list .iddp-finder__map{order:0;position:sticky;top:104px}
  .iddp-finder--list .iddp-finder__side{max-height:var(--iddp-map-h)}
  .iddp-finder--list .iddp-list{flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
  .iddp-chips{flex-wrap:wrap;margin-inline:0;padding-inline:0;overflow:visible}
  .iddp-chips button{min-height:38px;font-size:13px}
  .iddp-finder--map{--iddp-map-h:520px}
}
@media (prefers-reduced-motion:reduce){.iddp-pin span{transition:none}}
