/* One search form for the website and Android WebView. */
.search-redesign { max-width: 920px; margin-inline: auto; padding: 28px; }
.search-title { font-size: 27px; line-height: 1.2; margin: 0 0 24px; }
.search-redesign .search-label { display: block; font-size: 14px; font-weight: 650; margin-bottom: 10px; }
.search-redesign .search-input { display: block; width: 100%; min-width: 0; min-height: 48px; border: 1px solid var(--line); border-radius: 12px; background: #f8f9f5; padding: 12px 14px; font-size: 16px; }
.search-redesign .city-entry { display: flex; flex-wrap: nowrap; gap: 8px; }
.search-redesign .city-entry input { flex: 1; width: 0; }
.search-redesign #city-search { flex-shrink: 0; padding: 10px 12px; border-radius: 12px; background: #edf1e7; min-height: 48px; }
.search-redesign .location-controls { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 12px; margin-top: 12px; }
.search-redesign #locate-me { min-height: 44px; padding: 10px 14px; font-size: 13px; border-radius: 12px; }
.search-redesign .radius-field { margin-left: auto; font-size: 13px; }
.search-redesign select { min-height: 44px; border-radius: 10px; padding: 8px 12px; font-size: 15px; }
.search-redesign #radius-select { -webkit-appearance: none; appearance: none; padding-right: 38px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23183c32' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; background-size: 16px 16px; }
.search-redesign #clear-location { flex-basis: auto; border: 0; padding: 8px; min-height: 44px; }
.search-redesign .city-help { margin-block: 10px 0; font-size: 12px; }
.search-redesign .location-message:empty { display: none; }
.search-redesign .location-message { color: var(--green); font-size: 12px; line-height: 1.5; margin-top: 8px; }
.location-accuracy { margin: 6px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.search-redesign .city-attribution { margin-block: 6px 0; font-size: 10px; }
.search-time { margin-block: 24px; }
.search-redesign .quick-filters { gap: 8px; }
.search-redesign .filter-chip span { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 9px 14px; font-size: 13px; text-align: center; }
.search-redesign .date-filter { margin-top: 12px; justify-content: flex-start; gap: 12px; font-size: 13px; }
.search-redesign .date-filter input { min-height: 44px; border-radius: 10px; padding: 8px; font-size: 16px; }
.search-query small { color: var(--muted); font-weight: 400; font-size: 12px; }
.search-query input { margin-top: 8px; }
.search-filters { margin-top: 22px; }
.search-filters > summary { display: flex; width: fit-content; max-width: 100%; min-height: 48px; justify-content: center; gap: 10px; align-items: center; cursor: pointer; padding: 11px 18px; border: 1px solid #cdd8c7; border-radius: 999px; background: #edf2e8; color: var(--green); box-shadow: 0 2px 4px #183c3208; list-style: none; font-size: 14px; font-weight: 650; transition: background .15s, border-color .15s, box-shadow .15s; }
.search-filters > summary::-webkit-details-marker { display: none; }
.search-filters > summary::marker { content: ''; }
@media(hover:hover) { .search-filters > summary:hover { background: #e2ebda; border-color: #a8b99c; box-shadow: 0 3px 8px #183c3210; } }
.search-filters > summary:active { box-shadow: none; }
.search-filters[open] > summary { margin-bottom: 16px; background: var(--green); border-color: var(--green); color: #fff; box-shadow: none; }
.filter-icon { width: 20px; height: 20px; flex-shrink: 0; }
#filter-summary { overflow-wrap: anywhere; }
#filter-count { display: inline-grid; place-items: center; flex-shrink: 0; min-width: 22px; height: 22px; padding-inline: 6px; border-radius: 20px; background: #fff; color: var(--green); font-size: 11px; line-height: 1; }
.filter-chevron { width: 18px; height: 18px; flex-shrink: 0; opacity: .7; transition: transform .15s; }
.search-filters[open] .filter-chevron { transform: rotate(180deg); }
.search-interest-options { padding-block: 14px; }
.search-hint { font-size: 12px; color: var(--muted); line-height: 1.5; margin: 0 0 12px; }
.interest-tools { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 10px; }
.interest-tools > * { min-height: 44px; display: inline-flex; align-items: center; font-size: 12px; }
.search-secondary { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding-block: 14px; }
.search-free, .search-sort { display: flex; align-items: center; gap: 10px; min-height: 44px; font-size: 14px; }
.search-free input { width: 20px; height: 20px; accent-color: var(--green); }
.search-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: center; padding-top: 16px; }
#search-pending { grid-column: 1/-1; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.search-actions .search-submit { grid-column: auto; min-height: 50px; border-radius: 12px; }
.search-actions .search-reset { display: flex; align-items: center; min-height: 44px; padding: 8px; font-size: 13px; }
.search-redesign :is(summary, input, button, select, a):focus-visible { outline: 3px solid #719453; outline-offset: 3px; }
.search-redesign button:disabled { opacity: .65; cursor: wait; }
#results-title, #discover { scroll-margin-top: 100px; }
.android-app .hero { padding-block: 12px; }
.android-app .hero-copy { display: none; }
@media(min-width:721px) {
  .search-redesign { max-width: none; width: 100%; }
}
@media(max-width:720px) {
  .search-redesign { padding: 18px; border-radius: 20px; }
  .search-title { font-size: 23px; margin-bottom: 20px; }
  .search-redesign .city-entry { flex-wrap: wrap; }
  .search-redesign .city-entry input { flex-basis: 100%; width: 100%; }
  .search-redesign #city-search { min-height: 44px; padding: 6px 12px; }
  .search-redesign .location-controls { gap: 8px; }
  .search-redesign .radius-field { flex-wrap: wrap; margin-left: auto; }
  .search-redesign #clear-location { margin-left: auto; }
  .search-redesign .filter-chip span { font-size: 13px; padding: 9px 12px; }
  .search-secondary { align-items: stretch; flex-direction: column; gap: 8px; }
  .search-sort { justify-content: space-between; }
  .search-actions { grid-template-columns: 1fr; gap: 6px; }
  .search-actions .search-reset { justify-content: center; }
}
@media(prefers-reduced-motion:reduce) { .filter-chevron, .search-filters > summary { transition: none; } }
