/* Smooth Custom Scrollbar */
::-webkit-scrollbar {
    width: 6px;
}
::-webkit-scrollbar-track {
    background: #0f172a;
}
::-webkit-scrollbar-thumb {
    background: #334155;
    border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
    background: #475569;
}
/* Custom Leaflet Tooltips & Popups Styles */
.leaflet-tooltip-custom {
    background: rgba(15, 23, 42, 0.9) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #fff !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1) !important;
    padding: 4px 8px !important;
    font-size: 11px !important;
}
.leaflet-popup-content-wrapper {
    background: #1e293b !important;
    color: #f8fafc !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    padding: 4px !important;
}
.leaflet-popup-tip {
    background: #1e293b !important;
}
/* Pulse Animation for selected zone */
@keyframes pulse-border {
    0% { stroke-dashoffset: 0; }
    100% { stroke-dashoffset: -20; }
}
.selected-polygon {
    stroke-dasharray: 6;
    animation: pulse-border 2s linear infinite;
}
/* Glowing effects for Estepona boundary */
.estepona-boundary {
    filter: drop-shadow(0px 0px 8px rgba(16, 185, 129, 0.6));
}

/* Ajustar al máximo el contenedor principal de la página de mapas respetando el header */
body.is-map-page {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important; /* Anula el align-items: center de style.css */
    height: 100vh !important;
    min-height: 100vh !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}
body.is-map-page main {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
    height: calc(100vh - var(--menu-desktop-height, 60px)) !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important; /* Anula el padding: 2rem de style.css */
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}
@media (min-width: 1024px) {
    body.is-map-page main {
        flex-direction: row !important; /* Lado a lado (sidebar + mapa) en PC */
    }
}
@media (max-width: 768px) {
    body.is-map-page main {
        height: calc(100vh - 60px) !important;
    }
}
