/* ==========================================================================
   Home search bar: Clavo look (real-estate friendly, futuristic)
   Target: theme triadic-real-estate-demo-blocks 0.4.6 (style.css), REPLACING
   the "0.4.5 Home Omnibar: input + Search on ONE row" block.
   Scope: body.wp-theme-triadic-real-estate-demo-blocks (this theme only).
   Dropdown panels are styled without a .search-panel ancestor so they still
   match when RE 1.14.8+ moves them to <body>.
   No transitions/animations: this component sits above the fold.
   ========================================================================== */
body.wp-theme-triadic-real-estate-demo-blocks {
  --clv-blue: #0b63f6;          /* theme --blue, white text 5.09:1 */
  --clv-blue-deep: #0a4fd1;     /* hover/active, white text 6.88:1 */
  --clv-cyan: #2fa8ff;          /* theme --blue2, glow/hairline only, never text */
  --clv-navy: #061531;          /* theme --navy */
  --clv-ink: #0b1633;           /* theme --ink, 17.85:1 on white */
  --clv-muted: #5b6680;         /* placeholder/labels, 5.74:1 on white */
  --clv-line: #dce6f5;          /* theme --line, decorative dividers only */
  --clv-field: #7b8db0;         /* control borders, 3.34:1 on white (WCAG 1.4.11) */
  --clv-tint: #eef4ff;          /* hover / selected fill */
  --clv-ring: 0 0 0 3px #fff, 0 0 0 5px var(--clv-blue);  /* focus-visible ring */
  --clv-h: 52px;                /* desktop control height */
  --clv-r: 12px;                /* control radius */
}

/* ---------- 1. Panel: centered card, not edge-to-edge ---------- */
/* Root cause of the full-bleed bar: style.css line ~22 `.entry-content > *{max-width:none}` (0,1,0) comes
   AFTER `.search-panel{max-width:1100px}` (0,1,0) on line ~18, so it wins. These selectors are (0,3,1)/(0,2,1). */
