/* ---- Unified venue search dropdown (operator 2026-06-20) ----------
   ONE shared interface for /fri/search.html ("Look up a place") + the
   main metro page ("Find a Resto"). Custom debounced results list that
   replaces the native <datalist> (mobile popup obscured the page).
   Class-namespaced "reveal-search" so it looks identical wherever it
   is inlined. Self-contained values (no var() dependency) so it renders
   the same on the standalone search/find pages and the metro page. */
.reveal-search { position: relative; }
.reveal-search__results {
  position: absolute;
  top: calc(100% + 2px);
  left: 0;
  right: auto;
  z-index: 60;
  /* Wider than a narrow header input so longer names/meta fit; 2-line rows. */
  min-width: min(560px, 92vw);
  max-width: 92vw;
  list-style: none;
  margin: 8px 0 0;
  padding: 0;
  border: 1px solid #d9ded8;
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(15, 23, 42, 0.10);
  max-height: 60vh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.reveal-search__results[hidden] { display: none; }
.reveal-search__row {
  display: block;
  padding: 11px 14px;
  border-bottom: 1px solid #eef1ee;
  color: #164e63;
  text-decoration: none;
}
.reveal-search__row:last-child { border-bottom: 0; }
.reveal-search__row:hover,
.reveal-search__row:focus-visible {
  background: #fef2f2;
  outline: none;
}
.reveal-search__row--info {
  color: #1f2937;
  cursor: default;
}
.reveal-search__name { font-weight: 700; line-height: 1.35; white-space: normal; overflow-wrap: anywhere; }
.reveal-search__meta {
  color: #6b7280;
  font-size: 0.85rem;
  margin-top: 2px;
}
.reveal-search__badge {
  display: inline-block;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 1px 8px;
  margin-left: 6px;
  border-radius: 999px;
  background: #fef2f2;
  color: #b91c1c;
  border: 1px solid #fecaca;
  vertical-align: middle;
  white-space: nowrap;
}
.reveal-search__empty,
.reveal-search__more {
  padding: 12px 14px;
  color: #6b7280;
  font-size: 0.9rem;
}
