/* pages : activite (page propre à chaque secteur, web_activite.py) */
.act-kpis { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.act-kpis .kpi-d { white-space: normal; }
.act-cols { display: grid; gap: 12px; align-items: start; }
.act-col { min-width: 0; }
.act-rang { display: flex; gap: 10px; align-items: center; justify-content: space-between; background: var(--panneau2);
  border-radius: 6px; padding: 8px 12px; margin-bottom: 6px; }
.act-rg { min-width: 0; flex: 1; }
.act-rd { display: flex; gap: 4px; flex-wrap: wrap; justify-content: flex-end; flex-shrink: 0; max-width: 55%; }
.act-pile { display: grid; gap: 4px; justify-items: end; }
.act-txt { font-size: 12.5px; margin: 8px 0 0; }
.act-txt.act-clair { color: #d4d4d4; }
.act-bas { margin-top: 8px; }
.act-mol { display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: center; margin-top: 3px; font-size: 12px; }
.act-phase { font-weight: 700; min-width: 104px; }
.act-mb { display: inline-block; width: 110px; }
.act-mb .barre { margin: 0; }
.act-cl { color: #cfcfcf; }
.act-titre { display: flex; gap: 10px; align-items: center; font-size: 17px; }
.act-barre-l { max-width: 420px; margin: 8px 0 2px; }
.act-barre-l .barre { height: 10px; }
.act-env { display: flex; gap: 10px; align-items: baseline; }
.act-env b { min-width: 74px; font-size: 15px; }
.act-note { font-size: 15px; }
.act-ao { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-top: 4px; min-height: 4px; }
.act-ao-b { margin-left: auto; }
.act-lignes { display: grid; gap: 3px; }
.act-l { display: flex; justify-content: space-between; gap: 12px; color: #cfcfcf; font-size: 13px; }
.act-l.total { border-top: 1px solid var(--bord); padding-top: 3px; color: var(--txt); font-weight: 700; }
.act-sec { font-size: 11px; font-weight: 700; letter-spacing: .08em; color: var(--mut); margin: 14px 0 4px; }
.act-h4 { margin: 12px 0 6px !important; }
.act-permis { display: flex; gap: 10px; align-items: center; margin-bottom: 8px; }
.act-permis .act-mb { width: 160px; }
.act-h140 .graphe { height: 150px; }
.act-h240 .graphe { height: 250px; }
.act-vide { padding: 30px 0; text-align: center; }
@media (max-width: 1100px) {
  .act-cols { grid-template-columns: 1fr !important; }
}
.act-page .tab th, .act-page .tab td { white-space: nowrap; padding-left: 5px; padding-right: 5px; }
