/* Keep Leaflet geometry outside Duda's inline style serialization. */
#kjbf-directory-root .directory-search-context,.directory-search-context{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:8px 0;color:#52665c;font:15px/1.5 Arial,sans-serif}
#kjbf-directory-root .directory-edit-search,.directory-edit-search{min-height:44px;padding:6px 12px;border:1px solid #8b9c93;border-radius:3px;background:#fffdf7;color:#174934;font:700 14px/1.4 Arial,sans-serif;cursor:pointer}
#kjbf-directory-root .directory-postal-credit,.directory-postal-credit{font-size:12px;color:#52665c;text-decoration:underline}
#kjbf-directory-root #query[aria-invalid=true],#query[aria-invalid=true]{border:2px solid #9c3329}
#kjbf-directory-root #result-summary,#result-summary{scroll-margin-top:100px}
@media(max-width:800px){#kjbf-directory-root .directory-search-context,.directory-search-context{align-items:flex-start}#kjbf-directory-root .directory-search-context>span,.directory-search-context>span{flex-basis:100%}}

/* Mobile map modal and bounded church cards. */
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map{position:fixed !important;inset:0 !important;box-sizing:border-box !important;width:100% !important;height:100vh !important;height:100dvh !important;max-width:none !important;max-height:none !important;margin:0 !important;padding:0 !important;border:0 !important;background:#edf4f0 !important;color:#173d30 !important;overflow:hidden !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map[open]{display:flex !important;flex-direction:column !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map::backdrop{background:#10251eaa !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .mobile-map-header{display:flex !important;flex:none !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;padding:calc(10px + env(safe-area-inset-top)) 12px 10px !important;background:#153f35 !important;color:#fffdf7 !important;z-index:1000 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .mobile-map-header h2{margin:0 !important;font:700 19px/1.3 Georgia,serif !important;color:#fffdf7 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .mobile-map-header p{margin:3px 0 0 !important;font:14px/1.4 Arial,sans-serif !important;color:#f2ead7 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .mobile-map-close{flex:none !important;min-height:48px !important;min-width:110px !important;padding:8px 12px !important;border:1px solid #e4d6b6 !important;border-radius:5px !important;background:#fffdf7 !important;color:#173d30 !important;font:700 16px/1.3 Arial,sans-serif !important;cursor:pointer !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map #map-view{position:relative !important;display:flex !important;flex:1 !important;flex-direction:column !important;min-height:0 !important;width:100% !important;margin:0 !important;padding:0 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-heading{display:none !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map #church-map{flex:1 !important;width:100% !important;height:100% !important;min-height:0 !important;border:0 !important;border-radius:0 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .mobile-map-card{box-sizing:border-box !important;position:absolute !important;z-index:1100 !important;bottom:calc(26px + env(safe-area-inset-bottom)) !important;left:10px !important;right:10px !important;width:auto !important;max-width:calc(100% - 20px) !important;max-height:43% !important;overflow:auto !important;overscroll-behavior:contain !important;touch-action:pan-y !important;padding:14px !important;background:#fffdf7 !important;border:1px solid #c8d1c8 !important;border-radius:12px !important;box-shadow:0 4px 24px #10251e40 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .mobile-map-card[hidden]{display:none !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .mobile-card-close{position:absolute !important;top:4px !important;right:4px !important;min-width:44px !important;min-height:44px !important;border:0 !important;border-radius:6px !important;background:#fffdf7 !important;color:#173d30 !important;font:28px/1 Arial,sans-serif !important;cursor:pointer !important;z-index:2 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup{display:grid !important;grid-template-columns:minmax(0,1fr) !important;gap:8px !important;min-width:0 !important;max-width:100% !important;width:auto !important;color:#173d30 !important;font:14px/1.4 Arial,sans-serif !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-name{display:block !important;min-width:0 !important;max-width:100% !important;margin:0 !important;padding:0 38px 0 0 !important;white-space:normal !important;overflow-wrap:anywhere !important;font:700 18px/1.3 Georgia,serif !important;color:#173d30 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-meta{display:flex !important;flex-wrap:wrap !important;gap:3px 10px !important;margin:0 !important;min-width:0 !important;font:14px/1.4 Arial,sans-serif !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-meta span{white-space:normal !important;overflow-wrap:anywhere !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-version-tags{display:flex !important;flex-wrap:wrap !important;gap:4px !important;margin:0 !important;min-width:0 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-actions{display:grid !important;grid-template-columns:minmax(0,1fr) !important;gap:6px !important;margin:0 !important;min-width:0 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-actions a{box-sizing:border-box !important;display:flex !important;align-items:center !important;justify-content:center !important;min-height:44px !important;max-width:100% !important;padding:7px 10px !important;white-space:normal !important;overflow-wrap:anywhere !important;text-align:center !important;font:700 14px/1.4 Arial,sans-serif !important;text-decoration:none !important;border:1px solid #174934 !important;border-radius:4px !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-primary{background:#174934 !important;color:#fff !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-secondary{background:#fffdf7 !important;color:#174934 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .mobile-service-times{display:block !important;min-width:0 !important;margin:0 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .mobile-service-times summary{display:list-item !important;cursor:pointer !important;min-height:36px !important;padding:6px 0 !important;font:700 14px/1.4 Arial,sans-serif !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-schedule{display:grid !important;grid-template-columns:minmax(0,1fr) !important;gap:2px !important;min-width:0 !important;margin:0 !important;padding:8px !important;border:1px solid #d9ded6 !important;background:#f6f7f2 !important;border-radius:4px !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-service{display:grid !important;grid-template-columns:minmax(0,1fr) minmax(0,auto) !important;gap:8px !important;margin:0 !important;padding:4px 0 !important;min-width:0 !important;border-top:1px solid #e1e4dd !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-service span{min-width:0 !important;white-space:normal !important;overflow-wrap:anywhere !important;font:14px/1.4 Arial,sans-serif !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .map-popup-service strong{min-width:0 !important;white-space:normal !important;font:700 13px/1.4 Arial,sans-serif !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .leaflet-control-zoom a{width:44px !important;height:44px !important;line-height:44px !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map .leaflet-popup{display:none !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map button:focus-visible, :is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map a:focus-visible, :is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-mobile-map summary:focus-visible{outline:3px solid #b38735 !important;outline-offset:2px !important}

/* Approved option A: compact marks beneath the distance. */
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .church-card.compact-status{grid-template-columns:62px minmax(0,1fr) !important;align-items:start !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .church-card.compact-status .card-details{grid-column:2 !important;grid-row:1 !important;min-width:0 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .church-card.compact-status .card-actions{grid-column:1/-1 !important;grid-row:2 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .distance-rail{grid-column:1 !important;grid-row:1 !important;display:flex !important;flex-direction:column !important;align-items:center !important;gap:8px !important;width:62px !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .distance-rail .distance-badge{flex:none !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .compact-mark{display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;gap:3px !important;min-width:44px !important;min-height:44px !important;max-width:100% !important;margin:0 !important;padding:2px !important;border:0 !important;background:transparent !important;color:#174934 !important;cursor:pointer !important;box-shadow:none !important;transform:none !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .compact-mark:focus-visible{outline:3px solid #b58c3b !important;outline-offset:2px !important;border-radius:4px !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .compact-icon{display:flex !important;align-items:center !important;justify-content:center !important;width:40px !important;height:40px !important;flex:none !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .compact-icon img{display:block !important;width:100% !important;height:100% !important;object-fit:contain !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .compact-icon svg{display:block !important;width:100% !important;height:100% !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .compact-label{font:700 10px/1.2 "Source Sans 3",Arial,sans-serif !important;text-align:center !important;white-space:normal !important;max-width:62px !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .compact-warning{color:#962c22 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .compact-warning .compact-icon{width:30px !important;height:30px !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-status-explanation{box-sizing:border-box !important;width:min(420px,calc(100% - 32px)) !important;max-width:calc(100% - 32px) !important;max-height:80vh !important;padding:20px !important;border:1px solid #a8baa9 !important;border-radius:8px !important;background:#fffdf7 !important;color:#173d30 !important;overflow:auto !important;overscroll-behavior:contain !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-status-explanation::backdrop{background:#10251e77 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-status-explanation form{display:block !important;text-align:right !important;margin:0 !important;padding:0 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-status-explanation button{min-height:44px !important;padding:6px 12px !important;border:1px solid #b8c6bb !important;border-radius:4px !important;background:white !important;color:#173d30 !important;font:700 14px/1.4 Arial,sans-serif !important;cursor:pointer !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-status-explanation h2{font:700 21px/1.3 Georgia,serif !important;margin:12px 0 !important;color:#173d30 !important}
:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) #kjbf-status-explanation p{font:16px/1.5 Arial,sans-serif !important;white-space:normal !important;overflow-wrap:anywhere !important;color:#173d30 !important}
@media(min-width:801px){:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .church-card.compact-status .card-actions{grid-column:2/-1!important}}
@media(max-width:350px){:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .church-card.compact-status{grid-template-columns:54px minmax(0,1fr)!important;gap:13px!important}:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .distance-rail{width:54px!important}:is(#dm #kjbf-directory-root,#kjbf-directory-root,body) .compact-label{max-width:54px!important}}

/* Make the map action distinct in the results summary on every viewport. */
:is(#dm #kjbf-directory-root,#kjbf-directory-root) #map-toggle,#map-toggle{min-height:48px;padding:10px 18px;border:2px solid #d8b960;border-radius:3px;background:#174934;color:#fff9e8;font-weight:800;text-decoration:none;cursor:pointer}
:is(#dm #kjbf-directory-root,#kjbf-directory-root) #map-toggle:hover,#map-toggle:hover,:is(#dm #kjbf-directory-root,#kjbf-directory-root) #map-toggle.active,#map-toggle.active{background:#10342c;border-color:#d8b960}
:is(#dm #kjbf-directory-root,#kjbf-directory-root) #map-toggle:focus-visible,#map-toggle:focus-visible{outline:3px solid #174934;outline-offset:3px}
