
:root{--ea:#4DB6AC;--ea-fort:#00897B;--ea-or:#D4A24C}
[hidden]{display:none!important}
.sidebar-brand-logo.ea{background:linear-gradient(135deg,#B2DFDB,#00796B);color:#04211D}
.sidebar-brand-text p{color:var(--ea)}
.nav-item.active{background:rgba(0,137,123,.16);color:var(--ea);border-left-color:var(--ea-fort)}
.nav-item .nav-badge{margin-left:auto;min-width:20px;padding:1px 7px;border-radius:10px;background:var(--danger);color:#fff;font-size:10px;font-weight:800;text-align:center}
.nav-user{padding:0 16px 16px}
.onglet{display:none}.onglet.on{display:block;animation:apparait .25s ease}
@keyframes apparait{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.profil-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--border);font-size:12px}
.profil-chip b{font-family:'Sora';color:#26A69A}
.kpi-card{border-top-color:var(--ea-fort)}
.kpi-card.alerte{border-top-color:var(--danger)}.kpi-card.ok{border-top-color:var(--success)}.kpi-card.att{border-top-color:var(--warning)}
.data-table{width:100%;border-collapse:collapse;font-size:12.5px}
.data-table th{background:var(--surface-elev);color:var(--text-sec);padding:9px 12px;font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.5px;text-align:left;border-bottom:2px solid var(--border);white-space:nowrap}
.data-table td{padding:9px 12px;border-bottom:1px solid rgba(46,53,82,.45);vertical-align:top}
.data-table td.num,.data-table th.num{text-align:right}
.data-table td.num{font-family:'Sora';font-weight:700;white-space:nowrap}
.data-table tbody tr.cliquable{cursor:pointer}.data-table tbody tr.cliquable:hover td{background:rgba(0,137,123,.08)}
.table-wrap{overflow-x:auto;max-height:640px;overflow-y:auto}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px}
.nw{white-space:nowrap}
.outils{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
.outils input,.outils select{padding:9px 12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:12.5px;font-family:inherit}
.outils input[type=search]{min-width:260px}
.outils .espace{flex:1}
.etiq{display:inline-block;padding:2px 8px;border-radius:8px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}
.e-ok{background:rgba(0,230,118,.14);color:var(--success)}
.e-risque{background:rgba(255,171,0,.16);color:var(--warning)}
.e-ko{background:rgba(213,0,0,.18);color:#FF5252}
.e-neutre{background:rgba(107,115,150,.2);color:var(--text-sec)}
.e-info{background:rgba(0,137,123,.18);color:var(--ea)}
.modal{max-width:640px;max-height:calc(100vh - 32px);overflow-y:auto}
.modal.large{max-width:1180px}
.champ textarea,.champ input,.champ select{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;font-family:inherit}
.champs-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.champs-2>*{min-width:0}
.form-msg{font-size:12px;margin-top:8px;min-height:16px}
.form-msg.err{color:#FF5252}.form-msg.ok{color:var(--success)}
.bloc{background:var(--surface-elev);border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin-bottom:14px}
.bloc h4{font-size:13px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.lignes-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px 16px;font-size:12px}
.lignes-info small{display:block;color:var(--text-ter);font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:.4px}
.lignes-info b{font-family:'Sora';word-break:break-all}
.vide-etat{padding:34px;text-align:center;color:var(--text-ter);font-size:13px}
.bi-header>div:first-child{flex:1 1 360px}

.champs-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.champs-3>*{min-width:0}
.champ{margin-bottom:10px}.champ label{display:block;font-size:11px;font-weight:700;color:var(--text-sec);margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}
.ctl{display:grid;grid-template-columns:24px 1fr auto;gap:8px;align-items:start;padding:8px 10px;border-radius:10px;background:var(--bg);border:1px solid var(--border);font-size:12px;margin-bottom:6px}
.ctl small{display:block;color:var(--text-sec);margin-top:2px}
.ctl.OK{border-color:rgba(0,230,118,.35)}.ctl.ALERTE{border-color:rgba(255,171,0,.5);background:rgba(255,171,0,.05)}.ctl.ECHEC{border-color:rgba(213,0,0,.55);background:rgba(213,0,0,.06)}
.etapes{display:flex;gap:4px;flex-wrap:wrap;margin:6px 0 12px}
.etapes span{flex:1 1 90px;padding:6px 8px;border-radius:8px;background:var(--bg);border:1px solid var(--border);font-size:10.5px;font-weight:700;text-align:center;color:var(--text-ter)}
.etapes span.fait{background:rgba(0,137,123,.16);border-color:rgba(0,137,123,.5);color:var(--ea)}
.etapes span.ici{background:var(--ea-fort);border-color:var(--ea-fort);color:#fff}
.etapes span.ko{background:rgba(213,0,0,.18);border-color:rgba(213,0,0,.5);color:#FF8A80}
.jauge-mini{display:inline-flex;align-items:center;gap:8px;font-family:'Sora';font-weight:800}
.jauge-mini i{display:inline-block;width:70px;height:7px;border-radius:5px;background:rgba(107,115,150,.25);overflow:hidden;position:relative}
.jauge-mini i b{position:absolute;left:0;top:0;bottom:0;background:var(--ea-fort)}
.msg-fil{max-height:300px;overflow-y:auto;display:flex;flex-direction:column;gap:6px}
.msg-b{padding:8px 11px;border-radius:10px;font-size:12px;max-width:88%;background:var(--bg);border:1px solid var(--border)}
.msg-b.ACTEUR{align-self:flex-end;border-color:rgba(212,162,76,.5)}.msg-b.CCAK{border-color:rgba(0,137,123,.5)}
.msg-b small{display:block;color:var(--text-ter);font-size:10px;margin-bottom:2px}
.membre{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:7px 10px;border-radius:9px;background:var(--bg);border:1px solid var(--border);font-size:12px;margin-bottom:5px}
.membre.present{border-color:rgba(0,230,118,.45)}
.lien-visio{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:10px;background:linear-gradient(135deg,#00897B,#00695C);color:#fff!important;font-weight:800;text-decoration:none}
.grille-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grille-2>*{min-width:0}
@media(max-width:820px){.champs-3,.grille-2{grid-template-columns:1fr}.ctl{grid-template-columns:22px 1fr}}
@media(max-width:820px){.champs-2{grid-template-columns:1fr}.outils input[type=search]{min-width:0;width:100%}.main{padding:16px 12px 84px;overflow-x:hidden}.bi-header h1{font-size:22px}}
.barre-h{display:grid;grid-template-columns:160px 1fr 40px;gap:8px;align-items:center;font-size:12px;margin-bottom:6px}
.barre-h .b{height:8px;border-radius:5px;background:rgba(107,115,150,.25);overflow:hidden}.barre-h .b i{display:block;height:100%;background:var(--ea-fort)}
.modal.large form,.modal form{display:block}
.btn.danger{border-color:rgba(213,0,0,.5);color:#FF8A80}
.grille-sess{grid-template-columns:2fr 1fr}
@media(max-width:820px){.grille-sess{grid-template-columns:1fr}}

/* lot GF1 — garantie financière d'agrément */
.gar-jauge{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:12px}
.gar-jauge.na{color:var(--text-ter)}
.gar-jauge i{display:block;height:9px;border-radius:6px;background:rgba(107,115,150,.25);overflow:hidden;margin:6px 0}
.gar-jauge i u{display:block;height:100%;text-decoration:none;border-radius:6px;background:var(--success);transition:width .4s}
.gar-jauge.moyen i u{background:var(--warning)}.gar-jauge.bas i u{background:var(--danger)}
.gar-jauge.ok{border-color:rgba(0,230,118,.35)}.gar-jauge.moyen{border-color:rgba(255,171,0,.45)}.gar-jauge.bas{border-color:rgba(213,0,0,.5)}
.gar-ligne{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:baseline}
.gar-ligne b{font-family:'Sora';font-size:20px}
.gar-ligne.petit{font-size:11px;color:var(--text-sec);margin-top:2px}
.gar-mvt{display:grid;grid-template-columns:24px 1fr;gap:8px;padding:7px 0;border-bottom:1px solid rgba(46,53,82,.45);font-size:12px}
.gar-mvt small{display:block;color:var(--text-sec);margin-top:2px}.gar-mvt small.ter{color:var(--text-ter)}
.gar-inactive{border-color:rgba(255,171,0,.45);font-size:12.5px;color:var(--text-sec)}
