.property-map-popup .leaflet-popup-content-wrapper {
    background: var(--surface-raised);
    color: var(--ink);
    border: 1px solid var(--border);
    border-radius: 12px;
    box-shadow: 0 8px 24px rgb(15 23 42 / 16%);
}

.property-map-popup .leaflet-popup-content {
    margin: 14px 16px;
}

.property-map-popup .leaflet-popup-tip { background: var(--surface-raised); }
.property-map-popup a.leaflet-popup-close-button { color: var(--ink-muted); top: 5px; right: 5px; }

.property-popup { font-family: var(--font-sans); line-height: 1.4; }
.property-popup__status { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 600; color: var(--ink-muted); }
.property-popup__status::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: #16805b; }
.property-popup__status.is-sold::before { background: var(--ink-faint); }
html[data-theme='dark'] .property-popup__status:not(.is-sold)::before { background: #52c99b; }

.property-popup .property-popup__address { font-size: 14px; font-weight: 650; line-height: 1.4; margin: 5px 12px 12px 0; overflow-wrap: anywhere; }
.property-popup__amounts { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 12px; }
.property-popup__amount + .property-popup__amount { border-left: 1px solid var(--border); padding-left: 12px; }
.property-popup__label { display: block; font-size: 10px; color: var(--ink-muted); margin-bottom: 2px; }
.property-popup__value { display: block; font-size: 17px; font-weight: 650; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.property-popup__details { display: flex; flex-wrap: wrap; gap: 4px 8px; font-size: 12px; color: var(--ink-soft); margin-top: 10px; }
.property-popup__details:empty { display: none; }
.property-popup__details span + span::before { content: '\00b7'; margin-right: 8px; color: var(--ink-faint); }
.property-popup a.property-popup__link { display: block; border-top: 1px solid var(--border); margin-top: 12px; padding-top: 9px; color: var(--accent); font-size: 12px; font-weight: 600; text-decoration: none; }
.property-popup a.property-popup__link:hover { text-decoration: underline; }
