/* ===== Map-specific styles — Leaflet + Pane optimizations ===== */

/* Force GPU acceleration for all panes */
.leaflet-pane {
    will-change: transform;
}
.leaflet-tile-container img {
    will-change: transform;
    image-rendering: auto;
}
.leaflet-fade-anim .leaflet-tile { will-change: opacity; }
.leaflet-zoom-anim .leaflet-zoom-animated { will-change: transform; }

/* Canvas rendering optimization */
.leaflet-canvas-container {
    pointer-events: auto;
}

/* Pane pointer-events architecture:
   Leaflet strips "Pane" from names: occupationPane → leaflet-occupation-pane

   - occupation (z:400, canvas): FULL interaction for popups
   - forets (z:450, SVG): only border strokes are interactive
   - limites (z:460, SVG): only border strokes are interactive
   - infra (z:470): full interaction (lines/points don't block much)

   This allows clicks to pass through transparent polygon fills
   in overlay panes and reach the occupation canvas below. */
.leaflet-occupation-pane { pointer-events: auto; }
.leaflet-infra-pane { pointer-events: auto; }

/* Forest pane: SVG paths only interactive on stroke, not fill area.
   Clicks inside forest polygons pass through to occupation canvas below. */
.leaflet-forets-pane { pointer-events: none !important; }
.leaflet-forets-pane svg { pointer-events: none !important; }
.leaflet-forets-pane path { pointer-events: stroke !important; }

/* Limites pane: SVG paths only interactive on stroke, not fill area.
   Clicks inside department boundary pass through to occupation canvas below. */
.leaflet-limites-pane { pointer-events: none !important; }
.leaflet-limites-pane svg { pointer-events: none !important; }
.leaflet-limites-pane path { pointer-events: stroke !important; }

/* Tooltip */
.leaflet-tooltip {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 11px;
    padding: 4px 10px;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
.foret-tooltip {
    font-weight: 600;
    color: #14532d;
    border: 1px solid #22c55e;
}

/* Carbon stock tooltip — dark green theme for CO2 mode */
.carbone-tooltip {
    font-weight: 600;
    color: #ffffff !important;
    background: rgba(20,83,45,0.92) !important;
    border: 1px solid rgba(34,197,94,0.5) !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
    font-size: 11px;
}
.carbone-tooltip::before {
    border-top-color: rgba(20,83,45,0.92) !important;
}

/* Popup */
.leaflet-popup-content-wrapper {
    border-radius: 14px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.15) !important;
    padding: 0 !important;
    overflow: hidden;
}
.leaflet-popup-content {
    margin: 14px !important;
    font-family: 'DM Sans', sans-serif !important;
    min-width: 200px;
}

/* Attribution */
.leaflet-control-attribution {
    font-size: 9px !important;
    background: rgba(255,255,255,0.7) !important;
    border-radius: 6px 0 0 0 !important;
}

/* Zoom controls */
.leaflet-control-zoom a {
    border-radius: 10px !important;
    width: 34px !important;
    height: 34px !important;
    line-height: 34px !important;
    font-size: 16px !important;
}
.leaflet-control-zoom {
    border: none !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.15) !important;
    border-radius: 12px !important;
    overflow: hidden;
}
