/* Tableau de bord dynamique — compléments aux styles de la charte. */
.onpg-tb{ position:relative; }
.onpg-tb--charge::after{ content:""; position:absolute; inset:0; background:rgba(255,255,255,.55); pointer-events:none; z-index:5; }
.onpg-tb .groupe-filtres{ display:flex; }
.onpg-tb .champ-filtre{ min-width:150px; }
.onpg-tb .onpg-periode{ display:flex; gap:6px; }
.onpg-tb .onpg-periode .filtre{ min-width:0; }
.onpg-tb .bouton-export{ text-decoration:none; display:inline-flex; align-items:center; gap:6px; cursor:pointer; }
.onpg-graphique svg{ width:100%; height:auto; display:block; }
.onpg-vide-graphique{ color:var(--onpg-gris,#6E6E72); font-size:.92rem; padding:18px 4px; margin:0; }
.onpg-legende{ display:flex; gap:18px; flex-wrap:wrap; list-style:none; padding:0; margin:10px 0 0; }
.onpg-legende li{ display:flex; align-items:center; gap:7px; font-size:.82rem; }
.onpg-legende .puce{ width:10px; height:10px; border-radius:50%; display:inline-block; }
.onpg-tb .region--active{ outline:3px solid #10233F; outline-offset:-3px; }
.onpg-tb .carte-kpi .tendance small{ font-weight:400; opacity:.8; }
.onpg-tb__erreur{ color:#B32D2E; }
.onpg-tb [hidden]{ display:none !important; }
@media (max-width:900px){
  .onpg-tb .groupe-filtres{ display:none; flex-direction:column; gap:10px; width:100%; margin-top:10px; }
  .onpg-tb .groupe-filtres.ouvert{ display:flex; }
  .onpg-tb .champ-filtre{ width:100%; }
}
@media print{
  header, footer, .elementor-location-header, .elementor-location-footer, .onpg-entete-secours, .onpg-pied-secours,
  .onpg-tb .barre-filtres .groupe-export, .onpg-tb .bouton-filtres-mobile, .onpg-tb [data-plus], .onpg-tb .chips-filtres button{ display:none !important; }
  .onpg-tb .groupe-filtres{ display:flex !important; flex-wrap:wrap; }
  .onpg-tb .panneau{ break-inside:avoid; box-shadow:none; }
}
.onpg-tb .grille-carte-tableau > *, .onpg-tb .grille-graphiques > *, .onpg-tb .grille-kpi > *{ min-width:0; }
.onpg-tb .enveloppe-tableau{ overflow-x:auto; -webkit-overflow-scrolling:touch; }

/* Mobile : les boutons d'export gardent leur libellé (CSV, Excel, Image) */
@media (max-width:760px){
  .onpg-tb .groupe-export{ flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:8px; width:100%; }
  .onpg-tb .groupe-export > span{ flex:1 1 100%; margin:0 0 2px; }
  .onpg-tb .groupe-export .bouton-export{ flex:1 1 0; min-width:96px; justify-content:center; padding:10px 12px; }
  .onpg-tb .groupe-export .bouton-export span{ display:inline !important; font-size:.84rem; font-weight:700; }
}
