/* ====== TRIPSORB — Search (v0.7.2) ====== */
.sbar{background:var(--ts-sand);border-bottom:1px solid var(--ts-line);padding:20px 0}
.srow{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}
.sbar .grp{flex:1;min-width:160px;background:#fff;border:1px solid var(--ts-line);border-radius:12px;padding:8px 14px;display:flex;flex-direction:column;justify-content:center}
.sbar .grp label{font-size:10.5px;font-weight:700;letter-spacing:.03em;color:var(--ts-slate);text-transform:uppercase;margin-bottom:2px}
.sbar .grp input,.sbar .grp select{border:none;outline:none;background:none;font-size:14px;color:var(--ts-ink);width:100%;padding:0}
.sbar .go{flex:none;background:var(--ts-coral);color:#fff;border:none;border-radius:12px;padding:0 26px;font-weight:700;font-size:15px;cursor:pointer;display:flex;align-items:center;gap:8px}
.sbar .go:hover{background:var(--ts-coral-600)}

.slayout{display:grid;grid-template-columns:264px 1fr;gap:28px;align-items:start;padding:30px 0 70px}
@media(max-width:840px){.slayout{grid-template-columns:1fr;gap:0}}

.filters{position:sticky;top:88px;border:1px solid var(--ts-line);border-radius:16px;padding:18px;background:#fff;max-height:calc(100vh - 108px);overflow-y:auto;overscroll-behavior:contain}
@media(max-width:840px){.filters{position:static;margin-bottom:20px;max-height:none;overflow:visible}.factions{position:static;margin:14px 0 0;padding:0;border-top:none}}
.fgroup{padding:14px 0;border-bottom:1px solid var(--ts-line)}
.fgroup:first-child{padding-top:0}.fgroup:last-of-type{border-bottom:none}
.fgroup h4{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--ts-slate);margin:0 0 10px}
.fopt{display:flex;align-items:center;gap:8px;font-size:13.5px;margin-bottom:8px;cursor:pointer}
.fopt input{width:16px;height:16px;flex:none}
.frange{display:flex;gap:8px}
.frange input{width:100%;border:1px solid var(--ts-line);border-radius:9px;padding:8px;font-size:13px}
.fselect{width:100%;border:1px solid var(--ts-line);border-radius:9px;padding:9px;font-size:13.5px;background:#fff}
.fapply{width:100%;margin-top:14px;background:var(--ts-ink);color:#fff;border:none;border-radius:10px;padding:11px;font-weight:700;cursor:pointer}
.fapply:hover{background:#0c1730}
.fclear{display:block;text-align:center;margin-top:9px;font-size:13px;color:var(--ts-slate)}
.factions{position:sticky;bottom:-18px;background:#fff;margin:12px -18px -18px;padding:12px 18px 18px;border-top:1px solid var(--ts-line);z-index:2}
.factions>.fapply{margin-top:0}

.shead{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.shead .n{font-weight:800;font-size:18px}
.shead .n small{font-weight:400;color:var(--ts-slate);font-size:14px}
.sortsel{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ts-slate)}
.sortsel select{border:1px solid var(--ts-line);border-radius:9px;padding:8px 10px;font-size:13.5px;background:#fff;font-weight:600;color:var(--ts-ink)}

/* toolbar (Save search / List-Map toggle / Sort): never break labels mid-word; wrap the row on small screens */
.shead #saveSearchBtn,.shead .vt,.shead .sortsel{white-space:nowrap}
@media(max-width:760px){
  .shead .n{width:100%}
  .shead > div:not(.n){width:100%;flex-wrap:wrap;gap:8px}
  .shead > div:not(.n) > *{flex:0 0 auto}
  .shead .sortsel{margin-left:auto}
}

.pager{display:flex;justify-content:center;gap:8px;margin-top:34px}
.pager a,.pager span{min-width:40px;height:40px;border-radius:10px;border:1px solid var(--ts-line);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:var(--ts-ink);text-decoration:none}
.pager a:hover{border-color:var(--ts-coral);color:var(--ts-coral)}
.pager .cur{background:var(--ts-coral);color:#fff;border-color:var(--ts-coral)}
.pager .off{opacity:.4;pointer-events:none}

.fbtn{display:none}
@media(max-width:840px){
  .fbtn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--ts-line);background:#fff;border-radius:10px;padding:10px 14px;font-weight:700;font-size:14px;cursor:pointer;margin-bottom:14px}
  .filters.hide{display:none}
}

/* ====== Distance / "near me" filter (v0.36.0) ====== */
.fhint{font-size:12.5px;color:var(--ts-slate);margin:0 0 10px;line-height:1.5}
.fgeo{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--ts-coral-50);color:var(--ts-coral-600,#E8472F);border:1px solid var(--ts-coral);border-radius:10px;padding:10px;font-weight:700;font-size:13.5px;cursor:pointer}
.fgeo:hover{background:#ffe7e0}
.fgeo:disabled{opacity:.7;cursor:default}
.fgeo-err{display:none;color:#b5302f;font-size:12.5px;margin-top:8px}
.fgeo-on{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:var(--ts-lagoon-600)}
.fgeo-on i{font-size:16px}
.fgeo-clear{margin-left:auto;color:var(--ts-slate);text-decoration:none;font-weight:700;font-size:12px;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ts-line)}
.fgeo-clear:hover{background:var(--ts-sand);color:var(--ts-ink)}
.fradius{margin-top:12px}
.fradius-val{font-size:13.5px;color:var(--ts-ink);margin-bottom:7px}
.fradius-val strong{font-size:15px;color:var(--ts-coral)}
.fradius input[type=range]{width:100%;accent-color:var(--ts-coral);cursor:pointer}
.fradius-scale{display:flex;justify-content:space-between;font-size:11px;color:var(--ts-slate);margin-top:3px}
.distbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--ts-coral-50);border:1px solid var(--ts-coral);color:var(--ts-ink);border-radius:12px;padding:10px 14px;font-size:13.5px;margin-bottom:16px}
.distbar i{color:var(--ts-coral)}
.distbar a{margin-left:auto;color:var(--ts-coral-600,#E8472F);font-weight:700;text-decoration:none}
.distbar a:hover{text-decoration:underline}
.sl-item{position:relative}
.dist-chip{position:absolute;top:44px;left:11px;z-index:3;background:var(--ts-ink);color:#fff;border-radius:999px;padding:4px 11px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:4px;box-shadow:0 3px 10px rgba(0,0,0,.25)}

/* people-search entry on the experiences search page (v0.72.0) */
.people-cta{display:flex;align-items:center;gap:8px;background:var(--ts-sand);border:1px solid var(--ts-line);border-radius:12px;padding:11px 16px;margin-bottom:16px;text-decoration:none;color:var(--ts-ink);font-size:14px;font-weight:600}
.people-cta:hover{border-color:var(--ts-coral);color:var(--ts-coral)}
.people-cta strong{color:var(--ts-coral)}
.people-cta .ti-arrow-right{margin-left:auto}
