/* Fondos propios de lectura para todos los mapas, independientes de la capa base. */
body .leaflet-container :is(.leaflet-tooltip,.leaflet-popup-content-wrapper,.leaflet-popup-tip){
 background:#1b293b!important;color:#f2f6ff!important;border-color:#8195b2!important;
 box-shadow:0 5px 18px #0008;
}
body .leaflet-container :is(.map-tooltip-card,.map-popup,.map-popup-card,.polygon-map-info,.coordinate-map-popup,.terrain-popup){
 background:transparent!important;color:#f2f6ff!important;font-family:inherit;font-size:13px;line-height:1.45;overflow-wrap:anywhere;
}
body .leaflet-container :is(.leaflet-tooltip,.leaflet-popup-content) :is(h2,h3,h4,strong,span,p,small,dt,dd,em,label){
 color:inherit!important;text-shadow:none!important;
}
body .leaflet-container :is(.leaflet-tooltip,.leaflet-popup-content) :is(h4,strong){font-weight:700}
body .leaflet-container .map-tooltip-card strong{font-size:14px}
body .leaflet-container .map-tooltip-card span{font-size:12px}
body .leaflet-container :is(.map-tooltip-card small,.polygon-nomina-source){font-size:11px}
body .leaflet-container .map-popup-button{color:#f2f6ff!important;background:#2d3e56!important;border-color:#8195b2}
body .leaflet-container :is(.leaflet-tooltip,.leaflet-popup-content) a{color:#b8dcff!important;text-decoration:underline}
body .leaflet-container .polygon-map-info dl>div{background:#23344a!important;border-color:#667b99!important}
body .leaflet-container .polygon-map-info h4{font-size:12px;margin:12px 0 5px}
body .leaflet-container .leaflet-tooltip{max-width:min(340px,85vw);white-space:normal;font-size:13px;line-height:1.45}
body .leaflet-container .leaflet-tooltip-top:before{border-top-color:#1b293b!important}
body .leaflet-container .leaflet-tooltip-bottom:before{border-bottom-color:#1b293b!important}
body .leaflet-container .leaflet-tooltip-left:before{border-left-color:#1b293b!important}
body .leaflet-container .leaflet-tooltip-right:before{border-right-color:#1b293b!important}

body .leaflet-container .polygon-map-info dt{overflow-wrap:normal;word-break:normal;font-size:12px}

/* Ancho intrínseco estable: Leaflet posiciona el tooltip de forma absoluta. */
body .leaflet-container .polygon-map-tooltip{
 width:max-content!important;min-width:min(180px,calc(100vw - 48px));
 max-width:min(320px,calc(100vw - 48px))!important;padding:7px 10px;
 white-space:normal;word-break:normal;overflow-wrap:break-word;
}
body .leaflet-container .polygon-map-tooltip .polygon-map-info{
 display:block;width:auto;font-size:11px;line-height:1.3;overflow-wrap:break-word;
}
body .leaflet-container .polygon-map-tooltip .polygon-map-info>strong{
 display:block;font-size:12px;line-height:1.3;margin-bottom:2px;
}
body .leaflet-container .polygon-map-tooltip .polygon-map-info>span{display:block;font-size:11px}
body .leaflet-container .campamento-polygon-popup .leaflet-popup-content{margin:10px 12px}
body .leaflet-container .polygon-nomina-card{font-size:11px;line-height:1.25;gap:3px}
body .leaflet-container .polygon-nomina-card>strong{font-size:14px;line-height:1.25}
body .leaflet-container .polygon-nomina-card .polygon-nomina-source{font-size:10px;margin:1px 0 3px}
body .leaflet-container .polygon-nomina-card h4{font-size:10px;margin:6px 0 3px;padding-bottom:3px}
body .leaflet-container .polygon-nomina-card dl{gap:3px}
body .leaflet-container .polygon-nomina-card dl>div{gap:8px;padding:2px 4px}
body .leaflet-container .polygon-nomina-card :is(dt,dd){font-size:11px;line-height:1.25}
