/* =========================
   Southwest Homes Map (Google-only)
   ========================= */

/* Root variables */
.swh-props-map-wrap{
  --swh-primary:#ea580c;
  --swh-btn-text:#fff;
  --swh-radius:16px;
  --swh-card-width:380px;
  --swh-shadow:0 12px 30px rgba(0,0,0,.12);
  --swh-font:Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  --swh-image-height:200px;
  --swh-map-height:720px;
  --swh-map-mobile-height:720px;
  --swh-map-radius:16px;
  --swh-side-width:45%; /* sidebar width (map gets the rest) */
  width:100%;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

/* Split layout driven by --swh-side-width */
.swh-props-map-wrap .swh-layout{
  display:flex;
  gap:16px;
  align-items:flex-start;
}
.swh-props-map-wrap .swh-layout.swh-pos-right{
  flex-direction:row-reverse;
}

/* Sidebar container */
.swh-props-map-wrap .swh-side{
  max-height:var(--swh-map-height);
  overflow:auto;
  border:var(--swh-side-border-width, 0px) solid var(--swh-side-border-color, #e5e7eb);
  border-radius:12px;
  background:var(--swh-side-background, #fff);
}
.swh-props-map-wrap .swh-side{
  flex:0 0 var(--swh-side-width);
  max-width:var(--swh-side-width);
  width:var(--swh-side-width);
}

/* Map area */
.swh-props-map-wrap .swh-main,
.swh-props-map-wrap .swh-mapwrap{
  position:relative;
  border-radius:var(--swh-map-radius, var(--swh-radius));
  overflow:hidden;
  flex:1 1 0%;
  min-width:0;
}
.swh-props-map-wrap .swh-map,
.swh-props-map-wrap #swh-props-map,
.swh-props-map-wrap .swh-mapwrap #swh-props-map{ height:var(--swh-map-height); border-radius:inherit; width:100%; display:block; } /* legacy selector kept */

/* Hide Google "cmd + scroll" overlays (we provide our own hint) */
.swh-props-map-wrap .gm-style-pbt,
.swh-props-map-wrap .gm-style-pbt *,
.swh-props-map-wrap .gm-style .gm-style-c,
.swh-props-map-wrap .gm-style .gm-svpc{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
}

.swh-map-gesture-hint{
  position:absolute;
  left:50%;
  bottom:10px;
  transform:translateX(-50%);
  z-index:20;
  pointer-events:none;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:4px 10px;
  font:500 11px/1 var(--swh-font);
  color:#1f2937;
  background:rgba(255,255,255,0.92);
  border:1px solid rgba(148,163,184,0.4);
  border-radius:999px;
  box-shadow:0 6px 16px rgba(15,23,42,0.15);
}
.swh-map-gesture-hint span{ display:inline-flex; gap:6px; align-items:center; }
.swh-mapwrap{ position:relative; }
.swh-map-reset,
.swh-map-reset:hover,
.swh-map-reset:focus,
.swh-map-reset:active{
  position:absolute;
  left:50%;
  bottom:50px;
  transform:translate(-50%, 0);
  z-index:25;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:6px 14px;
  font:500 12px/1 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  color:#1f2937 !important;
  background:rgba(255,255,255,0.94) !important;
  border:1px solid rgba(148,163,184,0.38) !important;
  border-radius:999px;
  box-shadow:0 5px 14px rgba(15,23,42,0.12) !important;
  cursor:pointer;
  pointer-events:auto;
  appearance:none;
  transition:none;
}
.swh-map-reset:focus-visible{ outline:2px solid rgba(59,130,246,0.6); outline-offset:2px; }

/* Google maps info window tweaks */
.swh-props-map-wrap .gm-style .gm-style-iw-d{
  padding:0 !important;
  overflow:auto !important; /* prevent forced scrollbars from inline styles */
}
.swh-props-map-wrap .gm-style .gm-style-iw-c{
  overflow:visible !important; /* ensure card isn't clipped when padding removed */
  max-width:var(--swh-card-width);
  width:auto !important;
  border-radius:var(--swh-radius) !important;
  box-shadow:var(--swh-shadow) !important;
}
.swh-props-map-wrap .gm-style .gm-style-iw{
  border-radius:var(--swh-radius) !important;
  box-shadow:var(--swh-shadow) !important;
  padding:0 !important;
  width:auto !important;
  max-width:var(--swh-card-width) !important;
}
.swh-props-map-wrap .gm-style .gm-style-iw-ch{
  padding:0 !important;
  margin:0 !important;
  width:0 !important;
  height:0 !important;
}
.swh-props-map-wrap .swh-close-host{
  position:relative;
}
.swh-props-map-wrap .swh-info-close{
  position:absolute;
  top:12px;
  right:12px;
  width:32px;
  height:32px;
  min-width:32px;
  min-height:32px;
  border-radius:50%;
  border:none;
  background:rgba(17,24,39,.45);
  color:#fff;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  line-height:1;
  box-shadow:0 6px 18px rgba(15,23,42,.18);
  transition:background-color .15s ease, transform .15s ease;
}
.swh-props-map-wrap .swh-info-close:hover{
  background:rgba(17,24,39,.6);
  transform:scale(1.05);
}
.swh-props-map-wrap .swh-info-close:focus-visible{
  outline:2px solid #fff;
  outline-offset:2px;
}
.swh-props-map-wrap .swh-info-close::before,
.swh-props-map-wrap .swh-info-close::after{
  content:'';
  position:absolute;
  width:14px;
  height:2px;
  background:currentColor;
  border-radius:1px;
  top:50%;
  left:50%;
  transform-origin:center;
}
.swh-props-map-wrap .swh-info-close::before{
  transform:translate(-50%, -50%) rotate(45deg);
}
.swh-props-map-wrap .swh-info-close::after{
  transform:translate(-50%, -50%) rotate(-45deg);
}

/* Stack on small screens */
@media (max-width:700px){
  .swh-props-map-wrap{ --swh-card-width:min(420px, calc(100vw - 24px)) !important; --swh-map-height:var(--swh-map-mobile-height, 480px) !important; }
  .swh-props-map-wrap .gm-style .gm-style-iw,
  .swh-props-map-wrap .gm-style .gm-style-iw-c{
    max-width:min(var(--swh-card-width), calc(100vw - 60px)) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .swh-props-map-wrap .swh-layout{ flex-direction:column; align-items:stretch; }
  .swh-props-map-wrap .swh-side{ max-height:none; order:2; width:100%; max-width:none; flex:0 0 auto; }
  .swh-props-map-wrap .swh-mapwrap, .swh-props-map-wrap .swh-main{ order:1; width:100%; max-width:none; flex:0 0 auto; }
  .swh-props-map-wrap .swh-list{ grid-template-columns:1fr !important; }
  .swh-props-map-wrap .swh-card__body{ padding:16px; }
  .swh-props-map-wrap .gm-style{ --swh-image-height:min(160px, calc(var(--swh-card-width, 320px) * 0.45)) !important; }
}

.swh-props-map-wrap.swh-stack .swh-layout{
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.swh-props-map-wrap.swh-stack .swh-main,
.swh-props-map-wrap.swh-stack .swh-mapwrap,
.swh-props-map-wrap.swh-stack .swh-side{
  width:100%;
  max-width:none;
  flex:0 0 auto;
}
.swh-props-map-wrap.swh-stack .swh-main,
.swh-props-map-wrap.swh-stack .swh-mapwrap{
  order:1;
  margin-bottom:16px;
}
.swh-props-map-wrap.swh-stack .swh-side{
  order:2;
  max-height:none;
}

/* ---------- Card ---------- */
.swh-card{
  width:min(var(--swh-card-width), 100%);
  max-width:var(--swh-card-width);
  font-family:var(--swh-font);
  background:#fff;
  border-radius:var(--swh-radius);
  box-shadow:var(--swh-shadow);
  overflow:hidden;
}
.swh-card__imgwrap{
  border-radius:var(--swh-radius) var(--swh-radius) 0 0;
  background:#d1d5db;
  height:var(--swh-image-height);
  max-height:var(--swh-image-height);
  overflow:hidden;
}
.swh-card__img{
  width:100%;
  height:var(--swh-image-height);
  object-fit:cover;
  display:block;
}
.swh-card__body{
  padding:18px;
  display:flex;
  flex-wrap:wrap;
  gap:0;
}
.swh-card__body > *{
  flex:0 0 100%;
  margin:0;
  margin-bottom:var(--swh-card-gap, 10px);
}
.swh-card__body > *:last-child{
  margin-bottom:0;
}
.swh-card__block{
  flex:0 0 100%;
  margin:0;
  margin-bottom:var(--swh-card-gap, 10px);
}
.swh-card__block:last-child{
  margin-bottom:0;
}
.swh-card__block--full{
  flex:0 0 100%;
}
.swh-card__block--half{
  flex:0 0 100%;
}
@media (min-width:640px){
  .swh-card__block--half{
    flex:0 0 calc(50% - 5px);
  }
}
.swh-card__badges{ display:flex; gap:6px; flex-wrap:wrap; }
.swh-badge{ font-size:11px; padding:4px 8px; border-radius:999px; background:#eef1f5; color:#334; text-transform:capitalize; }
.swh-badge--ready{ background:#e6f1ff; color:#123a7a; }
.swh-badge--available{ background:#dcfce7; color:#166534; }
.swh-badge--pending{ background:#fef3c7; color:#92400e; }
.swh-badge--sold{ background:#fee2e2; color:#b91c1c; }
.swh-card__custom-badgewrap{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
  width:fit-content;
  max-width:100%;
  margin-left:0;
  margin-right:auto;
}
.swh-card__iconrow{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  color:#4b5563;
  font-size:13px;
}
.swh-card__iconrow--align-left{
  justify-content:flex-start;
  text-align:left;
}
.swh-card__iconrow--align-center{
  justify-content:center;
  text-align:center;
}
.swh-card__iconrow--align-right{
  justify-content:flex-end;
  text-align:right;
}
.swh-card__field--text {
  width:100%;
}
.swh-card__iconrow-item{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-width:0;
  white-space:nowrap;
}
.swh-card__iconrow-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:inherit;
  font-size:1em;
  line-height:1;
}
.swh-card__iconrow-icon::before{
  line-height:1;
}
.swh-card__iconrow-text{
  display:inline-flex;
  align-items:center;
  gap:4px;
  line-height:1.3;
}
.swh-card__custom-badgewrap--inline{
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  width:auto;
}
.swh-card__custom-badgewrap--full{
  width:100%;
  margin-left:0;
  margin-right:0;
}
.swh-card__custom-badgewrap--align-left{
  align-items:flex-start;
  margin-left:0;
  margin-right:auto;
}
.swh-card__custom-badgewrap--align-center{
  align-items:center;
  margin-left:auto;
  margin-right:auto;
}
.swh-card__custom-badgewrap--align-right{
  align-items:flex-end;
  margin-left:auto;
  margin-right:0;
}
.swh-card__custom-badgewrap--full.swh-card__custom-badgewrap--align-left,
.swh-card__custom-badgewrap--full.swh-card__custom-badgewrap--align-center,
.swh-card__custom-badgewrap--full.swh-card__custom-badgewrap--align-right{
  margin-left:0;
  margin-right:0;
}
.swh-card__custom-badgewrap--inline.swh-card__custom-badgewrap--align-left{
  justify-content:flex-start;
}
.swh-card__custom-badgewrap--inline.swh-card__custom-badgewrap--align-center{
  justify-content:center;
}
.swh-card__custom-badgewrap--inline.swh-card__custom-badgewrap--align-right{
  justify-content:flex-end;
}
.swh-card__custom-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.05em;
  text-transform:uppercase;
  padding:4px 12px;
  border-radius:999px;
  background:#e2e8f0;
  color:#111827;
  border:1px solid rgba(15,23,42,.12);
  width:-moz-fit-content;
  width:fit-content;
  width:max-content;
  max-width:100%;
  line-height:1.1;
}
.swh-card__custom-badgewrap--full .swh-card__custom-badge{
  width:100%;
}
.swh-card__custom-badgewrap--align-left .swh-card__custom-badge{
  align-self:flex-start;
}
.swh-card__custom-badgewrap--align-center .swh-card__custom-badge{
  align-self:center;
}
.swh-card__custom-badgewrap--align-right .swh-card__custom-badge{
  align-self:flex-end;
}
.swh-card__price{ font-weight:800; font-size:22px; letter-spacing:-.2px; margin:0; margin-bottom:var(--swh-card-gap, 10px); }
.swh-card__meta{ color:#6b7280; font-size:12px; margin:0; margin-bottom:var(--swh-card-gap, 10px); }
.swh-card__field{ color:#4b5563; font-size:13px; margin:0; margin-bottom:var(--swh-card-gap, 10px); }
.swh-card__addr{ color:#4b5563; font-size:13px; margin:0; margin-bottom:var(--swh-card-gap, 10px); }
.swh-card__link{
  display:block; text-align:center; font-size:14px; text-decoration:none!important;
  background:var(--swh-primary); color:var(--swh-btn-text)!important;
  padding:10px 14px; border-radius:10px; transition:transform .05s ease, box-shadow .15s ease;
  box-shadow:0 2px 0 rgba(0,0,0,.1); border:1px solid transparent;
}
.swh-card__link:hover{ transform:translateY(-1px); box-shadow:0 4px 10px rgba(0,0,0,.12); }
.swh-card__link--secondary{
  background:#ffffff; color:var(--swh-primary)!important;
  border-color:var(--swh-primary); box-shadow:none;
}
.swh-card__link--secondary:hover{
  box-shadow:0 4px 10px rgba(0,0,0,.12);
}
.swh-card__link--tertiary{
  background:transparent; color:var(--swh-primary)!important;
  box-shadow:none; border:none; text-decoration:underline; padding:0; display:inline-block;
}
.swh-card__link--tertiary:hover{
  text-decoration:none; transform:none; box-shadow:none;
}

/* Sidebar list grid (JS will update columns from settings) */
.swh-list{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:12px;
  padding:12px;
}
.swh-list-card.active{
  outline:2px solid var(--swh-primary);
  border-radius:12px;
}

/* Tiny icons (beds/baths/sqft) */
.swh-ico{display:inline-block;width:14px;height:14px;margin-right:6px;background:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;vertical-align:-2px}
.swh-ico--bed{-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M4 10V6a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v4h4a2 2 0 0 1 2 2v6h-2v-2H6v2H4v-6a2 2 0 0 1 2-2H4zm4-4h4v4H8V6z"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M4 10V6a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v4h4a2 2 0 0 1 2 2v6h-2v-2H6v2H4v-6a2 2 0 0 1 2-2H4zm4-4h4v4H8V6z"/></svg>')}
.swh-ico--bath{-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M7 10V6a3 3 0 1 1 6 0v4h4a1 1 0 0 1 1 1v5a4 4 0 0 1-4 4H6a4 4 0 0 1-4-4v-5a1 1 0 0 1 1-1h4zM9 6a1 1 0 1 1 2 0v4H9V6z"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M7 10V6a3 3 0 1 1 6 0v4h4a1 1 0 0 1 1 1v5a4 4 0 0 1-4 4H6a4 4 0 0 1-4-4v-5a1 1 0 0 1 1-1h4zM9 6a1 1 0 1 1 2 0v4H9V6z"/></svg>')}
.swh-ico--sqft{-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M4 4h7v2H6v5H4V4zm14 0v7h-2V6h-5V4h7zM4 20v-7h2v5h5v2H4zm16-7v7h-7v-2h5v-5h2z"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M4 4h7v2H6v5H4V4zm14 0v7h-2V6h-5V4h7zM4 20v-7h2v5h5v2H4zm16-7v7h-7v-2h5v-5h2z"/></svg>')}

/* Admin preview image safety (admin uses same CSS as front) */
#swh-props-map-admin .swh-card__img{
  height: var(--swh-image-height) !important;
  display: block !important;
}

/* Elementor override protection (forces image height against global img rules) */
.elementor .swh-props-map-wrap .swh-card__imgwrap{
  height: var(--swh-image-height) !important;
  max-height: var(--swh-image-height) !important;
  overflow: hidden !important;
  line-height: 0;
}
.elementor .swh-props-map-wrap img.swh-card__img,
.swh-props-map-wrap img.swh-card__img{
  width: 100% !important;
  height: var(--swh-image-height) !important;
  max-height: var(--swh-image-height) !important;
  object-fit: cover !important;
  display: block !important;
}

/* ---------- Filters Bar (pills + dropdowns) ---------- */
.swh-filters{
  display:flex; gap:10px; align-items:stretch; flex-wrap:wrap;
  margin:12px 12px 8px; user-select:none;
}

.swh-filter{ position:relative; }

/* “All Filters” pill */
.swh-filter--all{
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 14px; border:1px solid #e5e7eb; border-radius:14px;
  background:#fff; box-shadow:0 1px 2px rgba(0,0,0,.04);
  cursor:pointer; font:500 14px/1 var(--swh-font); color:#111827;
  transition:background-color .12s ease, border-color .12s ease, box-shadow .12s ease;
}
.swh-filter--all:hover{
  background:#f9fafb;            /* subtle, no text color change */
  border-color:#e5e7eb;
}
.swh-filter--all:focus,
.swh-filter--all:active,
.swh-filter--all.is-active,
.swh-filter--all[aria-expanded="true"]{
  outline:0;
  border-color:var(--swh-primary,#ea580c);
  box-shadow:0 0 0 2px rgba(234,88,12,.1);
  box-shadow:0 0 0 2px color-mix(in srgb, var(--swh-primary,#ea580c) 20%, transparent);
  background:#fff;
  background:color-mix(in srgb, var(--swh-primary,#ea580c) 15%, #ffffff);
  color:#111827;
}
.swh-filter--all:focus-visible,
.swh-filter--all[aria-expanded="true"]:focus,
.swh-filter--all[aria-expanded="true"]:active{
  outline:0;
  border-color:var(--swh-primary,#ea580c);
  box-shadow:0 0 0 3px rgba(234,88,12,.16);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--swh-primary,#ea580c) 25%, transparent);
}

/* Dropdown trigger pill */
.swh-filter__btn{
  display:grid; grid-template-columns:20px auto auto 12px; column-gap:8px; align-items:center;
  padding:10px 12px; border:1px solid #e5e7eb; border-radius:14px;
  background:#fff; box-shadow:0 1px 2px rgba(0,0,0,.04);
  cursor:pointer; font:500 14px/1 var(--swh-font); color:#111827;
  min-width:132px;
  transition:background-color .12s ease, border-color .12s ease, box-shadow .12s ease, color .12s ease;
}
.swh-filter__btn:hover{
  background:#f9fafb;            /* subtle hover */
  border-color:#e5e7eb;
  color:#111827;                  /* keep dark text */
}

/* Open state: keep background white, just show a gentle focus ring */
.swh-filter__btn[aria-expanded="true"]{
  background:#fff;
  border-color:var(--swh-primary,#ea580c);
  box-shadow:0 0 0 3px rgba(234,88,12,.12);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--swh-primary,#ea580c) 25%, transparent);
  color:#111827;
}
.swh-filter__btn[aria-expanded="true"]:hover{
  background:#fff;                /* no flip on hover while open */
  color:#111827;
}

.swh-filter__icon svg{ display:block; }
.swh-filter__label{ color:#6b7280; font-weight:500; }
.swh-filter__value{ margin-left:6px; font-weight:600; color:#111827; }
.swh-filter__caret{ margin-left:8px; color:#6b7280; }

/* Dropdown menu */
.swh-filter__menu{
  position:absolute; z-index:20; left:50%; transform:translateX(-50%); top:calc(100% + 6px);
  background:#fff; border:1px solid #e5e7eb; border-radius:12px; box-shadow:0 12px 24px rgba(0,0,0,.08);
  padding:0 !important; margin:0 !important; display:none; max-height:260px; overflow:auto; min-width:160px;
  /* Override theme CSS that adds padding-left to ul elements */
  padding-left:0 !important; margin-left:0 !important;
}
.swh-filter__menu li{
  list-style:none; padding:12px 16px; border-radius:0; cursor:pointer;
  font:500 14px/1 var(--swh-font); color:#111827; margin:0; width:100%; box-sizing:border-box;
  /* Override any theme list item styles */
  padding-left:16px !important; margin-left:0 !important;
}
.swh-filter__menu li:first-child{ border-radius:12px 12px 0 0; }
.swh-filter__menu li:last-child{ border-radius:0 0 12px 12px; }
.swh-filter__menu li[aria-selected="true"]{ background:#f3f4f6; }
.swh-filter__menu li:hover{ background:#f9fafb; }

/* Active chip look when a value is set (subtle, no text flip) */
.swh-filter--active .swh-filter__btn{
  border-color:var(--swh-primary,#ea580c);
  box-shadow:0 0 0 2px rgba(234,88,12,.08);
  box-shadow:0 0 0 2px color-mix(in srgb, var(--swh-primary,#ea580c) 18%, transparent);
  background:#fafafa;
  background:color-mix(in srgb, var(--swh-primary,#ea580c) 8%, #ffffff);
  color:#111827;
}

/* Clear filters button - styled like other filter pills */
.swh-filter--clear{
  display:none; /* shown only when filters active */
  align-items:center;
  padding:10px 14px;
  border:1px solid #e5e7eb;
  background:#fff;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
  cursor:pointer;
  font:500 14px/1 var(--swh-font);
  color:#6b7280;
  border-radius:14px;
  transition:background-color .12s ease, border-color .12s ease, box-shadow .12s ease, color .12s ease;
}
.swh-filter--clear:hover{
  background:#f3f4f6;
  border-color:#e5e7eb;
  color:#111827;
}

/* Clear filters button styling to match other pills */
.swh-props-map-wrap #swh-filter-clear{
  /* hard reset against theme styles */
  -webkit-appearance: none;
  appearance: inherit;
  background: #fff !important;
  border: 1px solid #e5e7eb !important;
  box-shadow: 0 1px 2px rgba(0,0,0,.04) !important;
  color: #6b7280 !important;
  font: 500 14px/1 var(--swh-font);
  padding: 10px 14px !important;
  border-radius: 14px !important;
  display: none;               /* JS toggles to inline-flex when active */
  align-items: center;
  gap: 8px;
  width: auto !important;      /* prevent full-width buttons from themes */
  cursor: pointer;
  white-space: nowrap;
  transition: background-color .12s ease, border-color .12s ease, box-shadow .12s ease, color .12s ease;
}

.swh-props-map-wrap #swh-filter-clear:hover{
  background: #f3f4f6 !important;  /* subtle hover to match pills */
  border-color: #e5e7eb !important;
  color: #111827 !important;
}


/* ---------- Google InfoWindow polish ---------- */
/* Minimal changes - just reduce padding */
.swh-props-map-wrap .gm-style .gm-style-iw-c{
  padding: 2px !important;
}
.swh-props-map-wrap .gm-style .gm-ui-hover-effect:hover img,
.swh-props-map-wrap .gm-style .gm-ui-hover-effect:hover span{
  opacity: .9 !important;
}

/* Empty state */
.swh-empty{
  font: 500 14px/1.6 var(--swh-font);
  color:#6b7280;
  background:#f9fafb;
  padding:16px;
  border:1px dashed #e5e7eb;
  border-radius:12px;
}

/* Override theme CSS that affects filter dropdowns */
.entry-content .swh-filter__menu,
.swh-props-map-wrap .swh-filter__menu{
  padding-left: 0 !important;
  margin-left: 0 !important;
}
.entry-content .swh-filter__menu li,
.swh-props-map-wrap .swh-filter__menu li{
  padding-left: 16px !important;
  margin-left: 0 !important;
}
