.experience-filters { align-items:stretch; background:transparent; border:0; border-radius:0; display:grid; gap:.75rem; grid-template-columns:1fr; margin-bottom:1rem; padding:0; }
.discovery-filter { background:#fff; border:1px solid #cbd6cd; border-radius:.75rem; color:#17362e; min-width:0; }
.discovery-filter__label { color:#52635b; display:block; font-size:.68rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.discovery-filter--location { display:grid; gap:.4rem; padding:.7rem; }
.location-search-input { background:#fff; border:1px solid #bdc9c1; border-radius:.65rem; color-scheme:light; min-height:2.8rem; min-width:0; padding:.1rem; }
.location-search-input gmp-place-autocomplete { background:#fff; border:0; border-radius:.45rem; color:#17362e; color-scheme:light; display:block; font:inherit; min-height:2.8rem; padding:.05rem; width:100%; }
.location-search-input:focus-within { border-color:#1f634a; box-shadow:0 0 0 3px rgb(31 99 74 / 15%); }
.discovery-filter .field-help { font-size:.75rem; margin:0; }
.discovery-filter-actions { display:grid; gap:.5rem; grid-template-columns:repeat(2,minmax(0,1fr)); position:relative; }
.discovery-filter--activities,.discovery-filter--more { padding:0; position:relative; }
.discovery-filter summary { align-items:center; cursor:pointer; display:flex; justify-content:space-between; list-style:none; min-height:3.55rem; padding:.65rem .75rem; }
.discovery-filter summary::-webkit-details-marker { display:none; }
.discovery-filter summary strong { display:block; font-size:.85rem; margin-top:.15rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.filter-chevron { border-bottom:2px solid #2f6d52; border-right:2px solid #2f6d52; flex:0 0 auto; height:.45rem; margin-right:.15rem; transform:rotate(45deg) translateY(-.12rem); transition:transform .15s ease; width:.45rem; }
.discovery-filter[open] .filter-chevron { transform:rotate(225deg) translate(-.12rem,.12rem); }
.discovery-type-options,.discovery-filter--distance { background:#fff; border:1px solid #cbd6cd; border-radius:.75rem; box-shadow:0 .8rem 1.5rem rgb(23 54 46 / 18%); left:0; position:absolute; right:0; top:calc(100% + .4rem); z-index:10; }
.discovery-filter--activities .discovery-type-options { right:auto; width:calc(200% + .5rem); }
.discovery-filter--more .discovery-filter--distance { left:calc(-100% - .5rem); }
.discovery-type-options { display:grid; gap:.4rem; max-height:min(22rem,55vh); overflow-y:auto; padding:.65rem; }
.discovery-type-option { align-items:center; background:#fff; border:1px solid #d8ddd5; border-radius:.6rem; color:#17362e; cursor:pointer; display:flex; font:inherit; font-size:.78rem; font-weight:800; gap:.45rem; min-height:2.55rem; padding:.5rem .6rem; text-align:left; }
.discovery-type-option:hover,.discovery-type-option.is-selected { border-color:#2f6d52; }
.discovery-type-option.is-selected { background:#edf5ef; box-shadow:inset 0 0 0 1px #2f6d52; }
.discovery-type-option__icon { align-items:center; background:#d9e6d8; border-radius:.45rem; display:flex; flex:0 0 auto; height:1.8rem; justify-content:center; width:1.8rem; }
.discovery-type-option__icon svg { fill:none; height:1rem; stroke:#1f634a; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; width:1rem; }
.discovery-filter--distance { display:grid; gap:.65rem; padding:.75rem; }
.distance-filter__heading { display:grid; gap:.2rem; }
.distance-filter__heading output { color:#1f634a; font-size:.8rem; font-weight:800; }
.discovery-filter--distance input[type="range"] { accent-color:#1f634a; cursor:pointer; margin:0; min-height:auto; padding:0; width:100%; }
.discovery-filter--distance input[type="range"]:disabled { cursor:not-allowed; opacity:.45; }
.distance-filter__range { color:#617169; display:flex; font-size:.7rem; justify-content:space-between; }
.discovery-filter:focus-within { border-color:#2f6d52; box-shadow:0 0 0 3px rgb(31 99 74 / 12%); }
.discovery-host-card { align-items:flex-start; background:#edf3ed; border:1px dashed #d8ddd5; border-radius:1rem; color:#17362e; display:flex; gap:.9rem; margin-top:.25rem; min-height:6.5rem; padding:1.25rem; text-align:left; text-decoration:none; transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease; }
.discovery-host-card:hover { border-color:#2f6d52; transform:translateY(-2px); }
.discovery-host-card .experience-type-card__icon { align-items:center; background:#d9e6d8; border-radius:.75rem; display:flex; flex:0 0 auto; font-size:1.5rem; height:2.7rem; justify-content:center; width:2.7rem; }
.discovery-host-card strong,.discovery-host-card small { display:block; }
.discovery-host-card strong { font-size:1.05rem; line-height:1.2; }
.discovery-host-card small { color:#617169; font-size:.86rem; line-height:1.35; margin-top:.3rem; max-width:30rem; }
.experience-result-count { color:#52635b; font-size:.82rem; font-weight:800; margin:0; }
.discovery-map-pin { display:block; height:2.5rem; transform-origin:bottom center; transition:transform .15s ease; width:2.5rem; }
.discovery-map-pin.is-selected { transform:scale(1.35); }
.map-card__heading { align-items:center; display:flex; gap:.55rem; padding-bottom:.35rem; }
.map-card__icon { align-items:center; background:#d9e6d8; border-radius:.45rem; display:flex; flex:0 0 auto; height:2rem; justify-content:center; width:2rem; }
.map-card__icon svg { fill:none; height:1.1rem; stroke:#1f634a; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; width:1.1rem; }

@media (max-width:32rem) {
 .discovery-filter-actions { grid-template-columns:1fr; }
 .discovery-filter--activities .discovery-type-options { right:0; width:auto; }
 .discovery-filter--more .discovery-filter--distance { left:0; }
}
