/* Leaflet property map — shared styles */
.property-map-container,
#loginPropertyMap,
#dashboardPropertyMap,
#propertyMap,
#siteLocationMap {
    width: 100%;
    border-radius: 0.5rem;
    overflow: hidden;
}

#dashboardPropertyMap,
#propertyMap,
#siteLocationMap {
    border: 1px solid #dee2e6;
}

#dashboardPropertyMap {
    height: 400px;
}

#propertyMap {
    height: 70vh;
    min-height: 500px;
}

#siteLocationMap {
    height: 420px;
    min-height: 320px;
}

#loginPropertyMap {
    width: 100%;
    height: 100vh;
    min-height: 480px;
}

.property-map-pin {
    background: none;
    border: none;
}

.property-map-pin i {
    font-size: 2.15rem;
    color: #d62828;
    line-height: 1;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.35));
    transition: transform 0.15s ease, color 0.15s ease;
}

.leaflet-popup-content {
    font-family: Inter, system-ui, -apple-system, sans-serif;
    font-size: 13px;
    line-height: 1.45;
    margin: 12px 14px;
}

.property-map-popup strong {
    color: #1a1a1a;
    font-size: 14px;
}

.property-map-popup-notes {
    color: #6c757d;
}

.leaflet-control-zoom {
    border-radius: 8px !important;
    overflow: hidden;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12) !important;
}

.leaflet-control-attribution {
    font-size: 10px;
    background: rgba(255, 255, 255, 0.85) !important;
    border-radius: 6px 0 0 0;
}

/* Leaflet 1.9.4 mix-blend-mode can wash out light tiles to blank gray */
.leaflet-container img.leaflet-tile {
    mix-blend-mode: normal !important;
    max-width: none !important;
    max-height: none !important;
}

.property-map-pin {
    background: transparent !important;
    border: none !important;
}

.property-map-pin svg {
    display: block;
    filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.35));
}
