/* Back-office : reprend les styles de l'appli (socle.css, appli.css), quelques ajouts. */
.bo-entete { display: flex; justify-content: space-between; align-items: center; padding: .8rem 1.2rem; }
.bo { max-width: 72rem; margin: 0 auto; padding: 1.2rem 1rem 4rem; }
.bo .porte-carte { max-width: 26rem; margin: 3rem auto; padding: 1.5rem; background: var(--surface); border: 1px solid var(--bord); border-radius: var(--rayon); }
.bo .statut-club { font-size: .78rem; padding: .15rem .55rem; border-radius: 999px; background: var(--survol); white-space: nowrap; }
.bo .statut-club[data-statut="suspendu"], .bo .statut-club[data-statut="ferme"] { color: var(--alerte); }
.bo .statut-club[data-statut="essai"], .bo .statut-club[data-statut="actif"] { color: var(--accent); }
.bo .grille-actions { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr)); }
.bo .grille-actions form { background: var(--surface); border: 1px solid var(--bord); border-radius: var(--rayon); padding: 1rem; margin: 0; }
.bo .module-ligne { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.bo .journal td { font-size: .85rem; }
