/* DALILNA V10.24 — Bloc 18 : cartographie et publications de la page d'accueil. */
.dalilna-map-v10 { padding-block: 54px 64px; }
.dalilna-map-v10__layout { grid-template-columns: minmax(250px, .76fr) minmax(390px, 1.14fr) minmax(260px, .88fr); gap: 18px; align-items: start; }
.dalilna-map-v10__intro { min-height: 100%; padding: 4px 2px 8px 0; border: 0; border-radius: 0; background: transparent; }
.dalilna-map-v10__header { margin: 0 0 12px; }
.dalilna-map-v10__header > p { margin-bottom: 6px; color: var(--dalilna-primary, #E80C48); font-size: .72rem; }
.dalilna-map-v10__header h2 { max-width: 320px; font-size: clamp(2rem, 3vw, 2.65rem); }
.dalilna-map-v10__lead { margin-bottom: 18px; font-size: .92rem; }
.dalilna-map-v10__select { min-height: 45px; background: #fff; }
.dalilna-map-v10__stats { margin: 14px 0 16px; }
.dalilna-map-v10__stats span { background: #fff; border: 1px solid #E6EAF2; }
.dalilna-map-v10__services-link { width: fit-content; min-height: 43px; border-radius: 11px; }

.dalilna-map-v10__map-card { position: relative; padding: 12px; border-color: #E9EDF5; box-shadow: 0 12px 28px rgba(6, 21, 59, .055); }
.dalilna-map-v10__map-frame { position: relative; min-height: 408px; border-color: #F5E4E9; background: linear-gradient(145deg, #FFF 0%, #FFF8FA 58%, #F7FBFF 100%); isolation: isolate; }
.dalilna-map-v10__map-card .tunisia-governorates-map { position: relative; z-index: 2; max-width: 320px; height: 390px; }
.dalilna-map-v10__map-card .tn-region { stroke: #fff; stroke-width: 2.2; fill: #F9DDE5 !important; }
.dalilna-map-v10__map-card .tn-region:hover,
.dalilna-map-v10__map-card .tn-region:focus-visible { fill: #F59AB3 !important; }
.dalilna-map-v10__map-card .tn-region.active { fill: #E91E63 !important; }
.dalilna-map-v10__leaves { position: absolute; z-index: 1; right: -17px; bottom: -19px; width: 122px; opacity: .86; pointer-events: none; transform: rotate(-9deg); }
.dalilna-map-v10__legend { position: absolute; z-index: 3; top: 20px; right: 14px; display: grid; gap: 5px; padding: 8px 10px; border-radius: 10px; background: rgba(255,255,255,.88); color: #58708F; font: 700 .68rem/1.25 var(--dalilna-font-body); pointer-events: none; }
.dalilna-map-v10__legend span { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.dalilna-map-v10__legend img { width: 13px; height: 18px; }
.dalilna-map-v10__map-toolbar { position: relative; z-index: 4; }

.dalilna-publications-v10__source { grid-column: 1 / -1; margin: -2px 0 4px; color: var(--dalilna-text-muted, #58708F); font: 600 .76rem/1.4 var(--dalilna-font-body); }
.dalilna-publications-v10__empty { grid-column: 1 / -1; min-height: 0; padding: 16px 0; border: 0; background: transparent; color: var(--dalilna-text-muted, #58708F); text-align: start; }
.dalilna-publications-v10__empty a { color: var(--dalilna-primary, #E80C48); font-weight: 800; }

html[lang="ar"] .dalilna-map-v10__intro { padding: 4px 0 8px 2px; }
html[lang="ar"] .dalilna-map-v10__leaves { right: auto; left: -17px; transform: scaleX(-1) rotate(-9deg); }
html[lang="ar"] .dalilna-map-v10__legend { right: auto; left: 14px; text-align: right; }

@media (max-width: 1100px) {
  .dalilna-map-v10__layout { grid-template-columns: minmax(245px, .78fr) minmax(390px, 1.22fr); }
  .dalilna-map-v10__intro { padding: 4px 0 8px; }
}
@media (max-width: 767px) {
  .dalilna-map-v10__layout { grid-template-columns: 1fr; }
  .dalilna-map-v10__intro { padding: 0; }
  .dalilna-map-v10__header h2 { max-width: none; }
  .dalilna-map-v10__map-frame { min-height: 350px; }
  .dalilna-map-v10__map-card .tunisia-governorates-map { height: 340px; max-width: 280px; }
  .dalilna-map-v10__legend { top: auto; right: 8px; bottom: 8px; font-size: .61rem; }
  html[lang="ar"] .dalilna-map-v10__legend { right: auto; left: 8px; }
}
@media (max-width: 420px) {
  .dalilna-map-v10__map-frame { min-height: 320px; }
  .dalilna-map-v10__map-card .tunisia-governorates-map { height: 310px; max-width: 238px; }
  .dalilna-map-v10__legend { padding: 6px; gap: 3px; font-size: .56rem; }
  .dalilna-map-v10__legend img { width: 11px; height: 15px; }
}
