/* Shared only by the restaurant directory and events: island colors, native fallback. */
.restaurant-directory .filter-card, .events-directory .filter-card { overflow: visible; position: relative; z-index: 2; }
.brand-select { min-width: 0; position: relative; }
.brand-select-trigger, [data-brand-select] {
  width: 100%; min-height: 48px; padding: 12px 40px 12px 16px;
  font: inherit; font-size: 14px; font-weight: 600; text-align: left;
  color: var(--c-navy); background: var(--c-bg); border: 1px solid #d8dfda;
  border-radius: 12px; cursor: pointer;
}
.brand-select-trigger::after {
  content: ''; position: absolute; right: 18px; top: 20px; width: 7px; height: 7px;
  border-right: 2px solid var(--c-teal-deep); border-bottom: 2px solid var(--c-teal-deep); transform: rotate(45deg);
}
.brand-select-trigger[aria-expanded="true"] { background: #edf8f4; border-color: var(--c-teal-deep); }
.brand-select-trigger[aria-expanded="true"]::after { transform: rotate(225deg); top: 23px; }
.brand-select-trigger:focus-visible, .discovery-action:focus-visible,
.events-directory .ev-chip:focus-visible, .restaurant-directory .venue-hours summary:focus-visible {
  outline: 2px solid var(--c-teal-deep); outline-offset: 3px;
}
.brand-select-options {
  position: absolute; top: calc(100% + 6px); left: 0; right: 0; z-index: 5;
  max-height: min(320px, 45vh); overflow-y: auto; overscroll-behavior: contain;
  padding: 6px; background: var(--c-card); border-radius: 16px;
  box-shadow: 0 0 0 1px rgb(0 0 0 / .08), 0 6px 12px rgb(0 0 0 / .06), 0 16px 32px rgb(0 0 0 / .1);
}
.brand-select-option { min-height: 44px; padding: 12px 32px 12px 12px; border-radius: 10px; font-size: 14px; color: var(--c-ink); cursor: pointer; position: relative; }
.brand-select-option:hover, .brand-select-option.is-pointed { background: #edf8f4; }
.brand-select-option[aria-selected="true"] { color: #075d5d; font-weight: 700; }
.brand-select-check { display: none; position: absolute; right: 12px; }
.brand-select-option[aria-selected="true"] .brand-select-check { display: inline; }
.brand-select [hidden], .events-directory [hidden] { display: none !important; }
.restaurant-directory input[type="search"], .events-directory input[type="search"] { min-height: 48px; border-radius: 12px; font-size: 16px; background: var(--c-card); }
.discovery-action { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: 8px; padding: 10px 14px; border: 1px solid var(--c-line); border-radius: 10px; color: var(--c-teal-deep); background: white; font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; text-decoration: none; }
.discovery-action:hover { background: #edf8f4; text-decoration: none; }
.discovery-action:active { transform: scale(.96); }
.listing-art { --art-bg: #ecf4ef; --art-ink: #146960; background: var(--art-bg); color: var(--art-ink); overflow: hidden; }
.listing-art[data-art="pizza"], .listing-art[data-art="culture"] { --art-bg: #fff0e5; --art-ink: #a84426; }
.listing-art[data-art="coffee"], .listing-art[data-art="business"] { --art-bg: #f0eadf; --art-ink: #70533b; }
.listing-art[data-art="seafood"], .listing-art[data-art="civic"] { --art-bg: #e5f1f5; --art-ink: #235d78; }
.listing-art[data-art="dessert"], .listing-art[data-art="community"] { --art-bg: #f6ebe5; --art-ink: #9d4938; }
.listing-art[data-art="chocolate"] { --art-bg: #f3e7df; --art-ink: #74513e; }
.listing-art[data-art="wine"] { --art-bg: #f1eaf0; --art-ink: #71405f; }
.listing-art svg { width: 80px; height: 80px; }
.restaurant-directory .venue-row-name, .events-directory .ev-row-title { overflow-wrap: break-word; }
.restaurant-directory .filter-meta, .events-directory .filter-meta { color: var(--c-ink-soft); font-variant-numeric: tabular-nums; }
@media (prefers-reduced-motion: reduce) { .discovery-action:active { transform: none; } }
