/* Small, consistent signals across listings, detail pages and map previews. */
.signal-available{--listing-signal:#3472c9}
.signal-new{--listing-signal:#20804b}
.signal-reduced{--listing-signal:#c94148}
.signal-coming{--listing-signal:#c47a17}
.listing-signal-dot{display:inline-block;flex:none;width:8px;height:8px;border-radius:50%;background:var(--listing-signal,#3472c9);box-shadow:0 0 0 2px #fff}
.listing-signal-badge{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;padding:6px 9px;border:1px solid #e3e8ed;border-radius:7px;background:#f7f9fa;color:#405065;font:650 10px/1.3 Montserrat,Arial,sans-serif;letter-spacing:0;vertical-align:middle}
.listing-signal-badge.signal-reduced{color:#9b3039;background:#fff5f5;border-color:#f0dfe1}
.listing-signal-badge.signal-new{color:#226043;background:#f1f8f3;border-color:#dcebe1}
.listing-reduction-percent{padding-left:6px;border-left:1px solid #c9414830;font-weight:750;font-variant-numeric:tabular-nums}
.listing-price-current{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:5px 8px;min-width:0;font-variant-numeric:tabular-nums}
.listing-price-previous{display:block;flex-basis:100%;margin-bottom:4px;color:#6c7280;font-size:12px;font-weight:550;line-height:1.4;letter-spacing:0;font-variant-numeric:tabular-nums}
.listing-price-previous del{text-decoration-thickness:1px;text-decoration-color:currentColor}
/* Photo overlays never occupy a row in the card's content. */
.card-image>.listing-signal-badge{position:absolute;right:12px;bottom:12px;z-index:2;width:max-content;max-width:calc(100% - 24px);margin:0;flex-wrap:nowrap;padding:7px 10px;border:1px solid #ffffffbf;border-radius:999px;background:#fffffff2;box-shadow:0 2px 8px #13233b12;font-size:10px;font-weight:650;line-height:1.2;white-space:nowrap;pointer-events:none}
.card-image>.listing-signal-badge .listing-signal-dot{width:6px;height:6px;box-shadow:none}
.map-card .card-image>.listing-signal-badge{right:8px;bottom:8px;padding:5px 8px;font-size:9px}
.card-price:has(.listing-price-previous){display:block}
.property-heading h2:has(.listing-price-previous){display:block}
.property-heading h2 .listing-price-previous{font-size:16px;margin-bottom:7px}
.property-heading h2+.listing-signal-badge{margin-top:12px}
.signature-hero .listing-price-previous{color:#b7bfcd}
.signature-hero .listing-signal-badge{background:#ffffffed}
.cabo-popup-content>.listing-signal-badge{margin-bottom:8px;font-size:9px;padding:5px 7px}
.cabo-popup-price{white-space:normal}
.cabo-popup-price .listing-price-previous{font-size:11px}
.cabo-popup-price .listing-price-current{gap:4px 6px}
.cabo-pin-price>.listing-signal-dot{width:8px;height:8px;margin-right:2px;align-self:center;box-shadow:0 0 0 2px #ffffffbf}
.cabo-price-marker.is-compact:not(.is-selected):not(.is-hovered):not(:focus-visible) .cabo-pin-value{background:var(--listing-signal,#3472c9)}
.cabo-map-legend{position:absolute;z-index:400;left:16px;bottom:72px;display:grid;grid-template-columns:max-content max-content;gap:9px 16px;max-width:calc(100% - 84px);padding:11px 13px;border:1px solid #dfe4e9;border-radius:12px;background:#ffffffed;box-shadow:0 2px 9px #17213c15;font:600 10px/1.4 Montserrat,Arial,sans-serif;color:#4b5668;pointer-events:auto}
.cabo-map-legend-item{display:inline-flex;align-items:center;gap:7px;min-width:0}
.cabo-map-legend-item .listing-signal-dot{width:7px;height:7px}
.cabo-map-shell.is-drawing .cabo-map-legend{display:none}
.cabo-map-shell:has(.leaflet-popup) .cabo-map-legend{visibility:hidden;pointer-events:none}
@media(max-width:600px){
  .cabo-map-legend{left:12px;bottom:74px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 10px;width:245px;padding:10px;font-size:9px}
  .cabo-map-legend-item{gap:6px;align-items:flex-start}
  .cabo-map-legend-item .listing-signal-dot{margin-top:2px}
  .property-heading h2 .listing-price-previous{font-size:14px}
  .listing-signal-badge{font-size:9px}
}
