:root{color-scheme:light}
/* Hegelia — charte inspirée d'Oxiva : barre latérale bleu nuit, cartes blanches, tuiles colorées */
:root{--nav:#1f3349;--nav2:#2a4460;--bg:#eef1f4;--card:#fff;--txt:#23313f;--mut:#6b7a89;--line:#e2e7ec;
--teal:#16857f;--yellow:#f7c325;--red:#f25f5c;--blue:#3aaee0;--violet:#9b6ef3;--pink:#f06b8a;--ok:#28a745;--radius:10px}
*{box-sizing:border-box}html,body{margin:0;height:100%}
body{font:14px/1.45 Nunito,"Segoe UI",Roboto,Arial,sans-serif;color:var(--txt);background:var(--bg)}
a{color:#2b8fd0;text-decoration:none}a:hover{text-decoration:underline}
.app{display:flex;min-height:100vh}
.side{width:210px;background:var(--nav);color:#dfe6ee;display:flex;flex-direction:column;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}
.side .brand{display:flex;align-items:center;gap:8px;padding:10px 12px;font-weight:700;color:#fff}
.side .brand img{width:26px;height:26px}
.side nav a{display:flex;align-items:center;gap:10px;color:#dfe6ee;padding:6px 14px;margin:1px 6px;border-radius:6px;font-size:13.5px}
.side nav a:hover{background:var(--nav2);text-decoration:none}
.side nav a.on{background:#2d4a68;outline:1px solid #4f6f91;color:#fff}
.side nav .sep{height:10px}
.side .foot{margin-top:auto;padding:10px 14px;font-size:11px;color:#9fb0c2}
.ico{width:16px;text-align:center;opacity:.9}
.main{margin-left:210px;flex:1;min-width:0}
.top{height:46px;background:#fff;display:flex;align-items:center;gap:14px;padding:0 16px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.top h1{font-size:15px;margin:0;font-weight:700;display:flex;gap:8px;align-items:center}
.top .search{margin-left:auto;display:flex;align-items:center;gap:6px}
.top .search input{border:0;border-bottom:1px solid #999;padding:3px 4px;width:220px;outline:0}
.top .icons{display:flex;gap:12px;color:var(--nav);font-size:16px}
.top .avatar{width:30px;height:30px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;font-weight:800;color:var(--nav)}
.tabs{background:#fff;border-bottom:1px solid var(--line);padding:0 16px;display:flex;gap:18px}
.tabs a{padding:8px 0;color:var(--txt);border-bottom:2px solid transparent}.tabs a.on{border-color:var(--nav);font-weight:700}
.content{padding:14px}
.grid{display:grid;gap:14px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1100px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.g2,.g3,.g4{grid-template-columns:1fr}.side{display:none}.main{margin-left:0}}
.card{background:var(--card);border-radius:var(--radius);padding:12px 14px;box-shadow:0 1px 2px rgba(20,40,60,.06)}
.card h2{font-size:14px;margin:0 0 10px;font-weight:700;display:flex;align-items:center;gap:6px}
.card h2 .act{margin-left:auto;font-weight:400;font-size:13px}
.tiles{display:flex;gap:26px;flex-wrap:wrap;padding:6px 4px}
.tile{display:flex;flex-direction:column;align-items:center;gap:4px}
.tile .lbl{font-size:12px;color:var(--mut)}
.tile .v{min-width:130px;height:48px;display:grid;place-items:center;color:#fff;font-size:26px;font-weight:700;border-radius:4px 14px 14px 4px;clip-path:polygon(18% 0,100% 0,100% 100%,0 100%)}
.t-teal{background:var(--teal)}.t-yellow{background:var(--yellow)}.t-red{background:var(--red)}.t-blue{background:var(--blue)}.t-violet{background:var(--violet)}
table.t{width:100%;border-collapse:collapse;font-size:13px}
table.t th{background:var(--nav);color:#fff;text-align:left;padding:6px 8px;font-weight:600}
table.t td{padding:5px 8px;border-bottom:1px solid var(--line)}table.t tr:hover td{background:#f6f9fb}
.btn{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:6px;padding:7px 12px;background:var(--nav);color:#fff;cursor:pointer;font:inherit;font-size:13px}
.btn:hover{filter:brightness(1.15);text-decoration:none}.btn.s{padding:4px 8px;font-size:12px}
.btn.g{background:var(--teal)}.btn.y{background:var(--yellow);color:var(--nav)}.btn.r{background:var(--red)}.btn.l{background:#e9eef3;color:var(--txt)}
.tag{display:inline-block;border:1px solid #9aa7b4;border-radius:4px;padding:0 6px;font-size:11.5px;margin:1px}
.tag.ok{background:#22c55e;color:#fff;border-color:#22c55e}.tag.warn{background:#fff2cc;border-color:#f7c325}.tag.ko{background:#fde2e1;border-color:var(--red);color:#b42318}.tag.info{background:#e0f2fe;border-color:var(--blue)}
form.f{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
form.f .full{grid-column:1/-1}
label{display:block;font-size:12px;color:var(--mut);margin-bottom:3px}
input,select,textarea{width:100%;padding:7px 9px;border:1px solid #cfd8e1;border-radius:6px;font:inherit;background:#fff;color:#1f2d3d}
textarea{min-height:80px}input[type=checkbox],input[type=radio]{width:auto}
.err{color:#b42318;font-size:12px}.flash{background:#e7f6ec;border:1px solid #9bd3ae;padding:8px 12px;border-radius:6px;margin-bottom:12px}
.muted{color:var(--mut)}.right{text-align:right}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.bar{height:8px;background:#e5eaef;border-radius:5px;overflow:hidden}.bar i{display:block;height:100%;background:var(--teal)}
.note{background:#fbf4c4;border-radius:8px;padding:8px 10px;margin-bottom:8px}
.timeline{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px}
.timeline .ev{min-width:130px;border:1px solid var(--blue);border-radius:8px;padding:6px;font-size:12px;text-align:center;background:#fff}
.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#0a3d91,#1cc6d0)}
.login .card{width:360px;padding:26px}.login img{width:190px;display:block;margin:0 auto 14px}
.sigpad{border:2px dashed #9aa7b4;border-radius:8px;background:#fff;touch-action:none;width:100%;max-width:520px;height:180px}
.builder .q{border:1px solid var(--line);border-radius:8px;padding:10px;margin-bottom:8px;background:#fafcfd}
.chartbox{position:relative;height:260px}

.login .card{background:#fff;color:#1f2d3d}.login .card label{color:#44546a}

/* ---------- Éditeur de documents ---------- */
.ed-tabs{display:flex;gap:4px}.ed-tabs button{border:1px solid var(--line);background:#f4f7fa;border-radius:6px;padding:4px 10px;cursor:pointer;font:inherit;font-size:12.5px}
.ed-tabs button.on{background:var(--nav);color:#fff;border-color:var(--nav)}
.ed-bar{display:flex;flex-wrap:wrap;gap:3px;align-items:center;padding:6px;background:#f4f7fa;border:1px solid var(--line);border-radius:8px 8px 0 0;position:sticky;top:46px;z-index:4}
.ed-bar button,.ed-color{min-width:28px;height:28px;border:1px solid transparent;background:transparent;border-radius:5px;cursor:pointer;font:inherit;font-size:13px;display:inline-grid;place-items:center;padding:0 5px;position:relative}
.ed-bar button:hover,.ed-color:hover{background:#fff;border-color:var(--line)}.ed-bar select{width:auto;padding:3px 5px;font-size:12px;height:28px}
.ed-bar .sep{width:1px;height:20px;background:#cfd8e1;margin:0 3px}
.ed-color{margin:0;color:var(--txt);font-weight:700}.ed-color input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;padding:0}
.ed-page{background:#dfe4ea;border:1px solid var(--line);border-top:0;padding:18px;overflow:auto;max-height:calc(100vh - 170px)}
.ed-zone,.ed-source{background:#fff;margin:0 auto;width:210mm;max-width:100%;min-height:297mm;padding:20mm 18mm;box-shadow:0 2px 8px rgba(0,0,0,.15);outline:0;font:10pt/1.35 Helvetica,Arial,sans-serif;color:#000}
.ed-page[data-format=A5] .ed-zone{width:148mm;min-height:210mm}.ed-page[data-orient=paysage] .ed-zone{width:297mm;min-height:210mm}
.ed-page[data-format=A5][data-orient=paysage] .ed-zone{width:210mm;min-height:148mm}
#z-entete,#z-pied{min-height:45mm}
.ed-source{font:12px/1.4 ui-monospace,Menlo,monospace;min-height:500px;display:block}
.ed-zone table{border-collapse:collapse;width:100%}.ed-zone td,.ed-zone th{border:1px dashed #b8c2cc;padding:3px 5px;vertical-align:top;min-width:20px}
.ed-zone table[border="1"] td,.ed-zone table[border="1"] th{border:1px solid #555}
.ed-zone h1{font-size:18pt;margin:.3em 0}.ed-zone h2{font-size:14pt;margin:.3em 0}.ed-zone h3{font-size:12pt;margin:.3em 0}.ed-zone p{margin:0 0 .45em}
.ed-zone .page-break{border-top:2px dashed #f25f5c;margin:10px 0;height:0;position:relative}.ed-zone .page-break::after{content:"saut de page";position:absolute;right:0;top:-9px;font-size:9px;color:#f25f5c;background:#fff;padding:0 4px}
.ed-zone img{max-width:100%;cursor:pointer}.ed-zone img.sel{outline:2px solid var(--blue)}
.ed-zone .var,.ed-zone{word-break:break-word}
.ed-vars{max-height:330px;overflow:auto}.ed-vars summary{cursor:pointer;font-weight:700;font-size:12.5px;padding:3px 0}
.ed-vars button{display:block;width:100%;text-align:left;border:0;background:none;padding:2px 6px;font:inherit;font-size:12px;cursor:pointer;border-radius:4px;color:#2b5d8a}
.ed-vars button:hover{background:#e0f2fe}
.ed-media{display:flex;flex-wrap:wrap;gap:6px}.ed-media button{border:1px solid var(--line);background:#fff;border-radius:6px;padding:3px;cursor:pointer;width:64px;height:48px;display:grid;place-items:center}
.ed-media img{max-width:56px;max-height:40px}
.ed-imgpop{position:absolute;z-index:20;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 14px rgba(0,0,0,.18);padding:6px;display:flex;gap:4px;align-items:center}
.ed-imgpop[hidden]{display:none}.ed-imgpop label{margin:0}.ed-imgpop select{width:auto;padding:3px}.ed-imgpop button{border:1px solid var(--line);background:#f4f7fa;border-radius:5px;cursor:pointer;padding:3px 7px}
.ed-imgpop button.r{color:#b42318}

/* ---------- Agenda ---------- */
.ag-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.ag-head h2{margin:0 8px;font-size:16px;min-width:180px;text-transform:capitalize}
.ag-head select{width:auto}
.ag-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid var(--line);border-top:1px solid var(--line)}
.ag-month .dow{background:var(--nav);color:#fff;font-size:12px;padding:4px 6px;font-weight:600}
.ag-month .day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:104px;padding:3px;background:#fff;font-size:12px}
.ag-month .day.out{background:#f6f8fa;color:#9aa7b4}.ag-month .day.today .n{background:var(--yellow);border-radius:10px;padding:0 6px;font-weight:800}
.ag-month .day.we{background:#fafbfc}.ag-month .n{font-size:11px;display:inline-block;margin-bottom:2px}
.ag-ev{display:block;width:100%;text-align:left;border:0;border-left:3px solid var(--teal);background:#e6f4f3;border-radius:4px;padding:2px 4px;margin-bottom:2px;font:inherit;font-size:11.5px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--txt)}
.ag-ev:hover{filter:brightness(.96)}.ag-ev.planifiee{border-color:var(--blue);background:#e0f2fe}.ag-ev.en_cours{border-color:var(--yellow);background:#fff6d6}
.ag-ev.cloturee,.ag-ev.terminee{border-color:#9aa7b4;background:#eef1f4;color:#5b6977}.ag-ev.annulee{border-color:var(--red);background:#fde2e1;text-decoration:line-through}
.ag-week{display:grid;grid-template-columns:48px repeat(7,minmax(0,1fr));border-top:1px solid var(--line)}
.ag-week .col{position:relative;border-left:1px solid var(--line);height:660px;background:repeating-linear-gradient(#fff 0 54px,#eef1f4 54px 55px)}
.ag-week .hrs{position:relative;height:660px;font-size:10px;color:var(--mut)}.ag-week .hrs span{position:absolute;right:4px}
.ag-week .wh{font-size:12px;font-weight:700;padding:4px;text-align:center;background:var(--nav);color:#fff}
.ag-week .ag-ev{position:absolute;left:2px;right:2px;white-space:normal}
.ag-legend{display:flex;gap:10px;font-size:11.5px;margin-top:8px;flex-wrap:wrap}.ag-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:middle}
.ag-panel{position:fixed;top:0;right:0;bottom:0;width:min(520px,100%);background:#fff;box-shadow:-4px 0 18px rgba(0,0,0,.18);z-index:30;overflow:auto;padding:16px}
.ag-panel[hidden]{display:none}.ag-panel h3{margin:0 30px 4px 0;font-size:16px}.ag-panel .x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:20px;cursor:pointer}
.ag-panel dl{display:grid;grid-template-columns:110px 1fr;gap:4px 10px;font-size:13px;margin:10px 0}.ag-panel dt{color:var(--mut)}.ag-panel dd{margin:0}
.ag-panel .p{border:1px solid var(--line);border-radius:8px;padding:6px 8px;margin-bottom:6px;font-size:12.5px}
.ag-panel .ent{font-weight:700;font-size:12.5px;margin:10px 0 4px;color:var(--nav)}
.ag-teams{display:flex;gap:6px;align-items:center;background:#eef0fb;border:1px solid #c5cae9;border-radius:8px;padding:8px;margin:8px 0;word-break:break-all}

/* Listes : lien direct, pastille pièces jointes */
table.t a.lnk{font-weight:600}
.pastille{display:inline-flex;align-items:center;gap:3px;background:var(--blue);color:#fff;border-radius:10px;padding:1px 8px;font-size:11.5px;font-weight:700;cursor:pointer;list-style:none;white-space:nowrap}
.pastille:hover{filter:brightness(1.1);text-decoration:none}summary.pastille::-webkit-details-marker{display:none}
.pjpop{position:relative;display:inline-block}.pjpop>div{position:absolute;z-index:10;top:22px;left:0;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 14px rgba(0,0,0,.15);padding:6px;min-width:240px}
.pjpop>div a{display:block;padding:4px 6px;border-radius:4px;font-size:12.5px}.pjpop>div a:hover{background:#e0f2fe;text-decoration:none}
/* Hegelia Sign : visionneuse intégrée */
.sv{border:1px solid #d5dde6;border-radius:8px;margin:12px 0;background:#f4f6f9;overflow:hidden}
.sv-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 10px;background:#fff;border-bottom:1px solid #e3e8ee}
.sv-status{font-size:13px;color:#5a6675;flex:1}
.sv-status.ok{color:#127a3e;font-weight:600}
.sv-tools{display:flex;gap:4px}
.sv-prog{height:4px;background:#e3e8ee}.sv-prog i{display:block;height:100%;background:#00c4cc;transition:width .2s}
.sv-pages{height:65vh;min-height:320px;overflow:auto;padding:12px;outline:none}
.sv-pages canvas{display:block;margin:0 auto 12px;box-shadow:0 1px 4px rgba(0,0,0,.2);background:#fff;max-width:none}
.sv-hint{font-size:12px;margin:6px 10px}
.sv-gate.locked{opacity:.45;pointer-events:none;user-select:none}
.sv-gate.locked::before{content:"🔒 Signature disponible après lecture complète du document";display:block;font-weight:600;margin:6px 0}
/* ===== Questionnaire répondant (rendu professionnel) ===== */
.qz{max-width:780px;margin:0 auto;--qa:#0f766e;--qa2:#00c4cc;--qbg:#f5f8fa}
.qz-test{background:#fff7e0;border:1px solid #f7c325;border-radius:10px;padding:10px 14px;margin-bottom:14px;font-size:13px}
.qz-test a{margin-left:8px}
.qz-head{background:linear-gradient(135deg,#0b3a66 0%,#0f766e 70%,#00a8b0 100%);color:#fff;border-radius:14px;padding:26px 28px;margin-bottom:14px;box-shadow:0 6px 20px rgba(11,58,102,.18)}
.qz-head h1{margin:6px 0 4px;font-size:24px;line-height:1.25;color:#fff}.qz-head p{margin:0;opacity:.85;font-size:14px}
.qz-kind{display:inline-block;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35);border-radius:99px;padding:3px 12px;font-size:12px;letter-spacing:.03em;text-transform:uppercase}
.qz-prog{position:sticky;top:0;z-index:5;height:6px;background:#e3e9ee;border-radius:99px;overflow:hidden;margin:4px 0 4px}
.qz-prog i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--qa),var(--qa2));transition:width .3s}
.qz-progtxt{font-size:12px;color:#6b7a89;margin:0 0 12px;text-align:right}
.qz-alert{background:#fde8e7;border:1px solid #f3b4ae;color:#9b2c21;border-radius:10px;padding:10px 14px;margin-bottom:12px}
.qz-card{background:#fff;border:1px solid #e1e7ed;border-radius:14px;padding:18px 22px 16px;margin:0 0 14px;box-shadow:0 1px 3px rgba(16,24,40,.05);transition:border-color .2s,box-shadow .2s;min-width:0}
.qz-q:focus-within{border-color:var(--qa2);box-shadow:0 0 0 3px rgba(0,196,204,.15)}
.qz-q.err{border-color:#e5484d;box-shadow:0 0 0 3px rgba(229,72,77,.12)}
.qz-q.good{border-color:#22a06b}.qz-q.bad{border-color:#e5484d}
.qz-q legend{display:flex;gap:12px;align-items:flex-start;padding:0;margin:0 0 12px;font-size:16px;font-weight:600;color:#1d2b3a;float:left;width:100%}
.qz-q legend+*{clear:both}
.qz-num{flex:none;width:28px;height:28px;border-radius:50%;background:#e6f6f6;color:var(--qa);font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}
.qz-lbl{padding-top:3px;line-height:1.35}.qz-lbl em{color:#e5484d;font-style:normal}
.qz-help{font-size:13px;color:#6b7a89;margin:-4px 0 10px 40px}
.qz-q>.qz-scale,.qz-q>.qz-opts,.qz-q>textarea,.qz-q>.qz-ends,.qz-q>.qz-fb,.qz-q>.btn{margin-left:40px}
.qz-q>textarea{width:calc(100% - 40px);border:1px solid #cfd8e1;border-radius:10px;padding:10px 12px;font:inherit;font-size:14px;resize:vertical}
.qz-q>textarea:focus{outline:none;border-color:var(--qa2)}
.qz-scale{display:grid;gap:8px}.qz-scale.s5{grid-template-columns:repeat(5,1fr)}.qz-scale.s11{grid-template-columns:repeat(11,1fr);gap:5px}
.qz-scale label,.qz-opts label{margin:0;cursor:pointer;position:relative}
.qz-scale input,.qz-opts input{position:absolute;opacity:0;pointer-events:none}
.qz-scale span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:44px;border:1.5px solid #d5dde6;border-radius:10px;background:#fff;padding:8px 4px;text-align:center;transition:all .15s}
.qz-scale span b{font-size:16px;color:#1d2b3a}.qz-scale small{font-size:10.5px;line-height:1.2;color:#6b7a89}
.qz-scale label:hover span,.qz-opts label:hover span{border-color:var(--qa2);background:#f2fbfb}
.qz-scale input:checked+span{border-color:var(--qa);background:var(--qa);box-shadow:0 2px 6px rgba(15,118,110,.3)}
.qz-scale input:checked+span b,.qz-scale input:checked+span small{color:#fff}
.qz-scale.s11 .lo input:checked+span{background:#e5484d;border-color:#e5484d}.qz-scale.s11 .mid input:checked+span{background:#f5a524;border-color:#f5a524}.qz-scale.s11 .hi input:checked+span{background:#22a06b;border-color:#22a06b}
.qz-scale input:focus-visible+span,.qz-opts input:focus-visible+span{outline:2px solid var(--qa2);outline-offset:2px}
.qz-ends{display:flex;justify-content:space-between;font-size:11.5px;color:#6b7a89;margin-top:6px}
.qz-opts{display:grid;gap:8px}.qz-opts.inline{grid-template-columns:repeat(2,minmax(0,160px))}
.qz-opts span{display:flex;align-items:center;gap:10px;border:1.5px solid #d5dde6;border-radius:10px;padding:10px 14px;background:#fff;font-size:14px;transition:all .15s}
.qz-opts span::before{content:"";flex:none;width:16px;height:16px;border:2px solid #b6c2cf;border-radius:50%;background:#fff;transition:all .15s}
.qz-opts.multi span::before{border-radius:4px}
.qz-opts input:checked+span{border-color:var(--qa);background:#effaf9;font-weight:600}
.qz-opts input:checked+span::before{border-color:var(--qa);background:var(--qa);box-shadow:inset 0 0 0 3px #fff}
.qz-q input:disabled+span{cursor:default;opacity:.85}
.qz-fb{margin-top:12px;border-radius:10px;padding:10px 14px;font-size:13.5px;line-height:1.45}
.qz-fb.ok{background:#e8f7ef;border:1px solid #9fdcbb;color:#14683f}.qz-fb.ko{background:#fdecec;border:1px solid #f3b4ae;color:#9b2c21}
.qz-expl,.qz-fb span{display:block;margin-top:4px;color:#3c4a57}
.qz-err{color:#c2322b;font-size:13px;margin:8px 0 0 40px}
.qz-end{background:#eef6ff;border:1px solid #b9d6f5;border-radius:10px;padding:10px 14px;margin-bottom:14px;font-size:13.5px;color:#1c4e80}
.qz-submit{display:flex;align-items:center;gap:14px;margin:6px 0 18px}.qz-submit .btn{padding:12px 26px;font-size:15px;border-radius:10px}
.qz-done{text-align:center;padding:30px 26px}.qz-done h2{margin:10px 0 6px;font-size:22px}
.qz-check{width:60px;height:60px;border-radius:50%;margin:0 auto;background:linear-gradient(135deg,var(--qa),var(--qa2));color:#fff;font-size:30px;display:flex;align-items:center;justify-content:center}
.qz-score{font-size:16px}.qz-recap{text-align:left;margin:12px 0}.qz-recap .qz-fb{margin:8px 0}
.qz-foot{font-size:11.5px;color:#8a97a5;text-align:center;margin:10px 0 30px}
@media (max-width:640px){.qz-head{padding:20px}.qz-head h1{font-size:20px}.qz-card{padding:14px}.qz-scale.s5{grid-template-columns:repeat(5,1fr);gap:4px}.qz-scale small{display:none}.qz-scale.s11{grid-template-columns:repeat(6,1fr)}
 .qz-q>.qz-scale,.qz-q>.qz-opts,.qz-q>textarea,.qz-q>.qz-ends,.qz-q>.qz-fb,.qz-q>.btn,.qz-help,.qz-err{margin-left:0}.qz-q>textarea{width:100%}}
/* constructeur */
.qb-card .qb-n{font-weight:700;color:var(--blue,#0b6);min-width:30px}
.qb-sub{margin-top:6px}
.qb-more{margin-top:8px;border-top:1px dashed var(--line);padding-top:6px}.qb-more summary{cursor:pointer;font-size:12.5px;color:#0f766e;font-weight:600}
.qb-line{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0;font-size:13px}.qb-line>b{min-width:190px}
.qb-line select,.qb-line input{width:auto;min-width:120px}.qb-jump{width:100%;gap:6px;margin-left:198px}
/* ===== Graphiques de résultats (session) ===== */
.qs-card{margin-top:14px}
.qs-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:14px}
.qs-kpi{position:relative;border:1px solid var(--line);border-radius:10px;padding:10px 12px 14px;background:#fff;overflow:hidden}
.qs-kpi span{display:block;font-size:12px;color:#6b7a89}.qs-kpi b{font-size:22px;color:#1d2b3a}.qs-kpi small{display:block;font-size:11px;color:#6b7a89}
.qs-kpi i{position:absolute;left:0;bottom:0;height:4px;background:#0f766e}
.qs-kpi.hi b{color:#15803d}.qs-kpi.mid b{color:#b45309}.qs-kpi.lo b{color:#b42318}.qs-kpi.mid i{background:#f5a524}.qs-kpi.lo i{background:#e5484d}
.qs-q{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:10px;background:#fcfdfe}
.qs-q summary{cursor:pointer;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.qs-meta{font-size:12px;color:#6b7a89}.qs-link{margin-left:auto;font-size:12px}
.qs-rate{height:4px;background:#e6ebf0;border-radius:99px;margin:8px 0 10px;overflow:hidden}.qs-rate i{display:block;height:100%;background:#3aaee0}
.qs-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,2fr) 200px;gap:10px;align-items:center;padding:5px 0;border-bottom:1px dashed #edf1f4;font-size:13px}
.qs-bar{height:14px;background:#eef2f5;border-radius:99px;overflow:hidden;display:flex}
.qs-bar i{display:block;height:100%;border-radius:99px;background:#0f766e}.qs-bar i.hi{background:#22a06b}.qs-bar i.mid{background:#f5a524}.qs-bar i.lo{background:#e5484d}
.qs-bar.stack i{border-radius:0}
.qs-val{font-weight:600;white-space:nowrap}.qs-dleg{display:flex;flex-wrap:wrap;gap:4px 10px;font-weight:400;font-size:11.5px;white-space:normal}
.qs-dleg i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px}
.qs-nps{margin:4px 0 10px}.qs-npsbar{display:flex;height:18px;border-radius:99px;overflow:hidden;background:#eef2f5}
.qs-npsbar i.d,.qs-leg .d::before{background:#e5484d}.qs-npsbar i.p,.qs-leg .p::before{background:#f5a524}.qs-npsbar i.g,.qs-leg .g::before{background:#22a06b}
.qs-leg{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;margin-top:6px;align-items:center}.qs-leg span::before{content:"";display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px}
.qs-leg b{margin-left:auto}
@media (max-width:760px){.qs-row{grid-template-columns:1fr}}
/* fiche apprenant */
.lr-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin-bottom:10px}
/* v1.8 — circuit de signature (modèles) */
.sig-steps{display:grid;gap:6px;margin:4px 0 6px 18px}.sig-step{border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:12px}.sig-step b{display:block;font-size:11px;color:var(--muted);margin-bottom:2px}.sig-step label{display:inline-flex;gap:4px;align-items:center;margin:0 10px 0 0;font-size:12px;font-weight:400}
/* v1.8 — fenêtre d'envoi d'e-mail */
.mdlg{border:0;border-radius:14px;padding:0;width:min(760px,96vw);max-height:92vh;box-shadow:0 24px 70px rgba(15,30,50,.35);color:var(--ink,#1f2937)}
.mdlg::backdrop{background:rgba(15,25,40,.45)}
.mdlg-f{display:flex;flex-direction:column;max-height:92vh;margin:0}
.mdlg-h{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 18px;border-bottom:1px solid var(--line);background:#f7f9fb}
.mdlg-h h3{margin:0;font-size:16px}.mdlg-h .muted{font-size:12px}
.mdlg-x{border:0;background:none;font-size:24px;line-height:1;cursor:pointer;color:#667;padding:0 4px}
.mdlg-b{padding:12px 18px;overflow:auto}.mdlg-b label{margin-top:8px}
.mdlg-from{font-size:13px;padding:6px 10px;background:#eef6fb;border-radius:8px}
.mdlg-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--line);background:#f7f9fb}
.chips{display:flex;flex-wrap:wrap;gap:5px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:5px;min-height:38px;background:#fff}
.chips input{border:0!important;box-shadow:none!important;flex:1;min-width:180px;padding:3px!important;margin:0}
.chip{display:inline-flex;align-items:center;gap:4px;background:#e6f2f8;border:1px solid #c5e0ee;border-radius:14px;padding:2px 4px 2px 9px;font-size:12px}
.chip b{font-weight:600}.chip button{border:0;background:none;cursor:pointer;font-size:14px;line-height:1;color:#557;padding:0 3px}
.chips-sug{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px;font-size:12px;align-items:center}
.chips-sug .sug{border:1px dashed #9cc3d8;background:#fff;border-radius:14px;padding:2px 9px;font-size:12px;cursor:pointer}.chips-sug .sug:disabled{opacity:.4;cursor:default}
.mdlg-sep{display:flex!important;gap:6px;align-items:center;font-weight:400!important;font-size:12px}
.mdlg-hint{font-size:11px;margin:3px 0 0}
.mdlg-docs{border:1px solid var(--line);border-radius:8px;max-height:170px;overflow:auto;padding:4px 8px}
.mdlg-doc{display:flex!important;gap:6px;align-items:center;font-weight:400!important;margin:0!important;padding:4px 0;border-bottom:1px solid #f0f2f5;font-size:13px}.mdlg-doc span:first-of-type{flex:1}
.mdlg-msg{margin-top:10px;padding:8px 10px;border-radius:8px;font-size:13px}.mdlg-msg.ok{background:#e7f6ee;color:#146c43}.mdlg-msg.ko{background:#fde8e8;color:#9b1c1c}
.muted.ko{color:#b42318}
/* v1.8 — suivi des signatures (session) */
.sgt{font-size:12px}.sgt summary{cursor:pointer;list-style:none;display:inline-flex;gap:6px;align-items:center}.sgt summary::-webkit-details-marker{display:none}
.sgt-bar{display:inline-block;width:60px;height:6px;border-radius:3px;background:#e5e9ef;overflow:hidden;vertical-align:middle}.sgt-bar i{display:block;height:100%;background:#1a9f5b}
.sgt-list{margin:6px 0 2px;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.sgt-row{display:grid;grid-template-columns:18px minmax(0,1.3fr) minmax(0,1.6fr) auto;gap:6px;align-items:center;padding:5px 8px;border-bottom:1px solid #f0f2f5}.sgt-row:last-child{border-bottom:0}
.sgt-row input{padding:3px 6px!important;font-size:12px;margin:0}.sgt-st{font-size:10px;color:var(--muted)}
.sgt-step{font-size:10px;font-weight:700;color:#fff;background:#8a97a8;border-radius:50%;width:18px;height:18px;display:grid;place-items:center}
.sgt-row.ok .sgt-step{background:#1a9f5b}
.mb-box{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#f7f9fb}.mb-box.ok{border-color:#9bd3b4;background:#effaf3}
.mb-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mb-choice{display:flex;flex-direction:column;gap:2px;border:1px solid var(--line);border-radius:10px;padding:10px;background:#fff;text-decoration:none;color:inherit;cursor:pointer;text-align:left;font:inherit}
.mb-choice:hover{border-color:#3aaee0;box-shadow:0 2px 8px rgba(58,174,224,.18)}.mb-choice span{font-size:11px;color:var(--muted)}.mb-choice.off{opacity:.45;pointer-events:none}
.mdlg [hidden],.mdlg-sep[hidden]{display:none!important}
/* v1.8.2 — texte enrichi (fiches formation) */
.rte{border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}
.rte:focus-within{border-color:#3aaee0;box-shadow:0 0 0 2px rgba(58,174,224,.15)}
.rte-bar{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:3px 5px;border-bottom:1px solid var(--line);background:#f7f9fb}
.rte-bar button{border:0;background:none;min-width:26px;height:24px;padding:0 5px;border-radius:5px;cursor:pointer;font-size:13px;line-height:24px;color:#34495e}
.rte-bar button:hover{background:#e6eef5}.rte-bar button.on{background:#dbe9f5;color:#1f3349}
.rte-bar select{width:auto!important;height:24px;padding:0 4px!important;margin:0 4px 0 0!important;font-size:12px;border-radius:5px}
.rte-sep{width:1px;height:16px;background:var(--line);margin:0 3px}
.rte-ed{min-height:70px;max-height:340px;overflow:auto;padding:6px 10px;font-size:13px;line-height:1.45;outline:none}
.rte-ed p,.rte-view p{margin:0 0 4px}.rte-ed ul,.rte-ed ol,.rte-view ul,.rte-view ol{margin:2px 0 4px;padding-left:22px}
.rte-ed blockquote,.rte-view blockquote{margin:0 0 4px 24px;padding:0;border:0}
.rte-view{line-height:1.45}

/* v1.9.1 : champs obligatoires non renseignés */
.f .inv label{color:#b42318}.f .inv input,.f .inv select,.f .inv textarea,.f .inv .rte{border-color:#e5484d!important;box-shadow:0 0 0 3px rgba(229,72,77,.15)}
.f .inv-msg{color:#b42318;font-size:12px;margin-top:3px}
.form-alert{background:#fdecec;border:1px solid #f3b4b4;color:#8a1c1c;padding:9px 12px;border-radius:6px;margin-bottom:12px}
.autofill{background:#e7f6ec!important;transition:background .6s}
.lnkbtn{background:none;border:0;padding:0;color:var(--link,#2f80c8);cursor:pointer;font:inherit;text-decoration:underline}
.adr{border-top:1px solid #eef1f4;padding:8px 0;font-size:13px}.adr:first-of-type{border-top:0}
.m365c{background:#f4f7fb;border-radius:8px;padding:8px 10px;margin:6px 0 10px}
/* v1.9.3 : journal de traçabilité dépliable, file Oxiva */
.audit .aud-l{cursor:pointer}.audit .aud-l:hover td,.audit .aud-l.on td{background:#eef4fb}
.audit .aud-d td{background:#f8fafc}.audit dl{display:grid;grid-template-columns:170px 1fr;gap:4px 12px;margin:4px 0;font-size:12px}
.audit dt{font-weight:600;color:#475569}.audit dd{margin:0}.audit pre{margin:0;white-space:pre-wrap;font-size:11px;max-height:260px;overflow:auto}
/* v1.11 : questionnaires importés (échelles 2 à 11 niveaux, sections, barème) */
.qz-scale.s2{grid-template-columns:repeat(2,1fr)}.qz-scale.s3{grid-template-columns:repeat(3,1fr)}.qz-scale.s4{grid-template-columns:repeat(4,1fr)}.qz-scale.s6{grid-template-columns:repeat(6,1fr)}.qz-scale.s7{grid-template-columns:repeat(7,1fr)}.qz-scale.s8{grid-template-columns:repeat(8,1fr)}.qz-scale.s9{grid-template-columns:repeat(9,1fr)}.qz-scale.s10{grid-template-columns:repeat(10,1fr)}
.qz-q[data-type=section]{border-left:4px solid var(--blue,#2563eb)}.qz-sec{font-size:18px;margin:0 0 6px}.qz-pts{font-size:11px;font-weight:600;background:#eef2ff;color:#3730a3;border-radius:10px;padding:1px 8px;margin-left:6px;white-space:nowrap}
.gf-t td{vertical-align:top}.gf-warn{font-size:11px;color:#9a6700}
/* v1.12 : menu par groupes repliables */
.side nav details.grp{margin:1px 0}
.side nav details.grp>summary{list-style:none;display:flex;align-items:center;gap:10px;color:#dfe6ee;padding:6px 14px;margin:1px 6px;border-radius:6px;font-size:13.5px;cursor:pointer;user-select:none}
.side nav details.grp>summary::-webkit-details-marker{display:none}
.side nav details.grp>summary::after{content:'▸';margin-left:auto;font-size:11px;opacity:.7;transition:transform .15s}
.side nav details.grp[open]>summary::after{transform:rotate(90deg)}
.side nav details.grp>summary:hover{background:var(--nav2)}
.side nav details.grp[data-cur]>summary{color:#fff;font-weight:600}
.side nav a.sub{padding:4px 14px 4px 40px;font-size:13px;color:#c6d2de}
/* v1.12 : fiche entreprise */
.fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 22px}
.fgrid h3{grid-column:1/-1;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#6b7a8c);margin:12px 0 2px;border-bottom:1px solid var(--line);padding-bottom:3px}
.fgrid h3:first-child{margin-top:0}
.fgrid .f{display:flex;gap:8px;font-size:13px;padding:3px 0;min-width:0}
.fgrid .f>span{color:var(--muted,#6b7a8c);flex:0 0 42%}
.fgrid .f>b{font-weight:500;overflow-wrap:anywhere}
@media(max-width:1100px){.fgrid{grid-template-columns:1fr}}
.ct td{vertical-align:top;font-size:13px}
/* v1.13 — étiquettes, jauges d'abonnement, matrice des droits, outils de données, bandeau de quota */
.etq{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:0 9px;font-size:11.5px;line-height:20px;margin:1px 2px;background:color-mix(in srgb,var(--c,#3aaee0) 16%,#fff);border:1px solid color-mix(in srgb,var(--c,#3aaee0) 55%,#fff);color:#1f3349;white-space:nowrap}
.etq::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c,#3aaee0)}
.etq form{display:inline;margin:0}.etq button{border:0;background:none;padding:0 0 0 2px;cursor:pointer;color:#6b7a89;font-size:12px;line-height:1}
.etq button:hover{color:#b42318}a.etq:hover{text-decoration:none;filter:brightness(.96)}
.etq-add{display:flex;gap:6px;margin-top:8px}.etq-add input{flex:1;min-width:0}
.gauge{height:10px;border-radius:6px;background:#e9eef3;overflow:hidden;margin:6px 0 4px}.gauge>i{display:block;height:100%;background:linear-gradient(90deg,#16857f,#3aaee0)}
.gauge.warn>i{background:linear-gradient(90deg,#f7c325,#ff8c42)}.gauge.ko>i{background:linear-gradient(90deg,#f25f5c,#b42318)}
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.plans .p{border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:#fff}
.plans .p.on{border:2px solid #3aaee0;box-shadow:0 2px 10px rgba(58,174,224,.18)}.plans .p b.prix{font-size:22px;color:#1f3349}
@media(max-width:1000px){.plans{grid-template-columns:1fr}}
.opt{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:8px 0}.opt:last-child{border-bottom:0}
.opt.mise{background:#fff8e6;border-radius:8px;padding:8px 10px;border:1px solid #f7c325}
.quota{background:#fff8e6;border-bottom:1px solid #f7c325;padding:7px 18px;font-size:13px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.quota.ko{background:#fde8e8;border-color:#f25f5c}
table.mx{border-collapse:collapse;width:100%;font-size:12.5px}table.mx th,table.mx td{border-bottom:1px solid var(--line);padding:4px 6px;text-align:center}
table.mx th:first-child,table.mx td:first-child{text-align:left}table.mx tr:hover td{background:#f6f9fc}table.mx thead th{position:sticky;top:0;background:#1f3349;color:#fff}
.diff del{background:#fde2e1;text-decoration:none;padding:0 2px}.diff ins{background:#dcfce7;text-decoration:none;padding:0 2px}
.xfilt{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-bottom:10px}.xfilt>div{min-width:150px}.xfilt label{font-size:12px}
.xgrp{margin-top:12px}.xgrp>h3{font-size:13px;margin:0 0 4px;padding:6px 8px;background:#eef3f8;border-radius:6px;display:flex;justify-content:space-between}
/* v1.14 : boutons de l'écran Session (bleu foncé Hegelia -> vert une fois généré) */
.btn.sb{background:#00348a;color:#fff}.btn.sb.done{background:#1e8e4e}.btn.sb:focus-visible{outline:2px solid #00c4cc;outline-offset:2px}
.sbk{display:inline-block;width:10px;height:10px;border-radius:3px;background:#00348a;vertical-align:-1px}.sbk.done{background:#1e8e4e}
/* v1.14 : afficher / masquer le mot de passe */
.pwd{position:relative;display:block}.pwd>input{padding-right:40px!important;width:100%}
.pwd>button{position:absolute;right:4px;top:50%;transform:translateY(-50%);border:0;background:transparent;cursor:pointer;padding:4px 6px;color:#5b6b7b;line-height:0;border-radius:4px}
.pwd>button:hover,.pwd>button[aria-pressed="true"]{color:#00348a}.pwd>button:focus-visible{outline:2px solid #036aeb}
/* v1.14 : Aujourd'hui (ma journée) */
.today-list{list-style:none;margin:10px 0 0;padding:0}.today-list li{display:flex;gap:10px;align-items:center;padding:7px 0;border-top:1px solid var(--line)}
.today-list li:first-child{border-top:0}.today-list .h{font-weight:700;color:var(--nav);min-width:92px;font-variant-numeric:tabular-nums}
.today-list .n{margin-left:auto;font-weight:700;background:#e9eef3;border-radius:10px;padding:1px 8px;font-size:12px}.today-list .n.w{background:#fde8e6;color:#b4271a}
.today-ok{color:#1e8e4e;font-weight:600;margin:10px 0 0}
/* v1.14 : aperçu / impression des documents */
.docx-act{display:inline-flex;gap:2px;margin-left:6px;vertical-align:middle}.docx-act a{padding:1px 5px;border-radius:4px;text-decoration:none;font-size:13px;line-height:1.3}.docx-act a:hover{background:#e9eef3}
.apercu-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.apercu-bar h2{margin:0;flex:1;min-width:200px}
.apercu-frame{width:100%;height:calc(100vh - 210px);min-height:480px;border:1px solid var(--line);border-radius:8px;background:#f4f6f8}
.apercu-img{max-width:100%;height:auto;display:block;margin:0 auto;border:1px solid var(--line)}.apercu-txt{white-space:pre-wrap;background:#fff;border:1px solid var(--line);padding:16px;border-radius:8px;max-height:calc(100vh - 230px);overflow:auto}
dialog.qa{border:0;border-radius:12px;padding:0;max-width:640px;width:calc(100% - 24px);box-shadow:0 20px 50px rgba(0,0,0,.25)}dialog.qa::backdrop{background:rgba(0,20,60,.45)}
dialog.qa .hd{background:#00348a;color:#fff;padding:12px 16px;font-weight:700;display:flex;justify-content:space-between;align-items:center}dialog.qa .hd button{background:transparent;border:0;color:#fff;font-size:20px;cursor:pointer}
dialog.qa form{padding:14px 16px}dialog.qa .err{color:#b4271a;font-size:12px}
@media print{.side,.top,.apercu-bar,.no-print{display:none!important}}
/* v1.15 — planning des sessions */
.planning{border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fafcfd}
.planning h3{margin:0 0 4px;color:#00348a;font-size:14px}
.pl-cpt{margin:6px 0;padding:6px 10px;border-radius:6px;font-weight:600;font-size:12.5px;border:1px solid #9aa7b4;background:#eef1f4}
.pl-cpt.ok{background:#e7f6ec;border-color:#1e8e4e;color:#14663a}.pl-cpt.warn{background:#fff2cc;border-color:#f7c325;color:#7a5a00}.pl-cpt.ko{background:#fde2e1;border-color:#d92d20;color:#b42318}.pl-cpt.info{background:#e0f2fe;border-color:#036aeb;color:#00348a}
table.pl td{vertical-align:middle;white-space:nowrap}table.pl input[type=date]{width:150px}table.pl input[type=time]{width:112px}table.pl select{width:auto}table.pl td:nth-child(7) input{min-width:140px}
table.pl tr.pl-dup td{background:#fde2e1}table.pl tr[data-locked] td{background:#f3faf5}.pl-n{color:var(--mut);width:28px}.pl-d{font-weight:600;color:#00348a}
.planning-v .pl-cpt{display:inline-block;margin:0 0 8px}
details.avn{margin-top:10px;border:1px solid var(--line);border-radius:8px;padding:6px 10px;background:#fffaf0}details.avn summary{cursor:pointer;font-weight:600;color:#00348a}
.tag.rpl{background:#f2f4f7;border-color:#98a2b3;color:#475467;text-decoration:line-through}.tag.avt{background:#fff2cc;border-color:#f7c325;color:#7a5a00}
@media (max-width:900px){table.pl{display:block;overflow-x:auto}}
/* v1.15 — filtres de liste */
.lf-bar{gap:6px;align-items:center;margin:0 0 6px;flex-wrap:wrap}
table.t tr.lf-row td{background:#f4f7fa;padding:3px 4px}table.t tr.lf-row:hover td{background:#f4f7fa}
table.t tr.lf-row input,table.t tr.lf-row select{width:100%;min-width:70px;padding:2px 5px;font-size:12px;height:26px}
/* v1.16 : icônes SVG uniformes (couleur = texte du bouton : blanches sur fond foncé) */
.btn .ic{flex:none;width:14px;height:14px;margin-left:-1px}.btn.s .ic{width:12px;height:12px}
.ic-w{color:#fff;stroke:#fff;width:13px;height:13px;flex:none;vertical-align:-2px}
th.th-ic{width:34px;text-align:center}th.th-ic .ic-w{width:15px;height:15px}
.pastille .ic-w{width:12px;height:12px}
.ic-h{width:16px;height:16px;vertical-align:-2px}
.login-ver{text-align:center;font-size:11.5px;color:#8a97a6;margin:14px 0 0;letter-spacing:.3px}
/* v1.16 : Administration par thèmes */
.tabs a.tab-home{color:var(--blue);font-weight:600;padding-right:14px;border-right:1px solid var(--line);border-bottom-color:transparent;margin-right:-4px}
.adm-hub{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.adm-tile{margin:0;display:flex;flex-direction:column;gap:8px}
.adm-t{display:flex;gap:12px;align-items:flex-start;color:var(--txt)}.adm-t:hover{text-decoration:none}.adm-t:hover b{color:var(--blue)}
.adm-t b{display:block;font-size:15px;margin-bottom:3px}.adm-t .muted{display:block;font-size:12.5px;line-height:1.4}
.adm-ic{flex:none;width:40px;height:40px;border-radius:10px;background:#00348a;color:#fff;display:flex;align-items:center;justify-content:center}.adm-ic .ic{width:20px;height:20px}
.adm-etat{margin:0}.adm-links{margin:auto 0 0;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;border-top:1px solid var(--line);padding-top:8px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:10px 0}
.kpis>div{background:#f4f7fb;border-radius:8px;padding:10px 12px}.kpis b{display:block;font-size:18px;color:#00348a}.kpis span{font-size:12px;color:#5b6b7c}
dialog.dlg-wide{border:0;border-radius:12px;padding:16px 18px;width:min(1100px,calc(100% - 24px));max-height:calc(100vh - 40px);box-shadow:0 20px 50px rgba(0,0,0,.25)}
dialog.dlg-wide::backdrop{background:rgba(0,20,60,.45)}
dialog.dlg-wide .dlg-h{display:flex;gap:12px;align-items:center;flex-wrap:wrap}dialog.dlg-wide .dlg-h h2{margin:0;flex:1;font-size:16px}
dialog.dlg-wide .dlg-h input{width:280px;max-width:100%}dialog.dlg-wide .dlg-h form{margin:0}
dialog.dlg-wide .dlg-b{max-height:calc(100vh - 190px);overflow:auto}

/* ---------- v1.17 : workflows prêts à l'emploi ---------- */
.wfm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.wfm{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;background:#fbfcfd;display:flex;flex-direction:column;gap:6px}
.wfm.on{border-color:#22c55e;background:#f3fbf6}
.wfm-h{display:flex;align-items:center;gap:8px}.wfm-h b{flex:1;font-size:14px}
.wfm-ic{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#e0f2fe;color:#036aeb;flex:none}
.wfm.on .wfm-ic{background:#dcfce7;color:#1e8e4e}
.wfm-d{margin:0;font-size:12.5px;color:var(--txt);line-height:1.45}.wfm-s{margin:0;font-size:12px;color:var(--mut)}
.wfm .row{margin-top:auto;display:flex;gap:6px;flex-wrap:wrap}

/* ---------- v1.17 : pilotage ---------- */
.pil-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:0 0 12px}
.pil-t{margin:0;font-size:20px;color:#00348a;display:flex;align-items:center;gap:8px}.pil-t span{font-weight:400;color:var(--txt)}
.pil-sub{margin:2px 0 0;font-size:12.5px}
.pil-sel{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pil-sel label{margin:0;font-size:12px;color:var(--mut)}
.pil-sel select{width:auto;min-width:220px;font-weight:600}
.pil-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:10px;margin-bottom:14px}
.pil-kpi{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;background:#fff;border:1px solid var(--line);border-left:5px solid #98a2b3;
  border-radius:var(--radius);padding:10px 12px;color:var(--txt);text-decoration:none;transition:box-shadow .15s,transform .15s}
.pil-kpi:hover{box-shadow:0 4px 14px rgba(16,24,40,.08);transform:translateY(-1px)}
.pil-kpi.ok{border-left-color:#22c55e}.pil-kpi.warn{border-left-color:#f7c325}.pil-kpi.ko{border-left-color:#e5484d}
.pil-kpi-ic{grid-row:1/3;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#eef4ff;color:#036aeb;align-self:center}
.pil-kpi.ok .pil-kpi-ic{background:#dcfce7;color:#1e8e4e}.pil-kpi.warn .pil-kpi-ic{background:#fff4d6;color:#a16207}.pil-kpi.ko .pil-kpi-ic{background:#fde2e1;color:#b42318}
.pil-kpi-v{font-size:24px;font-weight:800;line-height:1.1;color:#00348a}.pil-kpi-v small{font-size:13px;font-weight:700;margin-left:2px;color:var(--mut)}
.pil-kpi-l{font-size:12px;color:var(--mut)}
.pil-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:14px;align-items:start}
.pil-side{display:flex;flex-direction:column;gap:14px}
@media (max-width:1000px){.pil-grid{grid-template-columns:1fr}}
.prio-l{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.prio{border:1px solid var(--line);border-left:5px solid #3aaee0;border-radius:8px;padding:8px 10px;background:#fff}
.prio.crit{border-left-color:#e5484d;background:#fffafa}.prio.imp{border-left-color:#f59e0b}.prio.suivi{border-left-color:#3aaee0}
.prio-h{display:flex;align-items:center;gap:10px}
.prio-n{min-width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-weight:800;font-size:16px;background:#e0f2fe;color:#035388;flex:none}
.prio.crit .prio-n{background:#e5484d;color:#fff}.prio.imp .prio-n{background:#fff4d6;color:#92400e}
.prio-b{flex:1;font-size:13px;line-height:1.35}.prio-b .muted{font-size:12px}
.prio-lvl{display:inline-block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:0 5px;border-radius:4px;background:#e0f2fe;color:#035388;margin-right:4px}
.prio.crit .prio-lvl{background:#fde2e1;color:#b42318}.prio.imp .prio-lvl{background:#fff4d6;color:#92400e}
.prio-d{margin:6px 0 0 48px;font-size:12.5px}.prio-d summary{cursor:pointer;color:#036aeb}.prio-d ul{margin:4px 0 0;padding-left:16px}
.wk{list-style:none;margin:0;padding:0}.wk li{display:grid;grid-template-columns:72px 1fr;gap:8px;padding:6px 0;border-bottom:1px solid var(--line);font-size:12.5px}
.wk li.today .wk-d{color:#fff;background:#036aeb;border-radius:5px;padding:0 5px}
.wk-d{font-weight:700;color:#00348a;align-self:start}.wk-i{display:flex;flex-direction:column;gap:3px}
.wk-s{display:block;background:#eef4ff;border-left:3px solid #036aeb;border-radius:4px;padding:2px 6px;color:var(--txt);text-decoration:none}
.wk-s:hover{background:#dbe8ff}.wk-s small{color:var(--mut)}
.chip{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;border-radius:10px;padding:1px 7px;margin:1px 0;background:#eef1f4;color:var(--txt);white-space:nowrap}
.chip .ic{width:11px;height:11px}
.chip.ok{background:#dcfce7;color:#166534}.chip.warn{background:#fff4d6;color:#92400e}.chip.ko{background:#fde2e1;color:#b42318}.chip.info{background:#e0f2fe;color:#035388}
.fill{display:inline-flex;align-items:center;gap:6px;min-width:120px}
.fill-b{flex:1;height:7px;background:#e5eaef;border-radius:5px;overflow:hidden;min-width:60px;display:block}
.fill-b i{display:block;height:100%;background:#98a2b3;border-radius:5px}
.fill-b i.ok,.hb-b i.ok{background:#22c55e}.fill-b i.warn,.hb-b i.warn{background:#f7c325}.fill-b i.ko,.hb-b i.ko{background:#e5484d}
.fill-t{font-size:11.5px;color:var(--mut);white-space:nowrap}
.pil-tab td{vertical-align:middle}.nw{white-space:nowrap}.c{text-align:center}
.hb{display:grid;grid-template-columns:110px 1fr 48px;align-items:center;gap:8px;margin:5px 0;font-size:12.5px}
.hb-b{display:block;height:9px;background:#e5eaef;border-radius:5px;overflow:hidden}.hb-b i{display:block;height:100%;background:#036aeb;border-radius:5px}
.hb-v{text-align:right;font-weight:700}
.st-planifiee{background:#3aaee0!important}.st-confirmee{background:#036aeb!important}.st-en_cours{background:#16857f!important}.st-cloturee{background:#98a2b3!important}.st-annulee{background:#e5484d!important}
.kv{list-style:none;margin:0;padding:0}.kv li{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-bottom:1px solid var(--line);font-size:12.5px}
.c-ok{color:#1e8e4e}.c-ko{color:#b42318}
.crit{display:flex;flex-direction:column;gap:10px}
.crit-i{display:grid;grid-template-columns:40px 1fr 60px;gap:10px;align-items:center}
.crit-n{width:36px;height:36px;border-radius:10px;background:#00348a;color:#fff;display:grid;place-items:center;font-weight:800}
.crit-b{display:flex;flex-direction:column;gap:3px;font-size:13px}
.crit-v{font-size:18px;font-weight:800;text-align:right;color:var(--mut)}.crit-v.ok{color:#1e8e4e}.crit-v.warn{color:#a16207}.crit-v.ko{color:#b42318}
.ck{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%}.ck.ok{background:#dcfce7;color:#166534}.ck.ko{background:#fde2e1;color:#b42318}

/* ---------- v1.17 : kanban ---------- */
.kb-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 12px;margin-bottom:12px}
.kb-bar input[type=search]{flex:1;min-width:220px}.kb-bar select{width:auto;max-width:260px}
.kb-chk{display:flex;align-items:center;gap:5px;margin:0;font-size:12.5px;white-space:nowrap}.kb-count{font-size:12px;margin-left:auto}
.kb{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(215px,1fr);gap:12px;overflow-x:auto;padding-bottom:10px;align-items:start}
.kb-col{background:#eef1f4;border-radius:var(--radius);padding:8px;min-height:120px;border-top:4px solid #98a2b3}
.kb-retard{border-top-color:#e5484d}.kb-en_cours{border-top-color:#16857f}.kb-semaine{border-top-color:#f59e0b}.kb-semaine2{border-top-color:#f7c325}
.kb-mois,.kb-planifiee{border-top-color:#3aaee0}.kb-mois2,.kb-confirmee{border-top-color:#036aeb}.kb-plus{border-top-color:#98a2b3}.kb-cloturee{border-top-color:#667085}.kb-annulee{border-top-color:#e5484d}
.kb-h{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:2px 4px 8px}.kb-h b{font-size:13.5px;color:#00348a}
.kb-n{background:#fff;border-radius:10px;padding:0 8px;font-weight:800;font-size:12px}.kb-a{flex-basis:100%;font-size:11.5px}
.kb-list{display:flex;flex-direction:column;gap:8px;min-height:60px;border-radius:8px;transition:background .15s}
.kb-list.kb-over{background:#dbe8ff;outline:2px dashed #036aeb;outline-offset:2px}
.kb-card{background:#fff;border-radius:8px;padding:9px 10px;box-shadow:0 1px 2px rgba(16,24,40,.08);border-left:4px solid #22c55e;display:flex;flex-direction:column;gap:5px}
.kb-card.kb-warn{border-left-color:#f7c325}.kb-card.kb-ko{border-left-color:#e5484d}
.kb-drag .kb-card{cursor:grab}.kb-card.dragging{opacity:.5}
.kb-top{display:flex;align-items:center;gap:6px;font-size:11.5px}.kb-date{font-weight:700;color:#00348a}
.kb-j{background:#eef1f4;border-radius:8px;padding:0 6px;font-weight:700}.kb-j.near{background:#fff4d6;color:#92400e}
.kb-st{margin-left:auto;color:#fff;border-radius:8px;padding:0 6px;font-size:10.5px;font-weight:700}
.kb-title{font-weight:700;font-size:13px;color:var(--txt);text-decoration:none;line-height:1.3}.kb-title:hover{color:#036aeb}
.kb-meta{font-size:11.5px;color:var(--mut);line-height:1.4}.kb-meta .ic{width:11px;height:11px;vertical-align:-1px}
.kb-fill{display:flex;align-items:center;gap:6px}.kb-al{display:flex;flex-wrap:wrap;gap:3px}
.kb-empty{font-size:12px;text-align:center;margin:10px 0}
.kb-toast{position:fixed;right:18px;bottom:18px;padding:10px 14px;border-radius:8px;color:#fff;font-size:13px;box-shadow:0 6px 20px rgba(0,0,0,.18);opacity:0;transform:translateY(8px);transition:all .2s;z-index:1000;pointer-events:none}
.kb-toast.on{opacity:1;transform:none}.kb-toast.ok{background:#1e8e4e}.kb-toast.ko{background:#b42318}

/* ---------- v1.18 : règlements, avatar ---------- */
.pil-kpi-s{display:block;font-size:11px;color:var(--mut);opacity:.85;margin-top:1px}
.rg-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.rg-tab{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;text-decoration:none;color:var(--txt);min-width:230px}
.rg-tab b{font-size:20px;color:#00348a;display:block;line-height:1.1}.rg-tab span{font-size:12px;color:var(--mut)}
.rg-tab.on{border-color:#036aeb;box-shadow:inset 0 -3px 0 #036aeb}.rg-tab.ok .ic-w{background:#dcfce7;color:#1e8e4e}.rg-tab.ko .ic-w{background:#fde2e1;color:#b42318}
.rg-tab .ic-w{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:none}
.rg-f{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;padding:10px 12px;margin-bottom:12px}
.rg-f>div{display:flex;flex-direction:column;gap:2px;flex:0 1 190px;min-width:0}.rg-f label{font-size:11.5px;color:var(--mut);margin:0}
.rg-f input,.rg-f select{width:100%;min-width:0}.rg-f .rg-q{flex:1 1 280px}.rg-f>div.rg-d{flex:0 0 150px}.rg-f>div.rg-b{flex:0 0 auto;flex-direction:row;gap:6px}
.rg-tot{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:13px;margin:0 0 8px}.rg-tot b{color:#00348a}
.rg-t td{vertical-align:middle}.rg-t .num{text-align:right;white-space:nowrap}
.rg-enc{display:flex;gap:4px;align-items:center;flex-wrap:nowrap}.rg-enc select,.rg-enc input{width:auto;padding:3px 6px;font-size:12px;min-width:0}
.rg-enc input[type=date]{width:130px}.rg-enc select{max-width:120px}
.avatar.img{padding:0;overflow:hidden;background:#fff}.avatar.img img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
.av-edit{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:10px 0}
.av-big{width:84px;height:84px;border-radius:50%;background:#f7c325;color:#00348a;display:grid;place-items:center;font-size:28px;font-weight:800;overflow:hidden;flex:none;border:3px solid #fff;box-shadow:0 0 0 1px var(--line)}
.av-big img{width:100%;height:100%;object-fit:cover}
.av-edit form{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
/* v1.19 : popin de confirmation / information / saisie de l'application (remplace les fenêtres du navigateur) */
dialog.hgl-cf{border:0;border-radius:12px;padding:0;width:min(480px,calc(100% - 24px));box-shadow:0 20px 50px rgba(0,0,0,.28);color:var(--txt)}
dialog.hgl-cf::backdrop{background:rgba(0,20,60,.45)}
dialog.hgl-cf .hd{background:#00348a;color:#fff;padding:12px 16px;font-weight:700;font-size:15px}
dialog.hgl-cf.danger .hd{background:#b42318}
dialog.hgl-cf form{padding:16px 16px 14px;margin:0}
dialog.hgl-cf .msg{margin:0 0 12px;white-space:pre-line;line-height:1.45;font-size:14px}
dialog.hgl-cf input[type=text]{width:100%;margin:0 0 6px}
dialog.hgl-cf .err{color:#b4271a;font-size:12px;margin:0 0 6px}
dialog.hgl-cf .cf-bar{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:6px}
.intra-note{background:#e0f2fe;border:1px solid var(--blue);border-radius:8px;padding:8px 10px;font-size:12.5px}
.intra-lock select{background:#f1f5f9;pointer-events:none}
.chip.intra,.tag.intra{background:#ede9fe;border-color:var(--violet);color:#5b21b6}
.f [data-si][hidden],.f [data-reg-ins][hidden],.intra-note[hidden],.qn-grp[hidden],.qn-row[hidden]{display:none!important}
.rg-intra-box{margin-top:10px;border:1px solid #d8ccf7;background:#faf8ff;border-radius:10px;padding:10px 12px}
.rg-intra-box h3{margin:0 0 6px;font-size:14px}
/* v1.19 : questionnaires par nature */
.qn-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px}
.qn-bar input[type=search]{flex:1 1 260px;min-width:200px;width:auto}.qn-bar select{width:auto;max-width:240px}
.qn-cpt{font-size:12px;margin-left:auto}
.qn-grp{border:1px solid var(--line);border-radius:10px;margin:0 0 10px;background:#fff}
.qn-grp>summary{cursor:pointer;padding:9px 12px;display:flex;align-items:center;gap:8px;font-size:14px;list-style:none;background:#f7f9fb;border-radius:10px}
.qn-grp>summary::-webkit-details-marker{display:none}
.qn-grp>summary::before{content:'';width:8px;height:8px;border-right:2px solid var(--mut);border-bottom:2px solid var(--mut);transform:rotate(-45deg);transition:transform .15s;margin-right:4px}
.qn-grp[open]>summary::before{transform:rotate(45deg)}
.qn-grp[open]>summary{border-radius:10px 10px 0 0;border-bottom:1px solid var(--line)}
.qn-grp .t{margin:0}.qn-n{background:var(--nav);color:#fff;border-radius:10px;padding:0 8px;font-size:12px;font-weight:700}.qn-tot{font-size:12px}

/* v1.20 : multisélection (cases à cocher) — ex. types de veille */
.ms-box{display:flex;flex-wrap:wrap;gap:6px 14px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}
.ms-opt{display:inline-flex;align-items:center;gap:6px;margin:0;font-weight:400;font-size:13px;cursor:pointer;white-space:normal}
.ms-opt input{width:auto;margin:0}
.inv .ms-box{border-color:#e5484d}
/* v1.20 : téléphone — barre du haut sans débordement, formulaires sur une colonne, tableaux défilants */
@media(max-width:700px){
  .top{gap:8px;padding:0 10px}.top h1{font-size:14px;white-space:nowrap}
  .top .search{flex:1 1 auto;min-width:0}.top .search input{width:100%;min-width:0}
  .top .icons{gap:8px;flex:0 0 auto}.top .icons a[data-newwin]{display:none}
  form.f{grid-template-columns:1fr}form.f>div{grid-column:1/-1}
  .tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
}
@media(max-width:700px){
  .grid>*{min-width:0}.card{min-width:0;max-width:100%}
  table.t{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .tabs{overflow-x:auto;white-space:nowrap;scrollbar-width:thin}.tabs a{flex:0 0 auto}
}
/* v1.20 : liste des questionnaires — colonnes identiques dans tous les groupes de nature */
.qn-wrap{overflow-x:auto}
table.qn-t{table-layout:fixed;width:100%;min-width:1230px}
.qn-t col.c-statut{width:108px}.qn-t col.c-type{width:165px}.qn-t col.c-dest{width:108px}
.qn-t col.c-num{width:72px}.qn-t col.c-score{width:100px}.qn-t col.c-act{width:384px}
.qn-t th{white-space:nowrap}.qn-t td{vertical-align:middle;overflow-wrap:anywhere}.qn-t td .tag{white-space:nowrap}
.qn-t .num{text-align:center}.qn-t .act{text-align:right;padding-right:12px}.qn-t td:first-child,.qn-t th:first-child{padding-left:12px}
@media(max-width:700px){table.t.qn-t{display:table}}
.qn-tot{white-space:nowrap}
/* v1.21.2 : choix du circuit de signature (bouton radio devant l'option) */
.sig-opt{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:13px;font-weight:400;cursor:pointer}
.sig-opt input[type=radio]{width:auto;margin:2px 0 0;flex:0 0 auto;align-self:flex-start}.sig-opt span{flex:1 1 auto;min-width:0}
/* v1.21.2 : éditeur de modèles — colonne des paramètres sous l'éditeur sur tablette et téléphone */
.grid.ed-layout{grid-template-columns:minmax(0,3fr) minmax(260px,1fr)}
@media (max-width:900px){.grid.ed-layout{grid-template-columns:minmax(0,1fr)}.ed-bar{position:static}.ed-tabs{flex-wrap:wrap}}
/* v1.22 : isolement des données fictives (bascule « Données ») */
.fx-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px 12px;margin:0 0 10px}
.fx-bascule{gap:6px;align-items:center;margin:0;flex-wrap:nowrap}
.fx-bascule .fx-lbl{margin:0;font-size:12px;color:var(--muted);font-weight:600;white-space:nowrap}
.fx-bascule select.fx-sel{width:auto;max-width:260px;height:30px;padding:3px 8px;font-size:12.5px}
.fx-bascule select.fx-sel.on{border-color:#d97706;background:#fff7e6;font-weight:600}
.fx-band{flex:1 1 320px;margin:0;padding:6px 10px;border:1px solid #f7c325;background:#fff8e6;border-radius:8px;font-size:12.5px;color:#7a4b00}
.fx-band a{font-weight:600;margin-left:6px}
.tag.fx{background:#fff1d6;color:#8a5300;border:1px solid #f3c77a}
@media (max-width:600px){.fx-bar{justify-content:stretch}.fx-bascule{width:100%}.fx-bascule select.fx-sel{flex:1;max-width:none}}
/* v1.22 : tablettes — les tableaux larges défilent dans leur carte au lieu d'élargir la page */
@media(min-width:701px) and (max-width:1100px){
  .grid>*{min-width:0}.card{min-width:0;max-width:100%}
  table.t{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  table.t>thead,table.t>tbody{display:table;width:100%}
  table.t.qn-t{display:table}table.t.qn-t>thead,table.t.qn-t>tbody{display:table-row-group}
}
/* v1.22.1 : statut des inscrits modifiable depuis la session */
table.t th.ck,table.t td.ck{width:28px;text-align:center;vertical-align:middle;padding-left:6px;padding-right:2px}
table.t th.ck input{accent-color:#fff}
table.t .ck input[type=checkbox]{width:auto;margin:0}
select.ins-sel{width:auto;min-width:118px;height:28px;padding:2px 26px 2px 8px;font-size:12.5px;border-radius:6px;border:1px solid var(--line);background-color:#fff}
select.ins-sel.st-validee,select.ins-sel.st-en_cours{border-color:#2a9d8f;background-color:#eef8f6}
select.ins-sel.st-terminee{border-color:#3a7bd5;background-color:#eef4fc}
select.ins-sel.st-suspendue,select.ins-sel.st-abandon,select.ins-sel.st-annulee{border-color:#e05a5a;background-color:#fdf0f0}
.ins-lot{gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0 2px;padding:8px 10px;background:#f4f7fa;border-radius:8px;font-size:13px}
.ins-lot label{margin:0;font-weight:600}.ins-lot select{width:auto;min-width:150px;height:30px}.ins-lot .muted{font-size:12px;flex-basis:100%}
@media(max-width:700px){.ins-lot select{flex:1 1 140px}.ins-lot .btn{flex:0 0 auto}}
/* v1.24 : choix du contact administratif, validation des documents avant envoi */
.chx{border:1px solid var(--line);border-radius:10px;padding:6px 12px 10px;margin:0 0 10px}
.chx legend{font-weight:600;padding:0 6px}
.chx-o{display:flex!important;gap:10px;align-items:flex-start;padding:8px;border-radius:8px;cursor:pointer;font-weight:400!important;margin:4px 0 0!important}
.chx-o:hover{background:#f3f7fa}.chx-o input{margin-top:3px}.chx-o:has(input:checked){background:#eef6fb;outline:1px solid #b9dcef}
.rv-list{margin:0;padding-left:18px}.rv-list li{margin:6px 0}
.mdlg.rv.wide{width:min(1180px,97vw)}
.rv-c{display:grid;grid-template-columns:240px 1fr;gap:12px;min-height:0}
.rv-side{display:flex;flex-direction:column;gap:6px;max-height:68vh;overflow:auto}
.rv-d{display:flex;gap:6px;align-items:flex-start;font-size:13px;padding:6px;border-radius:8px;background:#f7f9fb}
.rv-d .lnkbtn{text-align:left;text-decoration:none;color:var(--ink,#1f2937)}.rv-d .lnkbtn.on{font-weight:600;color:var(--link,#2f80c8)}
.rv-d a{text-decoration:none}.rv-hint{font-size:11px;margin:4px 0 0}
.rv-frame{width:100%;height:68vh;border:1px solid var(--line);border-radius:8px;background:#eef1f4}
@media (max-width:760px){.rv-c{grid-template-columns:1fr}.rv-side{max-height:28vh}.rv-frame{height:50vh}.mdlg-foot{flex-wrap:wrap}.mdlg-foot .btn{flex:1 1 auto}}
/* v1.25 : conformité Qualiopi détaillée (vue d'ensemble, détail par indicateur, fiches et listes) */
.bar i.ok,.hb-b i.ok{background:#22c55e}.bar i.warn,.hb-b i.warn{background:#f5b301}.bar i.ko,.hb-b i.ko{background:#e5484d}
b.ok{color:#1e8e4e}b.warn{color:#a16207}b.ko{color:#b42318}
.qc-sy-g{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px;align-items:start}
.qc-glob{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}
.qc-glob>b{font-size:40px;line-height:1;font-weight:800;color:var(--mut);white-space:nowrap}.qc-glob.ok>b{color:#1e8e4e}.qc-glob.warn>b{color:#a16207}.qc-glob.ko>b{color:#b42318}
.qc-glob>span:first-of-type{font-weight:600}
.qc-cpt{display:flex;flex-wrap:wrap;gap:4px}
a.qc-crit{color:inherit;text-decoration:none;border-radius:10px;padding:4px 6px;margin:-4px -6px}a.qc-crit:hover{background:#f1f5f9}
.qc-cov{display:flex;align-items:center;gap:8px;color:inherit;text-decoration:none}.qc-cov .bar{flex:1;min-width:60px}.qc-cov b{white-space:nowrap}
.qc-gr{display:block;font-size:11.5px;color:var(--mut);margin-top:3px;text-decoration:none}.qc-gr:hover{text-decoration:underline}
.qc-det{display:inline-block;font-size:12px;font-weight:600;margin-top:3px}
table.qc-t td:last-child{min-width:170px}
.qc-nav{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;margin-bottom:8px}.qc-nav>span{display:flex;gap:6px}
.qc-hd-g{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:20px;align-items:center}
.qc-big{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#f8fafc;text-align:center}
.qc-big b{font-size:38px;line-height:1;font-weight:800;color:var(--mut);white-space:nowrap}.qc-big.ok b{color:#1e8e4e}.qc-big.warn b{color:#a16207}.qc-big.ko b{color:#b42318}.qc-big .bar{width:100%}
.qc-h3{font-size:13.5px;margin:14px 0 6px;color:var(--txt)}
.qc-pb{display:flex;align-items:center;gap:8px}.qc-pb .bar{flex:1;min-width:50px}.qc-pb b{min-width:40px;text-align:right;font-size:12.5px}
table.qc-info td,table.qc-el td{vertical-align:middle}table.qc-el .chip{margin:1px 2px 1px 0}
tr.qc-sel td{background:#fff8e1}
.qc-filt{gap:6px;flex-wrap:wrap;align-items:center;margin:4px 0 8px}.qc-filt input[type=search]{width:220px;max-width:100%}
.qc-seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.qc-seg a{padding:5px 10px;font-size:12.5px;text-decoration:none;color:var(--txt);border-right:1px solid var(--line)}.qc-seg a:last-child{border-right:0}.qc-seg a.on{background:#00348a;color:#fff}
.qc-flt{font-size:12.5px;background:#fff8e1;border:1px solid #f7c325;border-radius:8px;padding:6px 10px}
.qc-card .qc-ind{border-top:1px solid var(--line);padding:8px 0}.qc-card .qc-ind:first-of-type{border-top:0}
.qc-card .qc-ind-h{display:flex;justify-content:space-between;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:13px}
.qc-card ul{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:3px}.qc-card li{display:flex;gap:6px;align-items:flex-start;font-size:12.5px}
.qc-card li .ck{flex:0 0 18px;width:18px;height:18px}.qc-card li .ck .ic{width:11px;height:11px}
.qc-badge{display:inline-block;min-width:44px;text-align:center;font-size:11.5px;font-weight:700;border-radius:10px;padding:1px 7px;background:#eef1f4;color:var(--mut);white-space:nowrap}
.qc-badge.ok{background:#dcfce7;color:#166534}.qc-badge.warn{background:#fff4d6;color:#92400e}.qc-badge.ko{background:#fde2e1;color:#b42318}
form.f>div.qc-manque{background:#fff8e1;border-radius:8px;box-shadow:0 0 0 2px #f7c325;padding:6px 8px}
.qc-req{font-size:11px;color:#92400e;font-weight:600;margin-top:2px}
@media(max-width:1100px){.qc-sy-g{grid-template-columns:1fr}.qc-glob{flex-direction:row;flex-wrap:wrap;align-items:center}.qc-glob>b{font-size:32px}}
@media(max-width:700px){.qc-hd-g{grid-template-columns:1fr}.qc-big{flex-direction:row;justify-content:center}.qc-big b{font-size:30px}
  .qc-filt input[type=search]{flex:1 1 140px;width:auto}.qc-seg{width:100%}.qc-seg a{flex:1;text-align:center}
  table.qc-el td:nth-child(2){min-width:120px}table.qc-el td:nth-child(3){min-width:160px}}
@media(max-width:700px){.grid.fiche-g{grid-template-columns:minmax(0,1fr)!important}}

/* v1.26 : bilan pédagogique et financier */
.bpf-hd-g{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.bpf-act{gap:6px}.bpf-act form{margin:0}
.bpf-tr{margin-top:6px;padding-top:8px;border-top:1px solid var(--line);font-size:13px;gap:8px}.bpf-tr label{display:flex;align-items:center;gap:6px;margin:0}.bpf-tr input{width:auto}
.bpf-fs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;border:0;padding:0;margin:0;min-width:0}.bpf-fs .full{grid-column:1/-1}
table.bpf-t td{vertical-align:top}table.bpf-t td.right{min-width:130px}.bpf-c{width:44px;text-align:center;font-weight:600;color:#00348a;white-space:nowrap}
tr.bpf-tot td{background:#eef2f7;font-weight:600}
details.bpf-fx{margin-top:3px;text-align:left}details.bpf-fx summary{font-size:11.5px;color:var(--mut);cursor:pointer;text-align:right}
.bpf-fxf{display:grid;gap:6px;margin-top:6px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;min-width:220px}.bpf-fxf label{margin:0}
table.bpf-j td{vertical-align:top;font-size:12.5px}table.bpf-j td:nth-child(3){min-width:150px}tr.bpf-al td{background:#fffbeb}
.bpf-fin{display:grid;gap:6px;padding:6px 0}.bpf-fin select{width:auto;max-width:100%;flex:1 1 220px}
.bpf-exp{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.bpf-exp>div{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fbfcfe}.bpf-exp p{font-size:12.5px}
table.bpf-maf td{vertical-align:middle}table.bpf-maf td:nth-child(3){white-space:nowrap}.bpf-cp.done{background:#1e8e4e;color:#fff}
table.bpf-ctl td{vertical-align:middle}
@media(max-width:1100px){.bpf-exp{grid-template-columns:1fr}}
@media(max-width:700px){.bpf-fs{grid-template-columns:1fr}.bpf-fs>div{grid-column:1/-1}.bpf-hd-g{flex-direction:column}.bpf-tr label{flex:1 1 100%}.bpf-tr input{flex:1}table.bpf-maf td:nth-child(3){white-space:normal}}
.qc-filt.bpf-filt select{width:auto;max-width:340px;flex:0 1 auto}
@media(max-width:700px){.qc-filt.bpf-filt select{max-width:100%;flex:1 1 100%}}
table.bpf-maf{table-layout:fixed;width:100%}table.bpf-maf td:nth-child(1){width:150px;overflow-wrap:anywhere}table.bpf-maf td:nth-child(3){width:230px;overflow-wrap:anywhere}table.bpf-maf td:nth-child(4){width:96px}
@media(max-width:700px){table.bpf-maf td:nth-child(1){width:84px;font-size:11px}table.bpf-maf td:nth-child(3){width:96px}table.bpf-maf td:nth-child(4){width:74px}}
/* v1.26 : débordements corrigés (fiche session : grille du formulaire et tableau de planning ; BPF) */
form.f>div{min-width:0}table.pl{display:block;overflow-x:auto;max-width:100%}
@media(max-width:700px){form.f{grid-template-columns:minmax(0,1fr)}}
table.bpf-maf td{white-space:normal!important;overflow-wrap:anywhere}
table.bpf-t td.right{min-width:170px}.bpf-fxf{min-width:0;width:100%;box-sizing:border-box}details.bpf-fx[open]{min-width:200px}
table.bpf-maf td:nth-child(2){overflow-wrap:break-word!important}
@media(min-width:701px) and (max-width:1100px){table.bpf-maf td:nth-child(1){width:120px}table.bpf-maf td:nth-child(3){width:170px}}

/* ===== v1.27 : mode tablette d'émargement (plein écran) ===== */
.tb-body{background:var(--bg);min-height:100%;padding-bottom:96px}
.tb-hd{background:var(--nav);color:#fff;padding:12px 22px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;position:sticky;top:0;z-index:5}
.tb-hd img{height:26px}.tb-tt{min-width:0;flex:1 1 300px}.tb-tt h1{font-size:18px;margin:0;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tb-tt p{margin:2px 0 0;font-size:13px;opacity:.85}
.tb-seg{display:inline-flex;background:rgba(255,255,255,.12);border-radius:10px;padding:4px;gap:2px;flex-wrap:wrap}
.tb-seg a{color:#fff;text-decoration:none;padding:8px 14px;border-radius:8px;font-size:14px;white-space:nowrap}.tb-seg a.on{background:#fff;color:var(--nav);font-weight:700}
.tb-x{color:#fff;text-decoration:none;background:rgba(255,255,255,.14);border-radius:10px;padding:9px 14px;font-weight:600;font-size:14px;white-space:nowrap}
.tb-flash{background:#e7f6ee;color:#14663a;border-bottom:1px solid #bfe3cd;padding:10px 22px;font-weight:600}
.tb-prog{background:#fff;padding:12px 22px;display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.tb-prog b{font-size:16px}.tb-prog span{color:var(--mut);font-size:13.5px}
.tb-bar{flex:1 1 200px;height:10px;background:#e6ebf0;border-radius:6px;overflow:hidden}.tb-bar i{display:block;height:100%;background:var(--teal);transition:width .3s}
.tb-warn{margin:14px 22px 0;background:#fff7e0;border:1px solid #f3dc8f;border-radius:10px;padding:10px 14px;font-size:13.5px}
.tb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px 22px}
.tb-c{background:#fff;border-radius:16px;padding:18px;box-shadow:0 1px 3px rgba(20,40,60,.08);display:flex;flex-direction:column;gap:12px;min-height:170px;border:2px solid transparent;min-width:0}
.tb-c.ok{border-color:#bfe3cd;background:#f6fcf8}.tb-c.ab{background:#fafafa}.tb-c.ab .tb-p{opacity:.7}
.tb-c.cur{border-color:var(--teal);box-shadow:0 0 0 4px rgba(22,133,127,.15)}
.tb-c form{margin:0}
.tb-p{display:flex;gap:12px;align-items:center;min-width:0}.tb-p>div{min-width:0}
.tb-p b{font-size:17px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tb-p div span{font-size:13px;color:var(--mut);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tb-av{width:48px;height:48px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px;flex:none}
.tb-b{display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:14px;font:inherit;font-weight:700;font-size:16px;cursor:pointer;text-decoration:none;width:100%;min-height:48px;touch-action:manipulation}
.tb-b.g{background:var(--teal);color:#fff}.tb-b.g:disabled{opacity:.6}
.tb-b.l{background:#eef2f6;color:var(--txt);font-size:14px;padding:10px}.tb-b.l.on{background:#fff2cc;color:#7a5600}
.tb-b:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.tb-r{display:flex;gap:10px}.tb-r>*{flex:1}
.tb-st{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;margin:0}
.tb-st.ok{color:#14663a}.tb-st.ko{color:#b42318}.tb-st.wn{color:#8a5a00}
.tb-tag{font-size:11.5px;background:#fff2cc;color:#7a5600;border-radius:8px;padding:1px 7px;font-weight:700}
.tb-sig{height:52px;border-bottom:1.5px dashed #c8d2dc}.tb-sig img{height:100%;max-width:100%;object-fit:contain;mix-blend-mode:multiply}
.tb-add{border:2px dashed #c8d2dc;background:transparent;box-shadow:none;align-items:center;justify-content:center;text-align:center;color:var(--mut)}
.tb-add b{color:var(--txt);font-size:16px}.tb-add .tb-plus{font-size:30px;line-height:1}.tb-add .tb-r{width:100%}
.tb-ft{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line);padding:12px 22px calc(12px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:14px;z-index:6;box-shadow:0 -2px 10px rgba(20,40,60,.06)}
.tb-ft form{margin:0}.tb-ft .tb-b{width:auto;padding:14px 22px;white-space:nowrap}.tb-ft .tb-b.l{font-size:15px;padding:14px 18px}
.tb-tr{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.tb-tr .tb-av{width:42px;height:42px;font-size:14px}
.tb-tr b{font-size:16px;display:block}.tb-tr span{color:var(--mut);font-size:13px}
.tb-empty{max-width:640px;margin:60px auto;background:#fff;border-radius:16px;padding:28px;text-align:center}.tb-empty .tb-b{display:inline-flex;width:auto;padding:12px 22px}
.tb-dlg{border:0;border-radius:18px;padding:22px;width:min(760px,94vw);box-shadow:0 20px 60px rgba(10,25,40,.35)}
.tb-dlg::backdrop{background:rgba(15,30,45,.55)}.tb-dlg h2{margin:0 0 4px;font-size:20px}.tb-mut{color:var(--mut);font-size:13px;margin:0 0 12px}
.tb-pad{display:block;width:100%;height:260px;border:2px solid #c8d2dc;border-radius:12px;background:#fff;touch-action:none;cursor:crosshair}
.tb-ck{display:flex;gap:10px;align-items:flex-start;margin:12px 0;font-size:13.5px;font-weight:400}.tb-ck input{width:22px;height:22px;flex:none;margin:0}
@media(max-width:1000px){.tb-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tb-hd{gap:10px 14px}.tb-tt{flex:1 1 0}.tb-seg{order:3;flex-basis:100%;justify-content:stretch}.tb-seg a{flex:1;text-align:center}}
@media(max-width:640px){.tb-grid{grid-template-columns:minmax(0,1fr);padding:14px}.tb-hd{padding:10px 14px;position:static}.tb-hd img{display:none}.tb-tt h1{font-size:16px;white-space:normal}
  .tb-seg{width:100%}.tb-seg a{flex:1;text-align:center;padding:8px 6px;font-size:13px}
  .tb-ft{flex-wrap:wrap;padding:10px 14px calc(10px + env(safe-area-inset-bottom))}.tb-ft form,.tb-ft>.tb-b{flex:1 1 0;min-width:0}.tb-ft .tb-b{width:100%;padding:12px 8px;font-size:14px;white-space:normal}.tb-tr{flex-basis:100%}
  .tb-body{padding-bottom:150px}.tb-pad{height:200px}.tb-prog{padding:10px 14px}}

/* ===== v1.27 : écran de session réorganisé ===== */
.ss-hd{padding:14px 18px}
.ss-top{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}.ss-title{flex:1 1 320px;min-width:0}
.ss-title h1{font-size:19px;margin:0 0 4px;line-height:1.3}.ss-title p{margin:0;display:flex;gap:6px;flex-wrap:wrap;align-items:center;font-size:13px}
.ss-act{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ss-more{position:relative}.ss-more summary{list-style:none;cursor:pointer;min-width:34px;justify-content:center}.ss-more summary::-webkit-details-marker{display:none}
.ss-menu{position:absolute;right:0;top:calc(100% + 4px);background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgba(20,40,60,.16);padding:6px;min-width:250px;z-index:20;display:flex;flex-direction:column}
.ss-menu a{padding:8px 10px;border-radius:6px;color:var(--txt);text-decoration:none;font-size:13px}.ss-menu a:hover,.ss-menu a:focus-visible{background:#eef2f6}
.ss-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.ss-chip{display:inline-flex;align-items:center;gap:6px;background:#f2f5f8;border:1px solid var(--line);border-radius:16px;padding:4px 11px;font-size:12.5px;color:var(--txt);text-decoration:none;max-width:100%}
.ss-chip.warn{background:#fff7e0;border-color:#f3dc8f;color:#7a5600}.ss-chip.pl-cpt{margin:0}.ss-chip a{font-weight:600}
.ss-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px;padding:12px}
.ss-step{border:1px solid var(--line);border-radius:10px;padding:10px;background:#fafbfc;min-width:0}
.ss-step h3{font-size:13px;margin:0 0 8px;display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.03em;color:var(--mut)}
.ss-step h3 span{width:22px;height:22px;border-radius:50%;background:#00348a;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px}
.ss-step.ok h3 span{background:#1e8e4e}.ss-step.ok{border-color:#bfe3cd;background:#f6fcf8}.ss-step.mid h3 span{background:linear-gradient(90deg,#1e8e4e 50%,#00348a 50%)}
.ss-btns{display:flex;flex-direction:column;gap:6px}.ss-btns .btn{width:100%;justify-content:flex-start;text-align:left;white-space:normal}
.ss-q{display:flex;flex-direction:column;gap:6px}.ss-q select{width:100%}
.ss-leg{grid-column:1/-1;font-size:11.5px;margin:0}
.avn.card{margin-top:14px}
.ss-day{margin-top:14px;background:var(--teal);color:#fff;border-radius:var(--radius);padding:14px 18px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.ss-day h2{font-size:15px;margin:0 0 6px;color:#fff}.ss-day-l{flex:0 1 auto}
.ss-seg{display:inline-flex;background:rgba(255,255,255,.15);border-radius:8px;padding:3px;gap:2px;flex-wrap:wrap}
.ss-seg span{padding:4px 10px;border-radius:6px;font-size:12.5px}.ss-seg span.on{background:#fff;color:var(--teal);font-weight:700}
.ss-day-m{flex:1 1 260px;display:flex;flex-direction:column;gap:5px;min-width:0}.ss-day-m b{font-size:15px}.ss-day-m span{font-size:12.5px;opacity:.92}
.ss-bar{height:8px;background:rgba(255,255,255,.25);border-radius:5px;overflow:hidden;max-width:420px}.ss-bar i{display:block;height:100%;background:var(--yellow)}
.ss-day-r{display:flex;gap:8px;flex-wrap:wrap}.ss-day .btn.y{font-weight:700}
.btn.ss-ghost{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.35)}
.ss-day-off{margin:14px 0 0;background:#fff;border-left:4px solid var(--teal);border-radius:var(--radius);padding:10px 14px;font-size:13px}
.ss-main{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;margin-top:14px;align-items:start}
.ss-ins{min-width:0}.ss-tw{overflow-x:auto}.ss-t td{vertical-align:middle}.ss-t select.ins-sel{width:auto;max-width:132px}.ss-t td[data-l="Présence"]{white-space:nowrap}
.ss-who{min-width:150px}.ss-whoi{display:flex;align-items:center;gap:9px}
table.t th.ck,table.t td.ck{display:table-cell;border-radius:0;height:auto}.ss-av{width:32px;height:32px;font-size:12px}
.ss-nm{min-width:0;display:flex;flex-direction:column}.ss-nm small{color:var(--mut);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:170px}
.ss-ent span{display:block;max-width:118px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ss-pb{display:inline-block;width:40px;height:6px;background:#e6ebf0;border-radius:4px;overflow:hidden;vertical-align:middle}.ss-pb i{display:block;height:100%;background:var(--teal)}
.ss-now{white-space:nowrap}.ss-now .btn{padding:3px 8px;font-size:12px}.ss-now form{display:inline}
.ss-all{display:none;gap:5px;align-items:center;font-weight:600}.ss-all input{width:auto;margin:0}
.ss-bulk.on{position:sticky;bottom:8px;z-index:4;background:var(--nav);color:#fff;box-shadow:0 6px 18px rgba(20,40,60,.25)}.ss-bulk.on .muted{color:#c9d4df}
.ss-side{display:flex;flex-direction:column;gap:14px;min-width:0}
.ss-todo ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.ss-todo li{border-left:3px solid var(--line);padding:4px 8px;font-size:13px;display:flex;flex-direction:column}.ss-todo li small{color:var(--mut);font-size:11.5px}
.ss-todo li.wn{border-color:#f3b72f}.ss-todo li.ko{border-color:var(--red)}.ss-todo li.ok{border-color:#28a745;color:var(--mut)}.ss-todo li.in{border-color:var(--blue)}
.ss-mini p{margin:0 0 6px;font-size:13px}.ss-lk{margin-left:auto;font-weight:400;font-size:12px}
.ss-det{margin-top:14px}#q-formateur,#qstats,#planning{margin-top:14px}
@media(max-width:1180px){.ss-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1300px){.ss-main{grid-template-columns:minmax(0,1fr)}.ss-side{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}
@media(max-width:700px){
  .ss-steps{grid-template-columns:minmax(0,1fr)}.ss-title h1{font-size:17px}.ss-act{width:100%}.ss-menu{right:auto;left:0}
  .ss-day{padding:12px 14px;gap:12px}.ss-day-r,.ss-day-r .btn{width:100%;justify-content:center}
  .ss-side{display:flex}}

/* v1.27 : participants en cartes sur tablette et téléphone */
@media(max-width:1100px){
  .ss-tw{overflow:visible}.ss-all{display:inline-flex}
  table.t.ss-t,table.ss-t tbody,table.ss-t td{display:block;width:100%}table.ss-t thead{display:none}
  table.ss-t tbody{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
  table.ss-t tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 12px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;position:relative;background:#fff}
  table.ss-t td{border:0;padding:0;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px}
  table.ss-t td[data-l]:not(.ss-who)::before{content:attr(data-l);font-size:11px;color:var(--mut);text-transform:uppercase;letter-spacing:.02em}
  table.ss-t td.ss-who,table.ss-t td.ss-now{grid-column:1/-1}
  table.ss-t td[data-l="Présence"]{flex-direction:row;flex-wrap:wrap;align-items:center;gap:2px 6px}table.ss-t td[data-l="Présence"]::before{flex-basis:100%}
  table.ss-t td.ss-now{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px;border-top:1px solid var(--line);padding-top:6px}
  table.ss-t td.ss-now::before{flex-basis:100%}
  table.ss-t td.ck{position:absolute;right:10px;top:10px;width:auto}table.ss-t td.ss-who{padding-right:30px}
  .ss-ent span{max-width:100%}.ss-nm small{max-width:230px}
  table.ss-t tr:hover td{background:none}
}

/* ===== v1.28 : tableaux de bord d'accueil (Cockpit, Ma journée, Pilotage) ===== */
.acc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.acc-ttl{min-width:0}.acc-ttl h1{margin:2px 0 0;font-size:21px;font-weight:800;letter-spacing:-.01em}.acc-date{font-size:12.5px;color:var(--mut)}
.acc-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.acc-seg{display:inline-flex;background:#fff;border:1px solid var(--line);border-radius:9px;padding:3px;gap:2px;flex-wrap:wrap}
.acc-seg a{padding:5px 11px;border-radius:7px;color:var(--txt);font-size:12.5px;font-weight:700;white-space:nowrap}.acc-seg a:hover{background:#eef2f6;text-decoration:none}
.acc-seg a.on{background:var(--nav);color:#fff}.acc-star{color:var(--yellow);font-size:11px}
.acc-def{margin:0}.acc-inc{margin-bottom:12px;border-left:4px solid var(--red);font-size:12.5px}.acc-inc ul{margin:4px 0 0;padding-left:18px}
.acc-note{font-size:11.5px;color:var(--mut);margin:8px 0 0}
.acc-row{display:grid;gap:14px;margin-top:14px}.acc-r21{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}.acc-r3{grid-template-columns:repeat(3,minmax(0,1fr))}
.acc-r21j{grid-template-columns:minmax(0,1fr) 300px;margin-top:0;align-items:start}.acc-col{display:grid;gap:14px;min-width:0}
.acc-ch{display:flex;align-items:center;gap:8px;margin-bottom:6px}.acc-ch h2{margin:0;font-size:15px;flex:1;min-width:0}
.acc-more{font-size:12px;font-weight:700;white-space:nowrap}
.acc-pill{font-size:11px;font-weight:800;border-radius:12px;padding:2px 9px;background:#eef2f6;color:var(--txt);white-space:nowrap}
.acc-pill.ko{background:#fde8e8;color:#c0392b}.acc-pill.warn{background:#fff4d6;color:#8a6100}
.acc-tag{display:inline-block;font-size:10.5px;font-weight:800;border-radius:10px;padding:2px 8px;background:#eef2f6;color:var(--txt);white-space:nowrap;vertical-align:middle}
.acc-tag.ok{background:#e3f5ea;color:#1e7b3c}.acc-tag.warn{background:#fff4d6;color:#8a6100}.acc-tag.ko{background:#fde8e8;color:#c0392b}.acc-tag.info{background:#e7f1fb;color:#1f6fb2}
.acc-bar{display:block;height:6px;border-radius:4px;background:#eef1f4;overflow:hidden;margin-top:4px}.acc-bar i{display:block;height:100%;background:var(--teal);border-radius:4px}
.acc-bar i.ok{background:var(--ok)}.acc-bar i.warn{background:#f59f2a}.acc-bar i.ko,.acc-bar i.r{background:var(--red)}.acc-bar i.b{background:#2b8fd0}
.acc-tx{min-width:0;flex:1}.acc-tx small{display:block;color:var(--mut);font-size:11.5px;overflow:hidden;text-overflow:ellipsis}
.acc-kpi .d.up{color:var(--ok)}.acc-kpi .d.dn{color:var(--red)}.acc-kpi.hero .d.up,.acc-kpi.hero .d.dn{color:#fff}
/* Cockpit */
.acc-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.acc-kpi{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:108px;color:var(--txt)}.acc-kpi:hover{text-decoration:none;box-shadow:0 2px 8px rgba(20,40,60,.12)}
.acc-kpi .l{font-size:12px;color:var(--mut);font-weight:700}.acc-kpi .v{font-size:25px;font-weight:800;margin:4px 0 2px;letter-spacing:-.01em}
.acc-kpi .d{font-size:11.5px;font-weight:700;max-width:calc(100% - 64px)}.acc-kpi .d.warn{color:#a66b00}.acc-kpi .acc-spark{position:absolute;right:10px;bottom:12px}
.acc-kpi.hero{background:var(--teal);color:#fff}.acc-kpi.hero .l,.acc-kpi.hero .d{color:#e4f6f4}.acc-kpi.hero .acc-ring{position:absolute;right:12px;bottom:12px}
.acc-week{display:grid;grid-template-columns:repeat(var(--n,5),minmax(0,1fr));border-top:1px solid var(--line);margin-top:8px}
.acc-day{border-left:1px solid #eef1f4;padding:0 4px 6px;min-height:150px;display:flex;flex-direction:column;gap:5px}.acc-day:first-child{border-left:0}
.acc-day .h{font-size:12px;font-weight:800;color:var(--mut);padding:7px 2px;border-bottom:1px solid var(--line);margin:0 -4px 2px;padding-left:6px}.acc-day.on .h{color:var(--teal)}
.acc-ev{display:block;border-radius:7px;padding:5px 7px;font-size:11px;line-height:1.3;color:#123}.acc-ev:hover{text-decoration:none;filter:brightness(.97)}
.acc-ev b{display:block;font-size:12px;margin-bottom:1px;overflow-wrap:anywhere}.acc-ev span{display:block;color:#3b4b5a;overflow-wrap:anywhere}
.acc-ev.t1{background:#dff3f1;border-left:3px solid var(--teal)}.acc-ev.t2{background:#e7f1fb;border-left:3px solid #2b8fd0}.acc-ev.t3{background:#efe9fe;border-left:3px solid var(--violet)}.acc-ev.t4{background:#fff4d6;border-left:3px solid #f59f2a}
.acc-free{color:#c3ccd5;font-size:12px;padding:4px}
ul.acc-todo,ul.acc-feed,ul.acc-tasks,ul.acc-alq{list-style:none;margin:4px 0 0;padding:0}
.acc-todo li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #eef1f4;font-size:13px}.acc-todo li:last-child{border-bottom:0}
.acc-dot{width:8px;height:8px;border-radius:50%;flex:none;background:#2b8fd0}.acc-dot.ko{background:var(--red)}.acc-dot.warn{background:#f59f2a}
.acc-cnt{font-weight:800;font-size:11.5px;border-radius:12px;padding:1px 8px;background:#eef2f6;flex:none}.acc-cnt.ko{background:#fde8e8;color:#c0392b}
.acc-sess{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid #eef1f4;align-items:center;color:var(--txt)}.acc-sess:last-child{border-bottom:0}.acc-sess:hover{text-decoration:none;background:#fafcfd}
.acc-sess .acc-tx b{display:block;font-size:13px}.acc-sess .acc-tx small.right{text-align:right}
.acc-date-b{width:46px;text-align:center;border-radius:9px;background:#f2f5f8;padding:5px 0;flex:none}.acc-date-b b{display:block;font-size:17px;line-height:1.1}.acc-date-b span{font-size:10px;text-transform:uppercase;color:var(--mut);font-weight:800}
.acc-crit{display:grid;grid-template-columns:18px minmax(0,1fr) 42px;gap:8px;align-items:center;font-size:12.5px;margin:6px 0}.acc-crit>b{text-align:right;font-size:12px}
.acc-feed li{border-bottom:1px solid #eef1f4}.acc-feed li:last-child{border-bottom:0}.acc-feed li{display:flex;gap:10px;padding:7px 0;font-size:12.5px;align-items:flex-start}
.acc-feed a{color:var(--txt);min-width:0;overflow-wrap:anywhere}.acc-feed small{display:block;color:var(--mut);font-size:11px}
.acc-av{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:#fff;flex:none;background:var(--teal)}
.acc-av.violet{background:var(--violet)}.acc-av.blue{background:#2b8fd0}.acc-av.orange{background:#f59f2a}.acc-av.red{background:var(--red)}
/* Ma journée */
.acc-hero{background:linear-gradient(135deg,#16857f,#1e9b8f);color:#fff;border-radius:var(--radius);padding:16px 18px}
.acc-hero-t{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.acc-hero h2{margin:0;font-size:19px;color:#fff}.acc-hero p{margin:3px 0 0;font-size:12.5px;color:#d8f1ee}
.acc-hero-k{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px;margin-top:14px}
.acc-hero-k a{background:rgba(255,255,255,.14);border-radius:9px;padding:9px 11px;color:#fff}.acc-hero-k a:hover{background:rgba(255,255,255,.22);text-decoration:none}
.acc-hero-k b{display:block;font-size:21px}.acc-hero-k span{font-size:11.5px;color:#e4f6f4}
.acc-tl{display:grid;gap:10px}.acc-tl-i{display:grid;grid-template-columns:64px 14px minmax(0,1fr);gap:10px;align-items:start}
.acc-tl-h{font-size:12.5px;font-weight:800;color:var(--mut);text-align:right;padding-top:14px}
.acc-tl-p{width:12px;height:12px;border-radius:50%;border:3px solid #2b8fd0;background:#fff;margin-top:16px}.acc-tl-p.on{border-color:var(--teal)}.acc-tl-p.done{border-color:#a9b5c1}.acc-tl-p.warn{border-color:#f59f2a}
.acc-tl-c{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.acc-tl-c.on{outline:2px solid var(--teal)}
.acc-tl-c .acc-tx b{font-size:13.5px;margin-right:6px}.acc-act{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}
.acc-ic{width:34px;height:34px;border-radius:9px;background:#e7f1fb;color:#1f6fb2;display:grid;place-items:center;flex:none}.acc-ic.w{background:#fff4d6;color:#a66b00}.acc-ic.r{background:#fde8e8;color:#c0392b}
.acc-ic .ic{width:16px;height:16px}
.acc-faces{display:flex;align-items:center;gap:0;margin-top:5px;flex-wrap:wrap}.acc-faces i{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:9.5px;font-weight:800;color:#fff;border:2px solid #fff;margin-left:-5px;background:var(--teal)}
.acc-faces i:first-child{margin-left:0}.acc-faces i.c1{background:#2b8fd0}.acc-faces i.c2{background:var(--violet)}.acc-faces i.c3{background:#f59f2a}.acc-faces i.c4{background:var(--pink)}.acc-faces i.m{background:#9aa7b4}
.acc-faces small{margin-left:8px;display:inline}
.acc-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 6px}.acc-tabs button{border:0;border-radius:16px;padding:5px 12px;background:#eef2f6;font:inherit;font-size:12px;font-weight:700;cursor:pointer;color:var(--txt)}
.acc-tabs button.on{background:var(--nav);color:#fff}
.acc-tasks li{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #eef1f4;font-size:13px}.acc-tasks li:last-child{border-bottom:0}.acc-tasks li[hidden]{display:none}
.acc-cal{width:100%;border-collapse:collapse;table-layout:fixed;text-align:center;font-size:12.5px}.acc-cal th{font-size:11px;color:var(--mut);font-weight:800;padding:4px 0}
.acc-cal td{padding:3px 0;height:34px;vertical-align:top}.acc-cal td span{display:inline-grid;place-items:center;width:28px;height:24px;border-radius:7px}
.acc-cal td.hors{color:#b9c3cc}.acc-cal td.auj span{background:var(--teal);color:#fff;font-weight:800}
.acc-cal em{display:flex;justify-content:center;gap:3px;height:6px}.acc-cal em i,.acc-leg i{display:inline-block;width:6px;height:6px;border-radius:50%}
i.f{background:#2b8fd0}i.e{background:#f59f2a}.acc-leg{font-size:11px;color:var(--mut);margin:6px 0 0;display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.acc-quick{display:grid;grid-template-columns:1fr 1fr;gap:8px}.acc-quick a{display:flex;align-items:center;gap:7px;background:#f2f6f9;border:1px solid var(--line);border-radius:8px;padding:8px 9px;font-size:12.5px;font-weight:700;color:var(--txt)}
.acc-quick a:hover{background:#e8eff5;text-decoration:none}
.acc-alq li{border-bottom:1px solid #eef1f4;padding:7px 0;font-size:12.5px}.acc-alq li:last-child{border-bottom:0}.acc-alq li,.acc-alq a{display:flex;gap:8px;align-items:flex-start;color:var(--txt)}.acc-alq a:hover{text-decoration:none}
.acc-meter{margin:8px 0;display:grid;grid-template-columns:1fr auto;gap:2px 8px;font-size:12.5px}.acc-meter .acc-bar{grid-column:1/-1}.acc-meter small{color:var(--mut);font-weight:400}
/* Pilotage */
.acc-dark{background:#1f3349;border-radius:var(--radius);padding:16px;display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:16px;color:#fff}
.acc-big{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start}.acc-big>div{background:rgba(255,255,255,.07);border-radius:9px;padding:12px 14px}
.acc-big .l{font-size:12px;color:#b8c7d6;display:block}.acc-big b{display:block;font-size:24px;margin:3px 0}.acc-big .d{font-size:11.5px;font-weight:700;color:#b8c7d6}
.acc-big .d.up{color:#5be08a}.acc-big .d.dn{color:#ff8a87}.acc-big .d.warn{color:var(--yellow)}
.acc-graph{min-width:0}.acc-gh{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13px;margin-bottom:6px}.acc-gh span{font-size:11px;color:#b8c7d6;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.acc-gh i{display:inline-block;width:10px;height:10px;border-radius:2px}.acc-gh i.c{background:#3fd0c4}.acc-gh i.h{background:#f7c325;height:3px}.acc-gh i.p{background:rgba(63,208,196,.28)}
.acc-chart{width:100%;height:210px;display:block}
.acc-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:14px}.acc-strip a{display:flex;align-items:center;gap:10px;color:var(--txt);font-size:12.5px}.acc-strip a:hover{text-decoration:none;box-shadow:0 2px 8px rgba(20,40,60,.12)}
.acc-strip b{font-size:19px}
.acc-fun{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px;align-items:center;font-size:12.5px;margin:6px 0}
.acc-fun-b i{display:block;border-radius:6px;color:#fff;font-style:normal;font-weight:800;font-size:12px;padding:5px 9px;text-align:center;min-width:34px}
.acc-sat{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 46px;gap:8px;align-items:center;font-size:12.5px;margin:7px 0}.acc-sat>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acc-sat .acc-bar{margin:0}.acc-sat b{text-align:right}
.acc-qual{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.acc-qual>div{display:flex;flex-direction:column;gap:5px;align-items:flex-start}.acc-score{font-size:28px}
.acc-radar{flex:none;max-width:100%}
.acc-don{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.acc-don ul{list-style:none;margin:0;padding:0;font-size:12.5px}.acc-don li{margin:5px 0;display:flex;align-items:center;gap:7px}.acc-don li i{width:10px;height:10px;border-radius:2px;display:inline-block}
.acc-heat{display:grid;grid-template-columns:minmax(0,74px) repeat(var(--n,12),minmax(0,1fr));gap:4px;align-items:center;font-size:10.5px}
.acc-heat .m{text-align:center;color:var(--mut);font-weight:800}.acc-heat .f{color:var(--mut);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acc-heat i,.acc-leg i.h1,.acc-leg i.h2,.acc-leg i.h3,.acc-leg i.h4{display:block;height:20px;border-radius:4px;background:#eef1f4}.acc-leg i.h1,.acc-leg i.h2,.acc-leg i.h3,.acc-leg i.h4{display:inline-block;width:16px;height:10px}
.acc-heat i.h1,.acc-leg i.h1{background:#cdeeea}.acc-heat i.h2,.acc-leg i.h2{background:#8fd6cd}.acc-heat i.h3,.acc-leg i.h3{background:#3fb3a6}.acc-heat i.h4,.acc-leg i.h4{background:#16857f}
table.acc-cli th.right{text-align:right}table.acc-cli th{background:transparent;color:var(--mut);font-size:11px;text-transform:uppercase;border-bottom:1px solid var(--line)}table.acc-cli td{padding:7px 8px}table.acc-cli td.right,table.acc-cli th.right{white-space:nowrap}
/* Mes paramètres : choix du tableau de bord */
.acc-choix{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.acc-opt{display:flex;flex-direction:column;gap:4px;border:2px solid var(--line);border-radius:10px;padding:10px;cursor:pointer;margin:0;font-size:12px;color:var(--mut)}
.acc-opt b{color:var(--txt);font-size:13.5px}.acc-opt input{position:absolute;opacity:0;pointer-events:none}.acc-opt.on,.acc-opt:has(input:checked){border-color:var(--teal);background:#f1faf9}
.acc-opt:has(input:focus-visible){outline:2px solid var(--nav);outline-offset:2px}
.acc-mini{display:grid;gap:3px;height:56px;border-radius:6px;background:#eef1f4;padding:5px;margin-bottom:4px}.acc-mini i{background:#fff;border-radius:3px}
.acc-mini.m-cockpit{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr 2fr}.acc-mini.m-cockpit i:nth-child(4){grid-column:1/-1}
.acc-mini.m-journee{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr 1fr}.acc-mini.m-journee i:first-child{background:#16857f}.acc-mini.m-journee i:nth-child(2){grid-row:1/4;grid-column:2}
.acc-mini.m-pilotage{grid-template-columns:repeat(3,1fr);grid-template-rows:1.4fr 1fr}.acc-mini.m-pilotage i:first-child{grid-column:1/-1;background:#1f3349}
.acc-mini.m-classique{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}.acc-mini.m-classique i:first-child{grid-row:1/3}
@media(max-width:1300px){.acc-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.acc-dark{grid-template-columns:1fr}}
@media(max-width:1100px){.acc-r21,.acc-r21j{grid-template-columns:minmax(0,1fr)}.acc-r3{grid-template-columns:repeat(2,minmax(0,1fr))}.acc-choix{grid-template-columns:repeat(2,minmax(0,1fr))}
 .acc-r21j>aside{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.acc-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.acc-r3,.acc-r21j>aside,.acc-choix{grid-template-columns:minmax(0,1fr)}
 .acc-ttl h1{font-size:18px}.acc-kpi .v{font-size:21px}.acc-kpi .acc-spark,.acc-kpi.hero .acc-ring{display:none}.acc-kpi .d{max-width:none}
 .acc-week{grid-template-columns:minmax(0,1fr)}.acc-day{border-left:0;min-height:0;border-bottom:1px solid #eef1f4}
 .acc-tl-i{grid-template-columns:minmax(0,1fr)}.acc-tl-h{text-align:left;padding:0}.acc-tl-p{display:none}.acc-act{margin-left:0}
 .acc-big{grid-template-columns:1fr 1fr}.acc-big b{font-size:19px}.acc-chart{height:170px}.acc-seg a{padding:5px 8px}
 .acc-heat{grid-template-columns:minmax(0,52px) repeat(var(--n,12),minmax(0,1fr));gap:2px}.acc-fun{grid-template-columns:90px minmax(0,1fr)}
 .acc-day:has(.acc-free){display:none}.acc-tl-c .acc-tx{flex-basis:calc(100% - 46px)}.acc-act{width:100%;justify-content:flex-end}
 .acc-tasks li{flex-wrap:wrap}.acc-tasks .acc-tx{flex-basis:calc(100% - 46px)}.acc-tasks .acc-tag{margin-left:44px}.acc-tasks .btn{margin-left:auto}}
/* v2.15.0 — contremarque reçue : avis à l'écran */
dialog.cm-avis{width:min(620px,calc(100% - 24px))}
dialog.cm-avis .hd{background:#0e7c4a}
dialog.cm-avis .cm-avis-b{padding:14px 16px 4px;max-height:60vh;overflow:auto;font-size:14px;line-height:1.45}
dialog.cm-avis .cm-avis-c{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:0 0 10px;background:var(--bg2,#f7f9fc)}
dialog.cm-avis .cm-avis-c ul{margin:6px 0 8px 18px;padding:0}
dialog.cm-avis .cm-avis-c form{margin:0;padding:0}
dialog.cm-avis .cm-avis-ok{color:#0e7c4a;font-weight:600}
dialog.cm-avis .cm-avis-ko{color:#b4271a}
dialog.cm-avis .cf-bar{padding:0 16px 14px}
/* v2.15.0 — bouton « Enregistrer » des pièces toujours visible (barre collée au bas de l'écran) */
.doc-savebar{position:sticky;bottom:0;z-index:30;margin:12px 0 0;padding:10px 14px;background:var(--card,#fff);border:1px solid var(--line);border-radius:10px;box-shadow:0 -6px 18px rgba(0,30,80,.10);display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.doc-savebar .doc-dirty{color:#b45309;font-weight:600}
.doc-savebar .doc-dirty::before{content:"● ";color:#d97706}
.doc-savebar .doc-dirty:not([hidden]) ~ .doc-kbd{display:inline}
.doc-savebar .doc-kbd{margin-left:auto;display:none}
.doc-savebar .doc-saved{font-size:13px}
.doc-savebar.is-dirty{border-color:#f59e0b;background:#fffbeb}
.doc-savebar.is-dirty .doc-saved{display:none}
html[data-theme="dark"] .doc-savebar{background:#151c2b}
html[data-theme="dark"] .doc-savebar.is-dirty{background:#3a2a06}
html[data-theme="dark"] dialog.cm-avis .cm-avis-c{background:#1a2234}
.stk .stk-aff{color:#b4271a}
.stk-ctl{white-space:normal}
/* v2.23.0 — affaires et circuits de validation */
.nav-badge{margin-left:auto;background:var(--red);color:#fff;border-radius:9px;font-size:11px;font-weight:600;min-width:18px;height:18px;line-height:18px;padding:0 5px;text-align:center}
td.neg,span.neg,b.neg,.neg{color:#b42318}td.pos,span.pos,b.pos,.pos{color:#15803d}
.rep-row{display:flex;gap:6px;align-items:center;margin:2px 0}.rep-row select{flex:1;min-width:140px}.rep-row input{width:80px;text-align:right}
.rep-tot{font-weight:600}.rep-tot.ko{color:#b42318}.rep-t td{vertical-align:top}.rep-v{width:80px;text-align:right}
input.plaf{width:96px;text-align:right}
.circ-mx td.center{min-width:150px}.circ-mx td .ck{display:inline-flex;vertical-align:middle;margin-right:4px}.circ-mx td .ck input{width:auto;margin:0}.circ-mx td input.plaf{width:104px!important;display:inline-block;vertical-align:middle;padding:4px 6px;font-size:12px}
.circ-mx th{font-size:12px;font-weight:600;text-align:center;white-space:nowrap}.circ-mx td{text-align:center;white-space:nowrap}.circ-mx td:first-child{text-align:left}
.circ-mx .ck{display:inline-flex;gap:4px;align-items:center}
.aff-masque{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:16px;letter-spacing:.06em;background:#f6f9fb;border:1px dashed var(--line);border-radius:6px;padding:6px 10px;display:inline-block}
.tab-r td,.tab-r th{text-align:right}.tab-r td:first-child,.tab-r th:first-child{text-align:left}
.gauge.sm{height:6px}
.ap-hist{font-size:12px}.ap-hist li{margin:2px 0}.ap-note{font-size:12px;color:var(--mut)}
div.aff-etapes{display:flex;flex-wrap:wrap;gap:6px}.seg-t td{vertical-align:middle}.seg-vals{width:100%;min-height:48px}
html[data-theme=dark] .aff-masque{background:#141b26}
/* v2.36.0 — structure de l'offre (console > Offres & tarifs, Mon abonnement) */
.of-scroll{overflow-x:auto}
.of-mx td.c,.of-mx th.c{text-align:center;white-space:nowrap}.of-mx th.c a{color:inherit;text-decoration:none;font-size:13px;text-transform:none;letter-spacing:0}
.of-mx tr.of-g td{background:#f0f4f8;font-weight:700;color:#1f3349;text-transform:uppercase;font-size:11.5px;letter-spacing:.03em}
.of-mx td.of-y{color:#15803d;font-weight:700}.of-mx td.of-o{color:#a16207;font-style:normal}.of-mx td.of-n{color:var(--mut)}
.of-h{font-size:14px;margin:14px 0 6px;color:#1f3349}
.of-socle{margin:0 0 6px;padding-left:18px;font-size:13px}.of-socle li{margin:2px 0}
.of-mods{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:10px}
.of-grp{border:1px solid var(--line);border-radius:8px;padding:6px 10px 8px;margin:0}.of-grp legend{padding:0 4px;font-weight:700}
.of-mod{display:flex;gap:8px;align-items:flex-start;padding:5px 0;border-top:1px dashed var(--line);cursor:pointer}.of-mod:first-of-type{border-top:0}
.of-mod input{margin-top:3px}.of-mod span{display:flex;flex-direction:column;gap:1px}.of-mod small{color:var(--mut);font-size:12px;line-height:1.35}
.of-mod small.of-req,small.of-req{color:#9a3412}.of-mod small.of-opt{color:#a16207}
.of-tree{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px 16px;margin:6px 0}.of-tree h4{margin:4px 0 2px;font-size:12.5px;color:#1f3349}
.of-tree ul{margin:0;padding-left:16px;font-size:12.5px}.of-tree li.off{color:var(--mut);text-decoration:line-through}
