/* Portail Associations — socle fonctionnel 3.2.1
 * Aucune décision de design ici : la présentation du portail appartient au thème.
 */
.pa-app *, .pa-app *::before, .pa-app *::after,
.pa-login *, .pa-login *::before, .pa-login *::after { box-sizing: border-box; }
.pa-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.pa-app [hidden], .pa-login [hidden] { display: none; }
.pa-app :where(img, video, canvas, iframe, svg) { max-width: 100%; }

/* Leaflet calcule lui-même la taille de ses calques vectoriels. Le reset média du portail
   ne doit jamais redimensionner les SVG/canvas de l'overlay, sinon les tracés disparaissent. */
.pa-app .leaflet-overlay-pane :where(svg, canvas) {
  max-width: none !important;
  max-height: none !important;
}

/* Isolation technique du renderer vectoriel Leaflet contre les resets CSS du thème WordPress.
   Les couleurs restent pilotées par Leaflet/JS ; ces règles garantissent uniquement le rendu. */
.pa-app .pa-site-plan-map .leaflet-overlay-pane,
.pa-app .pa-site-plan-map .leaflet-overlay-pane svg {
  visibility: visible !important;
  opacity: 1 !important;
}
.pa-app .pa-site-plan-map .leaflet-overlay-pane svg {
  max-width: none !important;
  max-height: none !important;
}
.pa-app .pa-site-plan-map .leaflet-overlay-pane path.leaflet-interactive {
  display: block !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
