/* =============================================================================
   Intra-RH — Avancement de la paie (T-16) : feuille de style du module
   (palette T-13, cohérente avec les autres modules — desktop, densité D-129).
   ============================================================================= */

.contenu-module { max-width: 74rem; margin: 0 auto; padding: 1rem; }

.carte {
    background: #fff; border: 1px solid #d8dee6; border-radius: 12px;
    padding: 1rem 1.25rem; margin-bottom: 1rem;
}
.carte h2 { margin-top: 0; font-size: 1.15rem; }
.carte-refus { border-color: #b3261e; }

.badge {
    display: inline-block; padding: 0.15rem 0.6rem; border-radius: 999px;
    font-size: 0.8rem; font-weight: 600;
}
.badge-ok { background: #dff2e9; color: #0d5c46; }
.badge-attention { background: #fdf0dc; color: #8a5a00; }
.badge-manquant { background: #fbe4e2; color: #b3261e; }
.badge-estimation { background: #e3ecf7; color: #1d4e89; }
.badge-type { background: #eceff4; color: #26313f; }

.manques { margin: 0.35rem 0 0; padding-left: 1.1rem; color: #b3261e; font-size: 0.9rem; }

table.tableau { width: 100%; border-collapse: collapse; font-size: 0.92rem; }
table.tableau th, table.tableau td {
    text-align: left; padding: 0.45rem 0.6rem; border-bottom: 1px solid #e3e8ee;
    vertical-align: top;
}
table.tableau th { background: #f0f3f7; position: sticky; top: 0; }

.compteurs { display: flex; gap: 1.5rem; flex-wrap: wrap; margin: 0.4rem 0; }
.compteur { min-width: 8rem; }
.compteur .valeur { font-size: 1.5rem; font-weight: 700; display: block; }
.compteur .legende { font-size: 0.82rem; color: #5b6570; }

.jauge { background: #e3e8ee; border-radius: 999px; height: 0.55rem; overflow: hidden; }
.jauge > span { display: block; height: 100%; background: #2F5496; }

.filtres { display: flex; gap: 0.8rem; flex-wrap: wrap; align-items: end; margin-bottom: 0.8rem; }
.filtres label { display: flex; flex-direction: column; font-size: 0.85rem; gap: 0.2rem; }
.filtres select, .filtres input { padding: 0.3rem 0.45rem; }

.anomalies-par-type { display: flex; gap: 0.4rem; flex-wrap: wrap; margin-top: 0.35rem; }

.actions-ligne { display: flex; gap: 0.4rem; }
.actions-ligne .bouton { padding: 0.25rem 0.7rem; font-size: 0.85rem; }

.zone-traitement { margin-top: 0.5rem; display: flex; gap: 0.5rem; align-items: center; flex-wrap: wrap; }
.zone-traitement input[type="text"] { flex: 1; min-width: 16rem; padding: 0.35rem 0.5rem; }

.aide { color: #5b6570; font-size: 0.88rem; }
.chargement { color: #5b6570; }
.muted { color: #5b6570; }
