/* /var/www/web.nikkidepot.com/public/product/assets/css/product-delivery-map.css */

/**
 * Modal carte livraison produit
 * Desktop : modale centrée via Tailwind dans le HTML.
 * Mobile : fullscreen natif, sans marge, sans border-radius.
 */

.product-delivery-map-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
}

/**
 * Bloque le scroll de la fiche produit quand la modale est ouverte.
 */
html.product-delivery-map-open,
html.product-delivery-map-open body {
    overflow: hidden;
    height: 100%;
}

/**
 * Carte Leaflet produit.
 */
#productLocalDeliveryMap {
    width: 100%;
    height: 100%;
    min-height: 360px;
    z-index: 1;
    background: #e2e8f0;
}

/**
 * Pastille couleur utilisée dans la liste des tarifs.
 */
.product-delivery-zone-dot {
    width: 14px;
    height: 14px;
    display: inline-block;
    flex-shrink: 0;
    border-radius: 999px;
    box-shadow:
        inset 0 0 0 1px rgba(15, 23, 42, 0.12),
        0 4px 12px rgba(15, 23, 42, 0.12);
}

/**
 * Popups Leaflet.
 */
.product-delivery-map-popup {
    font-family: inherit;
    font-size: 13px;
    line-height: 1.45;
}

.leaflet-container {
    font-family: inherit;
}

.leaflet-popup-content {
    font-family: inherit;
    font-size: 13px;
    line-height: 1.45;
}

.leaflet-control-attribution {
    font-size: 10px;
}

/**
 * Desktop/tablette.
 */
@media (max-width: 1023px) {
    #productLocalDeliveryMap {
        height: 48vh;
        min-height: 340px;
    }
}

/**
 * Mobile : fullscreen réel.
 * On neutralise les marges, le fond overlay, les arrondis et les ombres.
 */
@media (max-width: 767px) {
    .product-delivery-map-modal {
        padding: 0 !important;
        background: #ffffff !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    .product-delivery-map-modal > div {
        width: 100%;
        height: 100%;
        max-width: none;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    #productLocalDeliveryMap {
        height: 46vh;
        min-height: 320px;
    }
}

/**
 * Petits mobiles.
 */
@media (max-width: 420px) {
    #productLocalDeliveryMap {
        height: 42vh;
        min-height: 300px;
    }
}