/* Карта геолокации семьи (Leaflet modal) */
.hdb-loc-modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: var(--z-modal);
    background: rgba(0, 0, 0, 0.65);
    backdrop-filter: blur(12px);
    align-items: center;
    justify-content: center;
}

.hdb-loc-modal.open { display: flex; }

.hdb-loc-modal-inner {
    position: relative;
    width: 85vw;
    height: 80vh;
    border-radius: 36px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(30, 30, 50, 0.45);
    backdrop-filter: blur(50px) saturate(200%);
    box-shadow: 0 40px 120px rgba(0, 0, 0, 0.8);
}

.hdb-loc-modal-inner .leaflet-container { pointer-events: auto; }

.hdb-loc-modal-close {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 1000;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(20, 20, 35, 0.6);
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    backdrop-filter: blur(10px);
}

.hdb-loc-modal-close:hover { background: rgba(20, 20, 35, 0.8); transform: scale(1.1); }

[data-mode="light"] .hdb-loc-modal {
    background: rgba(0, 0, 0, 0.25) !important;
}

[data-mode="light"] .hdb-loc-modal-inner {
    background: rgba(255, 255, 255, 0.85) !important;
    border-color: rgba(0, 0, 0, 0.10) !important;
    box-shadow: 0 40px 120px rgba(0, 0, 0, 0.15) !important;
}

[data-mode="light"] .hdb-loc-modal-close {
    background: rgba(255, 255, 255, 0.80) !important;
    border-color: rgba(0, 0, 0, 0.10) !important;
    color: #0f172a !important;
}
