/* TVT-363/364: one compact, text-led discovery experience. */
.vt-page.vt-community-home-page,
.vt-page.vt-community-search-page { width: 100%; max-width: 1080px; margin: 0 auto; padding: var(--wt-space-32) var(--wt-space-32) var(--wt-space-56); color: var(--wt-text); background: var(--wt-surface); font: 400 16px/1.6 var(--wt-font-body); }
.vt-page.vt-community-search-page { max-width: 880px; }
.vt-community-home-hero { max-width: 780px; margin: 0 0 28px; }
.vt-community-home-hero h1 { max-width: 760px; margin: var(--wt-space-8) 0 10px; font-family: var(--wt-font-editorial); font-weight: 400; font-size: clamp(29px, 3.5vw, 40px); line-height: 1.15; letter-spacing: -.7px; }
.vt-community-home-hero > p { max-width: 680px; margin: 0 0 22px; color: var(--wt-text-muted); font-size: 16px; line-height: 1.55; }
.vt-community-search-heading { padding: 0 0 18px; }
.vt-community-search-heading h1 { font-family: var(--wt-font-body); font-size: 28px; font-weight: 500; line-height: 1.25; margin: var(--wt-space-8) 0; letter-spacing: -.5px; }
.vt-community-search-heading p { margin: 0; font-size: 15px; line-height: 1.5; color: var(--wt-text-muted); }
.vt-community-search-form > div { display: flex; align-items: stretch; gap: 10px; }
.vt-community-search-form input { width: 100%; min-width: 0; flex: 1; min-height: 46px; padding: 11px 13px; background: var(--wt-surface-soft); color: var(--wt-text); border: 1px solid var(--wt-field-border); border-radius: var(--wt-radius-control); font: inherit; font-size: 16px; }
.vt-community-search-form input::placeholder { color: var(--wt-text-muted); opacity: 1; }
.vt-community-search-form .vt-btn { min-height: var(--wt-control-min-height); padding: var(--wt-space-12) 20px; background: var(--wt-action); border-color: var(--wt-action); color: var(--wt-on-action); border-radius: var(--wt-radius-control); }
.vt-community-home-hero .vt-home-search-field { display: block; position: relative; flex: 1; min-width: 0; padding: 0; }
.vt-community-home-hero .vt-home-lookup .vt-home-search-field input { min-height: 46px; padding: 11px 13px; }
.vt-community-home-hero .vt-home-lookup { display: block; padding: 0; width: 100%; max-width: none; background: transparent; border: 0; box-shadow: none; }
.vt-community-home-hero .vt-home-lookup-panel { top: calc(100% + 5px); left: 0; right: 0; width: auto; z-index: 20; }
.vt-community-home-hero .vt-home-lookup-panel p { margin: 0; }
.vt-community-discovery-layout { display: grid; grid-template-columns: minmax(0, 1fr) 220px; gap: 42px; }
.vt-community-discovery-layout > * { min-width: 0; }
.vt-discovery-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px var(--wt-space-16); min-height: 54px; border-bottom: 1px solid var(--wt-border); padding-bottom: 10px; }
.vt-discovery-toolbar h2 { margin: 0; font-family: var(--wt-font-body); font-size: 20px; line-height: 1.4; font-weight: 500; }
.vt-community-search-location { display: flex; align-items: center; gap: var(--wt-space-8); margin: 0; min-width: 0; font-size: 14px; }
.vt-community-search-location select { min-width: 0; max-width: 230px; min-height: var(--wt-control-min-height); padding: 7px 28px 7px 10px; color: var(--wt-text); background: var(--wt-surface); border: 1px solid var(--wt-field-border); border-radius: var(--wt-radius-control); font: 400 16px/1.6 var(--wt-font-body); }
.vt-community-search-tabs { display: flex; align-items: center; gap: var(--wt-space-24); margin: 0; }
.vt-community-search-tabs button { background: none; border: 0; border-bottom: 2px solid transparent; padding: var(--wt-space-12) 0; min-height: var(--wt-control-min-height); color: var(--wt-text-muted); font: inherit; font-size: 15px; cursor: pointer; }
.vt-community-search-tabs button[aria-current] { color: var(--wt-action); border-bottom-color: var(--wt-action); font-weight: 500; }
.vt-search-toolbar { margin-top: var(--wt-space-16); padding-bottom: 0; }
.vt-search-status-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--wt-space-4) var(--wt-space-16); margin-top: 10px; }
.vt-community-search-status { font-size: 13px; color: var(--wt-text-muted); min-height: 20px; margin: 0; padding: 6px 0; }
.vt-search-status-row .vt-link-button { font-size: 13px; min-height: var(--wt-control-min-height); }
.vt-community-result-list { list-style: none; padding: 0; margin: 0; }
.vt-community-result-row { border-bottom: 1px solid var(--wt-border); background: var(--wt-surface); }
.vt-community-result-row :is(h2, h3) { font-family: var(--wt-font-body); font-size: 20px; line-height: 1.4; font-weight: 500; margin: 0 0 var(--wt-space-4); }
.vt-venue-directory-row { padding: 17px 0; }
.vt-venue-directory-row .vt-venue-directory-link { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: var(--wt-control-min-height); color: inherit; text-decoration: none; overflow-wrap: anywhere; }
.vt-venue-directory-link > div { min-width: 0; }
.vt-venue-directory-link:hover :is(h2, h3) { color: var(--wt-action); text-decoration: underline; text-underline-offset: 3px; }
.vt-venue-directory-link p { margin: 0; font-size: 13px; line-height: 1.5; color: var(--wt-text-muted); }
.vt-venue-directory-arrow { color: var(--wt-text-muted); }
.vt-venue-directory-recent { margin: var(--wt-space-8) 0 0; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.vt-venue-directory-recent > span { margin-right: var(--wt-space-8); color: var(--wt-text-muted); font-size: 12px; }
.vt-venue-directory-recent a { color: var(--wt-action); text-decoration: none; }
.vt-venue-directory-recent a:hover { text-decoration: underline; }
.vt-venue-directory-neutral { color: var(--wt-text-muted); font-size: 12px; line-height: 1.4; margin: var(--wt-space-8) 0 0; }
.vt-community-result-row mark { color: inherit; background: var(--wt-highlight); }
.vt-community-search-empty { padding: 26px 0 var(--wt-space-32); }
.vt-community-search-empty h2, .vt-community-search-empty h3 { margin: 0 0 var(--wt-space-8); font-family: var(--wt-font-body); font-size: 20px; font-weight: 500; line-height: 1.4; }
.vt-community-search-empty p { margin: 0 0 18px; font-size: 15px; line-height: 1.6; color: var(--wt-text-muted); }
.vt-community-search-empty .vt-link-button { margin-left: var(--wt-space-16); }
.vt-discovery-loading { min-height: 150px; padding: var(--wt-space-24) 0; margin: 0; color: var(--wt-text-muted); }
.vt-community-discovery-aside { padding-top: var(--wt-space-8); font-size: 14px; line-height: 1.6; }
.vt-community-discovery-aside h2 { margin: 0; font-family: var(--wt-font-body); font-size: 17px; font-weight: 500; line-height: 1.4; }
.vt-community-discovery-aside p { color: var(--wt-text-muted); margin: 10px 0 14px; }
.vt-community-discovery-aside a, .vt-discovery-view-more { color: var(--wt-action); text-decoration: none; font-weight: 500; }
.vt-community-discovery-aside a:hover, .vt-discovery-view-more:hover { text-decoration: underline; text-underline-offset: 3px; }
.vt-discovery-aside-note { border-top: 1px solid var(--wt-border); margin-top: var(--wt-space-24); padding-top: 10px; }
.vt-discovery-aside-note a { font-size: 13px; }
.vt-discovery-view-more { display: inline-flex; align-items: center; gap: 10px; padding: var(--wt-space-16) 0; min-height: 48px; font-size: 14px; }
.vt-discovery-note { font-size: 13px; line-height: 1.5; color: var(--wt-text-muted); }
.vt-community-pagination { display: flex; align-items: center; justify-content: space-between; gap: var(--wt-space-12); margin: var(--wt-space-24) 0; font-size: 14px; }
/* TVT-367: grouped discovery and deliberate query/location recovery. */
.vt-search-result-group { margin-top: var(--wt-space-24); min-width: 0; }
.vt-search-group-heading { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--wt-space-8) var(--wt-space-16); padding-bottom: var(--wt-space-8); border-bottom: 1px solid var(--wt-border); }
.vt-search-group-heading h2 { margin: 0; font: 500 20px/1.4 var(--wt-font-body); color: var(--wt-text); }
.vt-search-group-heading > span, .vt-search-group-empty { font: 400 13px/1.5 var(--wt-font-body); color: var(--wt-text-muted); }
.vt-search-group-empty { margin: var(--wt-space-16) 0; font-size: 15px; }
.vt-search-active-filters, .vt-search-recovery-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--wt-space-8) var(--wt-space-16); }
.vt-community-search-page :is(.vt-search-active-filters, .vt-search-recovery-actions) .vt-link-button,
.vt-community-search-page .vt-search-see-all { min-height: var(--wt-control-min-height); margin: 0; padding: var(--wt-space-8) 0; font: 500 14px/1.5 var(--wt-font-body); color: var(--wt-action); white-space: normal; text-align: left; }
.vt-community-search-page .vt-search-see-all { margin-top: var(--wt-space-8); }
.vt-search-see-all > span { margin-left: var(--wt-space-8); }
:is(.vt-community-home-page, .vt-community-search-page) .vt-btn { min-height: var(--wt-control-min-height); border-radius: var(--wt-radius-control); }
@media (max-width: 760px) {
  .vt-page.vt-community-home-page, .vt-page.vt-community-search-page { padding: var(--wt-space-24) 22px var(--wt-space-40); }
  .vt-community-discovery-layout { grid-template-columns: 1fr; gap: var(--wt-space-24); }
  .vt-community-discovery-aside { max-width: 540px; padding-top: var(--wt-space-8); }
  .vt-discovery-aside-note { display: none; }
  .vt-community-home-hero { margin-bottom: 22px; }
}
@media (max-width: 480px) {
  .vt-page.vt-community-home-page, .vt-page.vt-community-search-page { padding-inline: var(--wt-space-16); }
  .vt-community-search-form > div { gap: var(--wt-space-8); }
  .vt-community-search-form .vt-btn { padding-inline: 14px; }
  .vt-community-search-heading h1 { font-size: 24px; }
  .vt-community-result-row h2, .vt-discovery-toolbar h2 { font-size: 19px; }
  .vt-discovery-toolbar { gap: var(--wt-space-8) var(--wt-space-12); }
  .vt-community-search-tabs { gap: 18px; }
  .vt-community-search-location select { max-width: 178px; min-height: var(--wt-control-min-height); }
  .vt-home-conversations .vt-discovery-toolbar { align-items: flex-start; }
  .vt-home-conversations .vt-discovery-toolbar h2 { padding-top: 10px; }
}
@media (pointer: coarse) {
  .vt-community-search-location select, .vt-venue-directory-recent a { min-height: var(--wt-control-min-height); }
  .vt-venue-directory-recent a { display: inline-flex; align-items: center; }
}