body.wp-theme-triadic-real-estate-demo-blocks .entry-content > .search-panel,
body.wp-theme-triadic-real-estate-demo-blocks .search-panel {
  max-width: 1100px;
  width: calc(100% - 44px);
  margin: -72px auto 40px;                   /* clear float over the hero's bottom edge */
  overflow: visible;                         /* let suggestions/dropdowns escape */
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(47, 168, 255, .22); /* cyan hairline = "futuristic" edge */
  box-shadow: 0 18px 50px rgba(8, 28, 68, .14), 0 0 0 6px rgba(47, 168, 255, .06);
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-portal--enhanced,
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-feed--search-portal,
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar {
  background: transparent;
  color: var(--clv-ink);
  margin: 0;
  border-radius: inherit;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar {
  padding: 20px 24px;
}

/* ---------- 2. Desktop layout: ONE row  [location + Search] [Price] [Bed & Bath] [List|Map] ---------- */
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__row--primary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 12px;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__location {
  background: transparent;   /* kills the grey box-in-a-box */
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-widget__input-wrap--omnibar,
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-widget__input-wrap--omnibar .idx-omnibar-form {
  width: 100%;
  margin: 0;
  padding: 0;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-widget__input-wrap--omnibar .idx-omnibar-form {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0;                    /* input and Search read as one control */
}
/* IMPress wraps the input in div.awesomplete (width:60%). This is why the input was stuck at 346px
   and the Search button floated mid-row: 0.4.5 targeted the input as if it were a direct flex child. */
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form > .awesomplete,
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form > div:not(.idx-omnibar-extra) {
  display: block;
  flex: 1 1 auto;
  width: auto;
  min-width: 0;
  position: relative;
}

/* ---------- 3. Location input ---------- */
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form input.idx-omnibar-input,
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form input[type=text].idx-omnibar-input {
  box-sizing: border-box;
  width: 100% !important;        /* beats the 0.4.5 `width:auto !important` if any copy of it survives */
  flex: none !important;
  height: var(--clv-h);
  margin: 0;
  padding: 0 16px 0 46px;
  font: 400 16px/1.2 Poppins, Arial, sans-serif;   /* 16px avoids iOS zoom */
  color: var(--clv-ink);
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%230b63f6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-6.2 7-12a7 7 0 1 0-14 0c0 5.8 7 12 7 12z'/%3E%3Ccircle cx='12' cy='9' r='2.5'/%3E%3C/svg%3E") no-repeat 16px 50%;
  border: 1px solid var(--clv-field);
  border-right: 0;
  border-radius: var(--clv-r) 0 0 var(--clv-r);
  box-shadow: none;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form input.idx-omnibar-input::placeholder {
  color: var(--clv-muted);
  opacity: 1;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form input.idx-omnibar-input:hover {
  border-color: var(--clv-ink);
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form input.idx-omnibar-input:focus,
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form input.idx-omnibar-input:focus-visible {
  border-color: var(--clv-blue);
  box-shadow: inset 0 0 0 1px var(--clv-blue), 0 0 0 4px rgba(11, 99, 246, .18);
  position: relative;
  z-index: 1;
}

/* ---------- 4. Primary button (Search) ---------- */
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form > button[type=submit] {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: auto;
  height: var(--clv-h);
  min-width: 132px;
  margin: 0;
  padding: 0 24px;
  font: 700 15px/1 Poppins, Arial, sans-serif;
  letter-spacing: .01em;
  color: #fff;
  background: linear-gradient(135deg, var(--clv-blue) 0%, var(--clv-blue-deep) 100%);
  border: 1px solid var(--clv-blue-deep);
  border-radius: 0 var(--clv-r) var(--clv-r) 0;
  box-shadow: 0 10px 24px rgba(11, 99, 246, .28), inset 0 1px 0 rgba(255, 255, 255, .18);
  cursor: pointer;
  white-space: nowrap;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form > button[type=submit] i { font-size: 15px; }
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form > button[type=submit]:hover {
  background: var(--clv-blue-deep);
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form > button[type=submit]:active {
  background: #083fa8;                       /* white text 9.0:1 */
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, .2);
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form > button[type=submit]:focus { outline: none; }
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form > button[type=submit]:focus-visible {
  box-shadow: var(--clv-ring);
  position: relative;
  z-index: 2;
}

/* ---------- 5. Autocomplete suggestions (IMPress awesomplete + plugin list) ---------- */
body.wp-theme-triadic-real-estate-demo-blocks .search-panel div.awesomplete > ul,
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-search-widget__suggestions {
  margin: 6px 0 0;
  padding: 6px;
  min-width: 100%;
  max-height: 320px;
  overflow: auto;
  z-index: 100060;
  background: #fff;
  border: 1px solid var(--clv-line);
  border-radius: var(--clv-r);
  box-shadow: 0 18px 40px rgba(8, 28, 68, .16);
  font: 400 15px/1.35 Poppins, Arial, sans-serif;
  text-align: left;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel div.awesomplete > ul::before { display: none; }
body.wp-theme-triadic-real-estate-demo-blocks .search-panel div.awesomplete > ul > li,
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-search-widget__suggestion {
  padding: 12px;                 /* 12 + 20 line + 12 = 44px tap target */
  min-height: 44px;
  line-height: 20px;
  box-sizing: border-box;
  display: block;                /* NOT flex: flex drops the space around <mark> ("WestMiami") */
  border-radius: 8px;
  color: var(--clv-ink);
  font-weight: 400;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel div.awesomplete > ul > li:hover,
body.wp-theme-triadic-real-estate-demo-blocks .search-panel div.awesomplete > ul > li[aria-selected=true],
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-search-widget__suggestion:hover {
  background: var(--clv-tint);
  color: var(--clv-ink);
  font-weight: 400;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel div.awesomplete mark {
  background: none;
  color: var(--clv-blue-deep);
  font-weight: 700;
  padding: 0;
}

/* ---------- 6. Quick filters: Price / Bed & Bath toggles ---------- */
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__quick {
  display: flex;
  flex-wrap: nowrap;
  gap: 12px;
  margin: 0;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-filter-dropdown__toggle {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  height: var(--clv-h);
  min-width: 120px;
  padding: 0 16px 0 18px;
  font: 600 15px/1 Poppins, Arial, sans-serif;
  color: var(--clv-ink);
  background: #fff;
  border: 1px solid var(--clv-field);
  border-radius: var(--clv-r);
  box-shadow: none;
  cursor: pointer;
  white-space: nowrap;
  -webkit-appearance: none;
  appearance: none;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-filter-dropdown__toggle:hover {
  border-color: var(--clv-ink);
  background: var(--clv-tint);
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-filter-dropdown.is-open .wpre-idx-filter-dropdown__toggle,
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-filter-dropdown__toggle[aria-expanded=true] {
  border-color: var(--clv-blue);
  background: var(--clv-tint);
  box-shadow: inset 0 0 0 1px var(--clv-blue);
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-filter-dropdown__toggle:focus { outline: none; }
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-filter-dropdown__toggle:focus-visible { box-shadow: var(--clv-ring); }
/* Chevron: thin line chevron instead of the black triangle; flips when open (no transition) */
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-filter-dropdown__chevron {
  width: 10px;
  height: 10px;
  display: inline-block;
  position: relative;
  flex: 0 0 10px;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-filter-dropdown__chevron::after {
  content: "";
  position: absolute;
  left: 1px;
  top: -1px;
  width: 7px;
  height: 7px;
  border: solid var(--clv-blue);
  border-width: 0 2px 2px 0;
  border-top-color: transparent;
  border-left-color: transparent;
  transform: rotate(45deg);
  background: none;
  margin: 0;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-filter-dropdown.is-open .wpre-idx-filter-dropdown__chevron::after,
body.wp-theme-triadic-real-estate-demo-blocks .search-panel [aria-expanded=true] .wpre-idx-filter-dropdown__chevron::after {
  top: 3px;
  transform: rotate(-135deg);
}

/* ---------- 7. Dropdown panel (open state). No .search-panel ancestor: RE 1.14.8 moves it to <body>. ---------- */
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__panel {
  box-sizing: border-box;
  width: 300px;
  max-width: calc(100vw - 28px);
  padding: 18px;
  background: #fff;
  border: 1px solid var(--clv-line);
  border-radius: 16px;
  box-shadow: 0 24px 60px rgba(8, 28, 68, .20), 0 0 0 1px rgba(47, 168, 255, .10);
  font-family: Poppins, Arial, sans-serif;
  color: var(--clv-ink);
}
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__title {
  margin: 0 0 8px;
  font: 700 12px/1.2 Poppins, Arial, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--clv-muted);
}
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__field + .wpre-idx-filter-dropdown__title { margin-top: 16px; }
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__range {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 8px;
}
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__sep { color: var(--clv-muted); }
/* Selects: closed state (native popup list stays OS-rendered; that is fine and accessible) */
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__panel select,
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__panel .wpre-idx-feed__filter-input {
  box-sizing: border-box;
  width: 100%;
  height: 44px;
  padding: 0 36px 0 12px;
  font: 500 15px/1.2 Poppins, Arial, sans-serif;
  color: var(--clv-ink);
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230b63f6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;
  border: 1px solid var(--clv-field);
  border-radius: 10px;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
}
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__panel select:hover { border-color: var(--clv-ink); }
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__panel select:focus { outline: none; }
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__panel select:focus-visible {
  border-color: var(--clv-blue);
  box-shadow: 0 0 0 3px rgba(11, 99, 246, .25);
}
/* Selected (non-default) value reads as "set" */
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__panel select:not(:has(option[value=""]:checked)) {
  border-color: var(--clv-blue);
  background-color: var(--clv-tint);
  font-weight: 600;
}
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__actions {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--clv-line);
}
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__reset,
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__apply {
  box-sizing: border-box;
  height: 44px;
  min-width: 96px;
  padding: 0 18px;
  font: 600 15px/1 Poppins, Arial, sans-serif;
  border-radius: 10px;
  cursor: pointer;
}
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__reset {   /* secondary */
  color: var(--clv-ink);
  background: #fff;
  border: 1px solid var(--clv-field);
}
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__reset:hover { background: var(--clv-tint); border-color: var(--clv-ink); }
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__apply {   /* primary */
  color: #fff;
  background: linear-gradient(135deg, var(--clv-blue), var(--clv-blue-deep));
  border: 1px solid var(--clv-blue-deep);
  box-shadow: 0 8px 18px rgba(11, 99, 246, .25);
}
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__apply:hover { background: var(--clv-blue-deep); }
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__apply:active { background: #083fa8; }
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__reset:focus,
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__apply:focus { outline: none; }
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__reset:focus-visible,
body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__apply:focus-visible { box-shadow: var(--clv-ring); }

/* ---------- 8. List / Map segmented toggle ---------- */
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__view {
  display: inline-flex;
  align-self: center;
  gap: 4px;
  height: var(--clv-h);
  margin: 0;
  padding: 3px;                              /* 52 = 1 + 3 + 44 + 3 + 1 */
  box-sizing: border-box;
  background: #f2f6fd;
  border: 1px solid var(--clv-field);
  border-radius: var(--clv-r);
  overflow: visible;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__view-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  height: 44px;
  min-width: 84px;
  padding: 0 14px;
  font: 600 14px/1 Poppins, Arial, sans-serif;
  color: var(--clv-muted);
  background: transparent;
  border: 0;
  border-radius: 9px;
  cursor: pointer;
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__view-btn + .wpre-idx-search-toolbar__view-btn { border-left: 0; }
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__view-btn:hover { color: var(--clv-ink); background: #fff; }
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__view-btn.is-active,
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__view-btn[aria-pressed=true] {
  color: #fff;
  background: var(--clv-navy);               /* 18.1:1; navy so it doesn't compete with the blue Search CTA */
  box-shadow: 0 4px 12px rgba(6, 21, 49, .25), inset 0 -2px 0 var(--clv-cyan);
}
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__view-btn svg { flex: 0 0 18px; }
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__view-btn:focus { outline: none; }
body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__view-btn:focus-visible { box-shadow: var(--clv-ring); }

/* ---------- 9. Tablet: location on its own row ---------- */
@media (max-width: 1023px) {
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__row--primary {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__location { grid-column: 1 / -1; }
}

/* ---------- 10. Mobile (<=600px, checked at 390/360): stacked ---------- */
@media (max-width: 600px) {
  /* --clv-h stays 52px on mobile: every tap target >= 44px */
  body.wp-theme-triadic-real-estate-demo-blocks .entry-content > .search-panel,
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel {
    width: auto;
    max-width: none;
    margin: -48px 14px 28px;
    border-radius: 16px;
  }
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar { padding: 16px; }
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__row--primary {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  /* Row 1: input + square icon Search (keeps aria-label "Submit Search") */
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form > button[type=submit] {
    min-width: 52px;
    width: 52px;
    padding: 0;
  }
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form > button[type=submit] span {
    position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;
  }
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel .idx-omnibar-form input.idx-omnibar-input {
    padding-left: 42px;
    background-position: 14px 50%;
    text-overflow: ellipsis;
  }
  /* Row 2: Price | Bed & Bath, equal halves */
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__quick {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-filter-dropdown { min-width: 0; }
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-filter-dropdown__toggle {
    width: 100%;
    min-width: 0;
    padding: 0 14px;
  }
  /* Row 3: List | Map full width */
  body.wp-theme-triadic-real-estate-demo-blocks .search-panel .wpre-idx-search-toolbar__view {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }
  body.wp-theme-triadic-real-estate-demo-blocks .wpre-idx-filter-dropdown__panel { width: calc(100vw - 28px); }
}

/* ---------- 11. Chat launcher on mobile: never over the search panel ---------- */
/* Launcher is .triadic-wpchat-chat (position:fixed; bottom/right 12px at <=600, z-index 99990).
   Safe-area offset always; while the search panel is on screen (body.tred-search-in-view, set by the
   small theme JS in the spec) the CLOSED launcher is hidden. No JS = launcher stays visible as today.
   Instant show/hide, no transition. An OPEN chat panel is never hidden. */
@media (max-width: 600px) {
  body.wp-theme-triadic-real-estate-demo-blocks .triadic-wpchat-chat {
    right: max(16px, env(safe-area-inset-right));
    bottom: calc(16px + env(safe-area-inset-bottom));
  }
  body.wp-theme-triadic-real-estate-demo-blocks.tred-search-in-view .triadic-wpchat-chat:not(:has(.triadic-wpchat-chat__panel--open)) {
    visibility: hidden;
    pointer-events: none;
  }
}

/* Reduced motion / no-JS: nothing here animates; content is fully visible without JS. */
