/* ══════════════════════════════════════════════════════════════════════
   EXPÉRIA PARK — SYSTÈME DE DESIGN
   Dérivé du CSS des maquettes validées. Les déclarations en viennent
   telles quelles ; seuls les noms de classes sont traduits vers ceux que
   l'application émet. Modifier une valeur ici, c'est modifier la maquette.
   ══════════════════════════════════════════════════════════════════════ */

:root {
  --ep-rail-fond: #3A2418;
  --ep-encre: #2B1D14;
  --ep-corail: #E96646;
  --ep-corail-fonce: #CF5039;
  --ep-corail-voile: #FDEEE9;
  --ep-sable: #FFEDC4;
  --ep-sable-voile: #FDF6E7;
  --ep-dore: #F2D49C;
  --ep-canvas: #F7F6F4;
  --ep-surface: #FFF;
  --ep-surface-2: #FBFAF8;
  --ep-ligne: #E7E3DC;
  --ep-ligne-forte: #D8D2C8;
  --ep-texte: #2B1D14;
  --ep-texte-2: #6B5B4D;
  --ep-texte-3: #968678;
  --ep-ok: #3F7A34;
  --ep-ok-voile: #EDF6EA;
  --ep-ok-bord: #C4DCBB;
  --ep-attn: #B47512;
  --ep-attn-voile: #FEF6E7;
  --ep-attn-bord: #EBD49A;
  --ep-alerte: #C0392B;
  --ep-alerte-voile: #FDEDEB;
  --ep-alerte-bord: #EFC0B9;
  --ep-info: #41598F;
  --ep-info-voile: #EDF1F9;
  --ep-info-bord: #BFD3EC;
  --ep-violet: #6A4A9E;
  --ep-violet-voile: #F3EFFA;
  --ep-violet-bord: #D6C9EC;
  --ep-st-nouveau: #41598F;
  --ep-st-nouveau-v: #EDF1F9;
  --ep-st-cours: #B47512;
  --ep-st-cours-v: #FEF6E7;
  --ep-st-attente: #6A4A9E;
  --ep-st-attente-v: #F3EFFA;
  --ep-st-resolu: #3F7A34;
  --ep-st-resolu-v: #EDF6EA;
  --ep-st-clos: #8B857D;
  --ep-st-clos-v: #F3F2F0;
  --ep-cat-resto: #C9752B;
  --ep-cat-billet: #41598F;
  --ep-cat-resa: #6A4A9E;
  --ep-cat-accueil: #2E7D6B;
  --ep-cat-secu: #C0392B;
  --ep-cat-prop: #3F7A34;
  --ep-cat-info: #8B857D;
  --ep-r-1: 6px;
  --ep-r-2: 10px;
  --ep-r-3: 999px;
  --ep-om-1: 0 1px 2px rgba(43,29,20,.06);
  --ep-om-2: 0 4px 16px rgba(43,29,20,.08);
  --ep-om-3: 0 16px 48px rgba(43,29,20,.16);
  --ep-f-ui: 'Figtree',system-ui,sans-serif;
  --ep-f-titre: 'Raleway',sans-serif;
  --ep-f-data: 'IBM Plex Mono',monospace;
  --ep-f-marque: 'Londrina Solid',serif;
}

/* ─── Coquille et composants ─── */

* {box-sizing:border-box;margin:0;padding:0 }
body {font-family:var(--ep-f-ui);font-size:14px;line-height:1.45;color:var(--ep-texte);background:var(--ep-canvas);
  -webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;height:100vh;overflow:hidden }
button,input,select,textarea {font:inherit;color:inherit }
button {cursor:pointer;background:none;border:0 }
a {color:inherit;text-decoration:none }
.ic {width:18px;height:18px;flex:0 0 auto;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round }
.ic-s {width:15px;height:15px }
.ic-xs {width:13px;height:13px }
.ep-data {font-family:var(--ep-f-data);font-size:.88em;letter-spacing:-.01em }
.ep-faible {color:var(--ep-texte-3) }
:focus-visible {outline:2px solid var(--ep-corail);outline-offset:2px;border-radius:4px }
.ep-app {display:grid;grid-template-columns:238px 1fr;height:100vh;overflow:hidden }
/* RAIL */
.ep-rail {background:var(--ep-rail-fond);color:var(--ep-sable);display:flex;flex-direction:column;overflow:hidden }
.ep-rail__marque {padding:18px 18px 14px;display:flex;align-items:center;gap:10px }
.ep-rail__logo {width:30px;height:30px;border-radius:8px;background:var(--ep-corail);display:grid;place-items:center;flex:0 0 auto }
.ep-rail__logo svg {width:18px;height:18px;stroke:#fff;stroke-width:2;fill:none }
.ep-rail__nom {font-family:var(--ep-f-marque);font-size:19px;line-height:1;color:#fff }
.ep-rail__nom span {display:block;font-family:var(--ep-f-ui);font-size:9.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,237,196,.5);margin-top:3px }
.ep-rail__parc {margin:2px 12px 12px;padding:7px 10px 8px;border-radius:var(--ep-r-1);background:rgba(255,255,255,.06);display:grid;gap:2px;width:calc(100% - 24px);text-align:left }
.ep-rail__parc b {font-size:9.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,237,196,.45) }
.ep-rail__parc i {font-style:normal;font-size:13px;font-weight:600;color:#fff }
.ep-rail__cmd {margin:0 12px 14px;padding:8px 10px;width:calc(100% - 24px);border-radius:var(--ep-r-1);border:1px solid rgba(255,255,255,.13);display:flex;align-items:center;gap:8px;color:rgba(255,237,196,.6);font-size:13px }
.ep-rail__cmd:hover {border-color:rgba(255,255,255,.3);color:#fff }
.ep-rail__cmd kbd {margin-left:auto;font-family:var(--ep-f-data);font-size:10px;padding:2px 5px;border-radius:4px;background:rgba(0,0,0,.25) }
.ep-rail__nav {flex:1;overflow-y:auto;padding:0 12px }
.ep-rail__nav a {display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:var(--ep-r-1);color:rgba(255,237,196,.72);font-size:13.5px;font-weight:500;margin-bottom:2px }
.ep-rail__nav a:hover {background:rgba(255,255,255,.07);color:#fff }
.ep-rail__nav a.on {background:var(--ep-corail);color:#fff;font-weight:600 }
.ep-rail__nav .ep-pastille {margin-left:auto;font-family:var(--ep-f-data);font-size:10.5px;padding:1px 6px;border-radius:var(--ep-r-3);background:rgba(0,0,0,.22) }
.ep-rail__nav .ep-pastille.ep-n--chaud {background:var(--ep-corail);color:#fff }
.ep-rail__nav a.on .ep-pastille {background:rgba(255,255,255,.22) }
.ep-rail__sep {height:1px;background:rgba(255,255,255,.09);margin:12px 10px }
.ep-rail__moi {padding:12px;border-top:1px solid rgba(255,255,255,.09);display:flex;align-items:center;gap:10px }
.ep-rail__moi b {display:block;font-size:13px;color:#fff;font-weight:600 }
.ep-rail__moi i {font-style:normal;font-size:11px;color:rgba(255,237,196,.45) }
/* AVATARS */
.ep-av {border-radius:var(--ep-r-3);display:grid;place-items:center;font-weight:700;flex:0 0 auto;width:32px;height:32px;font-size:12px;color:#fff;border:0;padding:0;background-clip:padding-box }
.ep-av--sm {width:24px;height:24px;font-size:9.5px }
.ep-av--lg {width:46px;height:46px;font-size:16px }
.ep-av--xs {width:20px;height:20px;font-size:8.5px }
.ep-av-1 {background:#C9752B }
.ep-av-2 {background:#41598F }
.ep-av-3 {background:#6A4A9E }
.ep-av-4 {background:#2E7D6B }
.ep-av-5 {background:#C0392B }
.ep-av-6 {background:#3F7A34 }
.ep-av-7 {background:#8B6F47 }
.ep-av--vide {background:var(--ep-attn-voile);color:var(--ep-attn);border:1px dashed var(--ep-attn-bord) }
/* ZONE */
.ep-zone {display:flex;flex-direction:column;overflow:hidden;min-width:0 }
.ep-entete {background:var(--ep-surface);border-bottom:1px solid var(--ep-ligne);padding:13px 22px;display:flex;align-items:center;gap:14px;flex:0 0 auto }
.ep-entete h1 {font-family:var(--ep-f-titre);font-size:19px;font-weight:700;letter-spacing:-.01em }
.ep-entete .ep-entete__sous {font-size:12.5px;color:var(--ep-texte-3);margin-top:1px }
.ep-entete .ep-entete__actions {margin-left:auto;display:flex;gap:8px;align-items:center }
.ep-b {display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 12px;border-radius:var(--ep-r-1);font-size:13px;font-weight:600;border:1px solid var(--ep-ligne-forte);background:var(--ep-surface);white-space:nowrap }
.ep-b:hover {background:var(--ep-surface-2);border-color:var(--ep-texte-3) }
.ep-b--1 {background:var(--ep-corail);border-color:var(--ep-corail);color:#fff }
.ep-b--1:hover {background:var(--ep-corail-fonce);border-color:var(--ep-corail-fonce) }
.ep-b--ok {background:var(--ep-ok);border-color:var(--ep-ok);color:#fff }
.ep-b--ok:hover {background:#356428;border-color:#356428 }
.ep-b--fantome {border-color:transparent;background:transparent;color:var(--ep-texte-2) }
.ep-b--fantome:hover {background:var(--ep-surface-2);border-color:var(--ep-ligne) }
.ep-b--sm {padding:5px 9px;font-size:12.5px }
.ep-b--ic {padding:7px }
.ep-b--ic.ep-b--sm {padding:5px }
.ep-filtres {background:var(--ep-surface);border-bottom:1px solid var(--ep-ligne);padding:9px 22px;display:flex;align-items:center;gap:8px;flex:0 0 auto;flex-wrap:wrap }
.ep-cherche {position:relative;flex:1;max-width:320px;min-width:170px }
.ep-cherche svg {position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--ep-texte-3) }
.ep-cherche input {width:100%;padding:7px 12px 7px 32px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);background:var(--ep-surface-2);font-size:13px }
.ep-cherche input:focus {outline:none;border-color:var(--ep-corail);background:#fff;box-shadow:0 0 0 3px var(--ep-corail-voile) }
.ep-puce {display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);font-size:12.5px;font-weight:500;color:var(--ep-texte-2);background:var(--ep-surface);white-space:nowrap }
.ep-puce:hover {border-color:var(--ep-texte-3);color:var(--ep-texte) }
.ep-puce.on {background:var(--ep-sable-voile);border-color:var(--ep-dore);color:var(--ep-encre);font-weight:600 }
.ep-corps {flex:1;display:grid;grid-template-columns:196px 1fr;overflow:hidden;min-height:0 }
.ep-segments {border-right:1px solid var(--ep-ligne);background:var(--ep-surface);overflow-y:auto;padding:13px 10px }
.ep-segments__t {font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ep-texte-3);padding:0 8px 7px }
.ep-segments a {display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--ep-r-1);font-size:13px;color:var(--ep-texte-2);margin-bottom:1px }
.ep-segments a:hover {background:var(--ep-surface-2);color:var(--ep-texte) }
.ep-segments a.on {background:var(--ep-sable-voile);color:var(--ep-encre);font-weight:600 }
.ep-segments a .ep-n {margin-left:auto;font-family:var(--ep-f-data);font-size:11px;color:var(--ep-texte-3) }
.ep-segments a.on .ep-n {color:var(--ep-corail-fonce) }
.ep-segments__sep {height:1px;background:var(--ep-ligne);margin:12px 8px }
.ep-contenu {overflow:auto;min-width:0 }
.ep-contenu--pad {padding:18px 22px }
/* PASTILLES */
.ep-pt {width:7px;height:7px;border-radius:var(--ep-r-3);display:inline-block;flex:0 0 auto }
.ep-et {display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--ep-r-3);font-size:11px;font-weight:600;white-space:nowrap;border:1px solid transparent }
.ep-et--nouveau {background:var(--ep-st-nouveau-v);color:var(--ep-st-nouveau);border-color:#CBD8EC }
.ep-et--cours {background:var(--ep-st-cours-v);color:var(--ep-st-cours);border-color:var(--ep-attn-bord) }
.ep-et--attente {background:var(--ep-st-attente-v);color:var(--ep-st-attente);border-color:var(--ep-violet-bord) }
.ep-et--resolu {background:var(--ep-st-resolu-v);color:var(--ep-st-resolu);border-color:var(--ep-ok-bord) }
.ep-et--clos {background:var(--ep-st-clos-v);color:var(--ep-st-clos);border-color:#E2E0DC }
.ep-et--ok {background:var(--ep-ok-voile);color:var(--ep-ok);border-color:var(--ep-ok-bord) }
.ep-et--attn {background:var(--ep-attn-voile);color:var(--ep-attn);border-color:var(--ep-attn-bord) }
.ep-et--alerte {background:var(--ep-alerte-voile);color:var(--ep-alerte);border-color:var(--ep-alerte-bord) }
.ep-et--info {background:var(--ep-info-voile);color:var(--ep-info);border-color:var(--ep-info-bord) }
.ep-et--violet {background:var(--ep-violet-voile);color:var(--ep-violet);border-color:var(--ep-violet-bord) }
.ep-et--n {background:var(--ep-canvas);color:var(--ep-texte-2);border-color:var(--ep-ligne) }
.ep-et .ep-pt {width:6px;height:6px;background:currentColor }
.ep-prio {display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;white-space:nowrap }
.ep-prio__b {display:flex;gap:2px;align-items:flex-end;height:13px }
.ep-prio__b i {width:3.5px;background:var(--ep-ligne-forte);border-radius:1px;display:block }
.ep-prio__b i:nth-child(1) {height:5px }
.ep-prio__b i:nth-child(2) {height:9px }
.ep-prio__b i:nth-child(3) {height:13px }
.ep-prio--urgente {color:var(--ep-alerte) }
.ep-prio--urgente i {background:var(--ep-alerte) }
.ep-prio--haute {color:#C9752B }
.ep-prio--haute i:nth-child(-n+2) {background:#C9752B }
.ep-prio--normale {color:var(--ep-info) }
.ep-prio--normale i:nth-child(1) {background:var(--ep-info) }
.ep-prio--faible {color:var(--ep-texte-3) }
.ep-cat {display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--ep-texte-2);white-space:nowrap }
.ep-cat i {width:8px;height:8px;border-radius:2px;display:block;flex:0 0 auto }
.ep-cat--resto i {background:var(--ep-cat-resto) }
.ep-cat--billet i {background:var(--ep-cat-billet) }
.ep-cat--resa i {background:var(--ep-cat-resa) }
.ep-cat--accueil i {background:var(--ep-cat-accueil) }
.ep-cat--secu i {background:var(--ep-cat-secu) }
.ep-cat--prop i {background:var(--ep-cat-prop) }
.ep-cat--info i {background:var(--ep-cat-info) }
.ep-sla {display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;white-space:nowrap }
.ep-sla__b {width:46px;height:5px;border-radius:var(--ep-r-3);background:var(--ep-ligne);overflow:hidden;flex:0 0 auto }
.ep-sla__b i {display:block;height:100%;border-radius:var(--ep-r-3) }
/* TABLEAU */
.ep-tbl {width:100%;border-collapse:separate;border-spacing:0;background:var(--ep-surface) }
.ep-tbl thead th {position:sticky;top:0;z-index:2;background:var(--ep-surface-2);border-bottom:1px solid var(--ep-ligne-forte);padding:9px 13px;text-align:left;font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ep-texte-3);white-space:nowrap }
.ep-tbl td {padding:10px 13px;border-bottom:1px solid var(--ep-ligne);vertical-align:middle }
.ep-tbl tbody tr {cursor:pointer }
.ep-tbl tbody tr:hover {background:var(--ep-sable-voile) }
.ep-tbl tbody tr td:first-child {border-left:3px solid transparent }
tr[data-st=nouveau] td:first-child {border-left-color:var(--ep-st-nouveau) }
tr[data-st=en_cours] td:first-child {border-left-color:var(--ep-st-cours) }
tr[data-st=en_attente] td:first-child {border-left-color:var(--ep-st-attente) }
tr[data-st=resolu] td:first-child {border-left-color:var(--ep-st-resolu) }
tr.ep-neuf .ep-cli__n {font-weight:700 }
tr.ep-neuf .ep-cli__n::after {content:"";width:6px;height:6px;border-radius:var(--ep-r-3);background:var(--ep-corail);display:inline-block;margin-left:6px;vertical-align:middle }
.ep-tbl .ep-cc {width:34px;padding-right:0 }
input[type=checkbox] {width:15px;height:15px;accent-color:var(--ep-corail);cursor:pointer }
.ep-cli__n {font-weight:600;font-size:13.5px }
.ep-cli__s {font-size:11.5px;color:var(--ep-texte-3) }
/* v5.48.1 — Le nom et le sous-texte ne se replient pas : une ligne chacun,
   points de suspension au-delà. Les colonnes courtes (chips, compteurs) se
   serrent à leur contenu, la place restante va au Client et au Contact. */
.ep-tbl .ep-cli__n, .ep-tbl .ep-cli__s { display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.ep-tbl th.ep-serre, .ep-tbl td.ep-serre { width:1%; white-space:nowrap }
.ep-tbl td.ep-dr, .ep-tbl th.ep-dr { width:1% }
/* v5.53 — Les min-width fixes forçaient le tableau à 1363 px : il débordait
   de 517 px sur un 13 pouces. En largeur automatique, un pourcentage ne
   contraint rien — le tableau des clients passe donc en largeur fixe, où
   les colonnes tiennent leur part et le texte trop long s'abrège. */
.ep-tbl--clients { table-layout:fixed }
.ep-tbl--clients th:nth-child(1) { width:38px }
.ep-tbl--clients th:nth-child(2) { width:28% }
.ep-tbl--clients th:nth-child(3) { width:27% }
.ep-tbl--clients th:nth-child(4) { width:15% }
.ep-tbl--clients th:nth-child(5) { width:11% }
.ep-tbl--clients th:nth-child(6) { width:11% }
.ep-tbl--clients th:nth-child(7) { width:12% }
.ep-tbl--clients td { overflow:hidden }
.ep-tbl--clients td .ep-et { max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; display:inline-block }
.ep-tbl--clients .ep-cli__mail { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
@media (max-width:1500px) { .ep-tbl td, .ep-tbl thead th { padding-left:10px; padding-right:10px } }
/* Sous 1150 px, le code postal et l'établissement passent à la trappe :
   mieux vaut lire un nom entier que six colonnes tronquées. */
@media (max-width:1150px) {
  .ep-tbl--clients th:nth-child(7), .ep-tbl--clients td:nth-child(7) { display:none }
  .ep-tbl--clients th:nth-child(2) { width:34% } .ep-tbl--clients th:nth-child(3) { width:32% }
}
@media (max-width:940px) {
  .ep-tbl--clients th:nth-child(4), .ep-tbl--clients td:nth-child(4) { display:none }
  .ep-tbl--clients th:nth-child(2) { width:40% } .ep-tbl--clients th:nth-child(3) { width:38% }
}
/* En cartes (sous 700 px), toutes les colonnes reviennent : plus de grille
   à tenir, donc plus rien à masquer. */
@media (max-width:700px) {
  .ep-tbl--clients { table-layout:auto }
  .ep-tbl--clients td:nth-child(4), .ep-tbl--clients td:nth-child(7) { display:inline-flex }
}
.ep-motif {max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--ep-texte-2) }
.ep-reg-pied {padding:11px 18px;display:flex;align-items:center;gap:12px;color:var(--ep-texte-3);font-size:12.5px;border-top:1px solid var(--ep-ligne);background:var(--ep-surface);position:sticky;bottom:0 }
/* CARTES */
.ep-grille {display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px }
.ep-c3 {grid-column:span 3 }
.ep-c4 {grid-column:span 4 }
.ep-c5 {grid-column:span 5 }
.ep-c6 {grid-column:span 6 }
.ep-c7 {grid-column:span 7 }
.ep-c8 {grid-column:span 8 }
.ep-c12 {grid-column:span 12 }
.ep-carte {background:var(--ep-surface);border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);box-shadow:var(--ep-om-1) }
.ep-carte__tete {padding:12px 15px;border-bottom:1px solid var(--ep-ligne);display:flex;align-items:center;justify-content:space-between;gap:10px }
.ep-carte__tete h3 {font-family:var(--ep-f-titre);font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px }
.ep-carte__corps {padding:15px }
.ep-kpi {border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);padding:13px 15px;background:var(--ep-surface);display:grid;gap:3px;box-shadow:var(--ep-om-1);position:relative;overflow:hidden }
.ep-kpi::before {content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ep-ligne-forte) }
.ep-kpi b {font-family:var(--ep-f-data);font-size:26px;font-weight:500;letter-spacing:-.02em;line-height:1.05 }
.ep-kpi span {font-size:11px;color:var(--ep-texte-3);font-weight:600;text-transform:uppercase;letter-spacing:.05em }
.ep-kpi i {font-style:normal;font-size:11.5px;color:var(--ep-texte-3) }
.ep-kpi--neutre::before {background:var(--ep-corail) }
.ep-kpi--neutre b {color:var(--ep-corail-fonce) }
.ep-kpi--danger::before {background:var(--ep-alerte) }
.ep-kpi--danger b {color:var(--ep-alerte) }
.ep-kpi--danger {background:var(--ep-alerte-voile);border-color:var(--ep-alerte-bord) }
.ep-kpi--warning::before {background:var(--ep-attn) }
.ep-kpi--warning b {color:var(--ep-attn) }
.ep-kpi--warning {background:var(--ep-attn-voile);border-color:var(--ep-attn-bord) }
.ep-kpi--success::before {background:var(--ep-ok) }
.ep-kpi--success b {color:var(--ep-ok) }
.ep-kpi--info::before {background:var(--ep-info) }
.ep-kpi--info b {color:var(--ep-info) }
.ep-hausse {color:var(--ep-ok);font-weight:600 }
.ep-baisse {color:var(--ep-alerte);font-weight:600 }
.ep-ligne-item {display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--ep-ligne);font-size:13px }
.ep-ligne-item:last-child {border-bottom:0 }
.ep-ligne-item__t {flex:1;min-width:0 }
.ep-ligne-item__t strong {display:block;font-weight:600;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis }
.ep-ligne-item__t small {color:var(--ep-texte-3);font-size:11.5px }
.ep-jauge {height:7px;background:var(--ep-ligne);border-radius:var(--ep-r-3);overflow:hidden;margin:5px 0 3px;display:flex }
.ep-jauge i {display:block;height:100% }
.ep-legende {display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;font-size:11.5px;color:var(--ep-texte-2) }
.ep-legende span {display:inline-flex;align-items:center;gap:5px }
.ep-legende i {width:9px;height:9px;border-radius:2px;display:block }
/* ══════════ FICHE : menu vertical + zone pleine largeur ══════════ */
.ep-dossier {display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0 }
/* Bandeau de contexte, toujours visible */
.ep-ctx {background:var(--ep-surface);border-bottom:1px solid var(--ep-ligne);flex:0 0 auto }
.ep-ctx__h {padding:13px 22px 11px;display:flex;align-items:center;gap:14px }
.ep-ctx__h h2 {font-family:var(--ep-f-titre);font-size:19px;font-weight:700;letter-spacing:-.01em }
.ep-ctx__act {margin-left:auto;display:flex;gap:8px;align-items:center }
.ep-ctx__p {display:flex;align-items:flex-end;gap:12px;padding:0 22px 12px;flex-wrap:wrap }
.ep-champ {display:grid;gap:3px }
.ep-champ>span {font-size:9.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ep-texte-3) }
.ep-champ select,.ep-champ input {height:32px;padding:5px 9px;font-size:12.5px;border:1px solid var(--ep-ligne-forte);
  border-radius:var(--ep-r-1);background:var(--ep-surface);min-width:120px }
.ep-champ select:focus,.ep-champ input:focus {outline:none;border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile) }
.ep-champ--st select {border-left:4px solid var(--ep-st-cours);font-weight:600 }
.ep-ctx__sla {margin-left:auto;display:flex;align-items:center;gap:11px;padding:8px 13px;border-radius:var(--ep-r-2);
  background:var(--ep-alerte-voile);border:1px solid var(--ep-alerte-bord) }
.ep-ctx__sla b {font-family:var(--ep-f-data);font-size:16px;color:var(--ep-alerte) }
.ep-ctx__sla span {font-size:11px;font-weight:600;color:var(--ep-alerte);text-transform:uppercase;letter-spacing:.05em }
.ep-ctx__sla small {display:block;font-size:11px;color:#94271C;font-weight:400;text-transform:none;letter-spacing:0 }
/* Menu vertical du dossier */
.ep-dcorps {flex:1;display:grid;grid-template-columns:216px 1fr;overflow:hidden;min-height:0 }
.ep-dmenu {border-right:1px solid var(--ep-ligne);background:var(--ep-surface);overflow-y:auto;padding:12px 10px }
.ep-dmenu__t {font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ep-texte-3);padding:12px 8px 6px }
.ep-dmenu__t:first-child {padding-top:0 }
.ep-dmenu button {width:100%;display:flex;align-items:center;gap:10px;padding:8px 9px;border-radius:var(--ep-r-1);
  font-size:13px;font-weight:500;color:var(--ep-texte-2);margin-bottom:1px;text-align:left;border-left:3px solid transparent }
.ep-dmenu button:hover {background:var(--ep-surface-2);color:var(--ep-texte) }
.ep-dmenu button.on {background:var(--ep-corail-voile);color:var(--ep-corail-fonce);font-weight:600;border-left-color:var(--ep-corail) }
.ep-dmenu button .ep-n {margin-left:auto;font-family:var(--ep-f-data);font-size:10.5px;padding:1px 6px;border-radius:var(--ep-r-3);
  background:var(--ep-canvas);color:var(--ep-texte-3);font-weight:500 }
.ep-dmenu button.on .ep-n {background:#fff;color:var(--ep-corail-fonce) }
.ep-dmenu button .ep-n--chaud {background:var(--ep-corail);color:#fff }
.ep-dmenu__sep {height:1px;background:var(--ep-ligne);margin:10px 8px }
/* v5.33.1 — Le conteneur des panneaux du dossier est TOUJOURS visible.
   L'ancienne paire display:none / .on venait d'un composant à onglets qui
   n'existe plus : admin.js ne pose jamais la classe .on sur #recPanneaux,
   il bascule les <section> internes via l'attribut hidden. La règle
   display:none masquait donc toute la conversation. */
.ep-dpan {display:flex;overflow:hidden;min-width:0;flex-direction:column }
.ep-dpan__scroll {overflow-y:auto;flex:1;min-width:0 }
/* Section 1 : conversation */
.rec-chat {flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:14px;background:var(--ep-canvas) }
.ep-bulle {max-width:min(760px,72%);display:grid;gap:5px }
.ep-bulle__h {display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--ep-texte-3) }
.ep-bulle__b {padding:12px 15px;border-radius:var(--ep-r-2);font-size:13.5px;line-height:1.55;border:1px solid var(--ep-ligne);background:var(--ep-surface);box-shadow:var(--ep-om-1) }
.ep-bulle--in .ep-bulle__b {border-top-left-radius:3px;border-left:3px solid var(--ep-info) }
.ep-bulle--out {align-self:flex-end }
.ep-bulle--out .ep-bulle__h {justify-content:flex-end }
.ep-bulle--out .ep-bulle__b {background:var(--ep-corail-voile);border-color:#F3CDC2;border-top-right-radius:3px;border-right:3px solid var(--ep-corail) }
.ep-bulle--note {align-self:center;max-width:min(820px,84%) }
.ep-bulle--note .ep-bulle__b {background:var(--ep-attn-voile);border-color:var(--ep-attn-bord);border-left:3px solid var(--ep-attn);font-size:13px }
.ep-evt {align-self:center;font-size:11.5px;color:var(--ep-texte-3);display:flex;align-items:center;gap:8px }
.ep-evt::before,.ep-evt::after {content:"";height:1px;width:40px;background:var(--ep-ligne) }
.rec-composer {background:var(--ep-surface);border-top:1px solid var(--ep-ligne);flex:0 0 auto }
.ep-compo__o {display:flex;gap:2px;padding:8px 20px 0 }
.ep-compo__o button {padding:7px 12px;border-radius:var(--ep-r-1) var(--ep-r-1) 0 0;font-size:12.5px;font-weight:600;color:var(--ep-texte-3);display:flex;align-items:center;gap:6px;border-bottom:2px solid transparent }
.ep-compo__o button.on {background:var(--ep-canvas);color:var(--ep-corail-fonce);border-bottom-color:var(--ep-corail) }
.ep-compo__o button.on[data-c=note] {background:var(--ep-attn-voile);color:var(--ep-attn);border-bottom-color:var(--ep-attn) }
.ep-compo__b {display:flex;align-items:center;gap:3px;padding:7px 20px;border-top:1px solid var(--ep-ligne);background:var(--ep-surface-2) }
.ep-compo__b button {width:28px;height:28px;display:grid;place-items:center;border-radius:var(--ep-r-1);color:var(--ep-texte-2) }
.ep-compo__b button:hover {background:var(--ep-canvas) }
.ep-compo__b .ep-sep {width:1px;height:18px;background:var(--ep-ligne);margin:0 5px }
.ep-compo__b select {margin-left:auto;height:28px;padding:3px 8px;font-size:12px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);background:var(--ep-surface);max-width:150px }
.rte {padding:13px 22px;min-height:82px;font-size:13.5px;line-height:1.55;color:var(--ep-texte-2) }
.rec-reply-foot {display:flex;align-items:center;gap:9px;padding:10px 22px;border-top:1px solid var(--ep-ligne) }
/* Blocs de section */
.ep-sec {padding:18px 24px }
.ep-sec__t {font-family:var(--ep-f-titre);font-size:15px;font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:9px }
.ep-sec__t .ep-b {margin-left:auto }
.ep-def {display:grid;grid-template-columns:auto 1fr;gap:8px 16px;font-size:13px }
.ep-def dt {color:var(--ep-texte-3);font-size:12px;white-space:nowrap }
.ep-def dd {font-weight:500 }
.ep-def dd a {color:var(--ep-info) }
.ep-vide {padding:36px 20px;text-align:center;color:var(--ep-texte-3);display:grid;gap:7px;justify-items:center }
.ep-vide svg {width:30px;height:30px;color:var(--ep-ligne-forte) }
.ep-chrono {padding:2px 0 }
.ep-ev {display:grid;grid-template-columns:30px 1fr;gap:12px;padding:9px 0;position:relative }
.ep-ev::before {content:"";position:absolute;left:14.5px;top:0;bottom:0;width:1px;background:var(--ep-ligne) }
.ep-ev:first-child::before {top:16px }
.ep-ev:last-child::before {bottom:calc(100% - 16px) }
.ep-ev__m {width:30px;height:30px;border-radius:var(--ep-r-3);display:grid;place-items:center;z-index:1;border:2px solid var(--ep-surface) }
.ep-ev__m svg {width:14px;height:14px }
.ep-ev__c strong {display:block;font-size:13px;font-weight:600 }
.ep-ev__c small {font-size:11.5px;color:var(--ep-texte-3) }
.ep-dcorps {grid-template-columns:180px 1fr }
* {transition:none!important }

/* ─── Réglages ─── */

/* ══════════ RÉGLAGES ══════════ */
.ep-reglages {flex:1;display:grid;grid-template-columns:250px 1fr;overflow:hidden;min-height:0 }
.ep-reglages__rail {border-right:1px solid var(--ep-ligne);background:var(--ep-surface);overflow-y:auto;padding:14px 10px }
.ep-segments__t {font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ep-texte-3);padding:0 8px 8px }
.ep-segments__sep {height:1px;background:var(--ep-ligne);margin:14px 8px 12px }
.ep-reglages__rail a {display:flex;align-items:center;gap:9px;padding:8px 9px;border-radius:var(--ep-r-1);font-size:13px;color:var(--ep-texte-2);margin-bottom:2px;line-height:1.35 }
.ep-reglages__rail a:hover {background:var(--ep-surface-2);color:var(--ep-texte) }
.ep-reglages__rail a.on {background:var(--ep-corail-voile);color:var(--ep-corail-fonce);font-weight:600;box-shadow:inset 3px 0 var(--ep-corail) }
.ep-reglages__rail a .ep-pt {margin-left:auto }
.ep-reglages__rail a .ep-n {margin-left:auto;font-family:var(--ep-f-data);font-size:11px;color:var(--ep-texte-3) }
.ep-reglages__corps {overflow-y:auto;padding:24px 28px 40px;max-width:960px }
.ep-reg-tete {margin-bottom:22px }
.ep-reg-tete h2 {font-family:var(--ep-f-titre);font-size:22px;font-weight:700;letter-spacing:-.01em }
.ep-reg-tete p {font-size:13.5px;color:var(--ep-texte-2);margin-top:6px;max-width:680px;line-height:1.6 }
.ep-bloc-r {background:var(--ep-surface);border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);box-shadow:var(--ep-om-1);margin-bottom:18px;overflow:hidden }
.ep-bloc-r__t {padding:13px 18px;border-bottom:1px solid var(--ep-ligne);display:flex;align-items:flex-start;justify-content:space-between;gap:12px }
.ep-bloc-r__t h3 {font-family:var(--ep-f-titre);font-size:15px;font-weight:700 }
.ep-bloc-r__t .ep-s {font-size:12.5px;color:var(--ep-texte-3);margin-top:3px;line-height:1.45;max-width:520px }
.ep-bloc-r__c {padding:6px 18px 18px }
.ep-bloc-r__c--plein {padding:0 }
.ep-reg-l {display:grid;grid-template-columns:250px 1fr;gap:24px;padding:16px 0;border-bottom:1px solid var(--ep-ligne);align-items:start }
.ep-reg-l:last-child {border-bottom:0 }
.ep-reg-l dt strong,.ep-reg-l>div:first-child strong {display:block;font-size:13.5px;font-weight:600 }
.ep-reg-l dt small,.ep-reg-l>div:first-child small {display:block;font-size:12px;color:var(--ep-texte-3);margin-top:4px;line-height:1.5 }
.ep-reg-l dd {margin:0 }
.ep-reg-l input,.ep-reg-l select,.ep-reg-l textarea {width:100%;padding:9px 12px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);font-size:13.5px;background:var(--ep-surface);font-family:var(--ep-f-ui) }
.ep-reg-l input:focus,.ep-reg-l select:focus,.ep-reg-l textarea:focus {outline:none;border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile) }
.ep-reg-l textarea {min-height:78px;resize:vertical;line-height:1.55 }
.ep-aide {font-size:12px;color:var(--ep-texte-3);margin-top:7px;line-height:1.5 }
.ep-duo {display:grid;grid-template-columns:1fr 1fr;gap:12px }
.ep-inter {display:flex;align-items:center;gap:11px;font-size:13px }
.ep-reg-pied {position:sticky;bottom:0;background:var(--ep-surface);border-top:1px solid var(--ep-ligne);padding:14px 18px;display:flex;gap:10px;align-items:center;margin:0 -18px -18px;z-index:2 }
.ep-reg-pied .ep-faible {margin-left:auto;font-size:12px }
.ep-onglets2 {display:flex;gap:2px;padding:0 18px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2) }
.ep-onglets2 button {padding:11px 14px;font-size:13px;font-weight:600;color:var(--ep-texte-3);border-bottom:2px solid transparent;margin-bottom:-1px }
.ep-onglets2 button.on {color:var(--ep-corail-fonce);border-bottom-color:var(--ep-corail);background:var(--ep-surface) }
.ep-vol {display:none }
.ep-vol.on {display:block }
.ep-conn {display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--ep-ligne) }
.ep-conn:last-child {border-bottom:0 }
.ep-conn__i {width:38px;height:38px;border-radius:var(--ep-r-2);display:grid;place-items:center;flex:0 0 auto }
.ep-conn__t {flex:1;min-width:0 }
.ep-conn__t strong {display:block;font-size:13.5px;font-weight:600 }
.ep-conn__t small {font-size:12px;color:var(--ep-texte-3);line-height:1.45 }
.ep-arbre {display:grid }
.ep-arbre__l {display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--ep-ligne) }
.ep-arbre__l:last-child {border-bottom:0 }
.ep-arbre__l.enf {padding-left:28px;position:relative }
.ep-arbre__l.enf::before {content:"";position:absolute;left:10px;top:50%;width:10px;height:1px;background:var(--ep-ligne-forte) }
.ep-arbre__l strong {font-size:13.5px;font-weight:600 }
.ep-arbre__l .ep-m2 {font-size:12px;color:var(--ep-texte-3);margin-top:2px }
.ep-mots {display:flex;gap:5px;flex-wrap:wrap;margin-top:5px }
.ep-mot {font-family:var(--ep-f-data);font-size:10.5px;padding:1px 7px;border-radius:var(--ep-r-3);background:var(--ep-canvas);color:var(--ep-texte-2) }

/* ─── Réputation ─── */

/* ══════════════ MODULE RÉPUTATION ══════════════ */
.ep-etoiles {display:inline-flex;gap:1.5px;color:var(--ep-dore) }
.ep-etoiles svg {width:14px;height:14px;fill:currentColor;stroke:none }
.ep-etoiles .ep-vide {color:var(--ep-ligne-forte) }
.ep-etoiles--lg svg {width:18px;height:18px }
.ep-note-g {display:inline-flex;align-items:baseline;gap:6px }
.ep-note-g b {font-family:var(--ep-f-data);font-size:15px;font-weight:500 }
/* Répartition par étoile */
.ep-repart {display:grid;gap:6px }
.ep-repart__l {display:grid;grid-template-columns:52px 1fr 46px;align-items:center;gap:9px;font-size:12.5px }
.ep-repart__l span:first-child {color:var(--ep-texte-2);display:flex;align-items:center;gap:4px }
.ep-repart__l b {font-family:var(--ep-f-data);text-align:right;color:var(--ep-texte-2) }
/* Vue scindée : file à gauche, réponse à droite */
.ep-split {flex:1;display:grid;grid-template-columns:400px 1fr;overflow:hidden;min-height:0 }
.ep-file {border-right:1px solid var(--ep-ligne);background:var(--ep-surface);overflow-y:auto }
.ep-file__t {padding:10px 14px;border-bottom:1px solid var(--ep-ligne);font-size:11px;font-weight:700;
  letter-spacing:.07em;text-transform:uppercase;color:var(--ep-texte-3);position:sticky;top:0;background:var(--ep-surface);z-index:2;
  display:flex;align-items:center;gap:7px }
.ep-file__t .ep-n {margin-left:auto;font-family:var(--ep-f-data);font-size:11px;font-weight:400 }
.ep-fitem {padding:12px 14px;border-bottom:1px solid var(--ep-ligne);cursor:pointer;display:grid;gap:5px;border-left:3px solid transparent }
.ep-fitem:hover {background:var(--ep-sable-voile) }
.ep-fitem.on {background:var(--ep-corail-voile);border-left-color:var(--ep-corail) }
.ep-fitem--attente {border-left-color:var(--ep-attn) }
.ep-fitem--repondu {border-left-color:var(--ep-ok) }
.ep-fitem--neg {border-left-color:var(--ep-alerte) }
.ep-fitem.on[class*=fitem--] {border-left-color:var(--ep-corail) }
.ep-fitem__h {display:flex;align-items:center;gap:8px }
.ep-fitem__h strong {font-size:13px;font-weight:600;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis }
.ep-fitem__h time {font-family:var(--ep-f-data);font-size:10px;color:var(--ep-texte-3) }
.ep-fitem p {font-size:12.5px;color:var(--ep-texte-2);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden }
.ep-fitem__m {display:flex;align-items:center;gap:8px;font-size:10.5px;color:var(--ep-texte-3) }
/* Panneau de réponse */
.ep-detail {overflow-y:auto;display:flex;flex-direction:column;background:var(--ep-canvas);min-width:0 }
.ep-detail__h {background:var(--ep-surface);border-bottom:1px solid var(--ep-ligne);padding:16px 24px;display:flex;align-items:flex-start;gap:14px }
.ep-detail__b {flex:1;padding:20px 24px;overflow-y:auto }
.ep-avis-txt {background:var(--ep-surface);border:1px solid var(--ep-ligne);border-left:3px solid var(--ep-dore);
  border-radius:var(--ep-r-2);padding:16px 18px;font-size:14px;line-height:1.6;box-shadow:var(--ep-om-1) }
.ep-avis-trad {margin-top:10px;padding:11px 14px;background:var(--ep-info-voile);border:1px solid var(--ep-info-bord);
  border-radius:var(--ep-r-1);font-size:13px;line-height:1.55;color:#2E4372 }
.ep-rep-off {margin-top:16px;background:var(--ep-corail-voile);border:1px solid #F3CDC2;border-left:3px solid var(--ep-corail);
  border-radius:var(--ep-r-2);padding:14px 16px;font-size:13.5px;line-height:1.55 }
.ep-rep-off__h {font-size:11.5px;color:var(--ep-corail-fonce);font-weight:600;margin-bottom:6px;display:flex;align-items:center;gap:6px }
/* v5.33.1 — Cette règle visait une zone de saisie mais portait le même nom
   que la colonne principale de l'application (.ep-zone dans index.html) :
   elle lui appliquait bordure, padding et resize:vertical, d'où le décalage
   de toute la zone de travail. Scopée aux éléments de saisie uniquement. */
textarea.ep-zone {width:100%;min-height:120px;padding:13px 15px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);
  font-size:13.5px;line-height:1.55;background:var(--ep-surface);resize:vertical }
textarea.ep-zone:focus {outline:none;border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile) }
.ep-ia-sugg {background:var(--ep-info-voile);border:1px solid var(--ep-info-bord);border-radius:var(--ep-r-2);padding:13px 15px;margin-bottom:12px }
.ep-ia-sugg__h {display:flex;align-items:center;gap:7px;font-size:11.5px;font-weight:700;color:var(--ep-info);
  text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px }
.ep-ia-sugg p {font-size:13.5px;line-height:1.55;color:#2E4372 }
.ep-theme {display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:var(--ep-r-3);
  font-size:12.5px;font-weight:500;border:1px solid var(--ep-ligne-forte);background:var(--ep-surface);cursor:pointer }
.ep-theme:hover {border-color:var(--ep-texte-3) }
.ep-theme b {font-family:var(--ep-f-data);font-size:11.5px }
.ep-theme--pos {background:var(--ep-ok-voile);border-color:var(--ep-ok-bord);color:var(--ep-ok) }
.ep-theme--neg {background:var(--ep-alerte-voile);border-color:var(--ep-alerte-bord);color:var(--ep-alerte) }
.ep-theme--neu {background:var(--ep-canvas);color:var(--ep-texte-2) }
.ep-verbatim {background:var(--ep-surface);border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);padding:13px 15px;
  font-size:13px;line-height:1.55;color:var(--ep-texte-2);box-shadow:var(--ep-om-1) }
.ep-verbatim__h {display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--ep-texte-3);margin-bottom:7px }
.ep-nps {display:grid;grid-template-columns:repeat(3,1fr);gap:10px }
.ep-nps__c {border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);padding:12px;text-align:center;background:var(--ep-surface) }
.ep-nps__c b {display:block;font-family:var(--ep-f-data);font-size:24px;line-height:1.1 }
.ep-nps__c span {font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ep-texte-3) }
.ep-nps--prom {background:var(--ep-ok-voile);border-color:var(--ep-ok-bord) }
.ep-nps--prom b {color:var(--ep-ok) }
.ep-nps--pass {background:var(--ep-attn-voile);border-color:var(--ep-attn-bord) }
.ep-nps--pass b {color:var(--ep-attn) }
.ep-nps--detr {background:var(--ep-alerte-voile);border-color:var(--ep-alerte-bord) }
.ep-nps--detr b {color:var(--ep-alerte) }
.ep-src {display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:var(--ep-r-3) }
.ep-src--google {background:#EDF1F9;color:#41598F }
.ep-src--trip {background:#EDF6EA;color:#3F7A34 }
.ep-src--enquete {background:#F3EFFA;color:#6A4A9E }

/* ══════════════════════════════════════════════════════════════════════════
   ADAPTATION À L'APPLICATION
   La maquette est une page unique ; l'application a une coquille, des
   identifiants et quelques composants sans équivalent. Ce qui suit les relie,
   sans jamais redéfinir une valeur déjà fixée plus haut.
   ══════════════════════════════════════════════════════════════════════════ */

html, body { height:100%; margin:0 }
body { overflow:hidden }
#view { display:flex; flex-direction:column; min-height:0; overflow:auto }
.ep-app { display:grid; grid-template-columns:238px 1fr; height:100vh; overflow:hidden }
.ep-zone { display:flex; flex-direction:column; overflow:hidden; min-width:0 }
.ep-corps { flex:1; display:grid; grid-template-columns:196px 1fr; overflow:hidden; min-height:0 }
.ep-corps--plein { grid-template-columns:1fr }
.ep-contenu { overflow:auto; min-width:0; flex:1 }
.ep-contenu--pad { padding:20px 24px }

/* Le rail : l'application ajoute la version, le sélecteur d'établissement
   et les compteurs de destination. */
.ep-rail__nav a.is-actif { background:var(--ep-corail); color:#fff; font-weight:600 }
.ep-pastille { margin-left:auto; font-family:var(--ep-f-data); font-size:10.5px;
  padding:1px 6px; border-radius:var(--ep-r-3); background:rgba(0,0,0,.22) }
.ep-pastille--chaud { background:var(--ep-corail); color:#fff }
.ep-rail__nav a.is-actif .ep-pastille { background:rgba(255,255,255,.22) }
.ep-rail__version { padding:8px 22px 12px; font-family:var(--ep-f-data); font-size:10.5px;
  background:none; border:0; text-align:left; width:100%; cursor:pointer }
.ep-rail__moi-n { display:block; font-size:13px; font-weight:600; color:#fff }
.ep-rail__moi-r { font-style:normal; font-size:11px; color:rgba(255,237,196,.45) }
.ep-rail__parc label { display:block; font-size:9.5px; font-weight:600; letter-spacing:.1em;
  text-transform:uppercase; color:rgba(255,237,196,.45) }
.ep-rail__parc select { border:0; background:none; color:#fff; font-size:13px;
  font-weight:600; width:100%; padding:0; font-family:var(--ep-f-ui) }

/* Le rail de vues du second niveau reprend le rail de segments de la maquette */
.ep-segments a.is-actif { background:var(--ep-sable-voile); color:var(--ep-encre); font-weight:600 }
.ep-segments a.is-actif .ep-n { color:var(--ep-corail-fonce) }

/* Surcouches */
.ep-modale-fond, .ep-volet-fond { position:fixed; inset:0; background:rgba(43,29,20,.42); z-index:60 }
.ep-modale { position:fixed; inset:0; display:grid; place-items:center; z-index:61; padding:24px; pointer-events:none }
.ep-modale__boite { pointer-events:auto; width:min(620px,100%); max-height:88vh; display:flex;
  flex-direction:column; background:var(--ep-surface); border-radius:var(--ep-r-2); box-shadow:var(--ep-om-3) }
.ep-volet { position:fixed; top:0; right:0; bottom:0; width:min(560px,100vw); z-index:61;
  display:flex; flex-direction:column; background:var(--ep-surface); box-shadow:var(--ep-om-3) }
.ep-volet.large { width:min(1080px,100vw) }
.ep-modale__tete, .ep-volet__tete { padding:14px 20px; border-bottom:1px solid var(--ep-ligne);
  display:flex; align-items:center; justify-content:space-between; gap:12px }
.ep-modale__corps, .ep-volet__corps { flex:1; overflow-y:auto; padding:18px 20px }
.ep-modale__pied, .ep-volet__pied { padding:13px 20px; border-top:1px solid var(--ep-ligne);
  display:flex; gap:9px; align-items:center; flex-wrap:wrap }
.ep-modale__pied { justify-content:flex-end }

/* Champs de saisie génériques */
.ep-saisie, input[type=text], input[type=email], input[type=password], input[type=search],
input[type=number], input[type=date], input[type=time], input[type=datetime-local],
input[type=url], input[type=tel], select, textarea {
  font-family:var(--ep-f-ui); font-size:13.5px; color:var(--ep-texte);
  padding:8px 11px; border:1px solid var(--ep-ligne-forte); border-radius:var(--ep-r-1);
  background:var(--ep-surface) }
input:focus, select:focus, textarea:focus { outline:none; border-color:var(--ep-corail);
  box-shadow:0 0 0 3px var(--ep-corail-voile) }
input[type=checkbox], input[type=radio] { accent-color:var(--ep-corail); width:15px; height:15px; padding:0 }
label { font-size:13px }

/* Notifications et barre de sélection */
.ep-toast-zone { position:fixed; bottom:18px; right:18px; z-index:90; display:grid; gap:8px }
.ep-toast { background:var(--ep-encre); color:#fff; padding:11px 15px; border-radius:var(--ep-r-2);
  box-shadow:var(--ep-om-3); font-size:13px; max-width:340px }
.ep-barre-sel { position:sticky; bottom:0; z-index:4; background:var(--ep-encre); color:#fff;
  padding:11px 16px; display:flex; align-items:center; gap:12px; font-size:13px }
.ep-maj { position:fixed; top:14px; left:50%; transform:translateX(-50%); z-index:10060;
  background:var(--ep-encre); color:#fff; padding:10px 12px 10px 18px; border-radius:var(--ep-r-3);
  box-shadow:var(--ep-om-3); display:flex; align-items:center; gap:14px; font-size:13.5px }
/* v5.37.2 — Le bouton reprend l'arrondi de l'encadré : une pilule dans une
   pilule. En --ep-r-1, il faisait tache au milieu d'un bandeau arrondi. */
.ep-maj .ep-b { background:var(--ep-corail); border-color:var(--ep-corail); color:#fff;
  border-radius:var(--ep-r-3); padding:7px 16px }
.ep-maj .ep-b:hover { background:var(--ep-corail-fonce); border-color:var(--ep-corail-fonce) }
@media(max-width:760px){.ep-maj{top:68px;width:calc(100vw - 24px);justify-content:space-between}}

/* Squelette de chargement */
.ep-sq { height:14px; border-radius:var(--ep-r-3); background:linear-gradient(90deg,
  var(--ep-ligne) 25%, var(--ep-surface-2) 50%, var(--ep-ligne) 75%);
  background-size:200% 100%; animation:ep-sq 1.3s linear infinite }
@keyframes ep-sq { to { background-position:-200% 0 } }

/* Utilitaires attendus par le code */
.ep-dr { text-align:right }
.ep-ic { flex:0 0 auto; vertical-align:middle }
.ep-sep { height:1px; background:var(--ep-ligne); border:0; margin:18px 0 }
.ep-msg { display:flex; gap:9px; align-items:flex-start; padding:11px 14px;
  border-radius:var(--ep-r-2); font-size:13px; line-height:1.55; border:1px solid var(--ep-ligne);
  background:var(--ep-surface-2); margin-bottom:14px }
.ep-msg > svg { flex:0 0 auto; margin-top:2px }
.ep-msg > span, .ep-msg > div { flex:1; min-width:0 }
.ep-msg--info   { background:var(--ep-info-voile);   border-color:var(--ep-info-bord);   color:#2E4372 }
.ep-msg--ok     { background:var(--ep-ok-voile);     border-color:var(--ep-ok-bord);     color:#2E5C25 }
.ep-msg--attn   { background:var(--ep-attn-voile);   border-color:var(--ep-attn-bord);   color:#7A4E08 }
.ep-msg--alerte { background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord); color:#94271C }

@media (max-width:1100px) { .ep-app { grid-template-columns:1fr } .ep-rail { display:none } }
@media (prefers-reduced-motion:reduce) { * { transition:none !important; animation:none !important } }

/* ══════════════════════════════════════════════════════════════════════════
   RAIL DE NAVIGATION — VERSION BEIGE
   Le brun reste le jeton des notifications et de la barre de sélection ;
   seule la navigation change de fond. Supprimez ce bloc pour revenir au brun.
   ══════════════════════════════════════════════════════════════════════════ */
:root { --ep-nav:#F6EBD6; --ep-nav-bord:#E7D6B4; --ep-nav-survol:#FBF4E6 }
.ep-rail { background:var(--ep-nav); border-right:1px solid var(--ep-nav-bord); color:var(--ep-texte) }
.ep-rail__nom { color:var(--ep-encre) }
.ep-rail__nom span { color:var(--ep-texte-3) }
.ep-rail__parc { background:var(--ep-surface); border:1px solid var(--ep-nav-bord) }
.ep-rail__parc label { color:var(--ep-texte-3) }
.ep-rail__parc select { color:var(--ep-encre) }
.ep-rail__cmd { border:1px solid var(--ep-ligne-forte); background:rgba(255,255,255,.55); color:var(--ep-texte-2) }
.ep-rail__cmd:hover { border-color:var(--ep-corail); color:var(--ep-corail-fonce); background:var(--ep-surface) }
.ep-rail__cmd kbd { background:var(--ep-surface); border:1px solid var(--ep-nav-bord); color:var(--ep-texte-3) }
.ep-rail__nav a { color:var(--ep-texte-2) }
.ep-rail__nav a:hover { background:var(--ep-nav-survol); color:var(--ep-encre) }
.ep-rail__nav a.is-actif { background:var(--ep-corail); color:#fff; box-shadow:var(--ep-om-1) }
.ep-rail__nav a .ep-pastille { background:rgba(43,29,20,.09); color:var(--ep-texte-2) }
.ep-rail__nav a .ep-pastille--chaud { background:var(--ep-corail); color:#fff }
.ep-rail__sep { background:var(--ep-nav-bord) }
.ep-rail__moi { border-top:1px solid var(--ep-nav-bord) }
.ep-rail__moi-n { color:var(--ep-encre) }
.ep-rail__moi-r { color:var(--ep-texte-3) }
.ep-rail__moi .ep-av { background:var(--ep-corail); color:#fff }
.ep-rail__version { color:var(--ep-texte-3) }
.ep-rail__logo { background:var(--ep-corail) }

/* ══════════════════════════════════════════════════════════════════════════
   FICHE DOSSIER — chaîne de pleine largeur
   Le gabarit hérité de la conversation était une grille « 1fr 240px » : même
   sans son volet latéral, elle réservait la seconde piste.
   ══════════════════════════════════════════════════════════════════════════ */
#view:has(.ep-dossier) { padding:0; overflow:hidden; position:relative }
.ep-dossier { position:absolute; inset:0; margin:0; display:flex; flex-direction:column }
.ep-dcorps { align-items:stretch }
.ep-dmenu { height:100%; border-radius:0; box-shadow:none }
.ep-dossier, .ep-dcorps, .ep-dpan, .ep-dpan > section,
.ep-dpan .rec-email2, .ep-dpan .rec-email2__main, .ep-dpan .rec-chat,
.ep-dpan .rec-composer, .ep-dpan .rte, .ep-dpan .rte-toolbar,
.ep-dpan .ep-compo__o, .ep-dpan .ep-compo__b, .ep-dpan .rec-reply-foot {
  width:100%; max-width:none; box-sizing:border-box }
.ep-dpan .rec-email2, .ep-dpan .rec-email2__main {
  display:flex; flex-direction:column; grid-template-columns:none; gap:0; flex:1; min-height:0 }
.ep-dpan .rec-email2__side { display:none }
.ep-dpan > section { padding:18px 24px }
.ep-dpan > section[data-panel="email"] { padding:0; height:100%; display:flex; flex-direction:column }
.ep-dpan .rec-chat > .ep-bulle { max-width:min(760px,72%) }
.ep-dpan .rec-chat > .ep-bulle--note { max-width:min(820px,84%) }
.ep-dpan .rec-chat > .ep-evt { max-width:84% }
.rte { min-height:110px; padding:12px 14px }
.rte-toolbar { display:flex; align-items:center; gap:2px; padding:0 }
.rte-toolbar button { width:28px; height:28px; display:grid; place-items:center;
  border:0; border-radius:var(--ep-r-1); background:none; color:var(--ep-texte-2) }
.rte-toolbar button:hover { background:var(--ep-canvas); color:var(--ep-texte) }
.rte-sep { width:1px; height:18px; background:var(--ep-ligne); margin:0 5px }

/* ══════════════════════════════════════════════════════════════════════════
   33. COUVERTURE COMPLÈTE — v5.20
   Le back-office ne charge plus qu'une seule feuille. Ce qui suit couvre les
   109 classes qui restaient sans règle, mesurées écran par écran.
   Il ne s'agit plus d'une couche de compatibilité qui lutte contre une autre
   feuille : c'est la seule définition de ces composants.
   ══════════════════════════════════════════════════════════════════════════ */

/* ── Boutons ──────────────────────────────────────────────────────────── */
.btn { display:inline-flex; align-items:center; justify-content:center; gap:7px;
  padding:7px 12px; border-radius:var(--ep-r-1); font-size:13px; font-weight:600;
  font-family:var(--ep-f-ui); border:1px solid var(--ep-ligne-forte);
  background:var(--ep-surface); color:var(--ep-texte); cursor:pointer; white-space:nowrap;
  transition:background .12s, border-color .12s }
.btn:hover { background:var(--ep-surface-2); border-color:var(--ep-texte-3) }
.btn:disabled { opacity:.45; cursor:not-allowed }
.btn--primary, .btn--cta { background:var(--ep-corail); border-color:var(--ep-corail); color:#fff }
.btn--primary:hover, .btn--cta:hover { background:var(--ep-corail-fonce); border-color:var(--ep-corail-fonce) }
.btn--danger { background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord); color:var(--ep-alerte) }
.btn--danger:hover { background:var(--ep-alerte); border-color:var(--ep-alerte); color:#fff }
.btn--ghost { border-color:transparent; background:transparent; color:var(--ep-texte-2) }
.btn--ghost:hover { background:var(--ep-surface-2); border-color:var(--ep-ligne) }
.btn--sm { padding:5px 9px; font-size:12.5px }
.actions { display:flex; gap:7px; align-items:center; flex-wrap:wrap; white-space:nowrap }

/* ── Tableaux ─────────────────────────────────────────────────────────── */
.table-wrap { background:var(--ep-surface); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); overflow:auto; box-shadow:var(--ep-om-1); margin-bottom:16px }
.table { width:100%; border-collapse:separate; border-spacing:0; background:var(--ep-surface) }
.table thead th { position:sticky; top:0; z-index:2; background:var(--ep-surface-2);
  border-bottom:1px solid var(--ep-ligne-forte); padding:9px 13px; text-align:left;
  font-size:10.5px; font-weight:700; letter-spacing:.07em; text-transform:uppercase;
  color:var(--ep-texte-3); white-space:nowrap }
.table td { padding:10px 13px; border-bottom:1px solid var(--ep-ligne); vertical-align:middle; font-size:13.5px }
.table tbody tr:hover { background:var(--ep-sable-voile) }
.table tbody tr:last-child td { border-bottom:0 }
.table-empty { padding:30px 16px; text-align:center; color:var(--ep-texte-3); font-size:13px }
.cell-mute { color:var(--ep-texte-3); font-size:12.5px }
.pagination, .avis-pagination { display:flex; align-items:center; gap:10px; padding:12px 0;
  font-size:12.5px; color:var(--ep-texte-3) }

/* ── Cartes ───────────────────────────────────────────────────────────── */
.card { background:var(--ep-surface); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); box-shadow:var(--ep-om-1); margin-bottom:16px }
.card__body { padding:16px 18px }
.cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:14px }

/* ── En-tête de page hérité ───────────────────────────────────────────── */
.page-header { display:flex; align-items:flex-start; justify-content:space-between; gap:14px;
  padding:16px 28px; background:var(--ep-surface); border-bottom:1px solid var(--ep-ligne); margin:-20px -24px 20px }
.page-header__content h1 { font-family:var(--ep-f-titre); font-size:19px; font-weight:700; letter-spacing:-.01em }
.page-header__subtitle { font-size:12.5px; color:var(--ep-texte-3); margin-top:3px; line-height:1.45 }
.page-header__actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap }

/* ── Étiquettes et repères ────────────────────────────────────────────── */
.badge { display:inline-flex; align-items:center; gap:5px; padding:3px 9px;
  border-radius:var(--ep-r-3); font-size:11px; font-weight:600; white-space:nowrap;
  background:var(--ep-canvas); color:var(--ep-texte-2); border:1px solid var(--ep-ligne) }
.badge--green { background:var(--ep-ok-voile); color:var(--ep-ok); border-color:var(--ep-ok-bord) }
.badge--mute { background:var(--ep-surface-2); color:var(--ep-texte-3) }
.badge--sand { background:var(--ep-sable-voile); color:var(--ep-encre); border-color:var(--ep-dore) }
.alert { display:flex; gap:9px; align-items:flex-start; padding:11px 14px;
  border-radius:var(--ep-r-2); border:1px solid var(--ep-ligne); font-size:13px; line-height:1.55;
  background:var(--ep-surface-2); margin-bottom:14px }
.alert--info { background:var(--ep-info-voile); border-color:var(--ep-info-bord); color:#2E4372 }
.alert--success { background:var(--ep-ok-voile); border-color:var(--ep-ok-bord); color:#2E5C25 }
.alert--warn, .alert--warning { background:var(--ep-attn-voile); border-color:var(--ep-attn-bord); color:#7A4E08 }
.alert--danger { background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord); color:#94271C }
.empty-state { padding:36px 20px; text-align:center; color:var(--ep-texte-3); font-size:13px }
.avatar { display:inline-grid; place-items:center; border-radius:var(--ep-r-3); object-fit:cover; flex:0 0 auto; background-position:center; background-repeat:no-repeat; background-color:var(--ep-sable-voile); overflow:hidden }

/* ── Contrôles ────────────────────────────────────────────────────────── */
.segmented { display:inline-flex; padding:2px; background:var(--ep-canvas);
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1); gap:2px }
.segmented button { padding:5px 11px; border-radius:4px; font-size:12.5px; font-weight:600;
  color:var(--ep-texte-3); border:0; background:none; display:inline-flex; align-items:center; gap:6px }
.segmented button.on, .segmented button.is-on { background:var(--ep-surface);
  color:var(--ep-encre); box-shadow:var(--ep-om-1) }
.avis-bar { display:flex; align-items:center; gap:9px; flex-wrap:wrap; padding:10px 0 }
.rec-assign { height:30px; padding:4px 8px; font-size:12.5px; max-width:150px;
  border:1px solid var(--ep-ligne-forte); border-radius:var(--ep-r-1); background:var(--ep-surface) }
.no-print { }

/* ── Icônes ───────────────────────────────────────────────────────────── */
.ic { flex:0 0 auto; vertical-align:middle }

/* ── Grilles héritées du module expérience ────────────────────────────── */
.exp-list { display:grid }
.exp-table { width:100%; border-collapse:separate; border-spacing:0 }
.exp-table thead th { background:var(--ep-surface-2); border-bottom:1px solid var(--ep-ligne-forte);
  padding:8px 12px; text-align:left; font-size:10.5px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; color:var(--ep-texte-3) }
.exp-table td { padding:9px 12px; border-bottom:1px solid var(--ep-ligne); font-size:13px }
.exp-incident-grid, .exp-tele-dashboard { display:grid;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:14px }
.insight-list { display:grid; gap:10px }
.rm-legend { display:flex; gap:12px; flex-wrap:wrap; font-size:11.5px; color:var(--ep-texte-3) }

/* ══════════════════════════════════════════════════════════════════════════
   34. LANGAGE VISUEL DES DOSSIERS
   Une couleur par statut et par catégorie, tenue partout : file de travail,
   fiche, tableau de bord. On lit l'état d'un dossier sans le lire.
   ══════════════════════════════════════════════════════════════════════════ */

:root {
  --ep-cat-resto:#C9752B;   --ep-cat-billet:#41598F;  --ep-cat-resa:#6A4A9E;
  --ep-cat-accueil:#2E7D6B; --ep-cat-secu:#C0392B;    --ep-cat-prop:#3F7A34;
  --ep-cat-info:#8B857D;
  --ep-st-nouveau:#41598F;  --ep-st-cours:#B47512;    --ep-st-attente:#6A4A9E;
  --ep-st-resolu:#3F7A34;   --ep-st-clos:#8B857D;
}

/* Étiquettes de statut */
.ep-et--nouveau { background:#EDF1F9; color:var(--ep-st-nouveau); border:1px solid #CBD8EC }
.ep-et--cours   { background:var(--ep-attn-voile); color:var(--ep-st-cours); border:1px solid var(--ep-attn-bord) }
.ep-et--attente { background:#F3EFFA; color:var(--ep-st-attente); border:1px solid #D6C9EC }
.ep-et--resolu  { background:var(--ep-ok-voile); color:var(--ep-st-resolu); border:1px solid var(--ep-ok-bord) }
.ep-et--clos    { background:#F3F2F0; color:var(--ep-st-clos); border:1px solid #E2E0DC }
.ep-et--n       { background:var(--ep-canvas); color:var(--ep-texte-2); border:1px solid var(--ep-ligne) }
.ep-et .ep-pt { width:6px; height:6px; background:currentColor }

/* Catégories : un carré de couleur, le mot à côté */
.ep-cat { display:inline-flex; align-items:center; gap:6px; font-size:12px;
  font-weight:500; color:var(--ep-texte-2); white-space:nowrap }
.ep-cat i { width:8px; height:8px; border-radius:2px; display:block; flex:0 0 auto }
.ep-cat--resto i   { background:var(--ep-cat-resto) }
.ep-cat--billet i  { background:var(--ep-cat-billet) }
.ep-cat--resa i    { background:var(--ep-cat-resa) }
.ep-cat--accueil i { background:var(--ep-cat-accueil) }
.ep-cat--secu i    { background:var(--ep-cat-secu) }
.ep-cat--prop i    { background:var(--ep-cat-prop) }
.ep-cat--info i    { background:var(--ep-cat-info) }

/* Priorité : trois barres graduées. On la lit sans lire le mot. */
.ep-prio { display:inline-flex; align-items:center; gap:7px; font-size:12px; font-weight:600; white-space:nowrap }
.ep-prio__b { display:flex; gap:2px; align-items:flex-end; height:13px }
.ep-prio__b i { width:3.5px; background:var(--ep-ligne-forte); border-radius:1px; display:block }
.ep-prio__b i:nth-child(1) { height:5px } .ep-prio__b i:nth-child(2) { height:9px } .ep-prio__b i:nth-child(3) { height:13px }
.ep-prio--urgente { color:var(--ep-alerte) } .ep-prio--urgente i { background:var(--ep-alerte) }
.ep-prio--haute   { color:#C9752B } .ep-prio--haute i:nth-child(-n+2) { background:#C9752B }
.ep-prio--normale { color:var(--ep-info) } .ep-prio--normale i:nth-child(1) { background:var(--ep-info) }
.ep-prio--faible  { color:var(--ep-texte-3) }

/* SLA en temps restant : « 12 h restantes » se décide, « à risque » se subit. */
.ep-sla { display:inline-flex; align-items:center; gap:7px; font-size:12px; font-weight:600; white-space:nowrap }
.ep-sla__b { width:46px; height:5px; border-radius:var(--ep-r-3); background:var(--ep-ligne);
  overflow:hidden; flex:0 0 auto }
.ep-sla__b i { display:block; height:100%; border-radius:var(--ep-r-3); background:currentColor }
.ep-sla--t-ok { color:var(--ep-ok) } .ep-sla--t-attn { color:var(--ep-attn) } .ep-sla--t-alerte { color:var(--ep-alerte) }

/* Avatars : la teinte vient du nom, deux fiches ne se ressemblent jamais */
.ep-av-1 { background:#C9752B; color:#fff } .ep-av-2 { background:#41598F; color:#fff }
.ep-av-3 { background:#6A4A9E; color:#fff } .ep-av-4 { background:#2E7D6B; color:#fff }
.ep-av-5 { background:#C0392B; color:#fff } .ep-av-6 { background:#3F7A34; color:#fff }
.ep-av-7 { background:#8B6F47; color:#fff }
.ep-av--vide { background:var(--ep-attn-voile); color:var(--ep-attn); border:1px dashed var(--ep-attn-bord) }

/* File de travail */
.ep-tbl--dossiers tbody tr { cursor:pointer }
.ep-tbl--dossiers tbody tr td:first-child { border-left:3px solid transparent }
.ep-tbl--dossiers tr[data-st=nouveau]    td:first-child { border-left-color:var(--ep-st-nouveau) }
.ep-tbl--dossiers tr[data-st=en_cours]   td:first-child { border-left-color:var(--ep-st-cours) }
.ep-tbl--dossiers tr[data-st=en_attente] td:first-child { border-left-color:var(--ep-st-attente) }
.ep-tbl--dossiers tr[data-st=resolu]     td:first-child { border-left-color:var(--ep-st-resolu) }
.ep-tbl--dossiers tr[data-st=clos]       td:first-child { border-left-color:var(--ep-st-clos) }
.ep-neuf .ep-cli__n { font-weight:700 }
.ep-neuf .ep-cli__n::after { content:""; width:6px; height:6px; border-radius:var(--ep-r-3);
  background:var(--ep-corail); display:inline-block; margin-left:6px; vertical-align:middle }
.ep-motif { max-width:320px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  font-size:13px; color:var(--ep-texte-2) }

/* Indicateurs */
.ep-kpi__l { font-size:11px; color:var(--ep-texte-3); font-weight:600;
  text-transform:uppercase; letter-spacing:.05em }
.ep-kpi__v { font-family:var(--ep-f-data); font-size:26px; font-weight:500;
  letter-spacing:-.02em; line-height:1.05; display:block }
.ep-kpi__m { font-style:normal; font-size:11.5px; color:var(--ep-texte-3) }
.ep-kpi--neutre::before { background:var(--ep-corail) }
.ep-kpi--danger  { background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord) }
.ep-kpi--danger::before  { background:var(--ep-alerte) } .ep-kpi--danger .ep-kpi__v  { color:var(--ep-alerte) }
.ep-kpi--warning { background:var(--ep-attn-voile); border-color:var(--ep-attn-bord) }
.ep-kpi--warning::before { background:var(--ep-attn) }   .ep-kpi--warning .ep-kpi__v { color:var(--ep-attn) }
.ep-kpi--success::before { background:var(--ep-ok) }     .ep-kpi--success .ep-kpi__v { color:var(--ep-ok) }
.ep-kpi--info::before    { background:var(--ep-info) }   .ep-kpi--info .ep-kpi__v    { color:var(--ep-info) }
.ep-legende { display:flex; flex-wrap:wrap; gap:10px; margin-top:10px; font-size:11.5px; color:var(--ep-texte-2) }
.ep-legende span { display:inline-flex; align-items:center; gap:5px }
.ep-legende i { width:9px; height:9px; border-radius:2px; display:block }

/* Portées de grille du module expérience */
.exp-span-3 { grid-column:span 3 } .exp-span-4 { grid-column:span 4 } .exp-span-8 { grid-column:span 8 }
@media (max-width:1100px) { .exp-span-3, .exp-span-4, .exp-span-8 { grid-column:1/-1 } }

/* ══════════════════════════════════════════════════════════════════════════
   35. ACCUEIL ET TABLEAU DE BORD DES DOSSIERS
   Les 40 dernières classes sans règle. L'Accueil sera refondu ensuite, mais
   il doit d'ici là ressembler au reste de l'application.
   ══════════════════════════════════════════════════════════════════════════ */

/* ── Bandeau d'ouverture ──────────────────────────────────────────────── */
.rp-hero { background:linear-gradient(135deg, var(--ep-rail-fond), #4A3122); color:var(--ep-sable);
  border-radius:var(--ep-r-2); padding:22px 26px; margin-bottom:18px;
  display:flex; align-items:center; gap:24px; flex-wrap:wrap }
.rp-hero h1, .rp-hero h2 { color:#fff; font-family:var(--ep-f-titre); font-size:22px; font-weight:700 }
.rp-hero p { color:rgba(255,237,196,.72); font-size:13.5px; margin-top:5px; max-width:560px; line-height:1.55 }
.rp-hero__score { margin-left:auto; font-family:var(--ep-f-data); font-size:38px; font-weight:500;
  color:#fff; line-height:1 }
.rp-eyebrow { font-size:10.5px; font-weight:700; letter-spacing:.11em; text-transform:uppercase;
  color:var(--ep-texte-3) }

/* ── Indicateurs ──────────────────────────────────────────────────────── */
.rp-kpis, .rec-kpis { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:14px; margin-bottom:18px }
.rp-kpi, .rec-kpi { position:relative; overflow:hidden; background:var(--ep-surface);
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2); padding:13px 15px;
  display:grid; gap:3px; box-shadow:var(--ep-om-1) }
.rp-kpi::before, .rec-kpi::before { content:""; position:absolute; left:0; top:0; bottom:0;
  width:4px; background:var(--ep-ligne-forte) }
.rp-kpi__label, .rec-kpi__l { font-size:11px; font-weight:600; text-transform:uppercase;
  letter-spacing:.05em; color:var(--ep-texte-3) }
.rp-kpi__value, .rec-kpi__n { font-family:var(--ep-f-data); font-size:26px; font-weight:500;
  letter-spacing:-.02em; line-height:1.05; color:var(--ep-encre) }
.rp-kpi__foot { font-size:11.5px; color:var(--ep-texte-3) }
.rp-kpi--accent::before  { background:var(--ep-corail) }  .rp-kpi--accent .rp-kpi__value  { color:var(--ep-corail-fonce) }
.rp-kpi--success::before { background:var(--ep-ok) }      .rp-kpi--success .rp-kpi__value { color:var(--ep-ok) }
.rp-kpi--danger  { background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord) }
.rp-kpi--danger::before  { background:var(--ep-alerte) }  .rp-kpi--danger .rp-kpi__value  { color:var(--ep-alerte) }
.rp-kpi--google::before  { background:var(--ep-dore) }
.rec-kpi--urgent { background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord) }
.rec-kpi--urgent::before { background:var(--ep-alerte) } .rec-kpi--urgent .rec-kpi__n { color:var(--ep-alerte) }
.rec-kpi--today::before  { background:var(--ep-corail) } .rec-kpi--today .rec-kpi__n  { color:var(--ep-corail-fonce) }

/* ── Panneaux et sections ─────────────────────────────────────────────── */
.rp-panel, .rp-section { background:var(--ep-surface); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); box-shadow:var(--ep-om-1); margin-bottom:16px; overflow:hidden }
.rp-panel__head, .rp-section__head { padding:13px 16px; border-bottom:1px solid var(--ep-ligne);
  display:flex; align-items:flex-start; justify-content:space-between; gap:12px }
.rp-panel__head h2, .rp-panel__head h3, .rp-section__head h2, .rp-section__head h3 {
  font-family:var(--ep-f-titre); font-size:15px; font-weight:700 }
.rp-panel > *:not(.rp-panel__head), .rp-section > *:not(.rp-section__head) { padding:0 16px 16px }
.rec-dash { display:grid; gap:16px }

/* ── v5.33.3 — Réclamations : la file de travail d'abord ──────────────────
   Le pouls : une ligne de compteurs. Cliquables = filtres rapides ;
   re-clic = désactivation. Les moyennes sont des indicateurs passifs. */
.rec-pulse { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:12px }
.rec-chip { display:inline-flex; align-items:baseline; gap:7px; padding:7px 13px;
  border-radius:var(--ep-r-3); border:1px solid var(--ep-ligne-forte); background:var(--ep-surface);
  font-size:12.5px; font-weight:600; color:var(--ep-texte-2); white-space:nowrap }
.rec-chip b { font-family:var(--ep-f-data); font-size:15px; font-weight:500; color:var(--ep-texte) }
button.rec-chip:hover { border-color:var(--ep-texte-3) }
.rec-chip.on { background:var(--ep-corail-voile); border-color:var(--ep-corail); color:var(--ep-corail-fonce) }
.rec-chip.on b { color:var(--ep-corail-fonce) }
.rec-chip--urgent b { color:var(--ep-alerte) }
.rec-chip--zero { opacity:.55 }
.rec-chip--stat { border-style:dashed; font-weight:500; cursor:default }
.rec-chip--stat b { font-size:13px }
.rec-pulse__sep { width:1px; height:20px; background:var(--ep-ligne-forte); margin:0 4px }

/* Analyse du jour : le pilotage à la demande, replié par défaut. */
.rec-analyse { margin:0 0 14px; background:var(--ep-surface); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); box-shadow:var(--ep-om-1); overflow:hidden }
.rec-analyse__brief { display:flex; gap:16px; flex-wrap:wrap; padding:11px 16px;
  border-bottom:1px solid var(--ep-ligne); background:var(--ep-sable-voile); font-size:12.5px }
.rec-analyse__brief span { display:inline-flex; align-items:center; gap:5px }
.rec-analyse__grille { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)) }
.rec-analyse__col { padding:13px 16px; border-right:1px solid var(--ep-ligne); min-width:0 }
.rec-analyse__col:last-child { border-right:0 }
.rec-analyse__t { font-size:10.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:var(--ep-texte-3); margin-bottom:9px }
.rec-mini { display:grid; grid-template-columns:92px 1fr 26px; align-items:center; gap:8px;
  font-size:12px; margin-bottom:6px }
.rec-mini > span:first-child { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:var(--ep-texte-2) }
.rec-mini i { height:6px; border-radius:var(--ep-r-3); background:var(--ep-ligne); overflow:hidden; display:block }
.rec-mini i b { display:block; height:100%; background:var(--ep-corail); border-radius:var(--ep-r-3) }
.rec-mini > span:last-child { font-family:var(--ep-f-data); font-size:11px; color:var(--ep-texte-3); text-align:right }
@media (max-width:860px){ .rec-analyse__col { border-right:0; border-bottom:1px solid var(--ep-ligne) }
  .rec-analyse__col:last-child { border-bottom:0 } }
.rec-dash-t { font-family:var(--ep-f-titre); font-size:15px; font-weight:700; margin-bottom:10px }
.rec-side__t { font-family:var(--ep-f-titre); font-size:14px; font-weight:700;
  display:flex; align-items:center; gap:8px; margin-bottom:12px }

/* ── Grilles ──────────────────────────────────────────────────────────── */
.rp-grid, .rec-dash-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:16px }
.rp-grid--2 { grid-template-columns:repeat(auto-fill,minmax(380px,1fr)) }
.rp-category-grid, .rp-objective-grid { display:grid;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:12px }
.rp-dual-list { display:grid; grid-template-columns:1fr 1fr; gap:16px }
@media (max-width:900px) { .rp-dual-list { grid-template-columns:1fr } }

/* ── Listes de thèmes et verbatims ────────────────────────────────────── */
.rp-theme-list, .rp-reco-list, .rp-comments { display:grid; gap:10px }
.rp-comments > * { border-left:2px solid var(--ep-ligne-forte); padding:9px 0 9px 12px;
  font-size:13px; line-height:1.55; color:var(--ep-texte-2) }
.rp-good { color:var(--ep-ok); font-weight:600 }
.rp-bad  { color:var(--ep-alerte); font-weight:600 }
.rp-comments .rp-good, .rp-comments .rp-bad { border-left-color:currentColor }

/* ── Filtres de période ───────────────────────────────────────────────── */
.rp-presets { display:flex; gap:7px; flex-wrap:wrap; margin-bottom:14px }
.rp-preset { padding:6px 12px; border:1px solid var(--ep-ligne-forte); border-radius:var(--ep-r-1);
  font-size:12.5px; font-weight:500; color:var(--ep-texte-2); background:var(--ep-surface); cursor:pointer }
.rp-preset:hover { border-color:var(--ep-texte-3); color:var(--ep-texte) }
.rp-preset.is-on, .rp-preset.on { background:var(--ep-sable-voile); border-color:var(--ep-dore);
  color:var(--ep-encre); font-weight:600 }
.rp-custom-dates { display:flex; gap:9px; align-items:center; flex-wrap:wrap; margin-bottom:14px }
.rp-custom-dates input { height:32px; padding:5px 10px; font-size:12.5px; width:auto;
  border:1px solid var(--ep-ligne-forte); border-radius:var(--ep-r-1); background:var(--ep-surface) }
.rp-comment-filters { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:12px }

/* ══════════════════════════════════════════════════════════════════════════
   36. PAGE DE CONNEXION
   Elle chargeait admin.css, retiré en 5.20. Ses sept classes sont ici.
   C'est la première chose que voit un utilisateur : elle porte la marque.
   ══════════════════════════════════════════════════════════════════════════ */

.auth-bg { min-height:100vh; display:grid; place-items:center; padding:24px;
  background:linear-gradient(150deg, var(--ep-rail-fond) 0%, #4A3122 55%, #5C3E2A 100%) }
.auth-bg::before { content:""; position:fixed; inset:0; pointer-events:none;
  background:radial-gradient(circle at 22% 18%, rgba(233,102,70,.20), transparent 45%),
             radial-gradient(circle at 82% 78%, rgba(242,212,156,.14), transparent 50%) }

.auth-card { position:relative; z-index:1; width:min(420px,100%);
  background:var(--ep-surface); border-radius:14px; padding:34px 34px 30px;
  box-shadow:0 24px 64px rgba(43,29,20,.34); border:1px solid rgba(255,255,255,.6) }
.auth-card .logo { display:grid; justify-items:center; gap:10px; margin-bottom:22px }
.auth-card .logo img { max-width:180px; height:auto }
.auth-card h1 { font-family:var(--ep-f-marque); font-size:26px; color:var(--ep-encre);
  line-height:1.1; text-align:center }
.auth-card .sub { font-size:12.5px; color:var(--ep-texte-3); text-align:center;
  margin-top:4px; margin-bottom:22px; line-height:1.5 }

.auth-card .field { display:grid; gap:6px; margin-bottom:15px }
.auth-card .field label { font-size:11px; font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; color:var(--ep-texte-3) }
.auth-card .field input { width:100%; padding:11px 13px; font-size:14px;
  border:1px solid var(--ep-ligne-forte); border-radius:var(--ep-r-1);
  background:var(--ep-surface-2); font-family:var(--ep-f-ui) }
.auth-card .field input:focus { outline:none; border-color:var(--ep-corail);
  background:var(--ep-surface); box-shadow:0 0 0 3px var(--ep-corail-voile) }

.auth-card button[type=submit], .auth-card .btn--primary { width:100%; margin-top:6px;
  padding:12px 16px; font-size:14px; font-weight:700 }

.auth-error, .auth-ok { display:flex; gap:9px; align-items:flex-start; padding:11px 14px;
  border-radius:var(--ep-r-2); font-size:13px; line-height:1.5; margin-bottom:16px; border:1px solid }
.auth-error { background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord); color:#94271C }
.auth-ok    { background:var(--ep-ok-voile); border-color:var(--ep-ok-bord); color:#2E5C25 }

/* ══════════════════════════════════════════════════════════════════════════
   COMPLÉMENTS — les 29 classes restantes, mesurées écran par écran
   ══════════════════════════════════════════════════════════════════════════ */

/* Barres d'outils */
.toolbar, .exp-toolbar, .rp-toolbar, .exp-tele-toolbar {
  display:flex; align-items:center; gap:9px; flex-wrap:wrap;
  padding:10px 24px; background:var(--ep-surface); border-bottom:1px solid var(--ep-ligne) }
.toolbar .search, .ep-chercher { position:relative; flex:1; max-width:340px; min-width:180px }
.toolbar .search input, .ep-chercher input { width:100%; padding:8px 12px 8px 32px;
  background:var(--ep-surface-2); font-size:13px }
.toolbar .search svg, .ep-chercher svg { position:absolute; left:10px; top:50%;
  transform:translateY(-50%); color:var(--ep-texte-3); pointer-events:none }

/* Cartes du module expérience — alignées sur .ep-carte */
.exp-card { background:var(--ep-surface); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); box-shadow:var(--ep-om-1); margin-bottom:16px; overflow:hidden }
.exp-card__head { padding:13px 16px; border-bottom:1px solid var(--ep-ligne);
  display:flex; align-items:flex-start; justify-content:space-between; gap:12px }
.exp-card__head h3 { font-family:var(--ep-f-titre); font-size:15px; font-weight:700 }
.exp-card__body { padding:16px }
.exp-empty { padding:26px 16px; text-align:center; color:var(--ep-texte-3); font-size:13px }
.exp-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:16px }
.exp-span-5 { grid-column:span 5 } .exp-span-6 { grid-column:span 6 }
.exp-span-7 { grid-column:span 7 } .exp-span-12 { grid-column:span 12 }
@media (max-width:1100px) { .exp-grid > [class*=exp-span] { grid-column:1/-1 } }

/* Lignes de liste et clients */
.ep-ligne, .ep-ligne-item { display:flex; align-items:center; gap:10px; padding:9px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13px }
.ep-ligne:last-child, .ep-ligne-item:last-child { border-bottom:0 }
.ep-ligne__t, .ep-ligne-item__t { flex:1; min-width:0 }
.ep-ligne__t strong, .ep-ligne-item__t strong { display:block; font-weight:600; font-size:13px;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.ep-ligne__t small, .ep-ligne-item__t small { color:var(--ep-texte-3); font-size:11.5px }
.ep-cli { display:flex; align-items:center; gap:9px; min-width:0 }
.avis-clic { cursor:pointer }

/* Indicateurs : variantes de nommage utilisées par le code */
.ep-kpi--ok::before   { background:var(--ep-ok) }     .ep-kpi--ok .ep-kpi__v   { color:var(--ep-ok) }
.ep-kpi--attn { background:var(--ep-attn-voile); border-color:var(--ep-attn-bord) }
.ep-kpi--attn::before { background:var(--ep-attn) }   .ep-kpi--attn .ep-kpi__v { color:var(--ep-attn) }
.ep-kpi--fort::before { background:var(--ep-corail) } .ep-kpi--fort .ep-kpi__v { color:var(--ep-corail-fonce) }

/* Résumé des droits d'un rôle */
.ep-droits { display:flex; flex-wrap:wrap; gap:6px; cursor:help }
.ep-droit { display:inline-flex; align-items:center; gap:5px; padding:2px 9px;
  border-radius:var(--ep-r-3); font-size:11.5px; font-weight:500;
  background:var(--ep-canvas); color:var(--ep-texte-2); border:1px solid var(--ep-ligne) }
.ep-droit b { font-family:var(--ep-f-data); font-size:11px; font-weight:500; color:var(--ep-corail-fonce) }
.ep-droit--autre { background:var(--ep-surface-2); color:var(--ep-texte-3) }

/* Divers */
.ep-b--danger { background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord); color:var(--ep-alerte) }
.ep-b--danger:hover { background:var(--ep-alerte); border-color:var(--ep-alerte); color:#fff }
.ep-carte__t3 { font-family:var(--ep-f-titre); font-size:14px; font-weight:700;
  display:flex; align-items:center; gap:8px; margin:14px 0 12px; color:var(--ep-encre) }
.ep-page { display:grid; gap:16px }
/* v5.33.2 — menu flottant sous la boîte de recherche (le parent #crmBoite
   est position:relative), et non un bloc en flux qui déformait les filtres. */
.ep-crm-suggestions { position:absolute; top:calc(100% + 6px); left:0; right:0; z-index:40;
  background:var(--ep-surface); border:1px solid var(--ep-ligne-forte); border-radius:var(--ep-r-2);
  box-shadow:var(--ep-om-2); padding:6px; display:grid; gap:2px; max-height:340px; overflow:auto }
.muted { color:var(--ep-texte-3); font-size:12.5px }

/* ══════════════════════════════════════════════════════════════════════════
   COQUILLE RÉELLE — v5.22
   Mon rapport de couverture ne scannait que #view : la coquille, les
   surcouches et les notifications étaient hors de son champ et sont restées
   sans aucune règle. Ce sont les noms de classes réellement présents dans
   admin/index.html, relevés sur la page servie.
   ══════════════════════════════════════════════════════════════════════════ */

/* Bandeau d'environnement */
.ep-bandeau-dev { position:fixed; top:0; left:50%; transform:translateX(-50%); z-index:98;
  background:var(--ep-alerte); color:#fff; padding:5px 18px; border-radius:0 0 var(--ep-r-1) var(--ep-r-1);
  font-size:10.5px; font-weight:700; letter-spacing:.11em; text-transform:uppercase }

/* Le conteneur de contenu porte deux classes : .ep-contenu et .main.
   v5.33.4 — L'historique .main portait « padding:1.6rem 2.1rem » ; ce padding
   a été perdu lors du passage à la feuille unique. Or .page-header le suppose
   (marges négatives -20px -24px pour déborder jusqu'aux bords) : sans lui,
   l'en-tête sortait du cadre et les tables touchaient les bords de l'écran.
   Padding par défaut, annulé pour les gabarits pleine largeur qui posent leur
   propre en-tête bord à bord (.ep-entete, .ep-page, .ep-contenu--pad,
   .st-editor) — même logique que les règles :has déjà en place pour
   .ep-dossier et .ep-split. */
.main { min-width:0; padding:20px 24px }
#view:has(> .ep-entete), #view:has(> .ep-page), #view:has(> .ep-contenu--pad),
#view:has(> .st-editor) { padding:0 }

/* Sélecteur d'établissement et pied du rail : noms réels */
.ep-rail__parc-l { display:block; font-size:9.5px; font-weight:600; letter-spacing:.1em;
  text-transform:uppercase; color:var(--ep-texte-3) }
.ep-rail__parc-select { border:0; background:none; color:var(--ep-encre); font-size:13px;
  font-weight:600; width:100%; padding:0; font-family:var(--ep-f-ui); cursor:pointer }
.ep-rail__moi-t { flex:1; min-width:0 }

/* ── Volet latéral ────────────────────────────────────────────────────── */
.drawer-overlay { position:fixed; inset:0; background:rgba(43,29,20,.42); z-index:60 }
.drawer { position:fixed; top:0; right:0; bottom:0; width:min(560px,100vw); z-index:61;
  display:flex; flex-direction:column; background:var(--ep-surface); box-shadow:var(--ep-om-3) }
.drawer.large { width:min(1080px,100vw) }
.drawer-head { padding:14px 20px; border-bottom:1px solid var(--ep-ligne);
  display:flex; align-items:center; justify-content:space-between; gap:12px; flex:0 0 auto }
.drawer-head h2, .drawer-head h3 { font-family:var(--ep-f-titre); font-size:16px; font-weight:700 }
.drawer-body { flex:1; overflow-y:auto; padding:18px 20px; min-height:0 }
.drawer-foot { padding:13px 20px; border-top:1px solid var(--ep-ligne);
  display:flex; gap:9px; align-items:center; flex-wrap:wrap; flex:0 0 auto }
.drawer-close { width:32px; height:32px; display:grid; place-items:center; border:0;
  border-radius:var(--ep-r-1); background:none; color:var(--ep-texte-2); cursor:pointer }
.drawer-close:hover { background:var(--ep-canvas); color:var(--ep-texte) }

/* ── Surcouche modale ─────────────────────────────────────────────────── */
.modal-overlay { position:fixed; inset:0; z-index:62; background:rgba(43,29,20,.42);
  display:grid; place-items:center; padding:24px }
.modal { width:min(620px,100%); max-height:88vh; display:flex; flex-direction:column;
  background:var(--ep-surface); border-radius:var(--ep-r-2); box-shadow:var(--ep-om-3); overflow:hidden }
.modal--rep { width:min(880px,100%) }
.modal-head { padding:14px 20px; border-bottom:1px solid var(--ep-ligne);
  display:flex; align-items:center; justify-content:space-between; gap:12px; flex:0 0 auto }
.modal-head h2, .modal-head h3 { font-family:var(--ep-f-titre); font-size:16px; font-weight:700 }
.modal-body { flex:1; overflow-y:auto; padding:18px 20px; min-height:0 }
.modal-foot { padding:13px 20px; border-top:1px solid var(--ep-ligne);
  display:flex; gap:9px; align-items:center; justify-content:flex-end; flex-wrap:wrap; flex:0 0 auto }

/* ── Notifications ────────────────────────────────────────────────────── */
.ep-toasts, .toast-zone { position:fixed; bottom:18px; right:18px; z-index:90; display:grid; gap:8px }

/* ── Listes du module expérience ──────────────────────────────────────── */
.exp-list-row { display:flex; align-items:center; gap:12px; padding:11px 0;
  border-bottom:1px solid var(--ep-ligne) }
.exp-list-row:last-child { border-bottom:0 }
.exp-list-row__main { flex:1; min-width:0 }
.exp-list-row__title { font-weight:600; font-size:13.5px; color:var(--ep-encre) }
.exp-list-row__meta { font-size:12px; color:var(--ep-texte-3); margin-top:3px; line-height:1.45 }
.exp-badge { display:inline-flex; align-items:center; gap:5px; padding:3px 9px;
  border-radius:var(--ep-r-3); font-size:11px; font-weight:600; white-space:nowrap;
  background:var(--ep-canvas); color:var(--ep-texte-2); border:1px solid var(--ep-ligne) }
.exp-badge--good   { background:var(--ep-ok-voile);     color:var(--ep-ok);     border-color:var(--ep-ok-bord) }
.exp-badge--info   { background:var(--ep-info-voile);   color:var(--ep-info);   border-color:var(--ep-info-bord) }
.exp-badge--warn   { background:var(--ep-attn-voile);   color:var(--ep-attn);   border-color:var(--ep-attn-bord) }
.exp-badge--danger { background:var(--ep-alerte-voile); color:var(--ep-alerte); border-color:var(--ep-alerte-bord) }

/* Pastilles de vue dans le rail de segments */
.ep-pt--ok     { background:var(--ep-ok) }
.ep-pt--alerte { background:var(--ep-alerte) }
.ep-pt--attn   { background:var(--ep-attn) }
.ep-pt--neutre { background:var(--ep-texte-3) }

/* ══════════════════════════════════════════════════════════════════════════
   L'ATTRIBUT hidden L'EMPORTE TOUJOURS
   Une règle de classe qui fixe `display` écrase le `display:none` que le
   navigateur applique à [hidden] : la modale et le volet, masqués en HTML,
   redevenaient visibles. C'est la première règle à écrire quand on style des
   surcouches, et je l'avais omise.
   ══════════════════════════════════════════════════════════════════════════ */
[hidden] { display:none !important }

/* ══════════════════════════════════════════════════════════════════════════
   ÉCARTS RELEVÉS SUR LE CÔTE-À-CÔTE — v5.24
   ══════════════════════════════════════════════════════════════════════════ */

/* Rail de vues : l'état actif de la maquette Réglages */
.ep-segments a.is-actif { background:var(--ep-corail-voile); color:var(--ep-corail-fonce);
  font-weight:600; box-shadow:inset 3px 0 var(--ep-corail) }
.ep-segments a.is-actif .ep-n { color:var(--ep-corail-fonce) }
.ep-segments { padding:14px 10px }
.ep-segments a { padding:8px 9px; line-height:1.35 }

/* Bloc de réglage : la maquette sépare le titre du contenu par un filet.
   Sans cette barre, les cartes paraissent tassées et les boutons collés. */
.ep-bloc-r__t { padding:13px 18px; border-bottom:1px solid var(--ep-ligne) }
.ep-bloc-r__c { padding:6px 18px 18px }

/* Le pied d'enregistrement respire et se détache du dernier champ */
.ep-reg-pied { padding:14px 18px; margin:0 -18px -18px;
  border-top:1px solid var(--ep-ligne); background:var(--ep-surface);
  display:flex; gap:10px; align-items:center; flex-wrap:wrap }
.ep-reg-pied .ep-faible { margin-left:auto; font-size:12px }

/* Deux champs sur une ligne — « Prénom et nom » */
.ep-duo { display:grid; grid-template-columns:1fr 1fr; gap:12px }
@media (max-width:900px) { .ep-duo { grid-template-columns:1fr } }

/* Les lignes de réglage ont l'aération de la maquette */
.ep-reg-l { grid-template-columns:250px minmax(0,1fr); gap:24px; padding:16px 0 }
.ep-reg-l > div:first-child > small, .ep-reg-l dt small {
  margin-top:4px; line-height:1.5; font-size:12px; color:var(--ep-texte-3) }

/* ══════════════════════════════════════════════════════════════════════════
   RÉGLAGES — composants internes des pages
   Relevés par analyse du code source : ils sont rendus après coup, donc
   invisibles pour un rapport qui ne scanne que le DOM initial.
   ══════════════════════════════════════════════════════════════════════════ */

/* Éditeur de signature et de modèle */
.rm-item { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  background:var(--ep-surface-2); padding:14px; margin-bottom:12px }
.rm-item__head { display:flex; align-items:center; gap:9px; margin-bottom:10px }
.rm-titre, .rmT { flex:1; min-width:0; font-weight:600 }
.rm-del, .rmDel { flex:0 0 auto }
.rm-tb { display:flex; align-items:center; gap:2px; padding:4px 6px;
  border:1px solid var(--ep-ligne-forte); border-bottom:0;
  border-radius:var(--ep-r-1) var(--ep-r-1) 0 0; background:var(--ep-surface) }
.rm-tb button { width:28px; height:28px; display:grid; place-items:center; border:0;
  border-radius:var(--ep-r-1); background:none; color:var(--ep-texte-2); font-size:13px }
.rm-tb button:hover { background:var(--ep-canvas); color:var(--ep-texte) }
.rm-rte { min-height:96px; padding:11px 13px; border:1px solid var(--ep-ligne-forte);
  border-radius:0 0 var(--ep-r-1) var(--ep-r-1); background:var(--ep-surface);
  font-size:13.5px; line-height:1.55 }
.rm-rte:focus { outline:none; border-color:var(--ep-corail); box-shadow:0 0 0 3px var(--ep-corail-voile) }
.rm-var { padding:3px 9px; border-radius:var(--ep-r-3); font-family:var(--ep-f-data);
  font-size:10.5px; border:1px solid var(--ep-ligne); background:var(--ep-canvas);
  color:var(--ep-texte-2); cursor:pointer }
.rm-var:hover { border-color:var(--ep-dore); background:var(--ep-sable-voile) }
.rm-legend { display:flex; gap:7px; flex-wrap:wrap; margin-top:9px }

/* Exemples fournis à l'IA */
.ep-exemple { display:grid; grid-template-columns:1fr 1fr auto; gap:10px; align-items:start;
  padding:12px; border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  background:var(--ep-surface-2); margin-bottom:10px }
.ep-exemple input, .ep-exemple textarea { width:100% }
@media (max-width:900px) { .ep-exemple { grid-template-columns:1fr } }

/* Panneau de proposition IA */
.ia-panel { background:var(--ep-info-voile); border:1px solid var(--ep-info-bord);
  border-radius:var(--ep-r-2); padding:13px 15px; margin:12px 0 }
.ia-panel__head { display:flex; align-items:center; gap:8px; font-size:11.5px; font-weight:700;
  color:var(--ep-info); text-transform:uppercase; letter-spacing:.06em; margin-bottom:8px }
.ia-panel__actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:11px }
.ia-panel__status { font-size:12px; color:var(--ep-texte-3) }
.ia-proposition { font-size:13.5px; line-height:1.55; color:#2E4372 }
.btn--ia { background:var(--ep-info); border-color:var(--ep-info); color:#fff }
.btn--ia:hover { background:#35497A; border-color:#35497A; color:#fff }

/* Formulaires hérités encore présents dans quelques pages */
.form-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:14px }
.form-row, .field { display:grid; gap:6px; margin-bottom:14px }
.form-row > label, .field > label { font-size:11px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; color:var(--ep-texte-3) }
.full { grid-column:1/-1 }
.hint { font-size:12px; color:var(--ep-texte-3); line-height:1.5 }
.sep { height:1px; background:var(--ep-ligne); border:0; margin:18px 0 }
.checks { display:flex; gap:14px; flex-wrap:wrap }
.lbl { font-size:11px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; color:var(--ep-texte-3) }
.lbl-mini { font-size:11px; color:var(--ep-texte-3) }
.soon-panel { padding:40px 24px; text-align:center; color:var(--ep-texte-3) }
.soon-panel p { max-width:460px; margin:8px auto 0; line-height:1.6; font-size:13px }

/* Notifications : contenu.
   v5.33.1 — notify() émet class="toast toast--type" ; seule .ep-toast était
   stylée, les notifications s'affichaient donc en texte brut. */
.toast { display:flex; align-items:flex-start; gap:9px; background:var(--ep-encre); color:#fff;
  padding:11px 15px; border-radius:var(--ep-r-2); box-shadow:var(--ep-om-3);
  font-size:13px; max-width:340px; line-height:1.45 }
.toast--danger  { background:var(--ep-alerte) }
.toast--info    { background:var(--ep-info) }
.toast--success { background:var(--ep-encre); box-shadow:var(--ep-om-3), inset 3px 0 var(--ep-ok) }
.toast strong { display:block; margin-bottom:2px }
.toast__body { flex:1; min-width:0 }
.toast__close { border:0; background:none; color:rgba(255,255,255,.6); cursor:pointer; padding:0 2px }
.toast__close:hover { color:#fff }

/* Vérification d'une réponse */
.verif-box { border:1px solid var(--ep-attn-bord); background:var(--ep-attn-voile);
  border-radius:var(--ep-r-2); padding:13px 15px; margin-top:12px }

/* Arbre de catégories et articles de connaissance */
.exp-category-tree { display:grid }
.exp-category-row { display:flex; align-items:center; gap:12px; padding:11px 0;
  border-bottom:1px solid var(--ep-ligne) }
.exp-category-row:last-child { border-bottom:0 }
.exp-category-row strong { font-size:13.5px; font-weight:600 }
.exp-category-row .muted { margin-top:2px }
.exp-category-row small { display:block; font-family:var(--ep-f-data); font-size:11px;
  color:var(--ep-texte-3); margin-top:4px }
.exp-category-row.is-child { padding-left:28px; position:relative }
.exp-category-row.is-child::before { content:""; position:absolute; left:10px; top:50%;
  width:10px; height:1px; background:var(--ep-ligne-forte) }
.exp-knowledge { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  padding:13px 15px; margin-bottom:11px; background:var(--ep-surface-2) }
.exp-knowledge strong { display:block; font-size:13.5px; font-weight:600 }
.exp-knowledge span { display:inline-block; font-size:11.5px; color:var(--ep-texte-3); margin-top:2px }
.exp-knowledge p { font-size:12.5px; color:var(--ep-texte-2); line-height:1.5; margin:8px 0 10px }
.exp-field { display:grid; grid-template-columns:250px minmax(0,1fr); gap:24px; align-items:center;
  padding:16px 0; border-bottom:1px solid var(--ep-ligne) }
.exp-field:last-child { border-bottom:0 }
.exp-field > label { font-size:13.5px; font-weight:600; color:var(--ep-encre) }
.exp-field input, .exp-field select, .exp-field textarea { width:100% }
.exp-form-grid { display:grid }
.exp-check { display:flex; align-items:center; gap:11px; padding:16px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13.5px; color:var(--ep-encre) }
.exp-check:last-child { border-bottom:0 }
.exp-check.full { grid-column:1/-1 }
.exp-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap }
.exp-qw-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:12px }
.exp-qw-metric { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  padding:13px 15px; background:var(--ep-surface); display:grid; gap:3px }
.exp-qw-metric strong { font-family:var(--ep-f-data); font-size:22px; font-weight:500; line-height:1.1 }
.exp-qw-metric small { font-size:11.5px; color:var(--ep-texte-3); line-height:1.4 }
.exp-checklist-item { display:flex; align-items:center; gap:10px; padding:9px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13px }
.exp-rule-builder, .exp-rule-row, .exp-rule-action { display:grid; gap:10px }
.exp-modal-section { padding:14px 0; border-bottom:1px solid var(--ep-ligne) }
.exp-modal-section:last-child { border-bottom:0 }
.exp-readonly { color:var(--ep-texte-3) }
.text-danger { color:var(--ep-alerte) }
@media (max-width:900px) { .exp-field { grid-template-columns:1fr; gap:8px } }

/* ══════════════════════════════════════════════════════════════════════════
   ÉDITEUR D'ENQUÊTE
   29 classes. L'écran où l'on construit un questionnaire : la lisibilité de
   la structure prime sur la décoration.
   ══════════════════════════════════════════════════════════════════════════ */

.ed-etape-head { display:flex; align-items:center; gap:10px; padding:12px 15px;
  background:var(--ep-surface-2); border-bottom:1px solid var(--ep-ligne) }
.ed-etape-body { padding:15px }
.ed-qs { display:grid; gap:10px }
.ed-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-top:12px }

/* Une question : type, libellé, actions */
.qname { font-size:13.5px; font-weight:600; color:var(--ep-encre) }
.qlabel { font-size:13px; color:var(--ep-texte-2); line-height:1.5 }
.qtype { display:inline-flex; align-items:center; gap:5px; padding:2px 9px;
  border-radius:var(--ep-r-3); font-size:11px; font-weight:600; white-space:nowrap;
  background:var(--ep-canvas); color:var(--ep-texte-3); border:1px solid var(--ep-ligne) }
.note-txt { font-size:12.5px; color:var(--ep-texte-2) }

/* État de publication */
.enq-status { display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:600 }
.enq-draft-dot { width:8px; height:8px; border-radius:var(--ep-r-3);
  background:var(--ep-attn); display:inline-block; flex:0 0 auto }

/* Flux de validation */
.ed-workflow { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:14px }
.ed-workflow__state { display:inline-flex; align-items:center; gap:6px; padding:5px 12px;
  border-radius:var(--ep-r-3); font-size:12px; font-weight:600;
  background:var(--ep-canvas); color:var(--ep-texte-2); border:1px solid var(--ep-ligne) }
.ed-workflow__state.is-active { background:var(--ep-corail-voile);
  color:var(--ep-corail-fonce); border-color:var(--ep-corail) }

/* Diagnostic du questionnaire */
.diag-score { display:flex; align-items:center; gap:14px; padding:14px 16px;
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  background:var(--ep-surface); margin-bottom:14px }
.diag-score__num { font-family:var(--ep-f-data); font-size:32px; font-weight:500;
  line-height:1; color:var(--ep-encre) }
.diag-list { display:grid; gap:8px }
.diag-item { display:flex; align-items:flex-start; gap:9px; padding:10px 13px;
  border-radius:var(--ep-r-1); font-size:13px; line-height:1.5;
  background:var(--ep-surface-2); border:1px solid var(--ep-ligne) }
.diag-item--warn  { background:var(--ep-attn-voile);   border-color:var(--ep-attn-bord);   color:#7A4E08 }
.diag-item--error { background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord); color:#94271C }

/* Aperçu */
.preview-shell { display:flex; flex-direction:column; height:100%; min-height:0 }
.preview-toolbar { display:flex; align-items:center; gap:9px; flex-wrap:wrap;
  padding:10px 16px; background:var(--ep-surface); border-bottom:1px solid var(--ep-ligne) }
.preview-stage { flex:1; min-height:0; overflow:auto; padding:20px;
  background:var(--ep-canvas); display:grid; place-items:start center }
.preview-frame { width:100%; max-width:820px; min-height:520px; border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); background:#fff; box-shadow:var(--ep-om-2) }
.preview-frame.mini { max-width:390px; min-height:640px }

/* Langues */
.langtabs { display:inline-flex; gap:2px; padding:2px; border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-1); background:var(--ep-canvas) }
.langtabs button { padding:5px 11px; border:0; border-radius:4px; background:none;
  font-size:12.5px; font-weight:600; color:var(--ep-texte-3) }
.langtabs button.on, .langtabs button.is-active { background:var(--ep-surface);
  color:var(--ep-encre); box-shadow:var(--ep-om-1) }
.flag-prev { width:20px; height:14px; border-radius:2px; object-fit:cover; flex:0 0 auto }

/* Versions */
.version-row { display:flex; align-items:center; gap:12px; padding:11px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13px }
.version-row:last-child { border-bottom:0 }
.version-row__main { flex:1; min-width:0 }
.badge--info { background:var(--ep-info-voile); color:var(--ep-info); border-color:var(--ep-info-bord) }
.badge--star { background:var(--ep-sable-voile); color:var(--ep-encre); border-color:var(--ep-dore) }

/* ══════════════════════════════════════════════════════════════════════════
   STUDIO — construction de rapports
   129 classes. Trois zones : la palette de blocs à gauche, la page au centre,
   les propriétés à droite. Le rendu doit ressembler à ce qui sera imprimé.
   ══════════════════════════════════════════════════════════════════════════ */

/* ── Coquille de l'éditeur ────────────────────────────────────────────── */
.st-editor { display:flex; flex-direction:column; height:100%; min-height:0; background:var(--ep-canvas) }
.st-editor-bar { display:flex; align-items:center; gap:12px; padding:10px 18px;
  background:var(--ep-surface); border-bottom:1px solid var(--ep-ligne); flex:0 0 auto; flex-wrap:wrap }
.st-editor-bar__left, .st-editor-bar__center, .st-editor-bar__right {
  display:flex; align-items:center; gap:8px; flex-wrap:wrap }
.st-editor-bar__center { flex:1; justify-content:center }
.st-editor-bar__right { margin-left:auto }
.st-title-input { font-family:var(--ep-f-titre); font-size:16px; font-weight:700;
  border:1px solid transparent; background:none; padding:5px 9px; border-radius:var(--ep-r-1);
  min-width:220px }
.st-title-input:hover { border-color:var(--ep-ligne) }
.st-title-input:focus { border-color:var(--ep-corail); background:var(--ep-surface) }
.st-editor-grid { flex:1; display:grid; grid-template-columns:230px 1fr 300px;
  overflow:hidden; min-height:0 }
.st-workspace { overflow:auto; min-width:0; background:var(--ep-canvas) }
.st-canvas-scroll { padding:22px; display:grid; justify-items:center; gap:18px }

/* ── Palette de blocs ─────────────────────────────────────────────────── */
.st-palette { border-right:1px solid var(--ep-ligne); background:var(--ep-surface);
  overflow-y:auto; padding:12px 10px }
.st-palette__head { font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  color:var(--ep-texte-3); padding:12px 8px 7px }
.st-palette__head:first-child { padding-top:0 }
.st-palette-item { display:flex; align-items:center; gap:9px; padding:8px 9px;
  border-radius:var(--ep-r-1); font-size:13px; color:var(--ep-texte-2);
  border:1px solid transparent; cursor:grab; margin-bottom:2px; background:none; width:100%; text-align:left }
.st-palette-item:hover { background:var(--ep-surface-2); border-color:var(--ep-ligne); color:var(--ep-texte) }
.st-palette-item:active { cursor:grabbing }

/* ── Propriétés ───────────────────────────────────────────────────────── */
.st-properties { border-left:1px solid var(--ep-ligne); background:var(--ep-surface);
  overflow-y:auto; padding:14px }
.st-prop-head { display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding-bottom:11px; border-bottom:1px solid var(--ep-ligne); margin-bottom:14px }
.st-prop-head h3 { font-family:var(--ep-f-titre); font-size:14px; font-weight:700 }
.st-prop-actions { display:flex; gap:6px; align-items:center }
.st-details { border-top:1px solid var(--ep-ligne); padding-top:12px; margin-top:12px }
.st-details > summary { font-size:11px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; color:var(--ep-texte-3); cursor:pointer; margin-bottom:10px }
.switch-line { display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:9px 0; border-bottom:1px solid var(--ep-ligne); font-size:13px }
.switch-line:last-child { border-bottom:0 }
.field-grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:10px }
.st-pos-grid, .st-padding-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px }
.st-divider { height:1px; background:var(--ep-ligne); border:0; margin:14px 0 }

/* ── Page et blocs ────────────────────────────────────────────────────── */
.st-page-wrap { display:grid; gap:14px; justify-items:center; width:100% }
.st-page-tabs { display:flex; gap:2px; align-items:center; flex-wrap:wrap;
  padding:8px 18px; background:var(--ep-surface); border-bottom:1px solid var(--ep-ligne) }
.st-page-tabs button { padding:6px 12px; border:0; border-radius:var(--ep-r-1);
  font-size:12.5px; font-weight:600; color:var(--ep-texte-3); background:none }
.st-page-tabs button.on, .st-page-tabs button.is-active { background:var(--ep-sable-voile);
  color:var(--ep-encre) }
.st-page-add { border:1px dashed var(--ep-ligne-forte); color:var(--ep-texte-3) }
.st-page { position:relative; width:794px; max-width:100%; min-height:1123px;
  background:#fff; border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1);
  box-shadow:var(--ep-om-2) }
.st-page--print { box-shadow:none; border:0; border-radius:0 }
.st-zoom { transform-origin:top center }
.st-resize { position:absolute; right:0; bottom:0; width:14px; height:14px; cursor:nwse-resize;
  background:linear-gradient(135deg, transparent 50%, var(--ep-ligne-forte) 50%) }

.st-widget__drag { cursor:move }
.st-widget__menu { position:absolute; top:6px; right:6px; display:flex; gap:4px; opacity:0;
  transition:opacity .12s }
.st-widget__drag:hover .st-widget__menu, .st-widget__menu:focus-within { opacity:1 }
.st-widget__content { padding:12px }
.st-widget-title { font-family:var(--ep-f-titre); font-size:14px; font-weight:700;
  margin-bottom:10px; color:var(--ep-encre) }
.st-widget-loading { padding:26px; text-align:center; color:var(--ep-texte-3); font-size:12.5px }
.st-widget-error { padding:16px; border-radius:var(--ep-r-1); font-size:12.5px;
  background:var(--ep-alerte-voile); border:1px solid var(--ep-alerte-bord); color:#94271C }

/* ── Blocs de contenu ─────────────────────────────────────────────────── */
.st-kpi { display:grid; gap:4px }
.st-kpi__comparison, .st-inline-comparison { font-size:12px; color:var(--ep-texte-3) }
.st-mini-result { font-family:var(--ep-f-data); font-size:20px; font-weight:500 }
.st-score-cell { font-family:var(--ep-f-data); font-weight:500 }
.st-free-text { font-size:13px; line-height:1.6; color:var(--ep-texte-2) }
.st-image { max-width:100%; height:auto; display:block; border-radius:var(--ep-r-1) }
.st-code-wrap { font-family:var(--ep-f-data); font-size:12px; background:var(--ep-surface-2);
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1); padding:10px 12px;
  overflow:auto; white-space:pre-wrap; word-break:break-word }
.st-chip { display:inline-flex; align-items:center; gap:5px; padding:2px 9px;
  border-radius:var(--ep-r-3); font-size:11px; font-weight:600;
  background:var(--ep-canvas); color:var(--ep-texte-2); border:1px solid var(--ep-ligne) }
.st-period { font-size:12px; color:var(--ep-texte-3) }
.st-legend, .st-series-legend, .st-chart-legend { display:flex; flex-wrap:wrap; gap:12px;
  font-size:11.5px; color:var(--ep-texte-2) }
.st-chart-legend__item { display:inline-flex; align-items:center; gap:6px }
.st-chart-legend__item i { width:9px; height:9px; border-radius:2px; display:block }

/* ── Graphiques ───────────────────────────────────────────────────────── */
.st-chart, .st-chart-visual { width:100%; min-width:0 }
.st-chart svg, .st-chart-visual svg { width:100%; height:auto; display:block }
.st-chart-layout { display:grid; gap:12px; align-items:center }
.st-chart-layout--bottom { grid-template-columns:1fr }
.st-chart-pair { display:grid; grid-template-columns:1fr 1fr; gap:14px }
.st-chart-caption { font-size:11.5px; color:var(--ep-texte-3); margin-top:8px; text-align:center }
.st-gauge { display:grid; place-items:center }
.st-gauge__ring { transform:rotate(-90deg) }
.st-distribution { display:grid; gap:7px }
.st-distribution__row { display:grid; grid-template-columns:52px 1fr 46px; align-items:center;
  gap:10px; font-size:12.5px }
.st-hour-bars, .st-nps-segments { display:flex; gap:3px; align-items:flex-end }

/* NPS et Google */
.st-nps-summary { display:grid; gap:10px }
.st-nps-main { font-family:var(--ep-f-data); font-size:34px; font-weight:500; line-height:1 }
.st-nps-footer { font-size:11.5px; color:var(--ep-texte-3) }
.st-google-summary { display:grid; gap:8px }
.st-google-summary__top { display:flex; align-items:baseline; gap:10px }
.st-google-stars { color:var(--ep-dore); letter-spacing:1px }

/* ── Tableaux du Studio ───────────────────────────────────────────────── */
.st-data-table, .st-question-table, .st-actions-table, .st-calculated-table {
  width:100%; border-collapse:separate; border-spacing:0; font-size:12.5px }
.st-data-table th, .st-question-table th, .st-actions-table th, .st-calculated-table th {
  background:var(--ep-surface-2); border-bottom:1px solid var(--ep-ligne-forte);
  padding:8px 11px; text-align:left; font-size:10.5px; font-weight:700;
  letter-spacing:.07em; text-transform:uppercase; color:var(--ep-texte-3) }
.st-data-table td, .st-question-table td, .st-actions-table td, .st-calculated-table td {
  padding:8px 11px; border-bottom:1px solid var(--ep-ligne) }
.st-data-toolbar, .st-objective-toolbar, .st-qweekle-toolbar {
  display:flex; align-items:center; gap:9px; flex-wrap:wrap; margin-bottom:12px }

/* Lignes calculées */
.st-calculated-rows { display:grid; gap:10px }
.st-calculated-row { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  padding:12px; background:var(--ep-surface-2) }
.st-calculated-row__head { display:flex; align-items:center; gap:9px; margin-bottom:10px }
.st-calc-label, .st-calc-formula, .st-calc-ref, .st-calc-unit,
.st-calc-format, .st-calc-decimals, .st-calc-direction { width:100% }
.st-calc-formula { font-family:var(--ep-f-data); font-size:12.5px }
.st-formula-preview { font-family:var(--ep-f-data); font-size:12px; color:var(--ep-texte-3);
  background:var(--ep-canvas); border-radius:var(--ep-r-1); padding:8px 10px; margin-top:8px }
.st-formula-chips { display:flex; gap:5px; flex-wrap:wrap; margin-top:8px }

/* ── Cartes de rapport et objectifs ───────────────────────────────────── */
.st-report-grid, .st-objectives-grid, .st-qweekle-grid, .st-category-cards {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:14px }
.st-report-card, .st-objective-card, .st-qweekle-card {
  background:var(--ep-surface); border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  box-shadow:var(--ep-om-1); overflow:hidden; display:flex; flex-direction:column }
.st-report-card__preview { height:150px; background:var(--ep-surface-2);
  border-bottom:1px solid var(--ep-ligne); display:grid; place-items:center;
  color:var(--ep-texte-3); font-size:12px; overflow:hidden }
.st-report-card__body { padding:13px 15px; flex:1 }
.st-report-card__actions { padding:11px 15px; border-top:1px solid var(--ep-ligne);
  display:flex; gap:7px; align-items:center; flex-wrap:wrap }
.st-objective-card__value { font-family:var(--ep-f-data); font-size:24px; font-weight:500; line-height:1.1 }
.st-objective-card__bar { height:7px; background:var(--ep-ligne); border-radius:var(--ep-r-3);
  overflow:hidden; margin-top:8px }
.st-objective-card__bar > i { display:block; height:100%; background:var(--ep-ok); border-radius:var(--ep-r-3) }
.st-objective-list { display:grid; gap:10px }
.st-objective-mini { display:flex; align-items:center; gap:10px; padding:9px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13px }
.st-objective-mini:last-child { border-bottom:0 }
.st-priority { display:inline-flex; align-items:center; gap:5px; font-size:11.5px; font-weight:600 }

/* ── En-tête de rapport et impression ─────────────────────────────────── */
.st-report-header { display:flex; align-items:flex-start; justify-content:space-between;
  gap:14px; padding-bottom:14px; border-bottom:1px solid var(--ep-ligne); margin-bottom:16px }
.st-report-header__text h1 { font-family:var(--ep-f-titre); font-size:20px; font-weight:700 }
.st-report-header__period { font-size:12px; color:var(--ep-texte-3); margin-top:3px }
.st-print-root { background:#fff }
.st-print-sheet { width:794px; max-width:100%; margin:0 auto; background:#fff; padding:28px }
@media print {
  .st-palette, .st-properties, .st-editor-bar, .st-page-tabs { display:none !important }
  .st-editor-grid { grid-template-columns:1fr }
  .st-page { box-shadow:none; border:0; break-after:page }
}

/* ── Commentaires ─────────────────────────────────────────────────────── */
.st-comments { display:grid; gap:10px }
.st-comment { padding:11px 13px; border-radius:var(--ep-r-2); font-size:13px; line-height:1.55;
  background:var(--ep-surface-2); border:1px solid var(--ep-ligne) }

/* ── États ────────────────────────────────────────────────────────────── */
.st-open { display:block }
.is-preview .st-widget__menu, .is-preview .st-resize { display:none }
.is-business-template { border-color:var(--ep-dore); box-shadow:0 0 0 1px var(--ep-dore) }
.badge--success { background:var(--ep-ok-voile); color:var(--ep-ok); border-color:var(--ep-ok-bord) }

@media (max-width:1200px) {
  .st-editor-grid { grid-template-columns:1fr }
  .st-palette, .st-properties { display:none }
}

/* ══════════════════════════════════════════════════════════════════════════
   DERNIERS COMPOSANTS — Pilotage, palette de commande, camemberts
   ══════════════════════════════════════════════════════════════════════════ */

/* Boutons d'action des listes du Studio : ils héritent du bouton du système */
.st-del, .st-dup, .st-metric-del, .st-metric-edit, .st-calc-row-del,
.std-del, .std-edit, .sto-del, .sto-edit, .stq-del, .stq-edit, .stq-test {
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  padding:5px 10px; border-radius:var(--ep-r-1); font-size:12.5px; font-weight:600;
  border:1px solid var(--ep-ligne-forte); background:var(--ep-surface);
  color:var(--ep-texte); cursor:pointer }
.st-del:hover, .st-metric-del:hover, .st-calc-row-del:hover, .std-del:hover,
.sto-del:hover, .stq-del:hover { background:var(--ep-alerte-voile);
  border-color:var(--ep-alerte-bord); color:var(--ep-alerte) }
.st-chart--pie, .st-chart--radar { display:grid; place-items:center }
.st-chart--horizontal .st-chart-visual { width:100% }

/* ── Pilotage ─────────────────────────────────────────────────────────── */
.rp-category { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  padding:13px 15px; background:var(--ep-surface); display:grid; gap:6px }
.rp-category__head { display:flex; align-items:center; justify-content:space-between; gap:10px;
  font-size:13px; font-weight:600 }
.rp-category__score { font-family:var(--ep-f-data); font-size:20px; font-weight:500; line-height:1.1 }
.rp-progress { height:7px; background:var(--ep-ligne); border-radius:var(--ep-r-3); overflow:hidden }
.rp-progress > i, .rp-progress > div { display:block; height:100%; border-radius:var(--ep-r-3);
  background:var(--ep-ok) }
.rp-objective { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  padding:13px 15px; background:var(--ep-surface); display:grid; gap:8px }
.rp-objective__head { display:flex; align-items:center; justify-content:space-between; gap:10px;
  font-size:13px; font-weight:600 }
.rp-objective__numbers { display:flex; align-items:baseline; gap:8px;
  font-family:var(--ep-f-data); font-size:20px; font-weight:500 }
.rp-comment { border-left:2px solid var(--ep-ligne-forte); padding:9px 0 9px 12px;
  font-size:13px; line-height:1.55; color:var(--ep-texte-2) }
.rp-comment__meta { font-size:11.5px; color:var(--ep-texte-3); margin-top:5px }
.rp-comment.rp-good { border-left-color:var(--ep-ok) }
.rp-comment.rp-bad  { border-left-color:var(--ep-alerte) }
.rp-theme { display:flex; align-items:center; gap:10px; padding:9px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13px }
.rp-theme:last-child { border-bottom:0 }
.rp-theme__counts { margin-left:auto; font-family:var(--ep-f-data); font-size:12px;
  color:var(--ep-texte-3); display:flex; gap:9px }
.rp-reco { display:flex; align-items:flex-start; gap:11px; padding:11px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13px; line-height:1.55 }
.rp-reco:last-child { border-bottom:0 }
.rp-reco__num { width:24px; height:24px; border-radius:var(--ep-r-3); flex:0 0 auto;
  display:grid; place-items:center; font-family:var(--ep-f-data); font-size:11.5px;
  background:var(--ep-corail-voile); color:var(--ep-corail-fonce) }
.rp-rank { font-family:var(--ep-f-data); font-size:12px; color:var(--ep-texte-3) }
.rp-delta { font-size:12px; font-weight:600 }
.rp-delta--flat { color:var(--ep-texte-3) }
.rp-create-action { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-top:12px }

/* ── Palette de commande (⌘K) ─────────────────────────────────────────── */
.ep-palette { position:fixed; inset:0; z-index:70; display:grid; justify-items:center;
  align-content:start; padding:12vh 20px 20px; background:rgba(43,29,20,.42) }
.ep-palette__saisie { width:min(620px,100%); padding:15px 18px; font-size:15px;
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2) var(--ep-r-2) 0 0;
  background:var(--ep-surface); box-shadow:var(--ep-om-3) }
.ep-palette__res { width:min(620px,100%); max-height:52vh; overflow-y:auto;
  background:var(--ep-surface); border:1px solid var(--ep-ligne); border-top:0;
  border-radius:0 0 var(--ep-r-2) var(--ep-r-2); box-shadow:var(--ep-om-3) }
.ep-palette__grp { font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  color:var(--ep-texte-3); padding:12px 16px 6px }
.ep-palette__el { display:flex; align-items:center; gap:10px; padding:10px 16px;
  font-size:13.5px; color:var(--ep-texte-2); cursor:pointer; border:0;
  background:none; width:100%; text-align:left }
.ep-palette__el:hover, .ep-palette__el.is-actif { background:var(--ep-sable-voile); color:var(--ep-encre) }

/* ── Camemberts ───────────────────────────────────────────────────────── */
.pie-wrap { display:flex; align-items:center; gap:18px; flex-wrap:wrap }
.pie-legende { display:grid; gap:7px; font-size:12.5px }
.pie-leg { display:flex; align-items:center; gap:8px }
.pie-leg__t { flex:1; min-width:0; color:var(--ep-texte-2) }
.pie-leg__n { font-family:var(--ep-f-data); font-size:12px; color:var(--ep-texte-3) }

/* ══════════════════════════════════════════════════════════════════════════
   DOSSIERS — composants de la fiche et de la file
   ══════════════════════════════════════════════════════════════════════════ */

.rec-status { font-size:11px; color:var(--ep-texte-3) }
.rec-vu { color:var(--ep-texte-3) }
.rec-kv { display:grid; grid-template-columns:auto 1fr; gap:7px 14px; font-size:13px }
.rec-kv dt, .rec-kv > span:nth-child(odd) { color:var(--ep-texte-3); font-size:12px; white-space:nowrap }
.rec-close-reason { min-width:180px }
.rec-viewtoggle { display:inline-flex; gap:2px; padding:2px; background:var(--ep-canvas);
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1) }
.rec-tpl { max-width:200px }

/* Barres de répartition */
.rec-bar { display:grid; gap:4px; margin-bottom:11px }
.rec-bar__l { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:12.5px }
.rec-bar__t { height:7px; background:var(--ep-ligne); border-radius:var(--ep-r-3); overflow:hidden }
.rec-bar__f { display:block; height:100%; border-radius:var(--ep-r-3); background:var(--ep-corail) }
.rec-bar__v { font-family:var(--ep-f-data); font-size:12px; color:var(--ep-texte-3) }

/* Journal d'activité */
.rec-activity { display:grid; gap:2px }
.rec-activity__item { display:flex; align-items:flex-start; gap:10px; padding:9px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13px; line-height:1.5 }
.rec-activity__item:last-child { border-bottom:0 }

/* Pièces jointes */
.rec-files { padding:0 24px 12px }
.rec-files__t { font-size:11px; font-weight:700; letter-spacing:.07em; text-transform:uppercase;
  color:var(--ep-texte-3); margin-bottom:9px }
.rec-att { display:flex; gap:8px; flex-wrap:wrap }
.rec-att--mini { gap:6px }
.rec-file-row, .rec-file-card { display:flex; align-items:center; gap:11px; padding:10px 12px;
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2); background:var(--ep-surface);
  margin-bottom:9px }
.rec-file-main, .rec-file-card__body { flex:1; min-width:0 }
.rec-file-card__name { font-size:13px; font-weight:600; white-space:nowrap;
  overflow:hidden; text-overflow:ellipsis }
.rec-file-card__act { display:flex; gap:6px; flex:0 0 auto }
.rec-file-thumb, .rec-card-thumb, .pj-thumb, .pjs-thumb { width:40px; height:40px; flex:0 0 auto;
  border-radius:var(--ep-r-1); object-fit:cover; background:var(--ep-canvas) }
.rec-file-thumb--ic, .rec-card-thumb--ic { display:grid; place-items:center; color:var(--ep-texte-3) }
.pj-card, .pj-mini { display:flex; align-items:center; gap:9px; padding:8px 11px;
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1);
  background:var(--ep-surface); font-size:12.5px; max-width:260px }
.pj-mini { max-width:200px; padding:6px 9px }
.pj-name, .pj-mini__n { flex:1; min-width:0; white-space:nowrap; overflow:hidden;
  text-overflow:ellipsis; font-weight:500 }
.pj-sz, .pj-meta, .pj-mini__s, .pjs-meta, .pjs-s { font-size:11px; color:var(--ep-texte-3) }
.pj-ic, .pjs-ic { color:var(--ep-texte-3); flex:0 0 auto }
.pj-dl, .pj-open, .pjs-n { flex:0 0 auto }

/* Appels rattachés */
.rec-call-list { display:grid; gap:10px }
.rec-call-card { display:flex; align-items:center; gap:12px; padding:11px 13px;
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2); background:var(--ep-surface) }
.rec-call-icon { width:32px; height:32px; border-radius:var(--ep-r-3); flex:0 0 auto;
  display:grid; place-items:center; background:var(--ep-canvas); color:var(--ep-texte-2) }
.rec-call-main { flex:1; min-width:0 }
.rec-call-title { font-size:13px; font-weight:600 }
.rec-call-route, .rec-call-head { font-size:11.5px; color:var(--ep-texte-3);
  font-family:var(--ep-f-data) }
.rec-call-audio { min-width:190px }
.rec-unlinked-records { display:grid; gap:9px }

/* Étiquettes de client et doublons */
.rec-chip { display:inline-flex; align-items:center; gap:7px; padding:5px 10px;
  border-radius:var(--ep-r-3); font-size:12px; background:var(--ep-canvas);
  border:1px solid var(--ep-ligne); max-width:240px }
.rec-chip__ic { flex:0 0 auto; color:var(--ep-texte-3) }
.rec-chip__n { flex:1; min-width:0; white-space:nowrap; overflow:hidden;
  text-overflow:ellipsis; font-weight:600 }
.rec-chip__s { font-size:11px; color:var(--ep-texte-3) }
.rec-chip__x { border:0; background:none; color:var(--ep-texte-3); cursor:pointer; padding:0 2px }
.rec-duplicate { display:flex; align-items:center; gap:10px; padding:10px 0;
  border-bottom:1px solid var(--ep-ligne) }
.rec-duplicate__main { flex:1; min-width:0 }
.rec-reminders { display:grid; gap:2px }
.rec-reminder { display:flex; align-items:center; gap:10px; padding:9px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13px }
.rec-reminder:last-child { border-bottom:0 }
.rec-reminder__date { font-family:var(--ep-f-data); font-size:11.5px; color:var(--ep-texte-3) }
.rec-livre, .rec-qw { display:grid; gap:9px }

/* ══════════════════════════════════════════════════════════════════════════
   QWEEKLE, GESTES, AVIS
   ══════════════════════════════════════════════════════════════════════════ */

.qw-toolbar, .qw-search { display:flex; align-items:center; gap:9px; flex-wrap:wrap; margin-bottom:12px }
.qw-tabs { display:flex; gap:2px; border-bottom:1px solid var(--ep-ligne); margin-bottom:14px }
.qw-tab { padding:9px 13px; border:0; background:none; font-size:13px; font-weight:600;
  color:var(--ep-texte-3); border-bottom:2px solid transparent; margin-bottom:-1px }
.qw-tab.on, .qw-tab.is-active { color:var(--ep-corail-fonce); border-bottom-color:var(--ep-corail) }
.qw-panels { display:grid; gap:14px }
.qw-stats { display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:12px }
.qw-stat { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  padding:12px 14px; background:var(--ep-surface); display:grid; gap:3px }
.qw-stat__l { font-size:11px; font-weight:600; text-transform:uppercase;
  letter-spacing:.05em; color:var(--ep-texte-3) }
.qw-stat__n { font-family:var(--ep-f-data); font-size:22px; font-weight:500; line-height:1.1 }
.qw-tablewrap { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2); overflow:auto }
.qw-table { width:100%; border-collapse:separate; border-spacing:0; font-size:13px }
.qw-table th { background:var(--ep-surface-2); border-bottom:1px solid var(--ep-ligne-forte);
  padding:8px 12px; text-align:left; font-size:10.5px; font-weight:700;
  letter-spacing:.07em; text-transform:uppercase; color:var(--ep-texte-3) }
.qw-table td, .qw-tr td { padding:9px 12px; border-bottom:1px solid var(--ep-ligne) }
.qw-tr--clic { cursor:pointer }
.qw-tr--clic:hover { background:var(--ep-sable-voile) }
.qw-list, .qw-users, .qw-groups { display:grid; gap:9px }
.qw-user, .qw-client, .qw-group { display:flex; align-items:center; gap:11px; padding:10px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13px }
.qw-user__info { flex:1; min-width:0 }
.qw-ava { width:32px; height:32px; border-radius:var(--ep-r-3); flex:0 0 auto; object-fit:cover }
.qw-name { font-weight:600 }
.qw-subt, .qw-n { font-size:11.5px; color:var(--ep-texte-3) }
.qw-kv { display:grid; grid-template-columns:auto 1fr; gap:6px 14px; font-size:13px }
.qw-tag { display:inline-flex; align-items:center; gap:5px; padding:2px 9px;
  border-radius:var(--ep-r-3); font-size:11px; font-weight:600;
  background:var(--ep-canvas); color:var(--ep-texte-2); border:1px solid var(--ep-ligne) }
.qw-tag--on  { background:var(--ep-ok-voile); color:var(--ep-ok); border-color:var(--ep-ok-bord) }
.qw-tag--off { background:var(--ep-surface-2); color:var(--ep-texte-3) }
.qw-badge { font-family:var(--ep-f-data); font-size:11px; color:var(--ep-texte-3) }
.qw-linked, .qw-lnk { color:var(--ep-info) }
.qw-empty { padding:26px; text-align:center; color:var(--ep-texte-3); font-size:13px }
.qw-alert { margin-bottom:12px }
.qw-formgrid { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:12px }
.qw-modal__box { width:min(640px,100%); background:var(--ep-surface);
  border-radius:var(--ep-r-2); box-shadow:var(--ep-om-3); display:flex; flex-direction:column;
  max-height:88vh; overflow:hidden }
.qw-modal__body { flex:1; overflow-y:auto; padding:18px 20px }
.qw-modal__x { border:0; background:none; color:var(--ep-texte-2); cursor:pointer; padding:2px 4px }

/* Gestes commerciaux */
.geste-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:12px }
.geste-card { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  padding:13px 15px; background:var(--ep-surface); display:grid; gap:6px; cursor:pointer }
.geste-card:hover { border-color:var(--ep-dore) }
.geste-card__t { font-size:13.5px; font-weight:600 }
.geste-card__d { font-size:12px; color:var(--ep-texte-3); line-height:1.5 }
.geste-head, .geste-title { font-family:var(--ep-f-titre); font-size:15px; font-weight:700 }
.geste-sub, .geste-intro { font-size:12.5px; color:var(--ep-texte-3); line-height:1.55; margin-top:4px }
.geste-form { max-width:560px; display:grid; gap:14px }
.geste-col2 { display:grid; grid-template-columns:1fr 1fr; gap:12px }
.geste-choix { display:flex; gap:9px; flex-wrap:wrap }
.geste-actions { display:flex; gap:9px; align-items:center; flex-wrap:wrap; margin-top:6px }
.geste-suffix { font-size:12.5px; color:var(--ep-texte-3) }
.geste-code { font-family:var(--ep-f-data); font-size:15px; letter-spacing:.06em;
  background:var(--ep-canvas); border:1px dashed var(--ep-ligne-forte);
  border-radius:var(--ep-r-1); padding:9px 13px; display:inline-block }
.geste-msg { font-size:12.5px; color:var(--ep-texte-3) }
.geste-empty { padding:26px; text-align:center; color:var(--ep-texte-3); font-size:13px }
.geste-ic { width:34px; height:34px; border-radius:var(--ep-r-2); flex:0 0 auto;
  display:grid; place-items:center; background:var(--ep-canvas); color:var(--ep-texte-2) }
.geste-ic--corail { background:var(--ep-corail-voile); color:var(--ep-corail-fonce) }
.geste-ic--info   { background:var(--ep-info-voile);   color:var(--ep-info) }
.geste-ic--warn   { background:var(--ep-attn-voile);   color:var(--ep-attn) }
.geste-success { display:grid; justify-items:center; gap:11px; padding:26px; text-align:center }
.geste-success__ic { width:48px; height:48px; border-radius:var(--ep-r-3);
  display:grid; place-items:center; background:var(--ep-ok-voile); color:var(--ep-ok) }

/* Avis */
.avis-cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)); gap:14px }
.avis-card { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  background:var(--ep-surface); padding:15px; box-shadow:var(--ep-om-1); display:grid; gap:10px }
.avis-head { display:flex; align-items:flex-start; gap:11px }
.avis-photo, .avis-pp { width:36px; height:36px; border-radius:var(--ep-r-3);
  flex:0 0 auto; object-fit:cover; background:var(--ep-sable) }
.avis-auteur { font-size:13.5px; font-weight:600 }
.avis-sub, .avis-meta { font-size:11.5px; color:var(--ep-texte-3);
  display:flex; align-items:center; gap:8px; flex-wrap:wrap }
.avis-badges { display:flex; gap:6px; flex-wrap:wrap }
.avis-texte { font-size:13.5px; line-height:1.6; color:var(--ep-texte) }
.avis-extrait { font-size:13px; line-height:1.55; color:var(--ep-texte-2);
  max-width:340px; overflow:hidden; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical }
.avis-trad { padding:10px 13px; background:var(--ep-info-voile);
  border:1px solid var(--ep-info-bord); border-radius:var(--ep-r-1);
  font-size:13px; line-height:1.55; color:#2E4372 }
.avis-reponse { padding:11px 14px; background:var(--ep-corail-voile);
  border-left:3px solid var(--ep-corail); border-radius:0 var(--ep-r-1) var(--ep-r-1) 0;
  font-size:13px; line-height:1.55 }
.avis-actions { display:flex; gap:7px; align-items:center; flex-wrap:wrap }
.avis-flag { width:18px; height:13px; border-radius:2px; flex:0 0 auto; object-fit:cover }
.avis-flag-txt { font-family:var(--ep-f-data); font-size:11px; color:var(--ep-texte-3) }
.avis-col-langue { width:70px }
.avis-table { width:100% }
.avis-pagin-page, .avis-pagin-total { font-family:var(--ep-f-data); font-size:12px; color:var(--ep-texte-3) }

/* ══════════════════════════════════════════════════════════════════════════
   MODULE EXPÉRIENCE — kanban, appels, incidents, chronologie
   ══════════════════════════════════════════════════════════════════════════ */

.exp-kanban { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(280px,1fr);
  gap:14px; overflow-x:auto; padding-bottom:8px; align-items:start }
.exp-kanban-col { background:var(--ep-surface-2); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); display:flex; flex-direction:column; max-height:72vh }
.exp-kanban-col__head { padding:11px 13px; border-bottom:1px solid var(--ep-ligne);
  display:flex; align-items:center; justify-content:space-between; gap:9px;
  font-size:12.5px; font-weight:700 }
.exp-kanban-col__body { padding:10px; overflow-y:auto; display:grid; gap:9px; min-height:60px }

.exp-ticket { background:var(--ep-surface); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); padding:11px 13px; display:grid; gap:7px;
  box-shadow:var(--ep-om-1); cursor:pointer }
.exp-ticket:hover { border-color:var(--ep-dore) }
.exp-ticket__top { display:flex; align-items:center; gap:8px; justify-content:space-between }
.exp-ticket__ref { font-family:var(--ep-f-data); font-size:10.5px; color:var(--ep-texte-3) }
.exp-ticket__client { font-size:13px; font-weight:600 }
.exp-ticket__motif { font-size:12.5px; color:var(--ep-texte-2); line-height:1.45;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden }
.exp-ticket__foot { display:flex; align-items:center; gap:8px; flex-wrap:wrap;
  font-size:11px; color:var(--ep-texte-3) }

/* Chronologie et événements */
.exp-timeline { display:grid; gap:2px }
.exp-timeline__item, .exp-event { display:grid; grid-template-columns:30px 1fr;
  gap:11px; padding:9px 0; position:relative }
.exp-event__icon { width:30px; height:30px; border-radius:var(--ep-r-3);
  display:grid; place-items:center; background:var(--ep-canvas); color:var(--ep-texte-2) }
.exp-event__content { min-width:0 }
.exp-event__date { font-family:var(--ep-f-data); font-size:11px; color:var(--ep-texte-3) }

/* Boîte omnicanale */
.exp-inbox-list { display:grid; gap:9px }
.exp-inbox-item { display:flex; align-items:flex-start; gap:12px; padding:12px 14px;
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2); background:var(--ep-surface) }
.exp-inbox-item__main { flex:1; min-width:0 }
.exp-inbox-item__source { font-size:11px; color:var(--ep-texte-3);
  display:flex; align-items:center; gap:7px; flex-wrap:wrap }
.exp-inbox-item__actions { display:flex; gap:7px; flex-wrap:wrap; flex:0 0 auto }

/* Appels */
.exp-calls-table, .exp-recordings-table { width:100%; border-collapse:separate; border-spacing:0; font-size:13px }
.exp-calls-table th, .exp-recordings-table th { background:var(--ep-surface-2);
  border-bottom:1px solid var(--ep-ligne-forte); padding:8px 12px; text-align:left;
  font-size:10.5px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; color:var(--ep-texte-3) }
.exp-calls-table td, .exp-recordings-table td { padding:9px 12px; border-bottom:1px solid var(--ep-ligne) }
.exp-call-row { cursor:pointer }
.exp-call-row:hover { background:var(--ep-sable-voile) }
.exp-call-route { font-family:var(--ep-f-data); font-size:11.5px; color:var(--ep-texte-3) }
.exp-call-filters { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:12px }
.exp-call-filter { padding:6px 11px; border:1px solid var(--ep-ligne-forte);
  border-radius:var(--ep-r-1); font-size:12.5px; font-weight:500; color:var(--ep-texte-2);
  background:var(--ep-surface); cursor:pointer }
.exp-call-filter.on, .exp-call-filter.is-active { background:var(--ep-sable-voile);
  border-color:var(--ep-dore); color:var(--ep-encre); font-weight:600 }
.exp-call-summary, .exp-call-detail { display:grid; gap:9px }
.exp-audio, .ep-audio { display:flex; align-items:center; gap:10px; padding:7px 11px;
  background:var(--ep-surface-2); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-1); min-width:200px }
.exp-audio audio, .ep-audio audio { flex:1; min-width:0; height:32px }
.exp-tele-chart { width:100% }
.exp-tele-legend { display:flex; gap:12px; flex-wrap:wrap; font-size:11.5px; color:var(--ep-texte-2) }
.exp-hour-bars { display:flex; gap:3px; align-items:flex-end; height:60px }
.exp-hour-bars > i { flex:1; background:var(--ep-dore); border-radius:2px 2px 0 0; display:block }

/* Incidents et qualité */
.exp-incident-card { border:1px solid var(--ep-ligne); border-left:3px solid var(--ep-ligne-forte);
  border-radius:var(--ep-r-2); padding:13px 15px; background:var(--ep-surface);
  display:grid; gap:7px; margin-bottom:11px }
.exp-source-card, .exp-ovh-service-card { border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); padding:13px 15px; background:var(--ep-surface); display:grid; gap:7px }
.exp-ovh-services { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:12px }
.exp-ovh-report { display:grid; gap:10px }
.exp-direction { display:grid; gap:14px }

/* Indicateurs et divers */
.exp-kpi { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  padding:13px 15px; background:var(--ep-surface); display:grid; gap:3px; position:relative;
  overflow:hidden; box-shadow:var(--ep-om-1) }
.exp-kpi-row { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:12px }
.exp-progress { height:7px; background:var(--ep-ligne); border-radius:var(--ep-r-3); overflow:hidden }
.exp-progress > i, .exp-progress > div { display:block; height:100%;
  border-radius:var(--ep-r-3); background:var(--ep-ok) }
.exp-score, .exp-hub-score { font-family:var(--ep-f-data); font-size:24px; font-weight:500; line-height:1.1 }
.exp-hub { display:grid; gap:14px }
.exp-hub-top { display:flex; align-items:center; gap:14px; flex-wrap:wrap }
.exp-prio { display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:600 }
.exp-budget { display:grid; gap:7px }
.exp-search-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:12px }
.exp-saved-views { display:flex; gap:7px; flex-wrap:wrap; margin-bottom:12px }
.exp-sync-status { font-size:12px; color:var(--ep-texte-3) }
.exp-internal-note { background:var(--ep-attn-voile); border:1px solid var(--ep-attn-bord);
  border-left:3px solid var(--ep-attn); border-radius:var(--ep-r-1);
  padding:11px 13px; font-size:13px; line-height:1.55 }
.exp-crm-stack { display:grid; gap:11px }
.exp-crm-call, .exp-crm-details { display:grid; gap:7px; font-size:13px }
.exp-kb-details { display:grid; gap:8px; font-size:13px }
.exp-json-readable, .exp-debug { font-family:var(--ep-f-data); font-size:11.5px;
  background:var(--ep-surface-2); border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1);
  padding:10px 12px; overflow:auto; white-space:pre-wrap; word-break:break-word;
  max-height:280px; color:var(--ep-texte-2) }

/* ══════════════════════════════════════════════════════════════════════════
   FICHE CLIENT ET DIVERS
   ══════════════════════════════════════════════════════════════════════════ */

.ep-fiche { display:grid; grid-template-columns:280px 1fr 320px; gap:16px; align-items:start }
.ep-fiche__col, .ep-fiche__g, .ep-fiche__c, .ep-fiche__d { display:grid; gap:14px; min-width:0 }
@media (max-width:1200px) { .ep-fiche { grid-template-columns:1fr } }
.ep-identite { display:grid; gap:9px; text-align:center; justify-items:center }
.ep-identite__sous { font-size:12.5px; color:var(--ep-texte-3) }
.ep-identite__ets { font-size:12px; color:var(--ep-texte-3) }
.ep-av--xl { width:72px; height:72px; font-size:24px }
.ep-av--or { background:var(--ep-dore); color:var(--ep-encre) }
.ep-et--or { background:var(--ep-sable-voile); color:#8A6A1E; border:1px solid var(--ep-dore) }
.ep-et--neutre { background:var(--ep-canvas); color:var(--ep-texte-2); border:1px solid var(--ep-ligne) }
.ep-et--vide { background:none; color:var(--ep-texte-3); border:1px dashed var(--ep-ligne-forte) }
.ep-kpis { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:12px }
/* v5.48.1 — Aperçu latéral : trois colonnes fixes, des compteurs plus
   petits — six chiffres dans un panneau de 350 px, pas un tableau de bord. */
.ep-kpis--3 { grid-template-columns:repeat(3,1fr); gap:8px }
.ep-kpis--3 .ep-kpi { padding:9px 11px }
.ep-kpis--3 .ep-kpi__v { font-size:17px }
.ep-kpis--3 .ep-kpi__l { font-size:10px }
.ep-kpi--alerte { background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord) }
.ep-kpi--alerte::before { background:var(--ep-alerte) }
.ep-bloc { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  background:var(--ep-surface); box-shadow:var(--ep-om-1); overflow:hidden; margin-bottom:14px }
.ep-bloc__t { padding:12px 15px; border-bottom:1px solid var(--ep-ligne);
  display:flex; align-items:center; gap:9px; font-size:11px; font-weight:700;
  letter-spacing:.07em; text-transform:uppercase; color:var(--ep-texte-3) }
.ep-onglets { display:flex; gap:2px; border-bottom:1px solid var(--ep-ligne); padding:0 15px }
.ep-onglets button { padding:10px 13px; border:0; background:none; font-size:13px;
  font-weight:600; color:var(--ep-texte-3); border-bottom:2px solid transparent; margin-bottom:-1px }
.ep-onglets button.on, .ep-onglets button.is-actif { color:var(--ep-corail-fonce);
  border-bottom-color:var(--ep-corail) }
.ep-fil { display:grid; gap:2px }
.ep-fil__actuel { background:var(--ep-sable-voile) }
.ep-jour { font-size:11px; font-weight:700; letter-spacing:.07em; text-transform:uppercase;
  color:var(--ep-texte-3); padding:14px 0 7px }
.ep-ev__h { display:flex; align-items:center; gap:8px; font-size:13px; font-weight:600 }
.ep-ev__d, .ep-ev__meta { font-size:11.5px; color:var(--ep-texte-3) }
.ep-canaux { display:flex; gap:7px; flex-wrap:wrap; margin-bottom:12px }
.ep-rapides { display:flex; gap:8px; flex-wrap:wrap }
.ep-res { display:grid; gap:9px }
.ep-res__t { font-size:11px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; color:var(--ep-texte-3) }
.ep-note { font-family:var(--ep-f-data); font-weight:500 }
/* v5.48.1 — Ne jamais forcer display sur un <th> : inline-flex le sortait
   du rendu tableau, les en-têtes s'empilaient à gauche pendant que le corps
   gardait sa grille. La flèche est calée par la marge de .ep-tri__f. */
.ep-tri { cursor:pointer; border:0; background:none }
.ep-clic { cursor:pointer }
.ep-copier { border:0; background:none; color:var(--ep-texte-3); cursor:pointer; padding:2px 4px }
.ep-copier:hover { color:var(--ep-corail-fonce) }
/* v5.48.1 — Liste clients : les montants ne se coupent pas (« 130 240 € »
   sur deux lignes), le téléphone et son bouton copier restent sur une seule
   ligne, et la copie n'apparaît qu'au survol de la ligne pour ne pas
   charger le tableau. */
.ep-tbl td.ep-dr, .ep-tbl th.ep-dr { white-space:nowrap }
.ep-tel-bloc { display:inline-flex; align-items:center; gap:3px; white-space:nowrap }
.ep-tbl tbody .ep-copier { opacity:0; transition:opacity .12s }
.ep-tbl tbody tr:hover .ep-copier, .ep-tbl tbody .ep-copier:focus-visible { opacity:1 }
.ep-cli__mail { font-weight:500; color:inherit; text-decoration:none }
.ep-cli__mail:hover { color:var(--ep-corail-fonce); text-decoration:underline }
.ep-col-case { width:34px } .ep-col-act { width:60px; text-align:right }
.ep-champs { display:grid; gap:12px }
.ep-champ-l { display:grid; grid-template-columns:150px 1fr; gap:12px; align-items:center; font-size:13px }
/* v5.48.1 — Un e-mail long se replie sur deux lignes au lieu d'être coupé
   net (« tomainsworth29@ » sans suite ne sert à personne). */
.ep-champ-l dd { min-width:0; overflow-wrap:anywhere }
.ep-cli__t { flex:1; min-width:0 }
.ep-ctx__av { width:46px; height:46px; border-radius:var(--ep-r-3); flex:0 0 auto;
  display:grid; place-items:center; font-size:16px; font-weight:700;
  background:var(--ep-sable); color:var(--ep-rail-fond) }
.ep-ctx__meta { display:flex; align-items:center; gap:9px; flex-wrap:wrap;
  font-size:12px; color:var(--ep-texte-3); margin-top:3px }
.ep-bulle__av { width:24px; height:24px; border-radius:var(--ep-r-3); flex:0 0 auto;
  display:grid; place-items:center; font-size:9.5px; font-weight:700;
  background:var(--ep-sable); color:var(--ep-rail-fond) }
.ep-detail__p { padding:12px 24px; border-top:1px solid var(--ep-ligne);
  background:var(--ep-surface); display:flex; gap:8px; align-items:center; flex-wrap:wrap }
.ep-detail__p:empty { display:none }
.ep-compo__ins { display:flex; align-items:center; gap:8px; margin-left:auto }
/* v5.33.2 — L'aperçu client est un panneau latéral ouvert au clic sur une
   ligne (classe is-ouvert posée par le JS). L'ancienne règle en faisait un
   voile fixe plein écran affiché en permanence — l'écran Clients était
   bloqué dès le chargement de la liste. */
.ep-apercu { position:fixed; top:0; right:0; bottom:0; z-index:63;
  width:min(400px,100vw); display:none; flex-direction:column;
  background:var(--ep-surface); border-left:1px solid var(--ep-ligne);
  box-shadow:var(--ep-om-3) }
.ep-apercu.is-ouvert { display:flex }
.ep-apercu__tete, .ep-apercu__pied { padding:13px 18px; display:flex; align-items:center;
  justify-content:space-between; gap:12px; background:var(--ep-surface) }
.ep-apercu__tete { border-bottom:1px solid var(--ep-ligne) }
.ep-apercu__pied { border-top:1px solid var(--ep-ligne) }
.ep-apercu__corps { flex:1; overflow:auto; background:var(--ep-canvas); padding:18px }
/* Ligne sélectionnée dans la liste (classe posée avec l'aperçu) */
tr.is-selection td { background:var(--ep-sable-voile) }


/* v5.48.1 — La redéfinition « display:grid » de .ep-tel-bloc est retirée :
   elle écrasait la version inline-flex et faisait passer le bouton copier
   sous le numéro dans les panneaux. La règle vivante est plus haut. */
.ep-pied { padding:13px 20px; border-top:1px solid var(--ep-ligne);
  display:flex; align-items:center; gap:10px; flex-wrap:wrap }
.ep-pied__actions { margin-left:auto; display:flex; gap:8px }

/* ══════════════════════════════════════════════════════════════════════════
   RECHERCHE, RAPPORTS, ÉTATS
   ══════════════════════════════════════════════════════════════════════════ */

.global-search { position:relative; flex:1; max-width:420px }
.global-search__input { width:100%; padding:9px 12px 9px 34px; font-size:13.5px }
.search-groups { display:grid; gap:14px }
.search-group { display:grid; gap:2px }
.search-result { display:flex; align-items:flex-start; gap:11px; padding:10px 13px;
  border-radius:var(--ep-r-1); cursor:pointer; font-size:13px }
.search-result:hover, .search-result.is-actif { background:var(--ep-sable-voile) }
.search-result__main { flex:1; min-width:0 }
.search-result__title { font-weight:600 }
.search-result__meta { font-size:11.5px; color:var(--ep-texte-3) }

.report-header { display:flex; align-items:flex-start; justify-content:space-between;
  gap:16px; padding-bottom:16px; border-bottom:1px solid var(--ep-ligne); margin-bottom:18px }
.report-logo { max-height:44px; width:auto }
.report-title { font-family:var(--ep-f-titre); font-size:21px; font-weight:700 }
.report-meta { font-size:12px; color:var(--ep-texte-3); margin-top:4px }
.report-h2 { font-family:var(--ep-f-titre); font-size:16px; font-weight:700; margin:22px 0 12px }
.report-section { margin-bottom:22px }
.report-break { break-after:page }
.no-print-break { break-inside:avoid }

.analyse-grid, .pies-grid, .theme-grid { display:grid;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:14px }
.pie-titre { font-family:var(--ep-f-titre); font-size:14px; font-weight:700; margin-bottom:10px }
.theme-card { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  padding:13px 15px; background:var(--ep-surface); display:grid; gap:6px }
.theme-card__meta { font-size:11.5px; color:var(--ep-texte-3) }
.qtable-wrap { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2); overflow:auto; margin-bottom:14px }
.qtable-head { display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:12px 15px; border-bottom:1px solid var(--ep-ligne) }
.qtable-title { font-family:var(--ep-f-titre); font-size:14px; font-weight:700 }
.qtable-cols { font-size:11.5px; color:var(--ep-texte-3) }
.stacked-legend { display:flex; gap:12px; flex-wrap:wrap; font-size:11.5px;
  color:var(--ep-texte-2); margin-top:9px }
.corr-bar { display:grid; gap:4px }
.corr-bar__track { height:7px; background:var(--ep-ligne); border-radius:var(--ep-r-3); overflow:hidden }
.corr-bar__fill { display:block; height:100%; border-radius:var(--ep-r-3); background:var(--ep-info) }
.parc-row { display:flex; align-items:center; gap:12px; padding:11px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13px }
.parc-row:last-child { border-bottom:0 }
.parc-row__nom { flex:1; min-width:0; font-weight:600 }
.parc-row__meta { font-size:11.5px; color:var(--ep-texte-3) }
.parc-row__nps { font-family:var(--ep-f-data); font-weight:500 }
.detail-section { margin-bottom:18px }
.detail-row { display:grid; grid-template-columns:auto 1fr; gap:7px 14px; font-size:13px }
.detail-stars { color:var(--ep-dore); letter-spacing:1px }
.detail-comment { background:var(--ep-sable-voile); border-left:2px solid var(--ep-dore);
  border-radius:0 var(--ep-r-1) var(--ep-r-1) 0; padding:10px 13px; margin:8px 0;
  font-size:13px; line-height:1.55 }
.td-comment { max-width:300px; font-size:12.5px; color:var(--ep-texte-2) }
.stars-ro { color:var(--ep-dore); letter-spacing:1px; white-space:nowrap }
.statut-chips { display:flex; gap:6px; flex-wrap:wrap }
.statut-pill { display:inline-flex; align-items:center; gap:5px; padding:3px 9px;
  border-radius:var(--ep-r-3); font-size:11px; font-weight:600;
  background:var(--ep-canvas); border:1px solid var(--ep-ligne) }
.statut-sub { font-size:11px; color:var(--ep-texte-3) }
.sample-warning { font-size:11.5px; color:var(--ep-attn); font-style:italic }
.rep-label { font-size:11px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; color:var(--ep-texte-3) }
.note-haute   { color:var(--ep-ok);     font-weight:600 }
.note-moyenne { color:var(--ep-attn);   font-weight:600 }
.note-basse   { color:var(--ep-alerte); font-weight:600 }
.crm-phone { font-family:var(--ep-f-data); font-size:12.5px }
.crm-phone-copy { border:0; background:none; color:var(--ep-texte-3); cursor:pointer; padding:1px 4px }
.delta--up { color:var(--ep-ok); font-weight:600 }
.delta--down { color:var(--ep-alerte); font-weight:600 }
.delta--flat { color:var(--ep-texte-3) }
.chip--new   { background:var(--ep-corail-voile); color:var(--ep-corail-fonce); border-color:#F3CDC2 }
.chip--modif { background:var(--ep-attn-voile);   color:var(--ep-attn);   border-color:var(--ep-attn-bord) }
.chip--site  { background:var(--ep-info-voile);   color:var(--ep-info);   border-color:var(--ep-info-bord) }
.badge--role { background:var(--ep-info-voile); color:var(--ep-info); border-color:var(--ep-info-bord) }
.btn--edit { }
.btn--link { border-color:transparent; background:none; color:var(--ep-info); text-decoration:underline }
.btn--warn { background:var(--ep-attn-voile); border-color:var(--ep-attn-bord); color:var(--ep-attn) }
.btn--site-on { background:var(--ep-ok-voile); border-color:var(--ep-ok-bord); color:var(--ep-ok) }
.ia-bar { display:flex; align-items:center; gap:9px; flex-wrap:wrap; margin-bottom:10px }
.ia-precise { flex:1; min-width:180px }
.ia-x { border:0; background:none; color:var(--ep-texte-3); cursor:pointer; padding:2px 4px }
.is-done { opacity:.6; text-decoration:line-through }
.is-due { color:var(--ep-alerte); font-weight:600 }
.is-imp { font-weight:700 }
.is-ferme { opacity:.6 }
.is-in  { align-self:flex-start }
.is-out { align-self:flex-end }
.is-internal { background:var(--ep-attn-voile) }
.st-ignore { opacity:.55 }
.st-repondu { color:var(--ep-ok); font-weight:600 }

/* Avis non lu dans la liste */
.avis-neuf td:first-child { box-shadow:inset 3px 0 var(--ep-corail) }
.avis-neuf .avis-auteur { font-weight:700 }

/* ══════════════════════════════════════════════════════════════════════════
   TÉLÉPHONIE
   Dérivé du CSS de la maquette validée : les déclarations en viennent telles
   quelles, seuls les noms de classes sont traduits.
   ══════════════════════════════════════════════════════════════════════════ */

.ep-file {border-right:1px solid var(--ep-ligne);background:var(--ep-surface);overflow-y:auto }
.ep-file__t {padding:10px 14px;border-bottom:1px solid var(--ep-ligne);font-size:11px;font-weight:700;
  letter-spacing:.07em;text-transform:uppercase;color:var(--ep-texte-3);position:sticky;top:0;background:var(--ep-surface);z-index:2;
  display:flex;align-items:center;gap:7px }
.ep-file__t .n {margin-left:auto;font-family:var(--ep-f-data);font-size:11px;font-weight:400 }
.ep-fitem {padding:12px 14px;border-bottom:1px solid var(--ep-ligne);cursor:pointer;display:grid;gap:6px;border-left:3px solid transparent }
.ep-fitem:hover {background:var(--ep-sable-voile) }
.ep-fitem.on {background:var(--ep-corail-voile);border-left-color:var(--ep-corail) }
.ep-fitem--neuf {border-left-color:var(--ep-corail) }
.ep-fitem--manque {border-left-color:var(--ep-alerte) }
.ep-fitem--traite {border-left-color:var(--ep-ok) }
.ep-fitem.on[class*=fitem--] {border-left-color:var(--ep-corail) }
.ep-fitem__h {display:flex;align-items:center;gap:8px }
.ep-fitem__h strong {font-size:13.5px;font-weight:600;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis }
.ep-fitem__h time {font-family:var(--ep-f-data);font-size:10.5px;color:var(--ep-texte-3) }
.ep-fitem p {font-size:12.5px;color:var(--ep-texte-2);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden }
.ep-fitem__m {display:flex;align-items:center;gap:8px;font-size:10.5px;color:var(--ep-texte-3);flex-wrap:wrap }
.ep-detail {overflow-y:auto;display:flex;flex-direction:column;background:var(--ep-canvas);min-width:0 }
.ep-detail__h {background:var(--ep-surface);border-bottom:1px solid var(--ep-ligne);padding:16px 24px;display:flex;align-items:flex-start;gap:14px }
.ep-detail__b {flex:1;padding:20px 24px;overflow-y:auto }
.ep-sens--in {background:var(--ep-info-voile);color:var(--ep-info) }
.ep-sens--out {background:var(--ep-attn-voile);color:var(--ep-attn) }
.ep-sens--miss {background:var(--ep-alerte-voile);color:var(--ep-alerte) }
.ep-sens--vm {background:var(--ep-violet-voile);color:var(--ep-violet) }
.ep-lect__h {display:flex;align-items:center;gap:12px }
.ep-lect__play {width:42px;height:42px;border-radius:var(--ep-r-3);background:var(--ep-corail);color:#fff;
  display:grid;place-items:center;flex:0 0 auto;border:0;cursor:pointer }
.ep-lect__play:hover {background:var(--ep-corail-fonce) }
.ep-lect__t {flex:1;min-width:0 }
.ep-lect__t strong {display:block;font-size:13px;font-weight:600 }
.ep-lect__t small {font-size:11.5px;color:var(--ep-texte-3);font-family:var(--ep-f-data) }
.ep-lect__act {display:flex;gap:6px;align-items:center }
.ep-onde {height:46px;display:flex;align-items:center;gap:2px;cursor:pointer }
.ep-onde i {flex:1;border-radius:1px;display:block;background:var(--ep-ligne-forte);min-height:3px }
.ep-onde i.lu {background:var(--ep-corail) }
.ep-lect__pied {display:flex;align-items:center;gap:12px;font-size:11.5px;color:var(--ep-texte-3) }
.ep-lect__pied .ep-data {font-family:var(--ep-f-data) }
.ep-vit {display:inline-flex;gap:2px;padding:2px;background:var(--ep-canvas);border:1px solid var(--ep-ligne);border-radius:var(--ep-r-1);margin-left:auto }
.ep-vit button {padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;color:var(--ep-texte-3);border:0;background:none }
.ep-vit button.on {background:var(--ep-surface);color:var(--ep-encre);box-shadow:var(--ep-om-1) }
.ep-trans__t {padding:12px 16px;border-bottom:1px solid var(--ep-ligne);display:flex;align-items:center;gap:9px;
  font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ep-texte-3) }
.ep-trans__c {padding:14px 16px;display:grid;gap:12px;max-height:340px;overflow-y:auto }
.ep-tour {display:grid;grid-template-columns:52px 1fr;gap:12px;font-size:13px;line-height:1.55 }
.ep-tour time {font-family:var(--ep-f-data);font-size:11px;color:var(--ep-texte-3);padding-top:2px }
.ep-tour--agent b {color:var(--ep-corail-fonce) }
.ep-tour--client b {color:var(--ep-info) }
.ep-tour b {display:block;font-size:11.5px;margin-bottom:2px }
.ep-heures div {flex:1;display:grid;gap:4px;justify-items:center }
.ep-heures i {width:100%;background:var(--ep-dore);border-radius:2px 2px 0 0;display:block }
.ep-heures i.pic {background:var(--ep-corail) }
.ep-heures span {font-size:9.5px;color:var(--ep-texte-3);font-family:var(--ep-f-data) }
.ep-vide {padding:40px 20px;text-align:center;color:var(--ep-texte-3);display:grid;gap:9px;justify-items:center }
.ep-vide svg {width:32px;height:32px;color:var(--ep-ligne-forte) }
.ep-kv {display:grid;grid-template-columns:auto 1fr;gap:9px 16px;font-size:13px }
.ep-kv dt {color:var(--ep-texte-3);font-size:12px;white-space:nowrap }
.ep-kv dd {font-weight:500;margin:0 }
.ep-pastnb {font-family:var(--ep-f-data);font-size:11.5px;background:var(--ep-canvas);padding:2px 7px;border-radius:var(--ep-r-3);color:var(--ep-texte-2) }

/* La vue scindée des appels garde la hauteur de l'écran */
#view:has(.ep-split) { padding:0; overflow:hidden }
.ep-split { height:calc(100vh - 168px) }
.ep-lect__play svg { width:20px; height:20px }
.ep-onde i { transition:background .08s }
.ep-heures div { display:grid; gap:4px; justify-items:center }

/* Règles de base du lecteur, de l'étiquette de sens et de la transcription :
   perdues à la conversion, leurs variantes seules avaient été reprises. */
.ep-lect { background:var(--ep-surface); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); padding:14px 16px; box-shadow:var(--ep-om-1); display:grid; gap:12px }
.ep-sens { display:inline-flex; align-items:center; gap:6px; font-size:11.5px;
  font-weight:600; padding:3px 9px; border-radius:var(--ep-r-3) }
.ep-trans { background:var(--ep-surface); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); margin-top:16px }

/* Titre de groupe et destination à venir dans le rail principal */
.ep-rail__grp { font-size:9.5px; font-weight:700; letter-spacing:.11em; text-transform:uppercase;
  color:var(--ep-texte-3); padding:14px 10px 6px }
.ep-rail__avenir { display:flex; align-items:center; gap:11px; padding:9px 10px;
  border-radius:var(--ep-r-1); font-size:13.5px; font-weight:500;
  color:var(--ep-texte-3); opacity:.62; cursor:default; margin-bottom:2px }
.ep-rail__avenir > span { flex:1; min-width:0 }
.ep-rail__avenir em { font-style:normal; font-size:9.5px; font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; padding:2px 7px; border-radius:var(--ep-r-3);
  background:var(--ep-nav-bord); color:var(--ep-texte-3) }

/* ══════════════════════════════════════════════════════════════════════════
   FENÊTRE DE CONFIGURATION — champs et interrupteur
   ══════════════════════════════════════════════════════════════════════════ */

.ep-modale__corps .exp-form-grid, .modal-body .exp-form-grid { display:grid; gap:0 }
.modal-body .exp-field { display:grid; grid-template-columns:230px minmax(0,1fr); gap:20px;
  align-items:center; padding:14px 0; border-bottom:1px solid var(--ep-ligne) }
.modal-body .exp-field:last-child { border-bottom:0 }
.modal-body .exp-field > label { font-size:13.5px; font-weight:600; color:var(--ep-encre) }
.modal-body .exp-field input, .modal-body .exp-field select, .modal-body .exp-field textarea {
  width:100%; padding:9px 12px; font-size:13.5px;
  border:1px solid var(--ep-ligne-forte); border-radius:var(--ep-r-1); background:var(--ep-surface) }
.modal-body .exp-field input:focus, .modal-body .exp-field select:focus {
  outline:none; border-color:var(--ep-corail); box-shadow:0 0 0 3px var(--ep-corail-voile) }
.modal-body .exp-field.full { grid-template-columns:230px minmax(0,1fr) }
.modal-body details.exp-debug { margin-top:14px; border-top:1px solid var(--ep-ligne); padding-top:12px }
.modal-body details.exp-debug > summary { font-size:11px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; color:var(--ep-texte-3); cursor:pointer; padding:4px 0 }
.modal-body .exp-card { margin:16px 0 }

/* Ligne d'interrupteur : le libellé et son explication à droite du curseur */
.ep-inter-l { display:flex; align-items:flex-start; gap:12px; padding:14px 0;
  border-bottom:1px solid var(--ep-ligne) }
.ep-inter-l > div { flex:1; min-width:0 }
.ep-inter-l strong { display:block; font-size:13.5px; font-weight:600; color:var(--ep-encre) }
.ep-inter-l small { display:block; font-size:12px; color:var(--ep-texte-3);
  margin-top:3px; line-height:1.5 }
.ep-inter-l 
/* Le pied de la fenêtre reste atteignable quand le contenu défile */
.modal-foot { position:sticky; bottom:0; background:var(--ep-surface) }

/* ══════════════════════════════════════════════════════════════════════════
   INTERRUPTEUR — v5.32
   Le CSS attendait `.on`, le JavaScript posait `is-actif` : le curseur ne
   glissait ni ne verdissait. Les deux noms sont désormais acceptés.

   Et surtout : toute case à cocher d'un réglage devient un interrupteur par
   le CSS seul, via `appearance:none`. L'état coché reste natif — donc il
   glisse, il verdit, il est accessible au clavier, et aucun JavaScript n'a
   besoin d'être écrit pour chaque nouveau réglage.
   ══════════════════════════════════════════════════════════════════════════ */

/* ── Les cases à cocher de réglage deviennent des interrupteurs ────────── */
.exp-check > input[type=checkbox],
.switch-line input[type=checkbox],
.ep-reg-l input[type=checkbox].bascule,
.ep-inter input[type=checkbox],
input[type=checkbox][data-os-records],
input[type=checkbox].ep-ck-bascule {
  appearance:none; -webkit-appearance:none;
  width:42px; height:24px; flex:0 0 auto; margin:0; padding:0; position:relative;
  border:0; border-radius:var(--ep-r-3); background:var(--ep-ligne-forte);
  cursor:pointer; transition:background .16s;
}
.exp-check > input[type=checkbox]::after,
.switch-line input[type=checkbox]::after,
.ep-reg-l input[type=checkbox].bascule::after,
.ep-inter input[type=checkbox]::after,
input[type=checkbox][data-os-records]::after,
input[type=checkbox].ep-ck-bascule::after {
  content:""; position:absolute; top:3px; left:3px; width:18px; height:18px;
  border-radius:var(--ep-r-3); background:#fff; box-shadow:0 1px 2px rgba(43,29,20,.22);
  transition:left .16s cubic-bezier(.32,.72,0,1);
}
.exp-check > input[type=checkbox]:checked,
.switch-line input[type=checkbox]:checked,
.ep-reg-l input[type=checkbox].bascule:checked,
.ep-inter input[type=checkbox]:checked,
input[type=checkbox][data-os-records]:checked,
input[type=checkbox].ep-ck-bascule:checked { background:var(--ep-ok) }
.exp-check > input[type=checkbox]:checked::after,
.switch-line input[type=checkbox]:checked::after,
.ep-reg-l input[type=checkbox].bascule:checked::after,
.ep-inter input[type=checkbox]:checked::after,
input[type=checkbox][data-os-records]:checked::after,
input[type=checkbox].ep-ck-bascule:checked::after { left:21px }
.exp-check > input[type=checkbox]:disabled,
input[type=checkbox].ep-ck-bascule:disabled { opacity:.45; cursor:not-allowed }
.exp-check > input[type=checkbox]:focus-visible,
input[type=checkbox].ep-ck-bascule:focus-visible {
  outline:2px solid var(--ep-corail); outline-offset:2px }

/* Le libellé qui suit l'interrupteur reste lisible et cliquable */
.exp-check { display:flex; align-items:center; gap:12px; padding:14px 0;
  border-bottom:1px solid var(--ep-ligne); font-size:13.5px; color:var(--ep-encre); cursor:pointer }
.exp-check:last-child { border-bottom:0 }
.switch-line input[type=checkbox] { order:2 }

/* ══════════════════════════════════════════════════════════════════════════
   INTERRUPTEUR — v5.32
   Le curseur est un élément réel : un pseudo-élément ne se voit pas dans
   l'inspecteur et se fait écraser sans qu'on sache par quoi.
   ══════════════════════════════════════════════════════════════════════════ */

/* Repli si le curseur n'est pas dans le balisage */

/* ══════════════════════════════════════════════════════════════════════════
   INTERRUPTEUR — définition unique
   que plusieurs navigateurs rejettent en bloc : la pastille disparaissait et
   le fond restait gris. Une seule règle, sans sélecteur exotique.
   ══════════════════════════════════════════════════════════════════════════ */

.ep-bascule {
  appearance:none; -webkit-appearance:none;
  position:relative; display:inline-block; flex:0 0 auto;
  width:44px; height:26px; padding:0; margin:0; border:0; cursor:pointer;
  border-radius:999px; background:var(--ep-ligne-forte);
  transition:background .16s ease;
}
.ep-bascule::after {
  content:""; position:absolute; top:3px; left:3px;
  width:20px; height:20px; border-radius:50%; background:#fff;
  box-shadow:0 1px 3px rgba(43,29,20,.28);
  transition:left .16s cubic-bezier(.32,.72,0,1);
}
.ep-bascule.is-actif, .ep-bascule.on, .ep-bascule:checked { background:var(--ep-ok) }
.ep-bascule.is-actif::after, .ep-bascule.on::after, .ep-bascule:checked::after { left:21px }
.ep-bascule:disabled { opacity:.45; cursor:not-allowed }
.ep-bascule:focus-visible { outline:2px solid var(--ep-corail); outline-offset:2px }

/* ══════════════════════════════════════════════════════════════════════════
   TOUTE CASE À COCHER DE RÉGLAGE DEVIENT UN INTERRUPTEUR
   Un réglage binaire se lit mieux en interrupteur qu'en case. Plutôt que de
   réécrire chaque gabarit, on transforme la case elle-même : aucun balisage
   ne change, et les cases déjà branchées continuent de fonctionner.
   ══════════════════════════════════════════════════════════════════════════ */

.exp-check > input[type=checkbox],
.ep-reg-l input[type=checkbox].ep-switch,
.chat-agent-member input[type=checkbox].ep-switch,
[data-os-records],
[data-os-audio],
.switch-line input[type=checkbox] {
  appearance:none; -webkit-appearance:none;
  position:relative; display:inline-block; flex:0 0 auto;
  width:44px; height:26px; padding:0; margin:0; border:0; cursor:pointer;
  border-radius:999px; background:var(--ep-ligne-forte);
  transition:background .16s ease;
}
.exp-check > input[type=checkbox]::after,
.ep-reg-l input[type=checkbox].ep-switch::after,
.chat-agent-member input[type=checkbox].ep-switch::after,
[data-os-records]::after,
[data-os-audio]::after,
.switch-line input[type=checkbox]::after {
  content:""; position:absolute; top:3px; left:3px;
  width:20px; height:20px; border-radius:50%; background:#fff;
  box-shadow:0 1px 3px rgba(43,29,20,.28);
  transition:left .16s cubic-bezier(.32,.72,0,1);
}
.exp-check > input[type=checkbox]:checked,
.ep-reg-l input[type=checkbox].ep-switch:checked,
.chat-agent-member input[type=checkbox].ep-switch:checked,
[data-os-records]:checked,
[data-os-audio]:checked,
.switch-line input[type=checkbox]:checked { background:var(--ep-ok) }
.exp-check > input[type=checkbox]:checked::after,
.ep-reg-l input[type=checkbox].ep-switch:checked::after,
.chat-agent-member input[type=checkbox].ep-switch:checked::after,
[data-os-records]:checked::after,
[data-os-audio]:checked::after,
.switch-line input[type=checkbox]:checked::after { left:21px }
.exp-check > input[type=checkbox]:disabled,
[data-os-records]:disabled, [data-os-audio]:disabled { opacity:.45; cursor:not-allowed }

/* La ligne qui porte l'interrupteur laisse la place au libellé */
.exp-check { display:flex; align-items:center; gap:12px }
.switch-line input[type=checkbox] { margin-left:auto }

/* ══════════════════════════════════════════════════════════════════════════
   v5.33.5 — SÉLECTEURS : chevron dessiné, marges intérieures maîtrisées
   Le chevron natif colle au bord droit et varie selon l'OS. On le remplace
   par un chevron du système de design, avec une vraie réserve à droite.
   ══════════════════════════════════════════════════════════════════════════ */
:root { --ep-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B5B4D' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") }
select { appearance:none; -webkit-appearance:none;
  padding-right:32px; background-image:var(--ep-chevron);
  background-repeat:no-repeat; background-position:right 10px center; background-size:14px }
select::-ms-expand { display:none }
/* Ces contextes posent un raccourci `background:` qui efface l'image :
   on la repose avec la même spécificité, plus bas dans la feuille. */
.ep-champ select, .ep-compo__b select, .ep-reg-l select,
select.rec-assign, .modal-body .exp-field select {
  background-image:var(--ep-chevron); background-repeat:no-repeat;
  background-position:right 9px center; background-size:13px; padding-right:28px }
/* Le sélecteur d'établissement du rail reste natif (fond sombre, sans cadre). */
.ep-rail__parc select, .ep-rail__parc-select {
  appearance:auto; -webkit-appearance:auto; background-image:none; padding-right:6px }

/* ── Champ d'assignation : l'avatar de la personne dans le champ ────────── */
.ep-assign { position:relative; display:inline-flex; align-items:center; max-width:100% }
.ep-assign__av { position:absolute; left:7px; width:20px; height:20px; border-radius:var(--ep-r-3);
  display:grid; place-items:center; font-size:9px; font-weight:700; overflow:hidden;
  background:var(--ep-sable) center/cover no-repeat; color:var(--ep-rail-fond);
  pointer-events:none; z-index:1 }
.ep-assign__av--vide { background:var(--ep-canvas); color:var(--ep-texte-3);
  border:1px dashed var(--ep-ligne-forte) }
.ep-assign > select { padding-left:33px; width:100% }

/* v5.34 — Enrichissement d'un appel : résumé et thèmes au-dessus des tours */
.ep-enrichi { display:grid; gap:9px; padding:12px 14px; margin-bottom:10px;
  background:var(--ep-info-voile); border:1px solid var(--ep-info-bord); border-radius:var(--ep-r-2) }
.ep-enrichi__resume b { display:inline-flex; align-items:center; gap:5px; font-size:11px;
  font-weight:700; letter-spacing:.07em; text-transform:uppercase; color:var(--ep-info) }
.ep-enrichi__resume p { font-size:13px; line-height:1.55; color:#2E4372; margin-top:4px }
.ep-enrichi__themes { display:flex; gap:6px; flex-wrap:wrap }

/* ══ v5.35 — Téléphonie : lecteur, conversations, pagination ══ */
/* Vraie barre de lecture : glisser pour se déplacer, ±15 s de part et d'autre */
.ep-seek { display:flex; align-items:center; gap:9px; padding:6px 16px 2px }
.ep-seek button { flex:0 0 auto; font-family:var(--ep-f-data); font-size:11px; font-weight:500;
  padding:3px 8px; border:1px solid var(--ep-ligne-forte); border-radius:var(--ep-r-3);
  background:var(--ep-surface); color:var(--ep-texte-2); cursor:pointer }
.ep-seek button:hover { border-color:var(--ep-corail); color:var(--ep-corail-fonce) }
.ep-seek input[type=range] { flex:1; appearance:none; -webkit-appearance:none; height:22px;
  background:none; cursor:pointer; padding:0; border:0 }
.ep-seek input[type=range]::-webkit-slider-runnable-track { height:5px; border-radius:var(--ep-r-3); background:var(--ep-ligne) }
.ep-seek input[type=range]::-moz-range-track { height:5px; border-radius:var(--ep-r-3); background:var(--ep-ligne) }
.ep-seek input[type=range]::-webkit-slider-thumb { appearance:none; -webkit-appearance:none;
  width:15px; height:15px; margin-top:-5px; border-radius:var(--ep-r-3);
  background:var(--ep-corail); border:2px solid #fff; box-shadow:var(--ep-om-1) }
.ep-seek input[type=range]::-moz-range-thumb { width:13px; height:13px; border-radius:var(--ep-r-3);
  background:var(--ep-corail); border:2px solid #fff; box-shadow:var(--ep-om-1) }
.ep-seek input[type=range]:focus-visible { outline:2px solid var(--ep-corail); outline-offset:2px }

/* Parcours d'une conversation : chaque tentative est cliquable */
.ep-parcours { display:grid; gap:6px }
.ep-parcours__leg { display:grid; grid-template-columns:64px 1fr auto auto; align-items:center; gap:10px;
  width:100%; text-align:left; padding:8px 11px; border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-1); background:var(--ep-surface); cursor:pointer; font-size:12.5px }
.ep-parcours__leg time { font-family:var(--ep-f-data); font-size:11.5px; color:var(--ep-texte-3) }
.ep-parcours__leg:hover { border-color:var(--ep-ligne-forte); background:var(--ep-surface-2) }
.ep-parcours__leg.on { border-color:var(--ep-corail); background:var(--ep-corail-voile) }

/* Pagination de la file */
.ep-pager { display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:10px 12px; border-top:1px solid var(--ep-ligne); background:var(--ep-surface);
  font-size:12.5px; flex:0 0 auto }


/* v5.35.2 — Parcours de conversation : rangées empilées, pas de défilement
   horizontal. Une tentative unique n'affiche rien. */
.ep-parcours-bar { display:grid; gap:5px; padding:10px 24px 12px;
  background:var(--ep-surface); border-bottom:1px solid var(--ep-ligne);
  flex:0 0 auto; max-height:170px; overflow-y:auto }
.ep-parcours-bar__t { display:inline-flex; align-items:center; gap:5px;
  font-size:10.5px; font-weight:700; letter-spacing:.07em; text-transform:uppercase;
  color:var(--ep-texte-3); margin-bottom:2px }
.ep-parcours-bar__leg { display:grid; grid-template-columns:44px 1fr auto auto;
  align-items:center; gap:10px; width:100%; text-align:left;
  padding:6px 11px; border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1);
  background:var(--ep-canvas); cursor:pointer; font-size:12.5px; color:var(--ep-texte-2) }
.ep-parcours-bar__leg time { font-family:var(--ep-f-data); font-size:11px; color:var(--ep-texte-3) }
.ep-parcours-bar__ligne { min-width:0; display:flex; align-items:baseline; gap:7px; overflow:hidden }
.ep-parcours-bar__ligne strong { color:var(--ep-texte); font-weight:600; white-space:nowrap }
.ep-parcours-bar__ligne small { font-size:10.5px; color:var(--ep-texte-3);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.ep-parcours-bar__leg:hover { border-color:var(--ep-ligne-forte) }
.ep-parcours-bar__leg.on { background:var(--ep-corail-voile); border-color:var(--ep-corail) }
.ep-parcours-bar__leg.on .ep-parcours-bar__ligne strong { color:var(--ep-corail-fonce) }

/* v5.36 — Pied du composeur : action principale, IA, options à droite */
.rec-reply-foot__opts { margin-left:auto; display:flex; align-items:center; gap:14px; flex-wrap:wrap }
.rec-reply-foot__opts label { display:flex; align-items:center; gap:6px; font-size:12px; color:var(--ep-texte-2) }

/* ══ v5.39 — Conversations au niveau du dossier ══ */
/* Bandeau de contexte : qui est cette personne, avant de lire son message */
.conv-ctx { display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding:9px 22px;
  background:var(--ep-sable-voile); border-bottom:1px solid var(--ep-attn-bord);
  font-size:12.5px; color:#6B4E1F; flex:0 0 auto }
.conv-ctx span { display:inline-flex; align-items:center; gap:5px }
.conv-ctx b { font-weight:700 }
.conv-ctx i { width:1px; height:14px; background:var(--ep-attn-bord) }

/* Connecteur désactivé : présent mais éteint */
.ep-conn--off { opacity:.62 }
.ep-conn--off .ep-conn__i { filter:grayscale(1) }

/* v5.39.3 — Choix des personnes autorisées sur une boîte partagée */
.conv-part { display:flex; flex-wrap:wrap; gap:8px 16px; max-height:150px; overflow-y:auto;
  padding:10px 12px; border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1); background:var(--ep-surface-2) }
.conv-part label { display:flex; align-items:center; gap:6px; font-size:13px; color:var(--ep-texte-2) }

/* ══ v5.40 — Conversations : un vrai client de messagerie ══ */

/* Trois colonnes : boîtes · liste · message */
.conv-3col { display:grid; grid-template-columns:212px 340px minmax(0,1fr); height:calc(100vh - 190px);
  min-height:520px; border-top:1px solid var(--ep-ligne) }
.conv-3col > .ep-file { border-right:1px solid var(--ep-ligne) }
@media (max-width:1200px){ .conv-3col { grid-template-columns:1fr minmax(0,1.6fr) } .conv-boites { display:none } }

.conv-boites { background:var(--ep-surface-2); border-right:1px solid var(--ep-ligne);
  padding:12px 10px; overflow-y:auto; display:flex; flex-direction:column; gap:2px }
.conv-boites__t { font-size:10px; font-weight:700; letter-spacing:.09em; text-transform:uppercase;
  color:var(--ep-texte-3); padding:0 8px 7px; display:flex; align-items:center; gap:5px }
.conv-boite { display:flex; align-items:center; gap:7px; width:100%; text-align:left;
  padding:7px 9px; border-radius:var(--ep-r-1); font-size:13px; color:var(--ep-texte-2); cursor:pointer }
.conv-boite:hover { background:var(--ep-surface) }
.conv-boite.on { background:var(--ep-corail-voile); color:var(--ep-corail-fonce); font-weight:600 }
.conv-boite__n { flex:1; min-width:0; display:flex; align-items:center; gap:5px;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.conv-boite b { font-family:var(--ep-f-data); font-size:11px; background:var(--ep-corail); color:#fff;
  padding:1px 6px; border-radius:var(--ep-r-3) }
.conv-boite i { font-family:var(--ep-f-data); font-size:11px; font-style:normal; color:var(--ep-texte-3) }
.conv-boites__v { font-size:12px; color:var(--ep-texte-3); padding:8px }
.conv-boites__lien { margin-top:auto; display:flex; align-items:center; gap:6px; padding:8px 9px;
  font-size:12px; color:var(--ep-texte-3); text-decoration:none; border-top:1px solid var(--ep-ligne) }
.conv-boites__lien:hover { color:var(--ep-corail-fonce) }

/* Corps d'un e-mail : le HTML de l'expéditeur, contenu sans casser la page */
.ep-bulle__b--mail { overflow-x:auto }
.ep-bulle__b--mail img { max-width:100%; height:auto; border-radius:var(--ep-r-1) }
.ep-bulle__b--mail img[data-src-distant] { min-width:120px; min-height:60px; background:var(--ep-canvas);
  border:1px dashed var(--ep-ligne-forte); display:inline-block }
.ep-bulle__b--mail table { border-collapse:collapse; max-width:100%; font-size:13px }
.ep-bulle__b--mail td, .ep-bulle__b--mail th { border:1px solid var(--ep-ligne); padding:5px 8px }
.ep-bulle__b--mail blockquote { margin:8px 0; padding-left:11px; border-left:2px solid var(--ep-ligne-forte);
  color:var(--ep-texte-2) }
.ep-bulle__b--mail pre { white-space:pre-wrap; word-break:break-word; font-family:var(--ep-f-data); font-size:12.5px }
.ep-bulle__b--mail a { color:var(--ep-info) }
.ep-bulle__b--mail h1, .ep-bulle__b--mail h2, .ep-bulle__b--mail h3 { font-size:15px; margin:8px 0 4px }
.conv-dest { font-size:11px; color:var(--ep-texte-3); padding:0 3px 3px }

/* Citation du fil précédent, repliée par défaut */
.conv-cit__b { display:inline-block; margin-top:8px; padding:1px 9px; border-radius:var(--ep-r-3);
  background:var(--ep-canvas); border:1px solid var(--ep-ligne); color:var(--ep-texte-3);
  font-size:12px; line-height:1.4; letter-spacing:.06em }
.conv-cit__b:hover, .conv-cit__b.on { border-color:var(--ep-ligne-forte); color:var(--ep-texte-2) }
.conv-cit { margin-top:9px; padding-left:11px; border-left:2px solid var(--ep-ligne);
  color:var(--ep-texte-3); font-size:12.5px }

/* Pièces jointes */
.conv-pjs { display:flex; flex-wrap:wrap; gap:8px; margin-top:11px }
.conv-pjs--envoi { padding:0 18px 4px; margin-top:0 }
.conv-pj { display:inline-flex; align-items:center; gap:8px; padding:6px 11px;
  background:var(--ep-surface); border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1);
  font-size:12.5px; color:var(--ep-texte); text-decoration:none; max-width:280px }
.conv-pj:hover { border-color:var(--ep-corail); color:var(--ep-corail-fonce) }
.conv-pj span { display:flex; flex-direction:column; min-width:0 }
.conv-pj b { font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.conv-pj small { font-family:var(--ep-f-data); font-size:10.5px; color:var(--ep-texte-3) }
.conv-pj--off { opacity:.55; cursor:default } .conv-pj--off:hover { border-color:var(--ep-ligne); color:var(--ep-texte) }
.conv-pj--att { background:var(--ep-corail-voile); border-color:#F5CFC3 }
.conv-pj--att button { display:grid; place-items:center; color:var(--ep-texte-3); padding:2px }
.conv-pj--att button:hover { color:var(--ep-alerte) }

/* En-têtes du composeur : À / Cc / Cci */
.conv-champs { display:flex; flex-direction:column; gap:1px; padding:8px 18px 0 }
.conv-champs label { display:flex; align-items:center; gap:10px; border-bottom:1px solid var(--ep-ligne) }
.conv-champs span { width:26px; font-size:11.5px; color:var(--ep-texte-3); flex:0 0 auto }
.conv-champs input { flex:1; border:0; background:none; padding:6px 0; font-size:13px; outline:none }

/* Bandeau des images distantes bloquées */
.conv-img-bloc { display:flex; align-items:center; gap:9px; padding:9px 13px; margin-bottom:12px;
  background:var(--ep-attn-voile); border:1px solid var(--ep-attn-bord); border-radius:var(--ep-r-2);
  font-size:12.5px; color:#6B4E1F }
.conv-img-bloc span { flex:1 }

/* Transférer, sur l'en-tête d'un message */
.conv-tr { opacity:0; padding:2px 5px; border-radius:var(--ep-r-1); color:var(--ep-texte-3) }
.ep-bulle:hover .conv-tr { opacity:1 }
.conv-tr:hover { background:var(--ep-canvas); color:var(--ep-corail-fonce) }

/* ══ v5.41 — Conversations : lecture d'e-mail et éditeur complet ══ */
.conv-2col { display:grid; grid-template-columns:326px minmax(0,1fr);
  height:calc(100vh - 132px); min-height:560px; border-top:1px solid var(--ep-ligne) }
@media (max-width:1100px){ .conv-2col { grid-template-columns:1fr } }

/* Liste : une boîte de réception */
.conv-liste { background:var(--ep-surface); border-right:1px solid var(--ep-ligne);
  display:flex; flex-direction:column; min-width:0 }
.conv-liste__h { display:flex; align-items:center; gap:10px; padding:13px 15px 10px }
.conv-liste__h strong { display:block; font-family:var(--ep-f-titre); font-size:15px }
.conv-liste__h small { display:block; font-size:11.5px; color:var(--ep-texte-3) }
.conv-liste__n { margin-left:auto; font-family:var(--ep-f-data); font-size:12px; color:var(--ep-texte-3) }
.conv-liste__f { display:flex; align-items:center; gap:7px; padding:0 13px 10px; border-bottom:1px solid var(--ep-ligne) }
.conv-liste__f .ep-cherche { flex:1; padding:5px 10px }
.conv-liste #convFile { flex:1; overflow-y:auto }

.conv-mail { display:grid; grid-template-columns:18px 1fr; gap:9px; padding:11px 13px;
  border-bottom:1px solid var(--ep-ligne); border-left:3px solid transparent; cursor:pointer }
.conv-mail:hover { background:var(--ep-surface-2) }
.conv-mail.on { background:var(--ep-corail-voile); border-left-color:var(--ep-corail) }
.conv-mail__pt { width:8px; height:8px; border-radius:99px; background:var(--ep-corail); margin-top:6px }
.conv-mail.lu .conv-mail__pt { background:transparent; border:1px solid var(--ep-ligne-forte) }
.conv-mail__h { display:flex; align-items:baseline; gap:8px }
.conv-mail__de { font-size:13px; font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.conv-mail.lu .conv-mail__de { font-weight:500; color:var(--ep-texte-2) }
.conv-mail__t { margin-left:auto; font-family:var(--ep-f-data); font-size:10.5px; color:var(--ep-texte-3); flex:0 0 auto }
.conv-mail__o { font-size:12.5px; font-weight:600; margin:2px 0 1px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.conv-mail.lu .conv-mail__o { font-weight:500 }
.conv-mail__x { font-size:12px; color:var(--ep-texte-3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.conv-mail__m { display:flex; align-items:center; gap:6px; margin-top:5px; flex-wrap:wrap }

/* Lecture */
.conv-lecture { display:flex; flex-direction:column; background:var(--ep-canvas); min-width:0 }
.conv-lec__h { padding:15px 22px 12px; background:var(--ep-surface); border-bottom:1px solid var(--ep-ligne); flex:0 0 auto }
.conv-lec__o { font-family:var(--ep-f-titre); font-size:19px; font-weight:700; line-height:1.3; margin-bottom:7px }
.conv-lec__m { display:flex; align-items:center; gap:9px; flex-wrap:wrap; font-size:12.5px; color:var(--ep-texte-3) }
.conv-lec__act { display:flex; gap:7px; margin-left:auto; align-items:center }
.conv-lec__c { flex:1; overflow-y:auto; padding:16px 22px }

/* Une carte par message */
.conv-msg { background:var(--ep-surface); border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  margin-bottom:12px; box-shadow:var(--ep-om-1) }
.conv-msg--in { border-left:3px solid var(--ep-info) }
.conv-msg--out { border-left:3px solid var(--ep-corail) }
.conv-msg--note { border-left:3px solid var(--ep-attn); background:var(--ep-attn-voile) }
.conv-msg__h { display:flex; align-items:flex-start; gap:11px; padding:11px 16px; border-bottom:1px solid var(--ep-ligne) }
.conv-msg--note .conv-msg__h { border-bottom-color:var(--ep-attn-bord); font-size:12.5px; align-items:center }
.conv-msg__h .ep-av { width:32px; height:32px; font-size:12px; flex:0 0 auto }
.conv-msg__de { font-size:13.5px; font-weight:700 }
.conv-msg__de span { font-weight:400; color:var(--ep-texte-3); font-size:12px }
.conv-msg__a { font-size:11.5px; color:var(--ep-texte-3); margin-top:2px }
.conv-msg__t { margin-left:auto; font-family:var(--ep-f-data); font-size:11px; color:var(--ep-texte-3);
  flex:0 0 auto; display:flex; align-items:center; gap:6px }
.conv-msg__b { padding:15px 18px; font-size:13.5px; line-height:1.6 }
.conv-msg .conv-pjs { padding:0 18px 14px; margin-top:0 }
.ep-av--xs { width:20px; height:20px; font-size:9px }

/* Composeur */
.conv-compo { background:var(--ep-surface); border-top:1px solid var(--ep-ligne); flex:0 0 auto;
  display:flex; flex-direction:column; max-height:332px }
.conv-compo--grand { max-height:88vh }
.conv-compo--grand .conv-zone { min-height:320px }
.conv-compo--note { background:var(--ep-attn-voile) }
.conv-compo__o { display:flex; gap:2px; padding:0 16px; border-bottom:1px solid var(--ep-ligne); align-items:center }
.conv-compo__o button { padding:11px 13px; font-size:12.5px; font-weight:600; color:var(--ep-texte-3);
  border-bottom:2px solid transparent; display:flex; align-items:center; gap:6px }
.conv-compo__o button.on { color:var(--ep-corail-fonce); border-bottom-color:var(--ep-corail) }
.conv-compo__d { margin-left:auto; display:flex; align-items:center; gap:9px; font-size:11.5px }

.conv-dest { display:flex; align-items:flex-start; gap:9px; padding:8px 18px; border-bottom:1px solid var(--ep-ligne) }
.conv-dest__l { width:30px; padding-top:5px; font-size:11.5px; color:var(--ep-texte-3); flex:0 0 auto }
.conv-dest__z { flex:1; display:flex; flex-wrap:wrap; gap:6px; align-items:center; min-width:0; position:relative }
.conv-dest__i { border:0; outline:none; font:inherit; font-size:13px; padding:4px 0; min-width:160px; flex:1; background:none }
.conv-dest__x { margin-left:auto; display:flex; gap:9px; padding-top:5px }
.conv-dest__x button { font-size:11.5px; color:var(--ep-texte-3) }
.conv-dest__x button:hover, .conv-dest__x button.on { color:var(--ep-corail-fonce); font-weight:600 }
.conv-chip { display:inline-flex; align-items:center; gap:6px; padding:3px 5px 3px 3px;
  background:var(--ep-canvas); border:1px solid var(--ep-ligne); border-radius:var(--ep-r-3); font-size:12.5px }
.conv-chip--err { background:var(--ep-alerte-voile); border-color:#F0C4BE; color:var(--ep-alerte) }
.conv-chip button { display:grid; place-items:center; color:var(--ep-texte-3); padding:0 2px }
.conv-chip button:hover { color:var(--ep-alerte) }

.conv-sugg { position:absolute; top:100%; left:0; z-index:20; width:340px; max-height:290px; overflow-y:auto;
  background:var(--ep-surface); border:1px solid var(--ep-ligne-forte); border-radius:var(--ep-r-2);
  box-shadow:var(--ep-om-2); padding:5px; margin-top:5px }
.conv-sugg__t { font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:var(--ep-texte-3); padding:7px 9px 4px }
.conv-sugg__i { display:flex; align-items:center; gap:9px; width:100%; text-align:left;
  padding:6px 9px; border-radius:var(--ep-r-1); font-size:13px }
.conv-sugg__i:hover, .conv-sugg__i.on { background:var(--ep-corail-voile) }
.conv-sugg__i small { display:block; font-size:11px; color:var(--ep-texte-3) }

.conv-tb { display:flex; align-items:center; gap:2px; padding:7px 14px; border-bottom:1px solid var(--ep-ligne); flex-wrap:wrap }
.conv-tb__b { width:29px; height:29px; display:grid; place-items:center; border-radius:var(--ep-r-1); color:var(--ep-texte-2) }
.conv-tb__b:hover { background:var(--ep-canvas) }
.conv-tb__b.on { background:var(--ep-corail-voile); color:var(--ep-corail-fonce) }
.conv-tb__sep { width:1px; height:19px; background:var(--ep-ligne); margin:0 6px }
.conv-tb__s { padding:4px 24px 4px 8px; border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1);
  font-size:12px; background:var(--ep-surface) }
.conv-tb__coul { position:relative }
.conv-tb__pal { display:none; position:absolute; top:100%; left:0; z-index:20; gap:4px; padding:7px;
  grid-template-columns:repeat(4,1fr); background:var(--ep-surface); border:1px solid var(--ep-ligne-forte);
  border-radius:var(--ep-r-1); box-shadow:var(--ep-om-2) }
.conv-tb__coul:hover .conv-tb__pal { display:grid }
.conv-tb__pal button { width:19px; height:19px; border-radius:4px; border:1px solid rgba(0,0,0,.12) }

.conv-zone { flex:1; overflow-y:auto; padding:14px 20px; min-height:92px; font-size:14px; line-height:1.65; outline:none }
.conv-zone:empty::before { content:attr(data-ph); color:var(--ep-texte-3) }
.conv-zone blockquote { margin:8px 0; padding-left:11px; border-left:2px solid var(--ep-ligne-forte); color:var(--ep-texte-2) }
.conv-zone a { color:var(--ep-info) }
.conv-pied { display:flex; align-items:center; gap:9px; padding:11px 18px; border-top:1px solid var(--ep-ligne); flex-wrap:wrap }
.conv-pied__o { margin-left:auto; display:flex; align-items:center; gap:14px; font-size:12px; color:var(--ep-texte-2) }
.conv-pied__o label { display:flex; align-items:center; gap:6px }

/* ══ v5.41.1 — Correctifs de la messagerie ══ */

/* Protection : si une feuille ou une extension rétablit le style de lien par
   défaut, l'application garde le sien. Spécificité volontairement supérieure
   à la règle d'élément `a`. */
.ep-app a, .ep-app a:link, .ep-app a:visited,
.conv-plein a, .conv-plein a:link { color:inherit; text-decoration:none }
.ep-app .conv-msg__b a, .ep-app .conv-zone a, .ep-app .ep-bulle__b--mail a { color:var(--ep-info); text-decoration:underline }

/* Vue liste seule : tant qu'aucun message n'est ouvert, la liste occupe tout */
.conv-2col--liste { grid-template-columns:1fr }
.conv-2col--liste .conv-lecture { display:none }
.conv-2col--liste .conv-liste { border-right:0 }
.conv-2col--liste .conv-mail { grid-template-columns:18px 1fr auto }
.conv-lec__x { position:absolute; top:13px; right:18px; width:28px; height:28px; display:grid;
  place-items:center; border-radius:var(--ep-r-1); color:var(--ep-texte-3) }
.conv-lec__x:hover { background:var(--ep-canvas); color:var(--ep-texte) }
.conv-lec__h { position:relative; padding-right:54px }

/* Composeur agrandi : par-dessus la lecture, pas un simple max-height */
.conv-compo--grand { position:absolute; inset:0; z-index:6; max-height:none; box-shadow:var(--ep-om-3) }
.conv-lecture { position:relative }
.conv-compo--grand .conv-zone { min-height:320px }

/* Rédaction plein écran */
.conv-plein { position:fixed; inset:0; z-index:60; background:var(--ep-surface);
  display:flex; flex-direction:column }
.conv-plein__h { display:flex; align-items:center; gap:12px; padding:14px 22px;
  border-bottom:1px solid var(--ep-ligne); background:var(--ep-surface-2) }
.conv-plein__h strong { font-family:var(--ep-f-titre); font-size:16px }
.conv-plein__a { margin-left:auto; display:flex; align-items:center; gap:10px }
.conv-compo--plein { flex:1; max-height:none; border-top:0 }
.conv-compo--plein .conv-zone { min-height:340px }
.conv-compo--plein .conv-dest { padding-left:22px; padding-right:22px }

/* ── v5.42 — Composeur partagé : destinataires réclamation + note riche ── */
.rec-dest { display:flex; align-items:center; gap:7px; padding:7px 12px; flex-wrap:wrap; font-size:13px }
.rec-dest + .rec-dest { border-top:1px dashed var(--ep-ligne) }
.rec-dest[hidden] { display:none }
.rec-dest__l { font-size:12px; font-weight:700; color:var(--ep-texte-3); width:24px }
.rec-dest__z { display:contents }
.rec-dest__i { flex:1; min-width:150px; border:0; outline:0; background:none; font:inherit; font-size:13px; padding:3px 0 }
.rec-dest__plus { font-size:12px; font-weight:700; color:var(--ep-texte-3); padding:3px 7px; border-radius:var(--ep-r-1) }
.rec-dest__plus:hover { background:var(--ep-surface-2); color:var(--ep-texte) }
.rec-dest__plus.on { color:var(--ep-corail-fonce) }
.rec-chip { display:inline-flex; align-items:center; gap:6px; padding:2px 6px 2px 10px; border-radius:var(--ep-r-3); background:var(--ep-sable-voile); border:1px solid var(--ep-dore); font-size:12.5px; font-weight:600 }
.rec-chip button { width:16px; height:16px; border-radius:50%; display:grid; place-items:center; color:var(--ep-texte-3); font-size:13px; line-height:1 }
.rec-chip button:hover { background:var(--ep-dore); color:var(--ep-encre) }
.rte--note { min-height:88px; background:var(--ep-attn-voile); border:1px solid var(--ep-attn-bord); border-radius:var(--ep-r-1); padding:10px 12px; outline:0; margin-top:6px }
.rte--note:empty::before { content:attr(data-ph); color:var(--ep-texte-3) }
#recCompoNote .conv-tb { border-radius:var(--ep-r-1); border:1px solid var(--ep-ligne) }
/* v5.42 — le composeur partagé et les destinataires occupent toute la
   largeur du bandeau, la barre modèle/variable reste sur sa propre ligne. */
.ep-compo__b { flex-wrap:wrap }
.rec-composer .rec-dest, .rec-composer #recTb { flex:1 1 100%; width:100% }
.rec-composer #recTb .conv-tb { border:0; border-bottom:1px solid var(--ep-ligne) }
.rec-composer .rec-dest + #recTb .conv-tb { border-top:1px dashed var(--ep-ligne) }
.rec-composer .rec-dest button.rec-dest__plus { width:auto; height:auto }

/* ── v5.42 — Fil + panneau de contexte (refonte Conversations v2) ───────── */
.conv-travail { display:grid; grid-template-columns:minmax(0,1fr) 288px; min-height:0; flex:1 }
.conv-travail__fil { display:flex; flex-direction:column; min-width:0; min-height:0 }
.conv-ctx { border-left:1px solid var(--ep-ligne); background:var(--ep-surface);
  overflow-y:auto; padding:12px; display:flex; flex-direction:column; gap:10px }
.conv-ctx__b { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2); padding:11px 12px; background:var(--ep-surface) }
.conv-ctx__b--rec { border-color:var(--ep-attn-bord); background:var(--ep-attn-voile) }
.conv-ctx__t { font-size:10.5px; font-weight:700; letter-spacing:.09em; text-transform:uppercase;
  color:var(--ep-texte-3); margin:0 0 8px }
.conv-ctx__cli { display:flex; gap:9px; align-items:center; margin-bottom:7px }
.conv-ctx__cli .ep-av { width:36px; height:36px; font-size:14px }
.conv-ctx__cli b { font-size:13.5px; display:block }
.conv-ctx__cli small { font-size:11.5px; color:var(--ep-texte-2) }
.conv-ctx__l { display:flex; align-items:center; gap:7px; font-size:12.5px; color:var(--ep-texte-2); padding:3px 0 }
.conv-ctx__l svg { flex:none; color:var(--ep-texte-3) }
.conv-ctx__l b { color:var(--ep-texte) }
.conv-ctx__p { font-size:12px; color:var(--ep-texte-2); margin:0 0 7px; line-height:1.45 }
.conv-ctx__c { display:grid; grid-template-columns:72px minmax(0,1fr); align-items:center; gap:8px; margin-bottom:7px }
.conv-ctx__c > span { font-size:11.5px; font-weight:600; color:var(--ep-texte-3) }
.conv-ctx__c select, .conv-ctx__c input { width:100%; padding:5px 7px; border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-1); background:var(--ep-surface); font:inherit; font-size:12.5px; outline:0 }
.conv-ctx__c select:hover, .conv-ctx__c input:hover { border-color:var(--ep-ligne-forte) }
.conv-ctx__tache { display:flex; gap:7px; align-items:flex-start; font-size:12.5px; padding:4px 0 }
.conv-ctx__tache input { margin-top:2px; accent-color:var(--ep-corail) }
.conv-ctx__tache.fait span { text-decoration:line-through; color:var(--ep-texte-3) }
.conv-ctx__tache i { font-style:normal; font-family:var(--ep-f-data); font-size:10.5px; color:var(--ep-texte-3) }
.conv-ctx__x { margin-left:auto; opacity:0; color:var(--ep-texte-3); flex:none }
.conv-ctx__tache:hover .conv-ctx__x { opacity:1 }
.conv-ctx__x:hover { color:var(--ep-alerte) }
.conv-ctx__a { font-size:11.5px; color:var(--ep-texte-2); padding:4px 0 4px 13px; position:relative; line-height:1.4 }
.conv-ctx__a::before { content:""; position:absolute; left:2px; top:10px; width:5px; height:5px;
  border-radius:50%; background:var(--ep-ligne-forte) }
.conv-ctx__a time { display:block; font-family:var(--ep-f-data); font-size:10px; color:var(--ep-texte-3) }
.ep-ell { overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
@media (max-width:1340px){ .conv-travail { grid-template-columns:minmax(0,1fr) } .conv-ctx { display:none } }

.conv-ctx__cli-t { min-width:0; display:flex; flex-direction:column; gap:1px }
.conv-ctx__cli-t b { font-size:13.5px; line-height:1.25 }
.conv-ctx__cli-t small { font-size:11.5px; color:var(--ep-texte-2); line-height:1.3 }
.conv-travail__fil .conv-lec__c { min-height:160px }


/* L'avatar héritait color:#fff sans fond : invisible sur blanc. */
.conv-msg__h .ep-av { background:var(--ep-info) }
.conv-msg--out .conv-msg__h .ep-av { background:var(--ep-corail) }
.conv-msg--note .conv-msg__h .ep-av { background:var(--ep-attn) }

/* Cartes : largeur lisible, alignées côté expéditeur comme dans la maquette. */
.conv-lec__c { padding:18px 24px; display:flex; flex-direction:column; gap:12px; background:var(--ep-canvas) }
.conv-msg { margin:0; max-width:min(760px, 88%); box-shadow:var(--ep-om-1) }
.conv-msg--in { align-self:flex-start }
.conv-msg--out, .conv-msg--note { align-self:flex-end }
.conv-msg--note { max-width:min(560px, 78%) }

/* Séparateur de jour. */
.conv-jour { align-self:center; font-family:var(--ep-f-data); font-size:10.5px; color:var(--ep-texte-3);
  background:var(--ep-surface); border:1px solid var(--ep-ligne); border-radius:var(--ep-r-3); padding:2px 13px }

/* ── v5.43.1 — Composeur replié : le fil garde la vedette ──────────────────
   Tant qu'on n'écrit pas, seule la barre d'onglets et une ligne de saisie
   restent visibles ; tout se déploie au premier clic. */
.conv-compo--replie { max-height:none }
.conv-compo--replie #convEntetes,
.conv-compo--replie .conv-tb,
.conv-compo--replie .conv-pied,
.conv-compo--replie #convPJ,
.conv-compo--replie #convIAPanel { display:none }
.conv-compo--replie .conv-zone { min-height:0; height:46px; overflow:hidden; padding:13px 20px;
  cursor:text; color:var(--ep-texte-3) }
.conv-compo--replie .conv-compo__o button { padding:9px 13px }


/* ── v5.44 — Conversations : même moteur de fil que les réclamations ──────
   Le conteneur est désormais .rec-chat et les messages des bulles
   .ep-bulle : plus aucune règle propre aux conversations, pour que les
   deux modules ne puissent plus diverger visuellement. */
.conv-travail__fil > .rec-chat { min-height:140px }
.conv-lec__c { padding:20px 24px }

/* ── v5.44.1 — Panneau des conversations : cartes de largeur égale ────────
   Les boutons .ep-b sont en inline-flex : dans une colonne flex, ils
   rétrécissaient leur carte parente. align-items:stretch le corrige, et
   les boutons pleine largeur retrouvent une allure régulière. */
.conv-ctx { align-items:stretch }
.conv-ctx__b { align-self:stretch; width:100% }
.conv-ctx__b > .ep-b { width:100%; justify-content:center }
.conv-ctx__b > .ep-b--fantome { border:1px dashed var(--ep-ligne-forte); color:var(--ep-texte-2);
  background:transparent; margin-top:6px }
.conv-ctx__b > .ep-b--fantome:hover { border-color:var(--ep-corail); color:var(--ep-corail-fonce) }
.conv-ctx__cli-t { min-width:0 }
.conv-ctx__l .ep-ell { max-width:100% }
.conv-ctx__tache:first-of-type { margin-top:-2px }

/* ── v5.44.1 — Zone de dépôt de fichiers ─────────────────────────────────── */
.ep-depot { position:relative; outline:2px dashed var(--ep-corail); outline-offset:-4px }
.ep-depot::after { content:"Déposez pour joindre"; position:absolute; inset:0; z-index:5;
  display:grid; place-items:center; pointer-events:none;
  background:rgba(233,102,70,.07); color:var(--ep-corail-fonce);
  font-weight:700; font-size:13px; letter-spacing:.02em }

/* ── v5.45 — Sélection multiple, actions groupées et étiquettes ─────────── */
.conv-mail { position:relative }
.conv-mail__ck { position:absolute; left:6px; top:12px; z-index:2; padding:4px; cursor:pointer;
  opacity:0; transition:opacity .12s }
.conv-mail:hover .conv-mail__ck, .conv-mail.sel .conv-mail__ck,
.conv-mail__ck input:checked { opacity:1 }
.conv-mail__ck input { accent-color:var(--ep-corail); cursor:pointer }
.conv-mail.sel { background:var(--ep-sable-voile) }
.conv-mail.sel.on { background:var(--ep-corail-voile) }

.conv-lot { display:flex; align-items:center; gap:10px; padding:8px 12px; flex-wrap:wrap;
  background:var(--ep-encre); color:var(--ep-sable); border-bottom:1px solid var(--ep-ligne) }
.conv-lot[hidden] { display:none }
.conv-lot__all { display:flex; align-items:center; gap:7px; font-size:12.5px; cursor:pointer; white-space:nowrap }
.conv-lot__all input { accent-color:var(--ep-corail) }
.conv-lot__all b { color:#fff }
.conv-lot__b { display:flex; align-items:center; gap:6px; flex-wrap:wrap; margin-left:auto }
.conv-lot__b .ep-b { background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.22); color:var(--ep-sable) }
.conv-lot__b .ep-b:hover { background:rgba(255,255,255,.18); border-color:rgba(255,255,255,.4) }
.conv-lot__b .ep-b--fantome { background:none; border-color:transparent; color:rgba(255,237,196,.7) }
.conv-lot__tags select { background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.22);
  color:var(--ep-sable); border-radius:var(--ep-r-1); padding:4px 7px; font-size:12.5px; outline:0 }
.conv-lot__tags option { color:var(--ep-texte) }

.conv-annul { position:fixed; left:50%; bottom:22px; z-index:1200; transform:translate(-50%,90px);
  display:flex; align-items:center; gap:14px; padding:11px 16px; border-radius:var(--ep-r-2);
  background:var(--ep-encre); color:var(--ep-sable); box-shadow:var(--ep-om-3);
  font-size:13px; transition:transform .22s }
.conv-annul.on { transform:translate(-50%,0) }
.conv-annul button { font-weight:700; color:#FFC9B5; text-decoration:underline; text-underline-offset:2px }
.conv-annul button:hover { color:#fff }

.ep-tag { display:inline-flex; align-items:center; gap:5px; padding:1px 8px; border-radius:var(--ep-r-3);
  font-size:10.5px; font-weight:600; border:1px solid; white-space:nowrap }
.ep-tag button { font-size:12px; line-height:1; opacity:.6 }
.ep-tag button:hover { opacity:1 }
.ep-tag--gris { background:var(--ep-canvas); border-color:var(--ep-ligne-forte); color:var(--ep-texte-2) }
.ep-tag--corail { background:var(--ep-corail-voile); border-color:#F3B5A2; color:var(--ep-corail-fonce) }
.ep-tag--ambre { background:var(--ep-attn-voile); border-color:var(--ep-attn-bord); color:var(--ep-attn) }
.ep-tag--vert { background:var(--ep-ok-voile); border-color:var(--ep-ok-bord); color:var(--ep-ok) }
.ep-tag--bleu { background:var(--ep-info-voile); border-color:var(--ep-info-bord); color:var(--ep-info) }
.ep-tag--violet { background:#F3EFFA; border-color:#D6C9EC; color:#6A4A9E }
.ep-tag--rouge { background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord); color:var(--ep-alerte) }
.conv-ctx__tags { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:7px }
.conv-ctx__tagsel { width:100%; padding:5px 7px; border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-1); background:var(--ep-surface); font:inherit; font-size:12px; outline:0 }

/* ── v5.46 — Tri des colonnes et compositeur de segments ─────────────────── */
.ep-tri { cursor:pointer; user-select:none; white-space:nowrap }
.ep-tri:hover { color:var(--ep-corail-fonce) }
.ep-tri.on { color:var(--ep-corail-fonce) }
.ep-tri__f { font-size:9px; margin-left:4px; opacity:.55 }
.ep-tri.on .ep-tri__f { opacity:1 }
.crm-crit { display:grid; grid-template-columns:1fr 1fr 1fr auto; gap:6px; margin-bottom:6px; align-items:center }
.crm-crit select, .crm-crit input { width:100%; padding:6px 8px; border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-1); background:var(--ep-surface); font:inherit; font-size:12.5px; outline:0 }
.crm-crit input:disabled { background:var(--ep-canvas); color:var(--ep-texte-3) }
@media (max-width:620px){ .crm-crit { grid-template-columns:1fr 1fr } }

/* ── v5.48 — Fiche client : menu vertical et interrupteurs Brevo ─────────── */
.ep-fmenu { display:flex; flex-direction:column; gap:1px; padding:8px;
  border-bottom:1px solid var(--ep-ligne); background:var(--ep-surface) }
.ep-fmenu button { display:flex; align-items:center; gap:9px; padding:7px 10px;
  border-radius:var(--ep-r-1); color:var(--ep-texte-2); font-size:13px; text-align:left; width:100% }
.ep-fmenu button svg { flex:none; opacity:.8 }
.ep-fmenu button span:first-of-type { flex:1 }
.ep-fmenu button .ep-n { margin-left:auto; font-family:var(--ep-f-data); font-size:10.5px;
  color:var(--ep-texte-3); background:none; padding:0 }
.ep-fmenu button:hover { background:var(--ep-sable-voile) }
.ep-fmenu button.is-actif { background:var(--ep-corail-voile); color:var(--ep-corail-fonce); font-weight:600 }
.ep-fmenu button.is-actif .ep-n, .ep-fmenu button.is-actif svg { color:var(--ep-corail-fonce); opacity:1 }
@media (min-width:1100px){
  /* Au large, le menu se range en colonne à gauche du contenu, comme dans
     un dossier de réclamation. */
  .ep-fiche__c { display:grid; grid-template-columns:212px minmax(0,1fr); min-height:0 }
  .ep-fmenu { border-bottom:0; border-right:1px solid var(--ep-ligne); align-content:start; overflow-y:auto }
  .ep-fiche__c > #crmPanneau { overflow-y:auto; min-width:0 }
}
.ep-brevo-l { display:flex; align-items:center; gap:9px; padding:5px 2px; font-size:12.5px;
  border-bottom:1px dashed var(--ep-ligne) }
.ep-brevo-l:last-child { border-bottom:0 }
.ep-brevo-l span { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.ep-sw { width:34px; height:19px; border-radius:var(--ep-r-3); background:var(--ep-ligne-forte);
  position:relative; flex:none; transition:.15s; cursor:pointer; border:0 }
.ep-sw::after { content:""; position:absolute; left:2px; top:2px; width:15px; height:15px;
  border-radius:50%; background:#fff; transition:.15s }
.ep-sw.on { background:var(--ep-ok) }
.ep-sw.on::after { transform:translateX(15px) }
.ep-sw--attente { opacity:.5; cursor:progress }

/* ══════════════════════════════════════════════════════════════════════════
   v5.49 — FICHE CLIENT « MOTEUR CLIENT » (maquette)
   Trois colonnes : identité + menu vertical | contenu | contexte.
   ═══════════════════════════════════════════════════════════════════════ */
.ep-mq { flex:1; display:grid; grid-template-columns:264px minmax(0,1fr) 292px; min-height:0 }
.ep-mq__nav { border-right:1px solid var(--ep-ligne); background:var(--ep-surface);
  overflow-y:auto; padding:14px 10px }
.ep-mq__id { padding:4px 8px 14px; text-align:center; border-bottom:1px solid var(--ep-ligne); margin-bottom:10px }
.ep-mq__id .ep-av--xl { margin:0 auto 9px }
.ep-mq__id b { display:block; font-family:var(--ep-f-titre); font-size:16px; font-weight:800 }
.ep-mq__id small { font-size:11.5px; color:var(--ep-texte-3) }
.ep-mq__kpi { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin:11px 4px 4px }
.ep-mq__k { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1); padding:7px 8px; text-align:center }
.ep-mq__k b { display:block; font-family:var(--ep-f-data); font-size:15px; font-weight:500 }
.ep-mq__k span { font-size:9.5px; text-transform:uppercase; letter-spacing:.06em; color:var(--ep-texte-3) }
#crmOnglets { margin-top:10px }
#crmOnglets button { display:flex; align-items:center; gap:9px; width:100%; padding:7px 9px;
  border:0; background:none; border-radius:var(--ep-r-1); color:var(--ep-texte-2);
  font:inherit; font-size:13px; cursor:pointer; text-align:left }
#crmOnglets button svg { flex:none }
#crmOnglets button .ep-n { margin-left:auto; font-family:var(--ep-f-data); font-size:10.5px;
  color:var(--ep-texte-3); background:none; padding:0 }
#crmOnglets button:hover { background:var(--ep-sable-voile) }
#crmOnglets button.is-actif { background:var(--ep-corail-voile); color:var(--ep-corail-fonce); font-weight:600 }
#crmOnglets button.is-actif .ep-n { color:var(--ep-corail-fonce) }

.ep-mq__corps { overflow-y:auto; padding:18px 22px; min-height:0; background:var(--ep-canvas) }
.ep-mq__h2 { font-family:var(--ep-f-titre); font-size:16px; font-weight:800; margin:0 0 3px }
.ep-mq__sous { font-size:12.5px; color:var(--ep-texte-3); margin:0 0 14px }
/* Les rendus d'onglets existants embarquent leur propre padding : neutralisé
   ici, le corps de la maquette en fournit déjà. */
.ep-mq__corps .ep-contenu--pad { padding:0 }
.ep-mq__corps > #crmPanneau > .ep-carte, .ep-mq__corps #crmPanneau .ep-contenu--pad > .ep-carte { margin-bottom:12px }

.ep-mq__ctx { border-left:1px solid var(--ep-ligne); background:var(--ep-surface);
  overflow-y:auto; padding:12px; display:flex; flex-direction:column; gap:10px }
.ep-mq__blk { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2); padding:11px 12px }
.ep-mq__bt { font-size:9.5px; font-weight:700; letter-spacing:.11em; text-transform:uppercase;
  color:var(--ep-texte-3); margin-bottom:8px; display:flex; align-items:center; gap:6px }
.ep-mq__lg { display:flex; align-items:center; gap:7px; font-size:12px; color:var(--ep-texte-2); padding:3px 0; min-width:0 }
.ep-mq__lg svg { flex:none; color:var(--ep-texte-3) }
.ep-mq__lg b { color:var(--ep-texte-1); font-weight:600 }
.ep-mq__lg span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0 }
.ep-mq__lg a { color:inherit }
.ep-mq__chips { display:flex; gap:5px; flex-wrap:wrap; margin-top:7px }
.ep-mq__brevo { display:flex; align-items:center; gap:8px; padding:5px 0; font-size:12.5px;
  border-bottom:1px dashed var(--ep-ligne) }
.ep-mq__brevo:last-of-type { border-bottom:0 }
.ep-mq__brevo span { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }

/* Chip fidélité dorée (programme) */
.ep-et--fid { background:var(--ep-attn-voile, #FEF6E7); border-color:var(--ep-attn-bord, #EBD49A); color:var(--ep-attn, #B47512) }

@media (max-width:1300px) {
  .ep-mq { grid-template-columns:240px minmax(0,1fr) }
  .ep-mq__ctx { display:none }
}

/* v5.49 — Fiche maquette : la grille remplit la hauteur du module, le fil
   d'ariane reste sur une ligne. */
.ep-page:has(> .ep-mq) { display:flex; flex-direction:column; height:100%; gap:0; min-height:0 }
.ep-page:has(> .ep-mq) > .ep-entete { flex:none }
.ep-entete .ep-fil { display:flex; align-items:center; gap:6px; min-width:0; white-space:nowrap }
.ep-entete .ep-fil svg { flex:none }
.ep-entete .ep-fil__actuel { overflow:hidden; text-overflow:ellipsis }
/* Les tables larges défilent dans leur carte plutôt que d'être rognées. */
.ep-mq__corps .ep-carte { overflow-x:auto }

/* v5.50 — Onglet Informations : formulaire deux colonnes, actions à droite. */
.ep-mq__form { display:grid; grid-template-columns:1fr 1fr; gap:10px 14px; padding:14px 16px }
/* v5.55.1 — Cette règle visait le libellé du champ, mais « .ep-mq__ch span »
   attrape TOUS les spans descendants : l'enveloppe du téléphone et son
   drapeau passaient en display:block, d'où le numéro rejeté sous le
   drapeau. On ne vise plus que le libellé, premier enfant direct. */
.ep-mq__ch > span:first-child { display:block; font-size:10.5px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; color:var(--ep-texte-3); margin-bottom:4px }
.ep-mq__ch input { width:100% }
.ep-mq__ch--l { grid-column:1 / -1 }
.ep-mq__actions { display:flex; align-items:center; justify-content:flex-end; gap:12px; margin-top:2px }
@media (max-width:900px) { .ep-mq__form { grid-template-columns:1fr } }

/* v5.51 — Photo de profil dans la pastille, solde de fidélité, mouvements
   de bons, montants négatifs. */
.ep-av--photo { overflow:hidden; padding:0; position:relative }
.ep-av--photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border-radius:inherit }
.ep-mq__fid { display:grid; grid-template-columns:auto 1fr; gap:14px; align-items:start; padding:12px 14px }
.ep-mq__k--fid { min-width:130px } .ep-mq__k--fid b { font-size:20px }
.ep-mq__neg { color:var(--ep-alerte) }
.ep-mq__usages td { background:var(--ep-canvas); padding:6px 12px }
.ep-mq__usage { display:inline-flex; align-items:center; font-family:var(--ep-f-data); font-size:11.5px;
  color:var(--ep-ok); background:var(--ep-ok-voile, #EDF6EA); border:1px solid var(--ep-ok-bord, #C4DCBB);
  border-radius:var(--ep-r-3); padding:2px 9px; margin:2px 5px 2px 0 }
.ep-mq__usage--deb { color:var(--ep-alerte); background:var(--ep-alerte-voile); border-color:var(--ep-alerte-bord) }
.ep-mq__ch textarea { width:100%; resize:vertical; min-height:44px }

/* v5.52 - Mouvements de points : credits en vert. */
.ep-mq__pos { color:var(--ep-ok) }

/* ══════════════════════════════════════════════════════════════════════════
   v5.53 — ADAPTATION AUX ÉCRANS ÉTROITS
   Mesuré avant correction : sur un 14 pouces, 990 px de navigation sur
   1440 (69 %) et 450 px de contenu ; sur mobile, un corps de fiche de
   44 px. Trois leviers, du plus sémantique au plus mécanique.
   ═══════════════════════════════════════════════════════════════════════ */

/* 1. Le rail de segments appartient à la LISTE : sur une fiche, il ne sert
      à rien et vole 196 px. Il disparaît dès qu'on ouvre une fiche. */
body.ep-fiche-ouverte .ep-segments { display:none }
body.ep-fiche-ouverte .ep-corps { grid-template-columns:1fr }

/* 2. Le panneau de contexte se replie sous 1500 px et devient une bascule
      (bouton « Fiche » dans l'en-tête). */
@media (max-width:1500px) {
  .ep-mq { grid-template-columns:240px minmax(0,1fr) }
  .ep-mq__ctx { position:absolute; top:0; right:0; bottom:0; width:300px; z-index:30;
    background:var(--ep-surface); box-shadow:-8px 0 26px rgba(58,36,24,.13); display:none }
  .ep-mq__ctx.is-ouvert { display:flex }
  .ep-mq { position:relative }
  #crmCtxBascule { display:inline-flex }
}
@media (min-width:1501px) { #crmCtxBascule { display:none } }

/* 3. Sous 1150 px, le menu vertical de la fiche devient une barre d'onglets
      horizontale : le contenu récupère toute la largeur. */
@media (max-width:1150px) {
  .ep-mq { grid-template-columns:minmax(0,1fr); grid-template-rows:auto minmax(0,1fr) }
  .ep-mq__nav { border-right:0; border-bottom:1px solid var(--ep-ligne); padding:10px 12px;
    display:grid; grid-template-columns:auto 1fr; gap:10px 14px; align-items:center }
  .ep-mq__id { border-bottom:0; padding:0; text-align:left; display:flex; align-items:center; gap:10px }
  .ep-mq__id .ep-av--xl { width:44px; height:44px; font-size:16px; margin:0 }
  .ep-mq__id b { font-size:14.5px }
  .ep-mq__kpi { grid-column:2; grid-row:1; margin:0; justify-self:end; grid-template-columns:auto auto; gap:8px }
  .ep-mq__k { padding:5px 10px } .ep-mq__k b { font-size:14px }
  #crmOnglets { grid-column:1 / -1; margin:0; display:flex; gap:4px; overflow-x:auto;
    scrollbar-width:none; padding-bottom:2px }
  #crmOnglets::-webkit-scrollbar { display:none }
  #crmOnglets button { width:auto; white-space:nowrap; padding:7px 12px; flex:0 0 auto }
  #crmOnglets button .ep-n { margin-left:6px }
  .ep-mq__corps { padding:14px }
}

/* 4. Mobile : le rail de segments passe en tiroir, le formulaire en une
      colonne, les en-têtes de liste se resserrent. */
@media (max-width:820px) {
  .ep-segments { position:fixed; top:0; left:0; bottom:0; width:230px; z-index:60;
    transform:translateX(-101%); transition:transform .18s ease; box-shadow:2px 0 22px rgba(58,36,24,.16) }
  .ep-segments.is-ouvert { transform:none }
  .ep-corps { grid-template-columns:1fr }
  #crmSegBascule { display:inline-flex }
  .ep-mq__form { grid-template-columns:1fr }
  .ep-mq__corps { padding:12px 10px }
  .ep-entete { flex-wrap:wrap; gap:8px }
  .ep-entete__actions { width:100%; justify-content:flex-start; flex-wrap:wrap }
  .ep-mq__ctx { width:min(300px,88vw) }
}
@media (min-width:821px) { #crmSegBascule { display:none } }

/* 5. Sous 700 px, la liste quitte le tableau pour des cartes : six colonnes
      dans 390 px sont illisibles, une carte par client ne l'est pas. */
@media (max-width:700px) {
  .ep-tbl--clients thead { display:none }
  .ep-tbl--clients, .ep-tbl--clients tbody, .ep-tbl--clients tr, .ep-tbl--clients td { display:block; width:auto }
  .ep-tbl--clients tr { border-bottom:1px solid var(--ep-ligne); padding:10px 12px; position:relative;
    display:grid; grid-template-columns:auto 1fr; gap:2px 10px; align-items:center }
  .ep-tbl--clients td { border:0; padding:0 }
  .ep-tbl--clients td.ep-col-case { grid-row:1 / span 3; align-self:start; padding-top:4px }
  .ep-tbl--clients td:nth-child(2) { grid-column:2 }
  .ep-tbl--clients td:nth-child(3), .ep-tbl--clients td:nth-child(4) { grid-column:2; font-size:12.5px }
  /* Type, fidélité et établissement se rangent en une ligne de pastilles. */
  .ep-tbl--clients td:nth-child(5), .ep-tbl--clients td:nth-child(6), .ep-tbl--clients td:nth-child(7) {
    grid-column:2; display:inline-flex; margin:3px 5px 0 0 }
  .ep-tbl--clients td:nth-child(5) { grid-row:4 }
  .ep-tbl--clients td:nth-child(6) { grid-row:4; margin-left:0 }
  .ep-tbl--clients td:nth-child(7) { grid-row:4 }
  .ep-mq__fid { grid-template-columns:1fr }
  .ep-champ-l { grid-template-columns:1fr; gap:2px }
  .ep-champ-l dt { font-size:10.5px; text-transform:uppercase; letter-spacing:.06em; color:var(--ep-texte-3) }
}

/* ══════════════════════════════════════════════════════════════════════════
   v5.53 — LA COULEUR COMME REPÈRE
   Chaque famille d'information a son ton, constant d'un écran à l'autre :
   l'argent en vert, le temps en violet, la fidélité en doré, l'identité en
   bleu, les dossiers en rouge. On repère avant de lire.
   ═══════════════════════════════════════════════════════════════════════ */
:root {
  --ep-ton-ok: var(--ep-ok);            --ep-ton-ok-v: var(--ep-ok-voile);
  --ep-ton-info: var(--ep-info);        --ep-ton-info-v: var(--ep-info-voile);
  --ep-ton-violet: var(--ep-violet);    --ep-ton-violet-v: var(--ep-violet-voile);
  --ep-ton-alerte: var(--ep-alerte);    --ep-ton-alerte-v: var(--ep-alerte-voile);
  --ep-ton-or: var(--ep-attn);          --ep-ton-or-v: var(--ep-attn-voile);
  --ep-ton-corail: var(--ep-corail-fonce); --ep-ton-corail-v: var(--ep-corail-voile);
  --ep-ton-billet: var(--ep-cat-billet);   --ep-ton-billet-v: var(--ep-info-voile);
  --ep-ton-accueil: var(--ep-cat-accueil); --ep-ton-accueil-v: #E8F4F1;
  --ep-ton-neutre: var(--ep-texte-2);   --ep-ton-neutre-v: var(--ep-sable-voile);
}

/* Menu de fiche : l'icône porte le ton, l'onglet actif s'en teinte. */
#crmOnglets button[data-ton] svg { color:var(--ton, var(--ep-texte-3)); opacity:.85 }
#crmOnglets button[data-ton=ok]      { --ton:var(--ep-ton-ok);      --ton-v:var(--ep-ton-ok-v) }
#crmOnglets button[data-ton=info]    { --ton:var(--ep-ton-info);    --ton-v:var(--ep-ton-info-v) }
#crmOnglets button[data-ton=violet]  { --ton:var(--ep-ton-violet);  --ton-v:var(--ep-ton-violet-v) }
#crmOnglets button[data-ton=alerte]  { --ton:var(--ep-ton-alerte);  --ton-v:var(--ep-ton-alerte-v) }
#crmOnglets button[data-ton=or]      { --ton:var(--ep-ton-or);      --ton-v:var(--ep-ton-or-v) }
#crmOnglets button[data-ton=corail]  { --ton:var(--ep-ton-corail);  --ton-v:var(--ep-ton-corail-v) }
#crmOnglets button[data-ton=billet]  { --ton:var(--ep-ton-billet);  --ton-v:var(--ep-ton-billet-v) }
#crmOnglets button[data-ton=accueil] { --ton:var(--ep-ton-accueil); --ton-v:var(--ep-ton-accueil-v) }
#crmOnglets button[data-ton=neutre]  { --ton:var(--ep-ton-neutre);  --ton-v:var(--ep-ton-neutre-v) }
#crmOnglets button.is-actif { background:var(--ton-v); color:var(--ton); font-weight:600;
  box-shadow:inset 3px 0 0 var(--ton) }
#crmOnglets button.is-actif svg { opacity:1 }
#crmOnglets button.is-actif .ep-n { color:var(--ton) }
#crmOnglets button .ep-n { background:var(--ep-canvas); border-radius:9px; padding:1px 7px }
@media (max-width:1150px) {
  #crmOnglets button.is-actif { box-shadow:inset 0 -2px 0 var(--ton) }
}

/* Compteurs de tête et cartes prennent le ton de leur famille. */
.ep-mq__k--ok b { color:var(--ep-ton-ok) }
.ep-mq__k--ok { border-color:var(--ep-ok-bord); background:var(--ep-ton-ok-v) }
.ep-mq__k--violet b { color:var(--ep-ton-violet) }
.ep-mq__k--violet { border-color:var(--ep-violet-bord); background:var(--ep-ton-violet-v) }

#crmPanneau[data-ton] .ep-carte { border-left:3px solid var(--ep-ligne) }
#crmPanneau[data-ton=ok] .ep-carte      { border-left-color:var(--ep-ton-ok) }
#crmPanneau[data-ton=info] .ep-carte    { border-left-color:var(--ep-ton-info) }
#crmPanneau[data-ton=violet] .ep-carte  { border-left-color:var(--ep-ton-violet) }
#crmPanneau[data-ton=alerte] .ep-carte  { border-left-color:var(--ep-ton-alerte) }
#crmPanneau[data-ton=or] .ep-carte      { border-left-color:var(--ep-ton-or) }
#crmPanneau[data-ton=corail] .ep-carte  { border-left-color:var(--ep-ton-corail) }
#crmPanneau[data-ton=billet] .ep-carte  { border-left-color:var(--ep-ton-billet) }
#crmPanneau[data-ton=accueil] .ep-carte { border-left-color:var(--ep-ton-accueil) }

/* Blocs du panneau de contexte : un filet de couleur en tête. */
.ep-mq__blk--info    { border-top:2px solid var(--ep-ton-info) }
.ep-mq__blk--violet  { border-top:2px solid var(--ep-ton-violet) }
.ep-mq__blk--or      { border-top:2px solid var(--ep-ton-or) }
.ep-mq__blk--accueil { border-top:2px solid var(--ep-ton-accueil) }
.ep-mq__blk--info .ep-mq__bt svg    { color:var(--ep-ton-info) }
.ep-mq__blk--violet .ep-mq__bt svg  { color:var(--ep-ton-violet) }
.ep-mq__blk--or .ep-mq__bt svg      { color:var(--ep-ton-or) }
.ep-mq__blk--accueil .ep-mq__bt svg { color:var(--ep-ton-accueil) }

/* Pastilles de type client. */
.ep-et--violet  { background:var(--ep-violet-voile); border-color:var(--ep-violet-bord); color:var(--ep-violet) }
.ep-et--accueil { background:var(--ep-ton-accueil-v); border-color:#BCDCD4; color:var(--ep-cat-accueil) }

/* Liste : la ligne survolée se teinte, l'établissement garde sa couleur de
   parc pour distinguer Bénodet de Lorient d'un coup d'œil. */
.ep-tbl--clients tbody tr:hover td { background:var(--ep-corail-voile) }
.ep-tbl--clients tbody tr:hover .ep-cli__n { color:var(--ep-corail-fonce) }

/* v5.54 — Détail d'un élément Qweekle (vente, commande, réservation,
   billet, bon) : un bandeau qui répond « quoi et combien », puis les
   tableaux qui expliquent. */
.ep-det__tete { display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:0 2px 12px; border-bottom:1px solid var(--ep-ligne); margin-bottom:12px; flex-wrap:wrap }
.ep-det__ref { display:block; font-size:16px; font-weight:700; color:var(--ep-texte) }
.ep-det__montant { text-align:right; border-left:3px solid var(--ep-ligne); padding-left:12px }
.ep-det__montant b { display:block; font-family:var(--ep-f-data); font-size:21px; font-weight:500 }
.ep-det__montant span { font-size:10px; text-transform:uppercase; letter-spacing:.07em; color:var(--ep-texte-3) }
.ep-det__montant--ok { border-left-color:var(--ep-ton-ok) } .ep-det__montant--ok b { color:var(--ep-ton-ok) }
.ep-det__montant--billet { border-left-color:var(--ep-ton-billet) } .ep-det__montant--billet b { color:var(--ep-ton-billet) }
.ep-det__montant--corail { border-left-color:var(--ep-ton-corail) } .ep-det__montant--corail b { color:var(--ep-ton-corail) }
.ep-det__montant--violet { border-left-color:var(--ep-ton-violet) } .ep-det__montant--violet b { color:var(--ep-ton-violet) }
.ep-det__meta { padding:0 2px 14px }
.ep-tbl--detail { font-size:12.5px }
.ep-tbl--detail td, .ep-tbl--detail thead th { padding:7px 11px }
#modalBody .ep-carte { margin-bottom:12px }
#modalBody .ep-carte:last-child { margin-bottom:0 }
/* La ligne cliquable annonce qu'elle mène quelque part. */
.ep-tbl--detail tbody tr.ep-clic:hover td { background:var(--ep-sable-voile) }
.ep-tbl--detail tbody tr.ep-clic td:last-child { color:var(--ep-texte-3) }
.ep-tbl--detail tbody tr.ep-clic:hover td:last-child { color:var(--ep-corail-fonce) }
@media (max-width:700px) { .ep-det__tete { flex-direction:column; align-items:flex-start }
  .ep-det__montant { border-left:0; padding-left:0; text-align:left } }

/* v5.55 — Saisie assistée : téléphone international et adresse. */
.ep-mq__ch .ep-saisie-tel, .ep-saisie-tel { display:flex; align-items:stretch;
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1);
  background:var(--ep-surface); overflow:hidden; margin:0; text-transform:none;
  letter-spacing:normal; font-weight:400 }
.ep-saisie-tel:focus-within { border-color:var(--ep-corail); box-shadow:0 0 0 3px var(--ep-corail-voile) }
.ep-mq__ch .ep-saisie-tel__d, .ep-saisie-tel__d { display:flex; align-items:center;
  justify-content:center; width:40px; flex:none; margin:0; padding:0;
  background:var(--ep-surface-2); border-right:1px solid var(--ep-ligne); color:var(--ep-texte-3) }
.ep-saisie-tel__d .flag { border-radius:2px; box-shadow:0 0 0 1px rgba(0,0,0,.08) }
.ep-saisie-tel .ep-saisie { border:0; box-shadow:none; border-radius:0; flex:1; min-width:0;
  background:none; font-family:var(--ep-f-data); letter-spacing:.02em }
.ep-saisie-tel:focus-within { outline:none }
.ep-mq__ch .ep-tel__aide, .ep-tel__aide { display:block; font-size:11px; margin-top:4px;
  text-transform:none; letter-spacing:normal; font-weight:400; color:var(--ep-texte-3) }
.ep-tel__aide--attn { color:var(--ep-attn) }
.ep-tel__pays { display:inline-flex; align-items:center; margin-right:5px; vertical-align:-2px }
.ep-tel__pays .flag { border-radius:2px; box-shadow:0 0 0 1px rgba(0,0,0,.08) }

.ep-adr { position:relative }
/* Même précaution que pour le téléphone : ce span ne doit pas hériter du
   style de libellé. */
.ep-mq__ch .ep-adr__champ, .ep-adr__champ { display:flex; align-items:center; gap:7px;
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1); background:var(--ep-surface);
  padding-left:10px; color:var(--ep-texte-3); margin:0; text-transform:none;
  letter-spacing:normal; font-weight:400 }
.ep-adr__champ:focus-within { border-color:var(--ep-corail); box-shadow:0 0 0 3px var(--ep-corail-voile) }
.ep-adr__champ .ep-saisie { border:0; box-shadow:none; flex:1; min-width:0; background:none }
.ep-adr__liste { position:absolute; top:100%; left:0; right:0; z-index:40; margin-top:3px;
  background:var(--ep-surface); border:1px solid var(--ep-ligne-forte); border-radius:var(--ep-r-1);
  box-shadow:0 10px 26px rgba(58,36,24,.15); max-height:250px; overflow-y:auto }
.ep-adr__opt { display:block; width:100%; text-align:left; border:0; background:none; cursor:pointer;
  padding:8px 11px; font:inherit; font-size:12.5px; color:var(--ep-texte-2);
  border-bottom:1px solid var(--ep-ligne) }
.ep-adr__opt:last-child { border-bottom:0 }
.ep-adr__opt:hover { background:var(--ep-corail-voile); color:var(--ep-corail-fonce) }
.ep-adr__att { padding:9px 11px; font-size:12px; color:var(--ep-texte-3) }

/* v5.57 — Journal e-mail regroupé : le lien discret vers les logs bruts. */
.ep-lien-logs { border:0; background:none; padding:0 2px; margin-left:4px; cursor:pointer;
  font:inherit; font-size:11.5px; color:var(--ep-texte-3); text-decoration:underline dotted }
.ep-lien-logs:hover { color:var(--ep-corail-fonce) }
#crmMailSuite { border-top:1px dashed var(--ep-ligne) }

/* v5.57.1 — Pastille marron : l'action du destinataire (le clic), dernier
   degré de la hiérarchie d'engagement. */
:root { --ep-marron: #8A5524; --ep-marron-voile: #F7EFE6; --ep-marron-bord: #DFC6A8 }
.ep-et--marron { background:var(--ep-marron-voile); border-color:var(--ep-marron-bord); color:var(--ep-marron) }


/* ══════════════════════════════════════════════════════════════════════════
   v5.59 — Journal des appels de la fiche client
   Une ligne par appel, dense et lisible : le contexte (client, numéro) est
   déjà dans l'en-tête de la fiche, seul ce qui varie occupe la place. Le
   lecteur — celui du module Téléphonie — se déplie sous la ligne.
   ═══════════════════════════════════════════════════════════════════════ */
.ep-appels { display:flex; flex-direction:column }
.ep-appel { border-bottom:1px solid var(--ep-ligne) }
.ep-appel:last-child { border-bottom:0 }
.ep-appel__l { display:flex; align-items:center; gap:12px; padding:9px 14px; flex-wrap:wrap }
.ep-appel:hover .ep-appel__l { background:var(--ep-sable-voile) }
.ep-appel--manque .ep-appel__l { background:var(--ep-alerte-voile) }
.ep-appel--manque:hover .ep-appel__l { background:var(--ep-alerte-voile) }
.ep-appel__q { font-size:12.5px; color:var(--ep-texte-2); min-width:132px }
.ep-appel__num { font-size:12.5px; color:var(--ep-texte-2); flex:1; min-width:120px;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.ep-appel__d { font-size:12px; min-width:64px; text-align:right; color:var(--ep-texte-2) }
.ep-appel__ag { font-size:11.5px; max-width:150px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.ep-appel__b { margin-left:auto; flex:none }
.ep-appel__p { padding:0 14px 14px }
@media (max-width:820px) {
  .ep-appel__q { min-width:0; width:100% }
  .ep-appel__b { margin-left:0 }
}

/* ══════════════════════════════════════════════════════════════════════════
   v5.60.2 — ÉDITEUR D'ENQUÊTE : styles restaurés
   La refonte du design a laissé cinq classes de l'éditeur sans aucune
   règle : .ed-q, .ed-insert-bar, .ed-insert-step, .is-masked, .is-locked.
   Résultat, chaque question s'affichait à plat — libellé, identifiant et
   quatre gros boutons empilés — et une enquête de cent questions devenait
   un mur de texte. Les règles reviennent, adaptées aux jetons actuels.
   ═══════════════════════════════════════════════════════════════════════ */

/* Une question = une ligne compacte, lisible en survolant du regard. */
/* Le conteneur est une grille avec un gap de 10 px qui s'ajoute à CHAQUE
   intervalle — questions et barres d'insertion comprises. Ramené à 0, les
   marges des lignes suffisent et l'espacement redevient maîtrisé. */
.ed-qs { gap:0 }
.ed-q { display:flex; align-items:center; gap:9px; flex-wrap:nowrap;
  background:var(--ep-surface); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-1); padding:5px 10px; margin:2px 0; min-height:0 }
.ed-q:hover { border-color:var(--ep-corail-bord, #F0C9BC); background:var(--ep-surface-2) }
.ed-q .qtype { flex:none; font-size:9.5px; font-weight:800; letter-spacing:.05em;
  text-transform:uppercase; background:var(--ep-canvas); color:var(--ep-texte-2);
  border:1px solid var(--ep-ligne); border-radius:50px; padding:1px 8px; line-height:1.5 }
.ed-q .badge { font-size:10px; padding:1px 8px; line-height:1.5 }
.ed-q .qlabel { flex:1; min-width:150px; font-weight:600; font-size:13.5px;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.ed-q .qname { flex:none; color:var(--ep-texte-3); font-size:11.5px;
  font-family:var(--ep-f-data) }
.ed-q .badge { flex:none }

/* Les actions ne doivent pas peser autant que la question elle-même. */
.ed-q .ed-actions { margin-left:auto; display:flex; gap:3px; flex:none }
.ed-actions .btn.mini { padding:0; width:26px; height:26px; min-height:0;
  display:grid; place-items:center; border-radius:var(--ep-r-1) }
.ed-actions .btn.mini svg { width:13px; height:13px }
.ed-actions button:disabled { opacity:.35; cursor:not-allowed }

/* Insertion : discret au repos, net au survol — sinon cent boutons
   « Question ici » crient plus fort que les questions. */
.ed-insert-bar { display:flex; gap:5px; justify-content:center; align-items:center;
  height:16px; margin:0; opacity:0; transition:opacity .15s; overflow:visible }
.ed-insert-bar:hover, .ed-insert-bar:focus-within { opacity:1 }
.ed-etape-body:hover .ed-insert-bar { opacity:.45 }
/* La barre garde une hauteur fixe même invisible : elle reste survolable,
   et son apparition ne décale pas la liste sous le curseur. Ses boutons
   sont volontairement discrets — cent invitations à insérer ne doivent pas
   crier plus fort que les cent questions. */
.ed-insert-bar .btn { font-size:11px; padding:1px 9px; line-height:1.5; min-height:0 }
.ed-insert-bar .btn svg { width:11px; height:11px }
.ed-insert-step { display:block; margin:6px auto; font-size:12px; padding:4px 13px }

/* États hérités du socle. */
.ed-etape.is-locked, .ed-q.is-locked { border-left:3px solid var(--ep-attn) }
.ed-etape.is-masked, .ed-q.is-masked { opacity:.6;
  background:repeating-linear-gradient(-45deg, transparent, transparent 8px,
    rgba(90,70,50,.04) 8px, rgba(90,70,50,.04) 16px) }

/* Sections : en-tête cliquable et corps aérés. */
.ed-etape { background:var(--ep-surface); border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-2); margin-bottom:12px; overflow:hidden }
.ed-etape-head { display:flex; align-items:center; gap:10px; padding:11px 14px;
  cursor:pointer; background:var(--ep-canvas) }
.ed-etape-head h3 { flex:1; font-size:15px; margin:0 }
.ed-etape-body { padding:14px; display:none }
.ed-etape.open .ed-etape-body { display:block }

.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px }
.form-grid .full { grid-column:1 / -1 }
.checks { display:flex; flex-wrap:wrap; gap:8px 18px; padding:5px 0 }
.checks label { display:flex; gap:7px; align-items:center; font-weight:600; font-size:13px }
.checks input { width:auto; accent-color:var(--ep-corail) }
hr.sep { border:0; border-top:1px dashed var(--ep-ligne); margin:20px 0 }

@media (max-width:820px) {
  .form-grid { grid-template-columns:1fr }
  .ed-q .qname { display:none }
  .ed-insert-bar { opacity:.6 }
}

/* ══════════════════════════════════════════════════════════════════════════
   v5.61 — ÉDITEUR D'ENQUÊTE EN TROIS COLONNES
   Plan cherchable · question sélectionnée · aperçu et diagnostic.
   ═══════════════════════════════════════════════════════════════════════ */
/* v5.61.1 — L'éditeur occupe l'écran entier. Une enquête de 111 questions
   ne se travaille pas dans un panneau latéral : on a besoin de toute la
   largeur pour le plan, l'édition et l'aperçu, et de toute la hauteur pour
   voir une section sans faire défiler. */
/* v5.61.2 — L'éditeur reste large mais laisse voir le menu de
   l'application : on doit pouvoir sortir vers un autre module sans fermer
   le tiroir. La largeur se cale sur le rail plutôt que sur une valeur
   fixe qui le recouvrirait. */
.drawer.large:has(.ed3) { width:calc(100vw - 240px); left:auto; right:0 }
@media (max-width:1100px) { .drawer.large:has(.ed3) { width:100vw } }
.drawer.large:has(.ed3) .drawer-body { padding:14px 18px }
/* Le contenu de l'éditeur prend la hauteur restante : la grille se cale
   sur la fenêtre, pas sur une valeur devinée. */
.drawer.large:has(.ed3) .drawer-body { display:flex; flex-direction:column }
.drawer.large:has(.ed3) .ed3 { flex:1; min-height:420px }
.ed3 { display:grid; grid-template-columns:300px minmax(0,1fr) 330px;
  border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  overflow:hidden; height:min(72vh,760px); background:var(--ep-surface) }
.ed3__plan { display:flex; flex-direction:column; min-width:0; border-right:1px solid var(--ep-ligne) }
.ed3__ph { padding:10px; border-bottom:1px solid var(--ep-ligne); flex:none }
.ed3__pb { overflow-y:auto; padding:8px; flex:1 }
.ed3__rech { position:relative }
.ed3__rech input { width:100%; height:32px; padding:0 10px 0 30px; font-size:12.5px }
.ed3__rech svg { position:absolute; left:9px; top:8px; color:var(--ep-texte-3) }
.ed3__f { display:flex; flex-wrap:wrap; gap:4px; margin-top:7px }
.edf { font-size:10.5px; font-weight:600; padding:2px 8px; border-radius:var(--ep-r-3);
  border:1px solid var(--ep-ligne); background:var(--ep-surface); color:var(--ep-texte-2) }
.edf.on { background:var(--ep-corail); border-color:var(--ep-corail); color:#fff }
.edf b { font-family:var(--ep-f-data); opacity:.75; margin-left:3px }
.ed3__bar { display:flex; gap:5px; align-items:center; margin-top:7px }
.ed3__note { font-size:10.5px; color:var(--ep-texte-3); margin-left:auto; text-align:right;
  max-width:110px; line-height:1.3 }

/* Plan */
.ed3__sec { margin-bottom:2px }
.ed3__sh { display:flex; align-items:center; gap:6px; padding:6px 7px; border-radius:var(--ep-r-1);
  cursor:pointer; font-weight:700; font-size:12.5px }
.ed3__sh:hover { background:var(--ep-canvas) }
.ed3__sh.on { background:var(--ep-corail-voile); color:var(--ep-corail-fonce) }
.ed3__st { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.ed3__chev { color:var(--ep-texte-3); line-height:0; transition:transform .15s }
.ed3__sec.open .ed3__chev { transform:rotate(90deg) }
.ed3__sn { font-family:var(--ep-f-data); font-size:10.5px; color:var(--ep-texte-3); flex:none }
.ed3__sh:hover .ed3__sn { display:none }
.ed3__sa { display:flex; gap:2px; opacity:0; transition:opacity .12s; flex:none }
.ed3__sh:hover .ed3__sa { opacity:1 }
.ed3__sa button { width:21px; height:21px; border:0; background:none; border-radius:var(--ep-r-1);
  color:var(--ep-texte-3); display:grid; place-items:center; cursor:pointer }
.ed3__sa button:hover:not(:disabled) { background:var(--ep-surface); color:var(--ep-corail-fonce) }
.ed3__sa button:disabled { opacity:.3; cursor:not-allowed }
.ed3__sl { display:none; padding:1px 0 4px 9px; border-left:2px solid var(--ep-ligne); margin-left:12px }
.ed3__sec.open .ed3__sl { display:block }
.ed3__sl.vide { padding:7px 0 7px 9px; font-size:11px; color:var(--ep-texte-3); font-style:italic }
.ed3__q { display:flex; align-items:center; gap:6px; padding:4px 7px; border-radius:var(--ep-r-1);
  cursor:pointer; font-size:12px; color:var(--ep-texte-2) }
.ed3__q:hover { background:var(--ep-canvas) }
.ed3__q.on { background:var(--ep-corail-voile); color:var(--ep-corail-fonce); font-weight:600 }
.ed3__q.drag { opacity:.35 }
.ed3__qt { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.ed3__qb { display:flex; gap:3px; align-items:center; flex:none }
.ed3__gr { width:10px; flex:none; color:var(--ep-texte-3); opacity:0; cursor:grab; line-height:0; font-size:11px }
.ed3__q:hover .ed3__gr, .ed3__sh:hover .ed3__gr, .ed3__q.on .ed3__gr { opacity:.5 }
.ed3__pt { width:6px; height:6px; border-radius:50%; display:inline-block; flex:none }
.ed3__pt--c { background:var(--ep-violet) } .ed3__pt--r { background:var(--ep-corail) }
.ed3__pt--m { background:var(--ep-texte-3) } .ed3__pt--a { background:var(--ep-attn) }
.ed3__pt--o { background:var(--ep-ok) }
.ed3__al { color:var(--ep-attn); line-height:0 }
.ed3__sec.is-masked { opacity:.6 }
.ed3__sec.is-locked > .ed3__sh { border-left:3px solid var(--ep-attn) }
/* Le trait d'insertion montre OÙ l'élément va tomber. */
.ed3__dz { height:3px; margin:1px 0; border-radius:2px; background:transparent; transition:background .1s }
.ed3__dz.on { background:var(--ep-corail) }

/* Colonne centrale */
.ed3__edit { overflow-y:auto; min-width:0; background:var(--ep-canvas) }
.ed3__b { padding:16px 18px }
.ed3__vide { display:grid; place-items:center; height:100%; text-align:center;
  color:var(--ep-texte-3); padding:36px; font-size:13px }
.ed3__h { display:flex; align-items:center; gap:9px; flex-wrap:wrap; margin-bottom:3px }
.ed3__h h2 { flex:1; min-width:0; font-size:17px; font-weight:800; font-family:var(--ep-f-titre) }
.ed3__tag { font-size:10px; font-weight:800; letter-spacing:.05em; text-transform:uppercase;
  padding:2px 8px; border-radius:var(--ep-r-3); background:var(--ep-surface);
  border:1px solid var(--ep-ligne); color:var(--ep-texte-2) }
.ed3__s { font-size:11.5px; color:var(--ep-texte-3); font-family:var(--ep-f-data); margin:0 0 14px }
.ed3__g { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2); margin-bottom:12px; background:var(--ep-surface) }
.ed3__g--attn { border-color:var(--ep-attn) }
.ed3__gh { padding:8px 13px; border-bottom:1px solid var(--ep-ligne); font-weight:700; font-size:12px;
  background:var(--ep-surface-2); display:flex; align-items:center; gap:7px; border-radius:var(--ep-r-2) var(--ep-r-2) 0 0 }
.ed3__g--attn .ed3__gh { background:var(--ep-attn-voile); color:var(--ep-attn) }
.ed3__gb { padding:13px }
.ed3__l2 { display:grid; grid-template-columns:1fr 1fr; gap:11px }
.ed3__ch { display:block; margin-bottom:11px }
.ed3__ch:last-child { margin-bottom:0 }
.ed3__ch > span { display:block; font-size:10.5px; font-weight:700; letter-spacing:.05em;
  text-transform:uppercase; color:var(--ep-texte-3); margin-bottom:4px }
/* Un seul jeu de règles pour TOUS les champs de l'éditeur : cibler une
   classe parente laissait les réponses possibles et les conditions avec
   l'apparence native du navigateur. */
.ed3 input[type=text], .ed3 input[type=search], .ed3 select, .ed3 textarea {
  width:100%; height:34px; padding:0 11px; font-family:inherit; font-size:13px;
  color:var(--ep-texte); border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1);
  background:var(--ep-surface) }
.ed3 textarea { height:auto; min-height:64px; padding:8px 11px; resize:vertical; line-height:1.5 }
.ed3 input:focus, .ed3 select:focus, .ed3 textarea:focus { outline:none;
  border-color:var(--ep-corail); box-shadow:0 0 0 3px var(--ep-corail-voile) }
.ed3 input:disabled, .ed3 select:disabled, .ed3 textarea:disabled { background:var(--ep-canvas); opacity:.7 }
/* Flèche dessinée, décollée du bord : celle du navigateur touche le
   contour et diffère d'un système à l'autre. */
.ed3 select { appearance:none; -webkit-appearance:none; cursor:pointer; padding-right:36px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%239C8B7C' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 12px center }
.ed3 select:hover:not(:disabled) { border-color:var(--ep-texte-3) }
.ed3__bascule { display:flex; align-items:center; gap:9px; font-size:12.5px; font-weight:600; margin-bottom:8px }
.ed3__bascule:last-child { margin-bottom:0 }
.ed3__sw { width:36px; height:20px; border-radius:var(--ep-r-3); background:var(--ep-ligne);
  position:relative; border:0; flex:none; transition:.15s; cursor:pointer }
.ed3__sw::after { content:""; position:absolute; top:2px; left:2px; width:16px; height:16px;
  border-radius:50%; background:#fff; transition:.15s; box-shadow:0 1px 3px rgba(0,0,0,.2) }
.ed3__sw.on { background:var(--ep-corail) } .ed3__sw.on::after { left:18px }
.ed3__sw:disabled { opacity:.4; cursor:not-allowed }
.ed3__opts { display:flex; flex-direction:column; gap:7px }
.ed3__optl { display:flex; align-items:center; gap:8px }
.ed3__optl input { flex:1; min-width:0 }
.ed3__optl button { width:30px; height:30px; flex:none; border:1px solid var(--ep-ligne);
  background:var(--ep-surface); border-radius:var(--ep-r-1); color:var(--ep-texte-3);
  display:grid; place-items:center; cursor:pointer }
.ed3__optl button:hover:not(:disabled) { color:var(--ep-alerte); border-color:var(--ep-alerte) }
.ed3__optl button:disabled { opacity:.3; cursor:not-allowed }
.ed3__cond { background:var(--ep-violet-voile); border:1px solid #D8CCEE;
  border-radius:var(--ep-r-2); padding:11px 13px; font-size:12.5px }
.ed3__cond b { color:var(--ep-violet) }
.ed3__condf { display:grid; grid-template-columns:auto 1fr 1fr; gap:8px; align-items:center; margin-top:9px }
.ed3__condf--v { grid-template-columns:auto 1fr }
.ed3__condf span { font-size:12px; color:var(--ep-texte-2) }

/* Colonne droite */
.ed3__ap { border-left:1px solid var(--ep-ligne); background:var(--ep-surface-2);
  overflow-y:auto; padding:12px; min-width:0 }
.ed3__apt { font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  color:var(--ep-texte-3); margin-bottom:9px; display:flex; align-items:center; gap:6px }
.ed3__tel { background:#FFEDC4; border-radius:12px; padding:14px; border:1px solid #EBD49A }
.ed3__tel h4 { font-size:14px; margin:0 0 10px; color:#553421; font-family:var(--ep-f-titre) }
.ed3__al2 { display:block; font-size:11.5px; font-weight:700; color:#553421; margin-bottom:5px }
.ed3__al2 i { color:#e96646; font-style:normal }
.ed3__ai { font-size:11px; color:#7a5f45; margin:0 0 10px }
.ed3__ain { height:32px; border-radius:9px; border:1px solid #f2d49c; background:#f2d49c;
  margin-bottom:10px; display:flex; align-items:center; padding:0 10px; font-size:11.5px; color:#8a6b4d }
.ed3__ast { font-size:17px; color:#f4cb4b; margin-bottom:10px; letter-spacing:2px }
.ed3__apo { display:flex; flex-direction:column; gap:5px; margin-bottom:10px }
.ed3__apo label { display:flex; align-items:center; gap:8px; font-size:11.5px; color:#553421 }
.ed3__apo i { width:13px; height:13px; border:1px solid #f2d49c; background:#fff; flex:none;
  font-style:normal; position:relative; border-radius:3px }
.ed3__apo i.r { border-radius:50% }
.ed3__apo i.on { border-color:#e96646 }
.ed3__apo i.on::after { content:""; position:absolute; inset:3px; border-radius:50%; background:#e96646 }
.ed3__acib { outline:2px dashed #e96646; outline-offset:5px; border-radius:4px }
.ed3__acta { background:#e96646; color:#ffedc4; text-align:center; border-radius:50px; padding:8px;
  font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.02em }
.ed3__an { font-size:11px; color:var(--ep-texte-3); margin:9px 0 0; line-height:1.5 }
.ed3__diag { margin-top:12px; border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2); overflow:hidden }
.ed3__diagh { padding:7px 11px; background:var(--ep-surface); font-size:10px; font-weight:700;
  letter-spacing:.06em; text-transform:uppercase; color:var(--ep-texte-3); border-bottom:1px solid var(--ep-ligne) }
.ed3__diagl { padding:7px 11px; font-size:11.5px; display:flex; gap:7px; align-items:flex-start;
  border-bottom:1px solid var(--ep-ligne); background:var(--ep-surface) }
.ed3__diagl[data-g] { cursor:pointer }
.ed3__diagl[data-g]:hover { background:var(--ep-canvas) }
.ed3__diagl:last-child { border-bottom:0 }
.ed3__diagl > i { margin-top:5px; flex:none; width:6px; height:6px; border-radius:50% }

/* Sélecteur de type */
.ed3__pick { position:fixed; inset:0; background:rgba(43,29,20,.42); display:grid;
  place-items:center; z-index:80 }
.ed3__pickb { background:var(--ep-surface); border-radius:var(--ep-r-2); padding:20px;
  width:min(520px,92vw); max-height:80vh; overflow:auto; box-shadow:0 20px 60px rgba(43,29,20,.3) }
.ed3__pickb h3 { font-size:16px; margin-bottom:3px }
.ed3__pickg { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:12px }
.ed3__pickg button { text-align:left; padding:8px 11px; border:1px solid var(--ep-ligne);
  border-radius:var(--ep-r-1); background:var(--ep-surface); font-size:12.5px; font-weight:600; cursor:pointer }
.ed3__pickg button:hover { border-color:var(--ep-corail); background:var(--ep-corail-voile); color:var(--ep-corail-fonce) }

/* Éditeur de texte riche : même composant que les modèles de réponse. */
.ed3__rte { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-1); overflow:hidden;
  background:var(--ep-surface) }
.ed3__rte .rte-toolbar { border-bottom:1px solid var(--ep-ligne) }
.ed3__rte .rte { min-height:96px; padding:10px 12px; font-size:13px; line-height:1.55;
  color:var(--ep-texte); outline:none }
.ed3__rte .rte:focus { background:var(--ep-surface-2) }
.ed3__rte .rte ul, .ed3__rte .rte ol { margin:6px 0 6px 20px }
.ed3__rte .rte h3 { font-size:14.5px; font-weight:700; margin:8px 0 4px }
.ed3__rte .rte-toolbar button.on { background:var(--ep-corail); color:#fff }
.ed3__src { width:100%; border:0; border-radius:0; padding:10px 12px !important;
  font-family:var(--ep-f-data) !important; font-size:12px !important; min-height:96px }

@media (max-width:1250px) { .ed3 { grid-template-columns:250px minmax(0,1fr) } .ed3__ap { display:none } }
@media (max-width:900px) { .ed3 { grid-template-columns:1fr; height:auto } .ed3__plan { border-right:0; border-bottom:1px solid var(--ep-ligne) } }

/* v5.61.1 — Réglages de l'enquête repliés : le nom, l'adresse et les
   langues se règlent une fois, les questions se travaillent tous les
   jours. Ils prenaient 580 px de hauteur au détriment de l'éditeur. */
.ed3__reglages { border:1px solid var(--ep-ligne); border-radius:var(--ep-r-2);
  margin-bottom:12px; background:var(--ep-surface); flex:none }
.ed3__reglages > summary { padding:9px 14px; cursor:pointer; font-weight:700; font-size:13px;
  display:flex; align-items:center; gap:8px; list-style:none; border-radius:var(--ep-r-2) }
.ed3__reglages > summary::-webkit-details-marker { display:none }
.ed3__reglages > summary::after { content:"▸"; margin-left:auto; color:var(--ep-texte-3); transition:transform .15s }
.ed3__reglages[open] > summary::after { transform:rotate(90deg) }
.ed3__reglages > summary:hover { background:var(--ep-canvas) }
.ed3__reglages > summary .hint { margin:0; font-weight:400 }
.ed3__reglages > *:not(summary) { padding:0 14px }
.ed3__reglages > *:last-child { padding-bottom:14px }
/* Le titre « Contenu » et son sélecteur de langue restent visibles. */
.drawer.large:has(.ed3) .drawer-body > div[style*="align-items:center"] { flex:none }

/* v5.62.1 — Aperçu des choix en pastilles, pour distinguer d'un coup d'œil
   les deux présentations dans l'éditeur. */
.ed3__apill { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:10px }
.ed3__apill span { font-size:11px; padding:5px 11px; border-radius:11px;
  border:1px solid #f2d49c; background:#f2d49c; color:#553421 }
.ed3__apill span.on { background:#e96646; border-color:#e96646; color:#ffedc4 }

/* ══════════════════════════════════════════════════════════════════════════
   v5.63 — NAVIGATION RESPONSIVE PRINCIPALE
   Le rail canonique devient un tiroir sous 1100 px : aucune seconde
   arborescence n'est créée, donc droits, compteurs et routes restent uniques.
   ══════════════════════════════════════════════════════════════════════════ */
.ep-mobile-bar,.ep-rail-overlay{display:none}
@media (max-width:1100px){
  .ep-app{grid-template-columns:1fr;height:calc(100vh - 56px);margin-top:56px}
  .ep-mobile-bar{display:flex;position:fixed;z-index:130;inset:0 0 auto 0;height:56px;align-items:center;gap:12px;padding:0 14px;background:var(--ep-surface);border-bottom:1px solid var(--ep-ligne);box-shadow:var(--ep-om-1)}
  .ep-mobile-bar strong{font-family:var(--ep-f-titre);font-size:14px;color:var(--ep-encre);white-space:nowrap}
  .ep-mobile-route{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--ep-texte-3);margin-left:auto}
  .ep-mobile-menu{width:38px;height:38px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);background:var(--ep-surface);display:grid;align-content:center;justify-content:center;gap:4px;cursor:pointer}
  .ep-mobile-menu span{display:block;width:18px;height:2px;border-radius:2px;background:var(--ep-encre)}
  .ep-rail{display:flex;position:fixed;z-index:150;inset:0 auto 0 0;width:min(320px,88vw);transform:translateX(-102%);transition:transform .2s ease;box-shadow:var(--ep-om-3)}
  .ep-rail.is-mobile-open{transform:translateX(0)}
  .ep-rail-overlay{position:fixed;display:block;z-index:140;inset:0;background:rgba(43,29,20,.36)}
  .ep-rail-overlay[hidden]{display:none}
  body.ep-nav-open{overflow:hidden}
}

/* ══════════════════════════════════════════════════════════════════════════
   v5.63 LOT 3 — COHÉRENCE VISUELLE & UX
   Couche de normalisation non destructive : mêmes rythmes, états, contrôles
   et comportements responsive pour les composants canoniques et hérités.
   ══════════════════════════════════════════════════════════════════════════ */
:root {
  --ep-control-h:36px;
  --ep-espace-page:22px;
  --ep-transition:.15s ease;
}

/* États et vocabulaire visuel complets */
.badge--danger { background:var(--ep-alerte-voile); color:var(--ep-alerte); border-color:var(--ep-alerte-bord) }
.badge--warning { background:var(--ep-attn-voile); color:var(--ep-attn); border-color:var(--ep-attn-bord) }
.badge--info { background:var(--ep-info-voile); color:var(--ep-info); border-color:var(--ep-info-bord) }
.badge--success { background:var(--ep-ok-voile); color:var(--ep-ok); border-color:var(--ep-ok-bord) }
.badge:empty,.ep-et:empty { display:none }

/* Boutons : taille, feedback et focus identiques entre API historique et DS. */
.ep-b,.btn {
  min-height:34px;
  line-height:1.15;
  transition:background var(--ep-transition),border-color var(--ep-transition),color var(--ep-transition),box-shadow var(--ep-transition),transform var(--ep-transition);
}
.ep-b--sm,.btn--sm { min-height:30px }
.ep-b:active:not(:disabled),.btn:active:not(:disabled) { transform:translateY(1px) }
.ep-b:disabled,.btn:disabled,[aria-disabled="true"].ep-b,[aria-disabled="true"].btn { opacity:.5; cursor:not-allowed; transform:none }
.actions > .ep-b,.actions > .btn,.page-header__actions > .ep-b,.page-header__actions > .btn,.ep-entete__actions > .ep-b,.ep-entete__actions > .btn { flex:0 0 auto }

/* Cartes : même bord, même rythme, pas de doubles marges dans les grilles. */
.card,.ep-carte,.exp-card {
  border-color:var(--ep-ligne);
  box-shadow:var(--ep-om-1);
}
.cards > .card,.ep-grille > .card,.ep-grille > .ep-carte { margin-bottom:0 }
.card__body > :first-child,.empty-state > :first-child { margin-top:0 }
.card__body > :last-child,.empty-state > :last-child { margin-bottom:0 }

/* États vides plus lisibles et homogènes. */
.empty-state,.table-empty {
  color:var(--ep-texte-3);
  line-height:1.55;
}
.empty-state { min-height:140px; display:grid; place-content:center; justify-items:center; gap:7px }
.empty-state h2,.empty-state h3 { font-family:var(--ep-f-titre); color:var(--ep-texte); font-size:15px; line-height:1.3 }
.empty-state p { max-width:52ch; margin:0 auto }
td.table-empty { height:116px; vertical-align:middle !important }

/* Tableaux : lecture plus stable, actions non compressées et focus visible. */
.table-wrap { overscroll-behavior-x:contain; scrollbar-gutter:stable }
.table tbody tr { transition:background var(--ep-transition) }
.table th,.table td { line-height:1.35 }
.table td.actions { width:1%; white-space:nowrap }
.table td.actions .btn,.table td.actions .ep-b { vertical-align:middle }
.table a:focus-visible,.ep-tbl a:focus-visible { outline-offset:1px }
.table tbody tr:focus-within,.ep-tbl tbody tr:focus-within { background:var(--ep-sable-voile) }

/* Champs : même hauteur, contraste et feedback dans les formulaires génériques. */
.form-row input:not([type="checkbox"]):not([type="radio"]),
.form-row select,.form-row textarea,
.field input:not([type="checkbox"]):not([type="radio"]),
.field select,.field textarea,
.form-grid input:not([type="checkbox"]):not([type="radio"]),
.form-grid select,.form-grid textarea {
  width:100%;
  min-height:var(--ep-control-h);
  padding:7px 10px;
  border:1px solid var(--ep-ligne-forte);
  border-radius:var(--ep-r-1);
  background:var(--ep-surface);
  transition:border-color var(--ep-transition),box-shadow var(--ep-transition),background var(--ep-transition);
}
.form-row textarea,.field textarea,.form-grid textarea { min-height:88px; resize:vertical; line-height:1.5 }
.form-row input:focus,.form-row select:focus,.form-row textarea:focus,
.field input:focus,.field select:focus,.field textarea:focus,
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus {
  outline:none;
  border-color:var(--ep-corail);
  box-shadow:0 0 0 3px var(--ep-corail-voile);
  background:#fff;
}
.form-row input:disabled,.form-row select:disabled,.form-row textarea:disabled,
.field input:disabled,.field select:disabled,.field textarea:disabled,
.form-grid input:disabled,.form-grid select:disabled,.form-grid textarea:disabled {
  background:var(--ep-canvas); color:var(--ep-texte-3); cursor:not-allowed; opacity:1;
}
.form-row > label,.field > label { line-height:1.3 }

/* Modales : en-têtes/pieds stables, zone d'action toujours lisible. */
.modal-overlay { padding:20px }
.modal { border:1px solid rgba(43,29,20,.08) }
.modal-head { gap:12px; min-height:54px }
.modal-head > :last-child:not(h2):not(h3) { margin-left:auto }
.modal-foot { gap:8px; flex-wrap:wrap }
.modal-foot .btn--primary,.modal-foot .ep-b--1 { margin-left:auto }

/* En-têtes et filtres : ne plus écraser les titres lorsque les actions débordent. */
.page-header,.ep-entete { min-width:0 }
.page-header__content,.ep-entete > div:not(.ep-entete__actions) { min-width:0 }
.page-header__content h1,.ep-entete h1 { overflow-wrap:anywhere }
.page-header__actions,.ep-entete__actions { max-width:100% }
.ep-filtres { row-gap:8px }

/* Feedback d'attente réutilisable : évite un saut visuel pendant les calculs. */
.st-widget-loading { min-height:120px; display:grid; place-content:center; justify-items:center; gap:6px; color:var(--ep-texte-3) }
.st-widget-loading strong { color:var(--ep-texte); font-family:var(--ep-f-titre) }
.ia-bar { overflow:hidden; border-radius:var(--ep-r-3) }

/* Réduction des mouvements pour les utilisateurs qui le demandent. */
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important }
}

/* Tablette : titres/actions et grilles retrouvent de l'air. */
@media (max-width:900px) {
  :root { --ep-espace-page:16px }
  .page-header,.ep-entete { align-items:flex-start; flex-wrap:wrap }
  .page-header__actions,.ep-entete__actions { width:100%; margin-left:0; overflow-x:auto; flex-wrap:nowrap; padding-bottom:2px; scrollbar-width:thin }
  .ep-filtres { padding-left:16px; padding-right:16px }
  .ep-contenu--pad { padding:16px }
  .form-grid,.field-grid-2 { grid-template-columns:1fr }
  .modal-overlay { padding:12px }
  .modal { max-height:calc(100dvh - 24px) }
}

/* Mobile : boutons tactiles, contenu utile en premier, tableaux scrollables. */
@media (max-width:700px) {
  .ep-mobile-bar { padding-inline:10px }
  .ep-entete,.page-header { padding:12px 14px }
  .page-header { margin:-20px -24px 16px }
  .ep-entete h1,.page-header__content h1 { font-size:17px }
  .ep-entete__sous,.page-header__subtitle { font-size:12px }
  .ep-contenu--pad { padding:12px }
  .ep-filtres { padding:8px 12px }
  .ep-cherche { min-width:100%; max-width:none; order:-1 }
  .ep-b:not(.ep-b--sm),.btn:not(.btn--sm) { min-height:38px }
  .actions { white-space:normal }
  .table-wrap { max-width:100%; border-radius:var(--ep-r-1) }
  .table { min-width:640px }
  .table-empty { white-space:normal }
  .card__body { padding:14px }
  .empty-state { min-height:120px; padding:28px 16px }
  .modal-overlay { align-items:end; padding:0 }
  .modal { width:100%; max-width:none; max-height:92dvh; border-radius:var(--ep-r-2) var(--ep-r-2) 0 0; border-bottom:0 }
  .modal-head,.modal-body,.modal-foot { padding-left:14px; padding-right:14px }
  .modal-foot { padding-bottom:max(13px,env(safe-area-inset-bottom)) }
}

/* v5.63 Lot 3C — Actions sémantiques conservant l'apparence historique. */
.ep-rail__logout{appearance:none;border:0;background:transparent;color:inherit;padding:6px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:8px}
.ep-rail__logout:hover,.ep-rail__logout:focus-visible{background:var(--ep-surface-2,#f3f4f6)}
.auth-switch{text-align:center;margin-top:.9rem}
.auth-link-btn{appearance:none;border:0;background:transparent;padding:0;color:var(--corail);font:inherit;font-size:.88rem;cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.auth-link-btn:hover,.auth-link-btn:focus-visible{text-decoration-thickness:2px}

/* v5.63 Lot 4A — Productivité CRM */
.work-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.work-kpis .ep-kpi{grid-column:auto}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.work-card{min-width:0}.work-list{display:flex;flex-direction:column}.work-row{display:flex;align-items:center;gap:10px;padding:11px 2px;border-bottom:1px solid var(--ep-ligne);min-width:0}.work-row:last-child{border-bottom:0}.work-row__main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.work-row__main strong{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.work-row__main span{font-size:11.5px;color:var(--ep-texte-3)}.work-check{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--ep-ligne);border-radius:50%;background:var(--ep-fond);color:var(--ep-texte-3);cursor:pointer;flex:0 0 auto}.work-check:hover{border-color:var(--ep-ok);color:var(--ep-ok)}.work-check:disabled{opacity:.45;cursor:default}.work-row--button{width:100%;border:0;border-bottom:1px solid var(--ep-ligne);background:transparent;text-align:left;cursor:pointer}.work-row--button:hover{background:var(--ep-fond-2)}.work-card--danger{border-color:color-mix(in srgb,var(--ep-danger) 30%,var(--ep-ligne))}.crm-next{display:flex;align-items:center;gap:12px;padding:16px}.crm-next>div{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}.crm-next strong{font-size:15px}.crm-next span{font-size:12px;color:var(--ep-texte-3)}
@media(max-width:900px){.work-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.work-grid{grid-template-columns:1fr}}@media(max-width:520px){.work-kpis{grid-template-columns:1fr}.work-row{align-items:flex-start}.crm-next{align-items:flex-start;flex-direction:column}}


/* Profil · resynchronisation sélective Qweekle */
.qw-profile-sync{display:flex;flex-direction:column;gap:8px;margin-top:14px}
.qw-profile-sync__row{display:grid;grid-template-columns:24px 110px minmax(0,1fr) 24px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:var(--ep-surface)}
.qw-profile-sync__row.is-different{border-color:var(--ep-dore);background:var(--ep-sable-voile)}
.qw-profile-sync__name{font-weight:700}.qw-profile-sync__name small,.qw-profile-sync__col small{display:block;font-size:10px;font-weight:600;color:var(--ep-texte-3);margin-bottom:3px}
.qw-profile-sync__col{min-width:0;overflow-wrap:anywhere}.qw-profile-sync__arrow{text-align:center;color:var(--ep-texte-3)}
@media(max-width:700px){.qw-profile-sync__row{grid-template-columns:24px 1fr}.qw-profile-sync__col,.qw-profile-sync__arrow{grid-column:2}.qw-profile-sync__arrow{display:none}.qw-profile-sync__col{padding:4px 0}}

/* Lot 3 r1 — constructeur de scénarios sans syntaxe technique */
.sc-builder{display:grid;gap:16px}.sc-workflow-card{border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-2);padding:14px;background:var(--ep-surface);display:grid;gap:14px}.sc-workflow-head{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.sc-workflow-head>input{flex:1;min-width:220px;font-weight:700}.sc-workflow-head label{font-size:11.5px;display:flex;gap:5px;align-items:center}.sc-workflow-meta{display:grid;grid-template-columns:minmax(170px,1fr) 120px minmax(220px,1fr);gap:10px}.sc-workflow-meta>div,.sc-step-body>div>div{display:grid;gap:5px}.sc-workflow-meta label,.sc-step-body>label,.sc-step-body label{font-size:11px;font-weight:700;color:var(--ep-texte-2)}.sc-workflow-meta input,.sc-workflow-meta select{width:100%}.sc-section{border-top:1px solid var(--ep-ligne);padding-top:12px;display:grid;gap:9px}.sc-section-title{display:flex;align-items:baseline;gap:8px}.sc-section-title span{font-size:11px;color:var(--ep-texte-3)}.sc-builder-list,.sc-step-list{display:grid;gap:8px}.sc-builder-row{display:grid;gap:8px;align-items:end;border:1px solid var(--ep-ligne);border-radius:9px;padding:9px;background:var(--ep-surface-2)}.sc-trigger-row{grid-template-columns:150px 170px minmax(180px,1fr) 34px}.sc-choice-row{grid-template-columns:minmax(170px,1fr) minmax(180px,240px) minmax(180px,1fr) 34px}.sc-form-row{grid-template-columns:minmax(180px,1fr) 160px 120px 34px}.sc-builder-main{display:grid;gap:5px;min-width:0}.sc-builder-main>label{font-size:10.5px;font-weight:700;color:var(--ep-texte-2)}.sc-required{display:flex!important;align-items:center;gap:6px;padding-bottom:8px;font-size:11.5px!important}.sc-row-wide{grid-column:1/-1;display:grid;gap:6px}.sc-form-adds{display:flex;gap:6px;flex-wrap:wrap}.sc-select-options{display:grid;gap:5px}.sc-inline-row{display:grid;grid-template-columns:1fr 34px;gap:6px}.sc-step-card{border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface-2);overflow:hidden}.sc-step-head{display:flex;gap:8px;align-items:center;padding:9px 10px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface)}.sc-step-head>b{font-size:12px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.sc-step-head>select{width:170px}.sc-step-number{width:24px;height:24px;border-radius:50%;background:var(--ep-corail-voile);color:var(--ep-corail-fonce);display:grid;place-items:center;font-size:10px;font-weight:800;flex:0 0 auto}.sc-step-actions{display:flex;gap:4px}.sc-step-body{padding:11px;display:grid;gap:8px}.sc-mode-line{display:grid;grid-template-columns:150px minmax(180px,1fr);gap:8px;align-items:center}.sc-condition-grid{display:grid;grid-template-columns:1fr 180px 1fr;gap:8px}.sc-condition-branches{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sc-action-grid{display:grid;grid-template-columns:220px 1fr;gap:8px}.sc-image-drop{position:relative;min-height:86px;border:1.5px dashed var(--ep-ligne-forte);border-radius:9px;background:var(--ep-surface);display:grid;place-items:center;cursor:pointer;overflow:hidden;transition:border-color .15s,background .15s}.sc-image-drop.drag{border-color:var(--ep-corail);background:var(--ep-corail-voile)}.sc-image-preview{width:100%;height:86px;display:grid;place-items:center}.sc-image-preview>span{display:grid;justify-items:center;gap:2px;font-size:10.5px;color:var(--ep-texte-3)}.sc-image-preview>span b{font-size:11.5px;color:var(--ep-texte-2)}.sc-image-preview img{width:100%;height:100%;object-fit:cover;display:block}.sc-image-remove{position:absolute;right:5px;top:5px;background:rgba(255,255,255,.92)}
@media(max-width:1050px){.sc-workflow-meta,.sc-condition-grid{grid-template-columns:1fr}.sc-choice-row,.sc-form-row{grid-template-columns:1fr 1fr}.sc-choice-row>.ep-b,.sc-form-row>.ep-b{justify-self:end}.sc-trigger-row{grid-template-columns:1fr 1fr}.sc-trigger-row input{grid-column:1/-1}.sc-trigger-row>.ep-b{position:absolute;right:20px}.sc-condition-branches,.sc-action-grid{grid-template-columns:1fr}}

/* Lot 3 r2 — finition UX/UI du constructeur de workflows */
.sc-builder{
  gap:20px;
}
.sc-workflow-card{
  padding:0;
  gap:0;
  overflow:hidden;
  border-color:var(--ep-ligne);
  box-shadow:var(--ep-om-1);
}
.sc-workflow-head{
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto auto auto;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  background:var(--ep-surface);
  border-bottom:1px solid var(--ep-ligne);
}
.sc-workflow-name{
  width:100%;
  min-width:0!important;
  min-height:40px!important;
  padding:8px 12px!important;
  border:1px solid var(--ep-ligne-forte)!important;
  border-radius:var(--ep-r-2)!important;
  background:var(--ep-surface)!important;
  font-family:var(--ep-f-titre)!important;
  font-size:14px!important;
  font-weight:800!important;
}
.sc-workflow-name:hover{border-color:var(--ep-texte-3)!important}
.sc-workflow-name:focus{border-color:var(--ep-corail)!important;box-shadow:0 0 0 3px var(--ep-corail-voile)!important}

/* Tous les contrôles du builder parlent la même langue visuelle. */
.sc-builder input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
.sc-builder select,
.sc-builder textarea{
  width:100%;
  min-height:38px;
  padding:8px 11px;
  border:1px solid var(--ep-ligne-forte);
  border-radius:var(--ep-r-2);
  background:var(--ep-surface);
  color:var(--ep-texte);
  font-family:var(--ep-f-ui);
  font-size:13px;
  line-height:1.35;
  transition:border-color .15s,box-shadow .15s,background .15s;
}
.sc-builder textarea{min-height:72px;resize:vertical;line-height:1.5}
.sc-builder input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):hover,
.sc-builder select:hover,
.sc-builder textarea:hover{border-color:var(--ep-texte-3)}
.sc-builder input:focus,
.sc-builder select:focus,
.sc-builder textarea:focus{outline:none;border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile);background:#fff}
.sc-builder select{cursor:pointer;padding-right:34px}
.sc-builder input::placeholder,.sc-builder textarea::placeholder{color:var(--ep-texte-3)}

/* Les réglages binaires sont des interrupteurs verts, comme dans le reste du CRM. */
.sc-switch,
.sc-required{
  display:inline-flex!important;
  align-items:center;
  gap:8px!important;
  color:var(--ep-texte-2)!important;
  font-size:11.5px!important;
  font-weight:700!important;
  cursor:pointer;
  white-space:nowrap;
}
.sc-switch input[type="checkbox"].ep-switch,
.sc-required input[type="checkbox"].ep-switch{
  appearance:none;
  -webkit-appearance:none;
  position:relative;
  display:inline-block;
  flex:0 0 auto;
  width:42px!important;
  height:24px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--ep-ligne-forte)!important;
  box-shadow:none!important;
  cursor:pointer;
  transition:background .16s ease;
}
.sc-switch input[type="checkbox"].ep-switch::after,
.sc-required input[type="checkbox"].ep-switch::after{
  content:"";
  position:absolute;
  top:3px;
  left:3px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 1px 3px rgba(43,29,20,.24);
  transition:left .16s cubic-bezier(.32,.72,0,1);
}
.sc-switch input[type="checkbox"].ep-switch:checked,
.sc-required input[type="checkbox"].ep-switch:checked{background:var(--ep-ok)!important}
.sc-switch input[type="checkbox"].ep-switch:checked::after,
.sc-required input[type="checkbox"].ep-switch:checked::after{left:21px}
.sc-switch input[type="checkbox"].ep-switch:focus-visible,
.sc-required input[type="checkbox"].ep-switch:focus-visible{outline:2px solid var(--ep-corail);outline-offset:2px}

.sc-workflow-meta{
  grid-template-columns:minmax(190px,1fr) 130px minmax(240px,1.15fr);
  align-items:end;
  gap:12px;
  padding:14px 16px 16px;
  background:var(--ep-surface);
}
.sc-workflow-meta>div{gap:6px}
.sc-workflow-meta label,
.sc-builder-main>label,
.sc-step-body>label,
.sc-step-body label,
.sc-row-wide>label{
  font-size:10.5px!important;
  font-weight:800!important;
  color:var(--ep-texte-2)!important;
  line-height:1.25;
}
.sc-section{
  border-top:1px solid var(--ep-ligne);
  padding:16px;
  gap:12px;
  background:var(--ep-surface-2);
}
.sc-section-title{align-items:center;gap:9px}
.sc-section-title b{font-family:var(--ep-f-titre);font-size:13.5px;font-weight:800;color:var(--ep-texte)}
.sc-section-title span{font-size:11.5px;color:var(--ep-texte-3)}
.sc-builder-list,.sc-step-list{gap:10px}
.sc-builder-row{
  position:relative;
  gap:10px;
  padding:11px;
  border-color:var(--ep-ligne);
  border-radius:var(--ep-r-2);
  background:var(--ep-surface);
  box-shadow:0 1px 0 rgba(43,29,20,.02);
}
.sc-builder-row:focus-within{border-color:color-mix(in srgb,var(--ep-corail) 48%,var(--ep-ligne));box-shadow:0 0 0 3px var(--ep-corail-voile)}

.sc-trigger-row{
  grid-template-columns:minmax(155px,.8fr) minmax(180px,.9fr) minmax(240px,1.7fr) 38px;
  align-items:center;
}
.sc-choice-row--bubbles{
  grid-template-columns:minmax(220px,.9fr) minmax(300px,1.45fr) 38px;
  align-items:start;
}
.sc-choice-row--cards{
  grid-template-columns:minmax(190px,.8fr) minmax(190px,.9fr) minmax(280px,1.25fr) 38px;
  align-items:start;
}
.sc-choice-row>.sc-icon-btn{margin-top:20px}
.sc-form-row{
  grid-template-columns:minmax(240px,1.35fr) minmax(170px,.75fr) 150px 38px;
  align-items:start;
}
.sc-form-row>.sc-icon-btn{margin-top:20px}
.sc-builder-main{gap:6px}
.sc-builder-main .hint{margin-top:0;font-size:10px;color:var(--ep-texte-3);line-height:1.25}
.sc-required{
  min-height:38px;
  margin-top:20px;
  padding:0 2px;
  justify-content:flex-start;
}
.sc-row-wide{margin-top:2px;padding-top:10px;border-top:1px dashed var(--ep-ligne)}
.sc-form-adds{gap:7px;padding-top:2px}
.sc-form-adds .ep-b,[data-choice-add],[data-trigger-add],[data-step-add]{min-height:34px;border-style:dashed;background:var(--ep-surface)}

.sc-icon-btn{
  width:38px!important;
  min-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0!important;
  display:inline-grid!important;
  place-items:center;
  border-radius:var(--ep-r-2)!important;
  font-size:15px!important;
  line-height:1!important;
}
.sc-icon-btn--danger{color:var(--ep-alerte)!important;border-color:color-mix(in srgb,var(--ep-alerte) 35%,var(--ep-ligne))!important;background:#fff!important}
.sc-icon-btn--danger:hover{background:var(--ep-alerte-voile)!important;border-color:var(--ep-alerte)!important}
.sc-danger-btn{color:var(--ep-alerte)!important;border-color:color-mix(in srgb,var(--ep-alerte) 35%,var(--ep-ligne))!important;background:#fff!important}
.sc-danger-btn:hover{background:var(--ep-alerte-voile)!important;border-color:var(--ep-alerte)!important}

.sc-step-card{
  border-color:var(--ep-ligne);
  border-radius:var(--ep-r-2);
  background:var(--ep-surface);
  box-shadow:var(--ep-om-1);
}
.sc-step-head{
  display:grid;
  grid-template-columns:28px minmax(0,1fr) 180px auto;
  align-items:center;
  gap:10px;
  min-height:54px;
  padding:9px 12px;
  background:var(--ep-surface);
}
.sc-step-head>b{font-size:12.5px;font-weight:800}
.sc-step-head>select{width:100%;min-height:34px}
.sc-step-number{width:28px;height:28px;font-size:11px}
.sc-step-actions{display:flex;gap:5px}
.sc-step-actions .sc-icon-btn{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;font-size:13px!important}
.sc-step-body{padding:14px 14px 15px;gap:10px;background:var(--ep-surface-2)}
.sc-mode-line{grid-template-columns:150px minmax(260px,1fr);align-items:center;gap:10px}
.sc-condition-grid{grid-template-columns:minmax(220px,1fr) 180px minmax(190px,1fr);gap:10px}
.sc-condition-branches{gap:10px}
.sc-action-grid{grid-template-columns:minmax(220px,.8fr) minmax(260px,1.2fr);gap:10px}
.sc-image-drop{min-height:92px;border-radius:var(--ep-r-2)}
.sc-image-preview{height:92px}

@media(max-width:1180px){
  .sc-workflow-head{grid-template-columns:minmax(250px,1fr) auto auto}.sc-workflow-head>.sc-danger-btn{grid-column:3}
  .sc-choice-row--cards{grid-template-columns:1fr 1fr 38px}.sc-choice-row--cards>.sc-image-drop{grid-column:1/2;grid-row:2}.sc-choice-row--cards>.sc-builder-main:nth-of-type(2){grid-column:2/3;grid-row:1/3}.sc-choice-row--cards>.sc-icon-btn{grid-column:3;grid-row:1;margin-top:20px}
}
@media(max-width:900px){
  .sc-workflow-head{grid-template-columns:1fr auto}.sc-workflow-name{grid-column:1/-1}.sc-workflow-head>.sc-danger-btn{grid-column:auto}
  .sc-workflow-meta{grid-template-columns:1fr 1fr}.sc-workflow-meta>div:last-child{grid-column:1/-1}
  .sc-trigger-row,.sc-choice-row--bubbles,.sc-choice-row--cards,.sc-form-row{grid-template-columns:1fr 38px}
  .sc-trigger-row>*:not(.sc-icon-btn),.sc-choice-row>*:not(.sc-icon-btn),.sc-form-row>*:not(.sc-icon-btn){grid-column:1}
  .sc-trigger-row>.sc-icon-btn,.sc-choice-row>.sc-icon-btn,.sc-form-row>.sc-icon-btn{grid-column:2;grid-row:1;margin-top:0}
  .sc-choice-row--cards>.sc-image-drop{grid-column:1;grid-row:auto}.sc-choice-row--cards>.sc-builder-main:nth-of-type(2){grid-column:1;grid-row:auto}
  .sc-required{margin-top:0}
  .sc-step-head{grid-template-columns:28px 1fr auto}.sc-step-head>select{grid-column:2/4;grid-row:2}.sc-step-actions{grid-column:3;grid-row:1}
  .sc-mode-line,.sc-condition-grid,.sc-condition-branches,.sc-action-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .sc-workflow-head{grid-template-columns:1fr}.sc-switch,.sc-workflow-head>.sc-danger-btn{grid-column:1}.sc-switch{justify-content:space-between}
  .sc-workflow-meta{grid-template-columns:1fr}.sc-workflow-meta>div:last-child{grid-column:auto}
  .sc-section{padding:12px}.sc-step-body{padding:12px}.sc-section-title{align-items:flex-start;flex-direction:column;gap:2px}
}

/* ═══ Chat Lot 4 — fichiers & médias ═══ */
.chat-pj-preview{display:none;gap:8px;overflow-x:auto;padding:0 0 9px}
.chat-pj-pending{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) 26px;gap:8px;align-items:center;min-width:210px;max-width:290px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:var(--ep-surface-2);padding:7px 8px}
.chat-pj-pending>img{width:44px;height:44px;object-fit:cover;border-radius:7px;background:var(--ep-canvas)}
.chat-pj-file{width:44px;height:44px;border-radius:7px;background:var(--ep-canvas);display:grid;place-items:center;color:var(--ep-texte-2)}
.chat-pj-pending>div{min-width:0}.chat-pj-pending b{display:block;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-pj-pending small{display:block;font-size:10px;color:var(--ep-texte-3);margin-top:2px}
.chat-pj-pending>button{width:25px;height:25px;border:1px solid var(--ep-ligne);border-radius:7px;background:var(--ep-surface);color:var(--ep-texte-2);font-size:15px;cursor:pointer}.chat-pj-pending>button:hover{border-color:var(--ep-alerte);color:var(--ep-alerte)}
.chat-pj-prog{display:block;height:3px;background:var(--ep-ligne);border-radius:99px;overflow:hidden;margin-top:5px}.chat-pj-prog span{display:block;height:100%;background:var(--ep-corail);transition:width .12s}
.chat-attach{width:38px;height:38px;padding:0;justify-content:center;flex:0 0 auto}.chat-drop-on{outline:2px dashed var(--ep-corail);outline-offset:5px;border-radius:var(--ep-r-2)}
.chat-pieces-msg{display:grid;gap:7px;margin-top:6px}.chat-piece-doc{display:flex;align-items:center;gap:9px;width:min(300px,100%);padding:9px 10px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:var(--ep-surface);color:var(--ep-texte);text-decoration:none}.chat-piece-doc:hover{border-color:var(--ep-ligne-forte);background:var(--ep-surface-2)}.chat-piece-doc>span{min-width:0;flex:1}.chat-piece-doc b{display:block;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-piece-doc small{display:block;color:var(--ep-texte-3);font-size:10px;margin-top:1px}
.chat-piece-img{display:block;width:min(320px,100%);border-radius:var(--ep-r-2);overflow:hidden;border:1px solid var(--ep-ligne);background:var(--ep-canvas)}.chat-piece-img img{display:block;width:100%;max-height:270px;object-fit:cover}
.chat-pieces-panel{position:absolute;right:18px;top:58px;width:min(390px,calc(100vw - 40px));max-height:520px;z-index:30;background:var(--ep-surface);border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);box-shadow:var(--ep-om-3);overflow:hidden}.chat-pieces-panel__h{display:flex;align-items:center;gap:8px;padding:11px 12px;border-bottom:1px solid var(--ep-ligne)}.chat-pieces-panel__h b{font-family:var(--ep-f-titre);font-size:13px}.chat-pieces-panel__h span{font-size:10.5px;color:var(--ep-texte-3)}.chat-pieces-panel__h button{margin-left:auto;width:28px;height:28px;border-radius:7px;border:1px solid var(--ep-ligne);background:var(--ep-surface);cursor:pointer}.chat-pieces-panel__c{padding:10px;display:grid;gap:8px;overflow:auto;max-height:465px}.chat-gallery-img{display:grid;grid-template-columns:72px minmax(0,1fr);gap:9px;align-items:center;text-decoration:none;color:var(--ep-texte);border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);padding:6px}.chat-gallery-img img{width:72px;height:58px;object-fit:cover;border-radius:7px}.chat-gallery-img span{font-size:11.5px;overflow-wrap:anywhere}

/* Chat Lot 5 — aperçu plein écran des images */
.chat-piece-img,.chat-gallery-img{font:inherit;cursor:zoom-in;text-align:left;color:inherit}
.chat-lightbox{position:fixed;inset:0;z-index:10000;background:rgba(28,20,15,.88);display:none;align-items:center;justify-content:center;padding:36px}
.chat-lightbox.on{display:flex}.chat-lightbox>img{max-width:min(1200px,92vw);max-height:86vh;object-fit:contain;border-radius:10px;box-shadow:0 18px 60px rgba(0,0,0,.45);background:#fff}
.chat-lightbox__x{position:fixed;right:22px;top:18px;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff;font-size:26px;line-height:1;cursor:pointer}
.chat-lightbox__nom{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);max-width:80vw;padding:7px 12px;border-radius:999px;background:rgba(0,0,0,.52);color:#fff;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Chat Lot 5 r4 — Agents : cartes lisibles et hiérarchie claire */
.chat-agent-list{display:grid;gap:14px}
.chat-ia-card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:18px;padding:16px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:var(--ep-surface);box-shadow:var(--ep-om-1)}
.chat-ia-card__portrait{display:flex;flex-direction:column;align-items:center;gap:9px;min-width:0;padding-right:14px;border-right:1px solid var(--ep-ligne)}
.chat-ia-card__avatar{width:68px;height:68px;border-radius:50%;overflow:hidden;background:var(--ep-violet-voile);display:grid;place-items:center;font-size:26px;font-weight:800;color:var(--ep-violet);border:1px solid var(--ep-ligne);box-shadow:var(--ep-om-1)}
.chat-ia-card__avatar img{width:100%;height:100%;object-fit:cover;display:block}.chat-ia-card__portrait-label{font-size:9.5px;font-weight:750;text-transform:uppercase;letter-spacing:.07em;color:var(--ep-texte-3);text-align:center}.chat-agent-photo-btn{white-space:nowrap}
.chat-ia-card__content{display:grid;gap:12px;min-width:0}.chat-ia-card__head{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:14px;align-items:end}
.chat-ia-card__details{display:grid;grid-template-columns:minmax(180px,240px) minmax(120px,160px);gap:12px;align-items:end;padding-top:10px;border-top:1px solid var(--ep-ligne)}
.chat-ia-card__field{display:grid;gap:5px;min-width:0}.chat-ia-card__field label,.chat-agent-label{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ep-texte-3)}
.chat-ia-card__field input,.chat-ia-card__field select{width:100%;height:40px}.chat-ia-card__name input{font-size:14px;font-weight:650}.chat-ia-card__emoji input{text-align:center;font-size:18px}
.chat-ia-card__state{display:grid;gap:6px;justify-items:end}.chat-agent-switch{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:12.5px;font-weight:650}
.chat-ia-card__actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;min-height:30px}.chat-agent-delete{margin-left:auto}
.chat-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.chat-team-card{border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);padding:13px;background:var(--ep-surface);display:flex;gap:12px;align-items:flex-start;min-width:0;box-shadow:var(--ep-om-1)}
.chat-team-avatar{width:48px;height:48px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;background:var(--ep-info);color:#fff;font-size:12px;font-weight:800;overflow:hidden;border:1px solid rgba(65,89,143,.12)}
.chat-team-avatar--photo{background:var(--ep-surface-2)}.chat-team-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.chat-team-card__body{min-width:0;flex:1}.chat-team-card__title{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.chat-team-card__title b{font-size:13.5px}.chat-team-card__role{font-size:11.5px;margin-top:2px}.chat-team-card__meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;align-items:center}.chat-team-card__parks{font-size:10.5px;margin-top:7px}.chat-team-card__groups{display:flex;gap:4px;flex-wrap:wrap;margin-top:7px}
@media(max-width:900px){.chat-ia-card__head{grid-template-columns:1fr}.chat-ia-card__state{justify-items:start}.chat-team-grid{grid-template-columns:1fr}}
@media(max-width:620px){.chat-ia-card{grid-template-columns:1fr}.chat-ia-card__portrait{padding:0 0 12px;border-right:0;border-bottom:1px solid var(--ep-ligne);align-items:flex-start}.chat-ia-card__portrait-label{text-align:left}.chat-ia-card__details{grid-template-columns:1fr}.chat-agent-delete{margin-left:0}.chat-team-card{padding:11px}.chat-team-avatar{width:44px;height:44px}}

/* Chat Lot 5 r4 — horaires : une journée par ligne + plusieurs plages */
.chat-hours-master{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;margin:10px 0 16px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:var(--ep-surface-2)}
.chat-hours-master>div:first-child{display:grid;gap:3px}.chat-hours-master strong{font-size:13px}.chat-hours-master span{font-size:11.5px;color:var(--ep-texte-3);line-height:1.4}
.chat-hours-list{display:grid;grid-template-columns:1fr;gap:9px;padding-bottom:4px}
.chat-hours-row{display:grid;gap:11px;padding:13px 14px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:var(--ep-surface);transition:border-color .15s,background .15s,opacity .15s;overflow:hidden}
.chat-hours-row.is-open{border-color:var(--ep-ok-bord);background:linear-gradient(90deg,var(--ep-ok-voile),var(--ep-surface) 34%)}.chat-hours-row.is-closed{background:var(--ep-surface-2)}
.chat-hours-row__head{display:flex;align-items:center;justify-content:space-between;gap:14px}.chat-hours-day{display:flex;align-items:center;gap:10px;min-width:150px}.chat-hours-day>div{display:grid;gap:1px}.chat-hours-day strong{font-size:13px}.chat-hours-day span{font-size:10.5px;color:var(--ep-texte-3)}
.chat-hours-row.is-open .chat-hours-day span{color:var(--ep-ok);font-weight:700}.chat-hours-row.is-closed .chat-hours-add{opacity:.45}
.chat-hours-ranges{display:grid;gap:7px;padding-left:50px}.chat-hours-range{display:grid;grid-template-columns:minmax(120px,170px) 22px minmax(120px,170px) 34px;gap:8px;align-items:end;width:max-content;max-width:100%;padding:9px 10px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-1);background:var(--ep-surface)}
.chat-hours-time{display:grid;gap:4px}.chat-hours-time>span{font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ep-texte-3)}
.chat-hours-time input[type=time]{width:100%;height:38px;padding:0 10px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);background:var(--ep-surface);font-family:var(--ep-f-data);font-size:12px;outline:0}
.chat-hours-time input[type=time]:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}.chat-hours-time input[type=time]:disabled{opacity:.48;background:var(--ep-canvas);cursor:not-allowed}
.chat-hours-sep{align-self:center;text-align:center;color:var(--ep-texte-3);font-weight:700;padding-top:14px}.chat-hours-remove{width:34px;height:38px;padding:0;justify-content:center}
@media(max-width:760px){.chat-hours-row__head{align-items:flex-start}.chat-hours-ranges{padding-left:0}.chat-hours-range{width:100%;grid-template-columns:1fr 18px 1fr 34px}.chat-hours-master{align-items:flex-start}}
@media(max-width:520px){.chat-hours-row__head{display:grid;grid-template-columns:1fr}.chat-hours-add{justify-self:start}.chat-hours-range{grid-template-columns:1fr 1fr 34px;grid-template-areas:"start end remove"}.chat-hours-time:first-child{grid-area:start}.chat-hours-time:nth-of-type(2){grid-area:end}.chat-hours-remove{grid-area:remove}.chat-hours-sep{display:none}}

/* Chat Lot 5 r5 — polish Agents IA + horaires compacts */
.chat-agent-list{max-width:980px}
.chat-ia-card{grid-template-columns:86px minmax(0,1fr);gap:16px;padding:15px 16px;align-items:start}
.chat-ia-card__portrait{padding-right:15px;gap:8px;border-right:1px solid var(--ep-ligne);align-items:center}
.chat-ia-card__avatar{width:60px;height:60px;font-size:23px}
.chat-agent-photo-btn{height:30px;padding:5px 9px;font-size:11.5px;justify-content:center}
.chat-agent-photo-remove{border:0;background:transparent;color:var(--ep-texte-3);font:600 10.5px/1 var(--ep-f-ui);cursor:pointer;padding:2px 5px;border-radius:5px}
.chat-agent-photo-remove:hover{color:var(--ep-alerte);background:var(--ep-alerte-voile)}
.chat-ia-card__content{gap:10px}
.chat-ia-card__head{grid-template-columns:minmax(260px,1fr) auto;gap:16px;align-items:end}
.chat-ia-card__details{display:flex;align-items:end;gap:12px;padding-top:0;border-top:0;min-width:0}
.chat-ia-card__lang{flex:0 1 240px}.chat-ia-card__emoji{flex:0 0 112px}
.chat-ia-card__field label,.chat-agent-label{font-size:9.5px;letter-spacing:.075em}
.chat-ia-card__field input,.chat-ia-card__field select{
  width:100%;height:39px;padding:8px 11px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);
  background:var(--ep-surface);color:var(--ep-texte);font-family:var(--ep-f-ui);font-size:13px;line-height:1.2;
  outline:0;box-shadow:none;transition:border-color .14s,box-shadow .14s,background .14s;
}
.chat-ia-card__field input:hover,.chat-ia-card__field select:hover{border-color:#C9C1B6}
.chat-ia-card__field input:focus,.chat-ia-card__field select:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile);background:#fff}
.chat-ia-card__name input{font-size:14px;font-weight:650}
.chat-ia-card__emoji input{font-family:var(--ep-f-ui);font-size:19px;text-align:center;padding-inline:8px}
.chat-ia-card__state{align-self:end;padding-bottom:2px}
.chat-agent-delete{margin-left:auto;flex:0 0 auto;height:39px}

/* Horaires : une ligne compacte, sans fond vert, plages au centre */
.chat-hours-list{gap:8px}
.chat-hours-row{
  display:grid;grid-template-columns:150px minmax(0,1fr) auto;grid-template-rows:auto;gap:12px;align-items:center;
  padding:11px 12px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:var(--ep-surface);overflow:visible;
}
.chat-hours-row.is-open,.chat-hours-row.is-closed{background:var(--ep-surface);border-color:var(--ep-ligne)}
.chat-hours-row.is-open{box-shadow:inset 3px 0 0 var(--ep-ok)}
.chat-hours-row.is-closed{box-shadow:inset 3px 0 0 var(--ep-ligne-forte)}
.chat-hours-row__head{display:contents}
.chat-hours-day{grid-column:1;grid-row:1;min-width:0;gap:9px}
.chat-hours-day strong{font-size:12.5px}
.chat-hours-day span{font-size:10px}
.chat-hours-row.is-open .chat-hours-day span{color:var(--ep-ok);font-weight:700}
.chat-hours-ranges{grid-column:2;grid-row:1;display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding-left:0;min-width:0}
.chat-hours-range{
  display:grid;grid-template-columns:112px 16px 112px 30px;gap:6px;align-items:center;width:auto;max-width:none;
  padding:5px 6px;border:1px solid var(--ep-ligne);border-radius:8px;background:var(--ep-surface-2);
}
.chat-hours-time{display:block;min-width:0}
.chat-hours-time>span{display:none}
.chat-hours-time input[type=time]{
  width:112px;height:34px;padding:0 8px;border:1px solid var(--ep-ligne-forte);border-radius:6px;background:#fff;
  color:var(--ep-texte);font-family:var(--ep-f-ui)!important;font-size:13px!important;font-weight:600;letter-spacing:0;
  font-variant-numeric:tabular-nums;outline:0;
}
.chat-hours-time input[type=time]::-webkit-datetime-edit,
.chat-hours-time input[type=time]::-webkit-datetime-edit-fields-wrapper,
.chat-hours-time input[type=time]::-webkit-datetime-edit-hour-field,
.chat-hours-time input[type=time]::-webkit-datetime-edit-minute-field{font-family:var(--ep-f-ui)!important;font-size:13px!important;font-weight:600}
.chat-hours-sep{padding:0;align-self:center;font-size:15px;color:var(--ep-texte-3)}
.chat-hours-remove{width:30px;height:34px;padding:0;border-color:transparent;background:transparent;color:var(--ep-texte-3)}
.chat-hours-remove:hover{background:var(--ep-alerte-voile);border-color:var(--ep-alerte-voile);color:var(--ep-alerte)}
.chat-hours-add{grid-column:3;grid-row:1;align-self:center;white-space:nowrap;height:34px;padding:6px 10px}
.chat-hours-row.is-closed .chat-hours-add{opacity:.55}

@media(max-width:980px){
  .chat-hours-row{grid-template-columns:140px minmax(0,1fr);grid-template-rows:auto auto}
  .chat-hours-day{grid-column:1;grid-row:1}.chat-hours-add{grid-column:2;grid-row:1;justify-self:end}
  .chat-hours-ranges{grid-column:1 / -1;grid-row:2;padding-left:49px}
}
@media(max-width:700px){
  .chat-ia-card{grid-template-columns:72px minmax(0,1fr);gap:12px}.chat-ia-card__portrait{padding-right:11px}.chat-ia-card__avatar{width:54px;height:54px}
  .chat-ia-card__head{grid-template-columns:1fr}.chat-ia-card__state{justify-items:start}.chat-ia-card__details{flex-wrap:wrap}.chat-agent-delete{margin-left:0}
  .chat-hours-row{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:9px}
  .chat-hours-day{grid-column:1;grid-row:1}.chat-hours-add{grid-column:1;grid-row:2;justify-self:start}.chat-hours-ranges{grid-column:1;grid-row:3;padding-left:0}
}
@media(max-width:520px){
  .chat-ia-card{grid-template-columns:1fr}.chat-ia-card__portrait{flex-direction:row;padding:0 0 10px;border-right:0;border-bottom:1px solid var(--ep-ligne);justify-content:flex-start}.chat-agent-photo-remove{margin-left:0}
  .chat-hours-range{grid-template-columns:minmax(95px,1fr) 14px minmax(95px,1fr) 30px;width:100%}.chat-hours-time input[type=time]{width:100%}
}


/* Chat r6 — formulaire de contact configurable */
.chat-contact-editor{display:grid;gap:14px}.chat-contact-head{display:grid;grid-template-columns:1fr 1fr;gap:12px}.chat-contact-head label,.chat-contact-success{display:grid;gap:6px}.chat-contact-head span,.chat-contact-success>span,.chat-contact-field label>span{font-size:10px;font-weight:800;letter-spacing:.075em;text-transform:uppercase;color:var(--ep-texte-3)}
.chat-contact-head input,.chat-contact-success input,.chat-contact-field input,.chat-contact-field select{height:40px;width:100%;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);background:#fff;padding:0 11px;font:500 13px/1 var(--ep-f-ui);outline:0;transition:border-color .15s,box-shadow .15s}.chat-contact-head input:focus,.chat-contact-success input:focus,.chat-contact-field input:focus,.chat-contact-field select:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}.chat-contact-success small{font-size:10.5px;color:var(--ep-texte-3)}
.chat-contact-fields{display:grid;gap:8px}.chat-contact-field{display:grid;grid-template-columns:minmax(180px,1fr) 150px 112px 36px;gap:10px;align-items:end;padding:10px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:var(--ep-surface-2)}.chat-contact-field label{display:grid;gap:5px}.chat-contact-required{justify-items:start}.chat-contact-required .ep-bascule{margin-top:4px}.chat-contact-options{grid-column:1/-1}.chat-contact-options[hidden]{display:none}
@media(max-width:760px){.chat-contact-head{grid-template-columns:1fr}.chat-contact-field{grid-template-columns:1fr 140px 100px 36px}}@media(max-width:560px){.chat-contact-field{grid-template-columns:1fr 1fr}.chat-contact-required{grid-column:1}.chat-contact-field>[data-contact-remove]{grid-column:2;justify-self:end}.chat-contact-options{grid-column:1/-1}}

/* ═══ Chat Lot 6 · partage d'écran / co-navigation ═══ */
.chat-screen-panel{position:fixed;right:22px;top:86px;z-index:120;width:min(560px,calc(100vw - 44px));background:var(--ep-surface);border:1px solid var(--ep-ligne);border-radius:14px;box-shadow:var(--ep-om-3);overflow:hidden;display:none}
.chat-screen-panel.on{display:block}.chat-screen-panel__h{display:flex;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface)}
.chat-screen-panel__h>div{min-width:0;flex:1}.chat-screen-panel__h b{display:block;font-family:var(--ep-f-titre);font-size:14px;font-weight:800}.chat-screen-panel__h span{display:block;font-size:11px;color:var(--ep-texte-3);margin-top:1px}.chat-screen-panel__h span.live{color:var(--ep-ok);font-weight:800}
.chat-screen-x{width:30px;height:30px;border:1px solid var(--ep-ligne);border-radius:8px;background:var(--ep-surface);font:700 18px/1 var(--ep-f-ui);color:var(--ep-texte-2);cursor:pointer}.chat-screen-x:hover{background:var(--ep-surface-2)}
.chat-screen-stage{position:relative;min-height:250px;max-height:58vh;overflow:auto;display:grid;place-items:center;background:#211b17}.chat-screen-stage img{display:none;width:100%;height:auto;max-height:58vh;object-fit:contain;cursor:crosshair;user-select:none;-webkit-user-drag:none}.chat-screen-wait{min-height:250px;display:grid;place-items:center;text-align:center;color:#e8ddd2;font-size:12px;padding:30px}
.chat-screen-marker{position:absolute;width:18px;height:18px;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:4}.chat-screen-marker.visitor{background:rgba(255,255,255,.94);border:2px solid var(--ep-corail);box-shadow:0 1px 8px rgba(0,0,0,.35)}.chat-screen-marker.guide{width:32px;height:32px;border:3px solid var(--ep-corail);box-shadow:0 0 0 7px rgba(233,102,70,.22);animation:chatGuidePulse .85s ease-out 2}
@keyframes chatGuidePulse{50%{transform:translate(-50%,-50%) scale(1.2)}}
.chat-screen-meta{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:7px 13px;background:var(--ep-surface-2);border-top:1px solid var(--ep-ligne);font-size:10.5px;color:var(--ep-texte-3)}.chat-screen-meta span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;max-width:65%}
.chat-screen-panel__f{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:10px 13px;border-top:1px solid var(--ep-ligne);background:var(--ep-surface)}.chat-screen-panel__f>span{font-size:11px;color:var(--ep-texte-3);max-width:270px;line-height:1.35}.chat-screen-panel__f>div{display:flex;gap:7px;flex:0 0 auto}
@media(max-width:760px){.chat-screen-panel{left:10px;right:10px;top:72px;width:auto}.chat-screen-panel__f{align-items:flex-start;flex-direction:column}.chat-screen-panel__f>div{width:100%;justify-content:flex-end}}


/* Chat Lot 6 r1 — plein écran + aperçu faible latence */
.chat-screen-panel__ha{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.chat-screen-full{height:30px;border:1px solid var(--ep-ligne);border-radius:8px;background:var(--ep-surface);padding:0 10px;font:700 11.5px/1 var(--ep-f-ui);color:var(--ep-texte-2);cursor:pointer;white-space:nowrap}
.chat-screen-full:hover{background:var(--ep-surface-2);color:var(--ep-texte)}
.chat-screen-panel.is-fullscreen,.chat-screen-panel:fullscreen{inset:10px!important;top:10px!important;right:10px!important;bottom:10px!important;left:10px!important;width:auto!important;height:auto!important;max-width:none!important;display:flex!important;flex-direction:column;border-radius:12px;background:var(--ep-surface)}
.chat-screen-panel.is-fullscreen .chat-screen-stage,.chat-screen-panel:fullscreen .chat-screen-stage{flex:1;min-height:0;max-height:none;height:auto;overflow:hidden}
.chat-screen-panel.is-fullscreen .chat-screen-stage img,.chat-screen-panel:fullscreen .chat-screen-stage img{width:100%;height:100%;max-height:none;object-fit:contain}
.chat-screen-panel.is-fullscreen .chat-screen-wait,.chat-screen-panel:fullscreen .chat-screen-wait{min-height:100%;width:100%}
@media(max-width:760px){.chat-screen-full{padding:0 8px;font-size:11px}.chat-screen-panel.is-fullscreen,.chat-screen-panel:fullscreen{inset:4px!important;top:4px!important;right:4px!important;bottom:4px!important;left:4px!important}}

/* ═══ Chat Lot 7 r1 · simulateur complet + diagnostic IA ═══ */
.chat-sim{display:grid;gap:12px}.chat-sim-toolbar{display:grid;grid-template-columns:145px 175px minmax(220px,1fr) 150px 95px auto;gap:9px;align-items:end;padding:10px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:var(--ep-surface-2)}
.chat-sim-toolbar label{display:grid;gap:5px;min-width:0}.chat-sim-toolbar label>span{font-size:9.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--ep-texte-3)}.chat-sim-toolbar input,.chat-sim-toolbar select{width:100%;height:38px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);background:#fff;padding:0 10px;font:600 12px/1 var(--ep-f-ui);color:var(--ep-texte);outline:0}.chat-sim-toolbar input:focus,.chat-sim-toolbar select:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.chat-sim-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr);gap:12px;align-items:stretch}.chat-sim-widget,.chat-sim-inspector{border:1px solid var(--ep-ligne);border-radius:14px;background:var(--ep-surface);overflow:hidden;min-width:0}.chat-sim-widget{display:grid;grid-template-rows:auto minmax(390px,1fr) auto auto;min-height:560px}
.chat-sim-widget__head{display:flex;align-items:center;gap:10px;padding:11px 13px;background:var(--ep-brun);color:#fff}.chat-sim-widget__head>div:nth-child(2){min-width:0;flex:1}.chat-sim-widget__head b{display:block;font:800 14px/1.1 var(--ep-f-titre)}.chat-sim-widget__head span{display:block;margin-top:3px;font-size:10.5px;color:rgba(255,255,255,.72)}.chat-sim-avatar{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--ep-corail);font-size:16px}.chat-sim-live{font:800 9px/1 var(--ep-f-ui)!important;letter-spacing:.08em;color:#fff!important;background:rgba(255,255,255,.13);padding:5px 7px;border-radius:999px}
.chat-sim-fil{min-height:390px;max-height:520px;overflow-y:auto;padding:15px;background:var(--ep-canevas);display:flex;flex-direction:column;gap:10px}.chat-sim-empty{margin:auto;max-width:330px;text-align:center;color:var(--ep-texte-3);display:grid;gap:5px;font-size:11.5px}.chat-sim-empty b{font:800 15px/1.2 var(--ep-f-titre);color:var(--ep-texte-2)}
.chat-sim-msg{max-width:86%;display:grid;gap:3px;align-self:flex-start}.chat-sim-msg.is-user{align-self:flex-end}.chat-sim-msg>small{font-size:9.5px;color:var(--ep-texte-3);padding:0 4px}.chat-sim-msg.is-user>small{text-align:right}.chat-sim-bubble{padding:9px 11px;border-radius:12px;border:1px solid var(--ep-ligne);background:#fff;font:500 12.5px/1.45 var(--ep-f-ui);white-space:pre-wrap}.chat-sim-msg.is-user .chat-sim-bubble{background:var(--ep-corail);border-color:var(--ep-corail);color:#fff;border-bottom-right-radius:4px}.chat-sim-msg.is-ai .chat-sim-bubble{border-bottom-left-radius:4px}.chat-sim-msgmeta{display:flex;gap:5px;flex-wrap:wrap;padding:1px 2px}.chat-sim-msgmeta span{font-size:9px;font-weight:700;color:var(--ep-texte-3);background:var(--ep-surface);border:1px solid var(--ep-ligne);border-radius:999px;padding:2px 6px}.chat-sim-system{align-self:center;max-width:86%;font-size:10.5px;color:var(--ep-texte-3);text-align:center;background:var(--ep-surface-2);border:1px solid var(--ep-ligne);padding:5px 8px;border-radius:999px}
.chat-sim-choices{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.chat-sim-choices button{border:1px solid var(--ep-corail);background:#fff;color:var(--ep-corail-fonce);border-radius:999px;padding:6px 9px;font:700 11px/1 var(--ep-f-ui);cursor:pointer}.chat-sim-choices button:hover{background:var(--ep-corail-voile)}.chat-sim-form{margin-top:5px;border:1px solid var(--ep-ligne);border-radius:10px;background:#fff;padding:10px;display:grid;gap:8px}.chat-sim-form>b{font:800 12px/1.2 var(--ep-f-titre)}.chat-sim-form label{display:grid;gap:4px}.chat-sim-form label>span{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ep-texte-3)}.chat-sim-form input,.chat-sim-form select{height:36px;border:1px solid var(--ep-ligne-forte);border-radius:7px;background:#fff;padding:0 9px;font:500 12px/1 var(--ep-f-ui);outline:0}.chat-sim-form input:focus,.chat-sim-form select:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.chat-sim-presets{display:flex;gap:5px;flex-wrap:wrap;padding:8px 10px;border-top:1px solid var(--ep-ligne);background:var(--ep-surface-2)}.chat-sim-presets button{border:1px solid var(--ep-ligne);background:#fff;border-radius:999px;padding:5px 8px;font:700 10px/1 var(--ep-f-ui);color:var(--ep-texte-2);cursor:pointer}.chat-sim-presets button:hover{border-color:var(--ep-corail);color:var(--ep-corail-fonce)}.chat-sim-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px;border-top:1px solid var(--ep-ligne);background:#fff}.chat-sim-compose input{height:40px;border:1px solid var(--ep-ligne-forte);border-radius:10px;padding:0 11px;font:500 12.5px/1 var(--ep-f-ui);outline:0}.chat-sim-compose input:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.chat-sim-inspector{display:flex;flex-direction:column;min-height:560px}.chat-sim-inspector__title{display:flex;align-items:center;gap:8px;justify-content:space-between;padding:11px 12px;border-bottom:1px solid var(--ep-ligne)}.chat-sim-inspector__title>div{min-width:0}.chat-sim-inspector__title b{display:block;font:800 13px/1.2 var(--ep-f-titre)}.chat-sim-inspector__title span{display:block;font-size:10px;color:var(--ep-texte-3);margin-top:2px}#crgIaTestDiag{padding:10px;display:grid;gap:9px;overflow:auto}.chat-sim-context{display:grid;grid-template-columns:1fr 1fr;gap:6px}.chat-sim-context>div{padding:8px;border-radius:8px;background:var(--ep-surface-2);border:1px solid var(--ep-ligne);min-width:0}.chat-sim-context span{display:block;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ep-texte-3)}.chat-sim-context b{display:block;margin-top:3px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-sim-diag-card{padding:9px;border:1px solid var(--ep-ligne);border-radius:9px;background:#fff;display:grid;gap:6px}.chat-sim-diag-card.is-empty{font-size:10.5px;color:var(--ep-texte-3);background:var(--ep-surface-2)}.chat-sim-kicker{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--ep-corail-fonce)}.chat-sim-diag-card>b{font-size:12px}.chat-sim-diag-card>small{font-size:10px;color:var(--ep-texte-3)}.chat-sim-diag-grid{display:grid;grid-template-columns:82px minmax(0,1fr);gap:4px 8px;font-size:10.5px}.chat-sim-diag-grid span{color:var(--ep-texte-3)}.chat-sim-diag-grid b{font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis}.chat-sim-diag-card p{font-size:10.5px;line-height:1.4;margin:0;color:var(--ep-texte-2)}.chat-sim-constraints{display:grid;gap:4px;padding-top:6px;border-top:1px solid var(--ep-ligne)}.chat-sim-constraints strong{font-size:10px}.chat-sim-constraints span{font-size:10px;line-height:1.35;padding:5px 6px;border-radius:6px;background:var(--ep-sable-voile);color:var(--ep-texte-2)}.chat-sim-var{display:grid;grid-template-columns:90px minmax(0,1fr);gap:7px;font-size:10px}.chat-sim-var code{font-family:var(--ep-f-data);color:var(--ep-corail-fonce)}.chat-sim-var span{overflow:hidden;text-overflow:ellipsis}.chat-sim-transfer{padding:9px;border-radius:9px;border:1px solid var(--ep-attn);background:var(--ep-attn-voile);font-size:10.5px;font-weight:700;color:var(--ep-texte-2)}
@media(max-width:1180px){.chat-sim-toolbar{grid-template-columns:1fr 1fr 1.5fr}.chat-sim-toolbar>.ep-b{grid-column:1/-1;justify-self:start}.chat-sim-layout{grid-template-columns:1fr}.chat-sim-inspector{min-height:0}.chat-sim-context{grid-template-columns:repeat(4,1fr)}}
@media(max-width:720px){.chat-sim-toolbar{grid-template-columns:1fr 1fr}.chat-sim-toolbar__page{grid-column:1/-1}.chat-sim-layout{gap:8px}.chat-sim-widget{min-height:500px}.chat-sim-fil{min-height:330px}.chat-sim-context{grid-template-columns:1fr 1fr}}

.chat-sim-sources{display:grid;gap:6px;margin-top:10px;padding-top:9px;border-top:1px solid var(--ep-ligne)}.chat-sim-sources>strong{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--ep-texte-3)}.chat-sim-sources>div{display:grid;gap:2px;padding:7px 8px;border:1px solid var(--ep-ligne);border-radius:8px;background:var(--ep-surface-2)}.chat-sim-sources span{font-size:11.5px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-sim-sources small{font-size:9.5px;color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Chat Lot 7 r3 — simulateur visuel fidèle au widget + mise en page non coupée */
.chat-sim{container-type:inline-size;min-width:0;overflow:visible}
.chat-sim-toolbar{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));min-width:0}
.chat-sim-toolbar__page{min-width:190px}
.chat-sim-workspace{display:grid;grid-template-columns:minmax(360px,460px) minmax(250px,1fr);gap:14px;align-items:start;min-width:0}
.chat-sim-previewpane{min-width:0;display:grid;gap:9px}
.chat-sim-previewhead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 2px}.chat-sim-previewhead>div:first-child{min-width:0}.chat-sim-previewhead b{display:block;font:800 13px/1.2 var(--ep-f-titre);color:var(--ep-texte)}.chat-sim-previewhead span{display:block;margin-top:2px;font-size:10.5px;color:var(--ep-texte-3)}
.chat-sim-sizes{display:flex;gap:4px;flex:none}.chat-sim-sizes button{border:1px solid var(--ep-ligne);background:#fff;color:var(--ep-texte-3);border-radius:999px;padding:5px 8px;font:750 9.5px/1 var(--ep-f-ui);cursor:pointer}.chat-sim-sizes button.is-on{border-color:var(--ep-corail);background:var(--ep-corail-voile);color:var(--ep-corail-fonce)}
.chat-sim-stage{display:flex;justify-content:center;align-items:flex-start;min-width:0;padding:10px;border:1px dashed var(--ep-ligne-forte);border-radius:15px;background:linear-gradient(180deg,var(--ep-surface-2),#fff);overflow:auto}
.chat-sim-stage.is-mobile .chat-sim-widget{width:min(100%,360px)}.chat-sim-stage.is-widget .chat-sim-widget{width:min(100%,420px)}.chat-sim-stage.is-large .chat-sim-widget{width:min(100%,500px)}
.chat-sim-widget{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto;width:420px;height:650px;min-height:0;border:1px solid rgba(58,36,24,.12);border-radius:27px;background:#fff;overflow:hidden;box-shadow:0 16px 38px rgba(58,36,24,.14)}
.chat-sim-widget__head{min-height:82px;display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--chat-sim-accent,var(--ep-corail));color:#fff;border:0}
.chat-sim-real-avatar{width:52px;height:52px;display:grid;place-items:center;flex:none;border-radius:50%;background:#fff7;border:3px solid rgba(255,255,255,.68);overflow:hidden;font-size:24px}.chat-sim-real-avatar img{width:100%;height:100%;object-fit:cover;display:block}.chat-sim-real-avatar.is-message{width:34px;height:34px;border-width:2px;border-color:#fff;box-shadow:0 1px 4px rgba(58,36,24,.15);font-size:16px}
.chat-sim-widget__identity{flex:1;min-width:0}.chat-sim-widget__identity b{display:block;font:800 17px/1.15 var(--ep-f-titre);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-sim-widget__identity span{display:flex;align-items:center;gap:6px;margin-top:5px;font:600 12px/1.2 var(--ep-f-ui);color:rgba(255,255,255,.92)}.chat-sim-widget__identity i{width:8px;height:8px;border-radius:50%;background:#7FE58A;box-shadow:0 0 0 2px rgba(255,255,255,.18)}.chat-sim-widget__chevron{font:800 24px/1 var(--ep-f-ui);color:#fff;transform:translateY(-2px)}
.chat-sim-fil{min-height:0;max-height:none;overflow-y:auto;padding:20px 17px 18px;background:#fff;display:flex;flex-direction:column;gap:14px;scrollbar-width:thin}
.chat-sim-empty{margin:auto;max-width:280px;text-align:center;color:#9b8d82;display:grid;gap:6px;font:500 12px/1.45 var(--ep-f-ui)}.chat-sim-empty b{font:800 16px/1.2 var(--ep-f-titre);color:var(--ep-texte-2)}
.chat-sim-real-msg{max-width:92%;min-width:0}.chat-sim-real-msg.is-user{align-self:flex-end;display:grid;justify-items:end;gap:4px}.chat-sim-real-msg.is-ai{align-self:flex-start;display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:end}.chat-sim-real-msgbody{min-width:0;display:grid;justify-items:start;gap:4px}.chat-sim-real-name{font:750 11px/1.2 var(--ep-f-ui);color:#8e7e71;padding-left:4px}.chat-sim-real-bubble{max-width:100%;padding:10px 12px;border-radius:16px;font:500 13px/1.45 var(--ep-f-ui);white-space:pre-wrap;overflow-wrap:anywhere}.chat-sim-real-msg.is-user .chat-sim-real-bubble{background:var(--chat-sim-accent,var(--ep-corail));color:#fff;border-bottom-right-radius:5px}.chat-sim-real-msg.is-ai .chat-sim-real-bubble{background:#fff;color:#2b211a;border:1px solid #e5ded6;box-shadow:0 2px 7px rgba(58,36,24,.08);border-bottom-left-radius:5px}.chat-sim-real-msg time{font:500 10px/1 var(--ep-f-ui);color:#a6978a;padding:0 5px}.chat-sim-real-source{font:650 9.5px/1.3 var(--ep-f-ui);color:#8d7c6e;padding:0 4px}
.chat-sim-system{align-self:center;max-width:88%;font:550 10.5px/1.4 var(--ep-f-ui);color:#98887b;text-align:center;background:transparent;border:0;padding:5px 8px;border-radius:0}
.chat-sim-choices{display:flex;gap:6px;flex-wrap:wrap;margin-top:3px;padding-left:1px}.chat-sim-choices button{border:1px solid var(--chat-sim-accent,var(--ep-corail));background:#fff;color:var(--chat-sim-accent,var(--ep-corail));border-radius:999px;padding:7px 10px;font:750 11px/1 var(--ep-f-ui);cursor:pointer}.chat-sim-choices button:hover{background:var(--ep-corail-voile)}
.chat-sim-form{width:min(100%,310px);margin-top:5px;border:1px solid #e5ded6;border-radius:14px;background:#fff;padding:12px;box-shadow:0 2px 7px rgba(58,36,24,.07);display:grid;gap:9px}.chat-sim-form>b{font:800 13px/1.2 var(--ep-f-titre);color:var(--ep-texte)}.chat-sim-form label{display:grid;gap:4px}.chat-sim-form label>span{font:800 9px/1.2 var(--ep-f-ui);text-transform:uppercase;letter-spacing:.06em;color:#9a897b}.chat-sim-form input,.chat-sim-form select{width:100%;height:38px;border:1px solid #d9d0c7;border-radius:9px;background:#fff;padding:0 10px;font:500 12px/1 var(--ep-f-ui);color:var(--ep-texte);outline:0}.chat-sim-form input:focus,.chat-sim-form select:focus{border-color:var(--chat-sim-accent,var(--ep-corail));box-shadow:0 0 0 3px var(--ep-corail-voile)}.chat-sim-form-submit{height:38px;border:0;border-radius:10px;background:var(--chat-sim-accent,var(--ep-corail));color:#fff;font:800 12px/1 var(--ep-f-ui);cursor:pointer}
.chat-sim-presets{display:flex;gap:5px;overflow-x:auto;flex-wrap:nowrap;padding:7px 11px;border-top:1px solid #eee8e1;background:#fff;scrollbar-width:none}.chat-sim-presets::-webkit-scrollbar{display:none}.chat-sim-presets button{flex:none;border:1px solid #e2dad2;background:#fff;border-radius:999px;padding:5px 8px;font:700 9px/1 var(--ep-f-ui);color:#7f7064;cursor:pointer}.chat-sim-presets button:hover{border-color:var(--chat-sim-accent,var(--ep-corail));color:var(--chat-sim-accent,var(--ep-corail))}
.chat-sim-compose{display:grid;grid-template-columns:30px minmax(0,1fr) 42px;gap:6px;align-items:center;padding:9px 11px;border-top:1px solid #e8e1da;background:#fff}.chat-sim-compose input{width:100%;height:42px;border:0!important;box-shadow:none!important;border-radius:0;padding:0 4px;font:500 13px/1 var(--ep-f-ui);color:var(--ep-texte);outline:0}.chat-sim-compose input::placeholder{color:#a49386}.chat-sim-clip{display:grid;place-items:center;color:#9a897b}.chat-sim-send{width:42px;height:42px;border:0;border-radius:50%;background:var(--chat-sim-accent,var(--ep-corail));color:#fff;display:grid;place-items:center;cursor:pointer}.chat-sim-send.is-busy{opacity:.6;pointer-events:none}.chat-sim-send svg{stroke:currentColor}.chat-sim-footer{text-align:center;padding:0 10px 10px;background:#fff;font:500 9.5px/1.2 var(--ep-f-ui);color:#9c8b7d}.chat-sim-footer b{font-weight:800}
.chat-sim-inspector{min-width:0;min-height:0;max-height:730px;border:1px solid var(--ep-ligne);border-radius:14px;background:var(--ep-surface);overflow:hidden;display:flex;flex-direction:column}.chat-sim-inspector #crgIaTestDiag{overflow:auto;min-height:0}.chat-sim-sources>div span{white-space:normal;line-height:1.35}.chat-sim-sources>div small{white-space:normal;line-height:1.3}
@container (max-width:860px){.chat-sim-workspace{grid-template-columns:1fr}.chat-sim-inspector{max-height:none}.chat-sim-stage{padding:8px}.chat-sim-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-sim-toolbar__page{grid-column:1/-1}.chat-sim-toolbar>.ep-b{grid-column:auto;justify-self:start}}
@container (max-width:520px){.chat-sim-toolbar{grid-template-columns:1fr}.chat-sim-toolbar__page{grid-column:auto}.chat-sim-previewhead{align-items:flex-start;flex-direction:column}.chat-sim-stage{padding:4px;border:0;background:transparent}.chat-sim-stage .chat-sim-widget{width:100%!important;height:610px}.chat-sim-widget{border-radius:18px}.chat-sim-widget__head{min-height:74px;padding:10px 12px}.chat-sim-real-avatar{width:46px;height:46px}.chat-sim-widget__identity b{font-size:15px}.chat-sim-fil{padding:16px 12px}}

/* ═══════════════════════════════════════════════════════════════════════
   Lot 8 r1 — Modèles de communications : éditeur large et responsive
   ═══════════════════════════════════════════════════════════════════════ */
.ep-reglages__corps--communications{max-width:none!important;width:100%;padding-right:32px}
.ep-reglages__corps--communications .ep-reg-tete p{max-width:900px}
.comm-tabs{display:flex;gap:4px;margin:-6px 0 14px;border-bottom:1px solid var(--ep-ligne)}
.comm-tabs button{padding:10px 14px;border-bottom:2px solid transparent;font-weight:700;font-size:13px;color:var(--ep-texte-3);display:flex;align-items:center;gap:7px}
.comm-tabs button.on{color:var(--ep-corail-fonce);border-bottom-color:var(--ep-corail)}
.comm-layout{display:grid;grid-template-columns:300px minmax(0,1fr);border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:var(--ep-surface);min-height:720px;overflow:hidden;box-shadow:var(--ep-om-1)}
.comm-list{border-right:1px solid var(--ep-ligne);background:var(--ep-surface-2);min-width:0;display:flex;flex-direction:column}
.comm-filterbox{border-bottom:1px solid var(--ep-ligne);padding:12px;display:grid;gap:10px;background:var(--ep-surface)}
.comm-search{padding:0}.comm-search input,.comm-editor input,.comm-editor textarea,.comm-upload input,.comm-library input,.comm-library textarea,.comm-filter-row select,.comm-media-search input,.comm-library-search{width:100%;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);background:var(--ep-surface);padding:9px 11px;font:inherit;color:var(--ep-texte);outline:0}
.comm-search input:focus,.comm-editor input:focus,.comm-upload input:focus,.comm-library input:focus,.comm-library textarea:focus,.comm-filter-row select:focus,.comm-media-search input:focus,.comm-library-search:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.comm-filter-group{display:grid;gap:5px}.comm-filter-group>span,.comm-filter-row label>span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--ep-texte-3)}
.comm-filter-pills{display:flex;flex-wrap:wrap;gap:4px}.comm-filter-pills button{border:1px solid var(--ep-ligne);border-radius:999px;background:var(--ep-surface);padding:5px 8px;font-size:10px;font-weight:700;color:var(--ep-texte-2)}.comm-filter-pills button.on{background:var(--ep-corail-voile);border-color:var(--ep-corail);color:var(--ep-corail-fonce)}
.comm-filter-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}.comm-filter-row label{display:grid;gap:4px}.comm-filter-row select{height:34px;padding:0 28px 0 9px;font-size:10.5px}
.comm-filter-count{font-size:10px;color:var(--ep-texte-3)}
.comm-list__scroll{flex:1;min-height:0;max-height:720px;overflow:auto;padding:7px}.comm-list-item{width:100%;text-align:left;padding:11px;border:1px solid transparent;border-radius:var(--ep-r-1);display:grid;gap:4px;margin-bottom:4px}.comm-list-item:hover{background:var(--ep-surface)}.comm-list-item.on{background:var(--ep-surface);border-color:var(--ep-ligne-forte);box-shadow:0 1px 3px rgba(43,29,20,.06)}
.comm-list-item__top{display:flex;align-items:center;justify-content:space-between;gap:8px}.comm-list-item__top strong{font-size:13px}.comm-list-item__top i{width:7px;height:7px;border-radius:50%;background:var(--ep-ligne-forte)}.comm-list-item__top i.is-on{background:var(--ep-ok)}.comm-list-item small{font-size:10.5px;color:var(--ep-texte-3)}.comm-list-item>span:last-child{font-size:10.5px;color:var(--ep-texte-2)}
.comm-editor{padding:20px 22px 24px;min-width:0;max-width:1380px}.comm-editor--empty{display:grid;place-items:center}.comm-editor__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid var(--ep-ligne)}
.comm-editor__head>div:first-child{flex:1;min-width:0}.comm-editor__head span{display:block;font-size:9.5px;letter-spacing:.08em;font-weight:800;color:var(--ep-texte-3);margin-bottom:5px}.comm-editor__head input{font-size:19px;font-weight:750;padding:9px 11px}.comm-active{display:flex;align-items:center;gap:8px;padding-top:24px}.comm-active label{font-size:12px;font-weight:700}
.comm-config-card{margin:16px 0 14px;padding:13px 14px;background:var(--ep-surface-2);border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2)}.comm-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.comm-config{display:grid;gap:7px}.comm-config>label,.comm-subject>label{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ep-texte-3)}.comm-choices{display:flex;flex-wrap:wrap;gap:6px}.comm-choice{border:1px solid var(--ep-ligne-forte);border-radius:999px;padding:6px 10px;background:var(--ep-surface);font-size:11.5px;font-weight:700;color:var(--ep-texte-2)}.comm-choice:hover{border-color:var(--ep-corail)}.comm-choice.on{border-color:var(--ep-corail);background:var(--ep-corail-voile);color:var(--ep-corail-fonce)}
/* Modules et parcs : sélecteurs déroulants multi-sélection partagés */
.comm-multiselect{min-width:0}.comm-multiselect>summary{list-style:none;min-height:38px;display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:8px;padding:0 10px 0 11px;border:1px solid var(--ep-ligne-forte);border-radius:9px;background:var(--ep-surface);cursor:pointer;color:var(--ep-texte-2)}.comm-multiselect>summary::-webkit-details-marker{display:none}.comm-multiselect>summary:hover{border-color:var(--ep-texte-3)}.comm-multiselect[open]>summary{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}.comm-multiselect>summary>svg{color:var(--ep-texte-3);transition:transform .15s ease}.comm-multiselect[open]>summary>svg{transform:rotate(180deg)}.comm-multiselect__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:650 11px/1.2 var(--ep-f-ui)}.comm-multiselect__count{display:inline-flex;align-items:center;justify-content:center;min-width:27px;height:20px;padding:0 6px;border-radius:999px;background:var(--ep-surface-2);font:750 9px/1 var(--ep-f-ui);color:var(--ep-texte-3)}.comm-multiselect__panel{margin-top:6px;border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface);box-shadow:0 10px 26px rgba(43,29,20,.08);overflow:hidden}.comm-multiselect__search{height:37px;display:flex;align-items:center;gap:7px;padding:0 10px;border-bottom:1px solid var(--ep-ligne);color:var(--ep-texte-3)}.comm-multiselect__search input{width:100%;border:0!important;box-shadow:none!important;background:transparent!important;outline:0;padding:0!important;font:550 10.5px/1 var(--ep-f-ui)!important;color:var(--ep-texte)!important}.comm-multiselect__options{max-height:210px;overflow:auto;padding:5px}.comm-multiselect__option{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;padding:7px 8px;border-radius:7px;cursor:pointer}.comm-multiselect__option:hover{background:var(--ep-surface-2)}.comm-multiselect__option.is-all{margin-bottom:3px;border-bottom:1px solid var(--ep-ligne);border-radius:7px 7px 0 0;padding-bottom:9px}.comm-multiselect__option input{width:15px;height:15px;margin:0;accent-color:var(--ep-corail)}.comm-multiselect__option>span{display:grid;gap:1px;min-width:0}.comm-multiselect__option strong{font:650 10.5px/1.2 var(--ep-f-ui);color:var(--ep-texte-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-multiselect__option small{font:500 8.8px/1.2 var(--ep-f-ui);color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-multiselect__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 8px 7px 10px;border-top:1px solid var(--ep-ligne);background:var(--ep-surface-2)}.comm-multiselect__foot>span{font:500 9px/1.2 var(--ep-f-ui);color:var(--ep-texte-3)}
.comm-subject{display:grid;gap:6px;margin-bottom:14px}.comm-subject label small{font-weight:500;text-transform:none;letter-spacing:0;margin-left:5px}.comm-compose-card{border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);overflow:hidden;background:var(--ep-surface)}.comm-compose-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}.comm-compose-head>div:first-child{display:grid;gap:2px}.comm-compose-head strong{font-size:13px}.comm-compose-head small{font-size:10.5px;color:var(--ep-texte-3)}.comm-compose-actions{display:flex;gap:6px;flex-wrap:wrap}
.comm-workspace{display:grid;grid-template-columns:minmax(460px,1fr) minmax(250px,300px);min-height:470px}.comm-body{min-width:0;border-right:1px solid var(--ep-ligne);display:flex;flex-direction:column}.comm-body .conv-tb{border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface);padding:7px 9px;position:sticky;top:0;z-index:2;flex-wrap:wrap}.comm-rte{flex:1;min-height:390px;padding:28px 34px;outline:0;background:#fff;font:400 14px/1.65 var(--ep-f-ui);color:var(--ep-texte)}.comm-rte:focus{box-shadow:inset 0 0 0 2px var(--ep-corail-voile)}.comm-rte.is-drag{background:var(--ep-sable-voile);box-shadow:inset 0 0 0 2px var(--ep-corail)}.comm-rte p{margin:0 0 1em}.comm-rte h2,.comm-rte h3{font-family:var(--ep-f-titre);line-height:1.25;margin:1.3em 0 .55em}.comm-rte ul,.comm-rte ol{margin:.65em 0 1.15em;padding-left:1.7rem;list-style-position:outside}.comm-rte ul{list-style-type:disc}.comm-rte ol{list-style-type:decimal}.comm-rte li{display:list-item;margin:.28em 0;padding-left:.15rem;line-height:1.55}.comm-rte li::marker{color:var(--ep-corail-fonce);font-weight:700}.comm-rte blockquote{margin:1em 0;padding:9px 13px;border-left:3px solid var(--ep-corail);background:var(--ep-corail-voile);border-radius:0 7px 7px 0}.comm-rte a{color:var(--ep-corail-fonce);text-decoration:underline}.comm-rte img{display:block;max-width:100%;height:auto;margin:18px auto;border-radius:10px;border:1px solid var(--ep-ligne)}.comm-rte:empty:before{content:attr(data-ph);color:var(--ep-texte-3)}.comm-drop-inline{padding:7px 12px;border-top:1px dashed var(--ep-ligne);font-size:9.5px;color:var(--ep-texte-3);text-align:center;background:var(--ep-surface-2)}
.comm-side{min-width:0;background:var(--ep-surface-2);display:flex;flex-direction:column}.comm-side-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface)}.comm-side-tabs button{padding:10px 8px;font-size:11px;font-weight:750;color:var(--ep-texte-3);border-bottom:2px solid transparent}.comm-side-tabs button.on{color:var(--ep-corail-fonce);border-bottom-color:var(--ep-corail)}.comm-side-panel{display:none;padding:12px;overflow:auto;max-height:470px}.comm-side-panel.on{display:block}.comm-vars__head{display:grid;gap:2px;margin-bottom:12px}.comm-vars__head strong{font-size:12px}.comm-vars__head span{font-size:10px;color:var(--ep-texte-3)}.comm-var-group{margin-bottom:14px}.comm-var-group>strong{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--ep-texte-3);margin-bottom:6px}.comm-var-group>div{display:grid;grid-template-columns:1fr;gap:4px}.comm-var{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;border:1px solid var(--ep-ligne);background:var(--ep-surface);border-radius:7px;padding:6px 7px}.comm-var:hover{border-color:var(--ep-dore);background:var(--ep-sable-voile)}.comm-var span{font-size:10.5px;font-weight:650;color:var(--ep-texte-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comm-var code{font:600 9px var(--ep-f-data);color:var(--ep-texte-3);white-space:nowrap}.comm-media-search{margin-bottom:8px}.comm-media-search input{height:34px;font-size:10.5px}.comm-media-list{display:grid;gap:6px}.comm-media{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:8px;align-items:center;padding:6px;border:1px solid var(--ep-ligne);border-radius:8px;background:var(--ep-surface)}.comm-media__thumb{width:38px;height:38px;border-radius:6px;background:var(--ep-canvas);display:grid;place-items:center;overflow:hidden;color:var(--ep-texte-3)}.comm-media__thumb img{width:100%;height:100%;object-fit:cover}.comm-media__txt{min-width:0;display:grid;gap:1px}.comm-media__txt strong,.comm-media__txt small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comm-media__txt strong{font-size:10.5px}.comm-media__txt small{font-size:9px;color:var(--ep-texte-3)}.comm-media>button{border:1px solid var(--ep-ligne-forte);border-radius:6px;background:var(--ep-surface);padding:5px 6px;font-size:9.5px;font-weight:750}.comm-media>button:hover{border-color:var(--ep-corail);color:var(--ep-corail-fonce)}.comm-side-empty{display:grid;gap:8px;justify-items:start;font-size:11px;color:var(--ep-texte-3)}
.comm-attachments{margin-top:16px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);padding:13px 14px}.comm-section-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.comm-section-head>div{display:grid}.comm-section-head strong{font-size:13px}.comm-section-head small{font-size:10.5px;color:var(--ep-texte-3);margin-top:2px}.comm-default-files{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:7px}.comm-empty-inline{font-size:11px;color:var(--ep-texte-3);padding:7px 0}
.comm-doc{position:relative;display:flex;align-items:center;gap:9px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-1);padding:8px;background:var(--ep-surface);min-width:0}.comm-doc.on{border-color:var(--ep-corail);box-shadow:0 0 0 2px var(--ep-corail-voile)}.comm-doc__preview{width:42px;height:42px;border-radius:7px;background:var(--ep-canvas);display:grid;place-items:center;overflow:hidden;flex:0 0 auto;color:var(--ep-texte-3)}.comm-doc__preview img{width:100%;height:100%;object-fit:cover}.comm-doc__main{min-width:0;flex:1;display:grid;gap:1px}.comm-doc__main strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-doc__main small,.comm-doc__main span{font-size:9.5px;color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-doc__pick,.comm-doc__remove{border:1px solid var(--ep-ligne-forte);border-radius:6px;padding:5px 7px;font-size:10px;font-weight:700;background:var(--ep-surface)}.comm-doc__remove{width:28px;height:28px;padding:0;display:grid;place-items:center}.comm-actions{display:flex;align-items:center;gap:9px;margin-top:16px}.comm-actions .ep-b--danger{margin-left:auto}
.comm-library{display:grid;gap:14px}.comm-upload,.comm-library-list{border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:var(--ep-surface);padding:16px}.comm-upload{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(380px,1.3fr);gap:24px}.comm-upload>div:first-child strong{font-size:15px}.comm-upload>div:first-child p{font-size:12px;color:var(--ep-texte-3);line-height:1.5;max-width:480px}.comm-upload__fields{display:grid;gap:9px}.comm-drop{min-height:100px;border:1.5px dashed var(--ep-ligne-forte);border-radius:var(--ep-r-2);display:grid;place-items:center;align-content:center;gap:3px;text-align:center;cursor:pointer;background:var(--ep-surface-2)}.comm-drop.drag,.comm-drop.has-file{border-color:var(--ep-corail);background:var(--ep-corail-voile)}.comm-drop strong{font-size:12px}.comm-drop small{font-size:10px;color:var(--ep-texte-3)}.comm-doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.comm-doc-grid--library{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}.comm-library-unit{min-width:0}.comm-doc-actions{display:flex;gap:5px;margin-top:5px;justify-content:flex-end}.comm-library-search{width:min(360px,40vw)!important;height:36px;font-size:11px!important}
@media(min-width:1680px){.comm-layout{grid-template-columns:320px minmax(0,1fr)}.comm-editor{padding-left:26px;padding-right:26px}.comm-workspace{grid-template-columns:minmax(600px,1fr) 300px}.comm-rte{padding:32px 42px}}
@media(max-width:1220px){.comm-layout{grid-template-columns:260px minmax(0,1fr)}.comm-workspace{grid-template-columns:1fr}.comm-body{border-right:0}.comm-side{border-top:1px solid var(--ep-ligne)}.comm-side-panel{max-height:260px}.comm-var-group>div{grid-template-columns:repeat(2,minmax(0,1fr))}.comm-media-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.ep-reglages__corps--communications{padding-right:20px}.comm-layout{grid-template-columns:1fr;overflow:visible}.comm-list{border-right:0;border-bottom:1px solid var(--ep-ligne)}.comm-list__scroll{max-height:250px}.comm-config-grid,.comm-upload{grid-template-columns:1fr}.comm-filter-row{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.ep-reglages__corps--communications{padding:16px 12px 34px!important}.comm-editor{padding:12px}.comm-editor__head,.comm-compose-head{display:grid}.comm-active{padding-top:0}.comm-compose-actions{justify-content:stretch}.comm-compose-actions .ep-b{flex:1}.comm-rte{padding:20px 18px;min-height:340px}.comm-var-group>div,.comm-media-list{grid-template-columns:1fr}.comm-default-files,.comm-doc-grid{grid-template-columns:1fr}.comm-actions{flex-wrap:wrap}.comm-actions .ep-b--danger{margin-left:0}.comm-tabs{overflow:auto}.comm-filter-row{grid-template-columns:1fr}.comm-section-head{align-items:stretch;flex-direction:column}.comm-library-search{width:100%!important}}

/* Lot 8 — composeur Chat : modèles + emoji */
.chat-com-tools{display:flex;align-items:center;gap:8px;margin:0 0 8px}
.chat-com-tools select{min-width:220px;max-width:420px;height:36px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);background:var(--ep-surface);padding:0 34px 0 10px;font:600 11.5px/1 var(--ep-f-ui);color:var(--ep-texte);outline:0}
.chat-com-tools select:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.chat-emoji-btn{width:36px!important;height:36px!important;padding:0!important;font:700 18px/1 "Apple Color Emoji","Segoe UI Emoji",sans-serif!important}
.chat-emoji-pop{position:fixed;z-index:10050;width:252px;display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:8px;border:1px solid var(--ep-ligne);border-radius:12px;background:var(--ep-surface);box-shadow:0 12px 32px rgba(43,29,20,.18)}
.chat-emoji-pop button{height:30px;border:0;border-radius:7px;background:transparent;display:grid;place-items:center;font-size:18px;cursor:pointer}
.chat-emoji-pop button:hover{background:var(--ep-surface-2);transform:scale(1.08)}
.chat-pj-library{border-style:dashed;background:var(--ep-sable-voile)}
.chat-sim-emoji{width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:var(--ep-texte-3);display:grid;place-items:center;font:700 18px/1 "Apple Color Emoji","Segoe UI Emoji",sans-serif;cursor:pointer}
.chat-sim-emoji:hover{background:var(--ep-surface-2);color:var(--ep-texte-2)}
.chat-sim-compose:has(.chat-sim-emoji){grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center}
@media(max-width:640px){.chat-com-tools select{width:100%;max-width:none}.chat-emoji-pop{width:224px;grid-template-columns:repeat(7,1fr)}}

/* Lot 8 — sélecteur partagé de bibliothèque */
.comm-picker{display:grid;gap:14px}.comm-picker__head{display:flex;align-items:end;justify-content:space-between;gap:18px}.comm-picker__head>div{display:grid;gap:3px}.comm-picker__head strong{font-size:15px}.comm-picker__head span{font-size:11px;color:var(--ep-texte-3)}.comm-picker__head input{width:min(360px,45vw);height:38px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);padding:0 11px;background:var(--ep-surface);font:500 12px/1 var(--ep-f-ui);outline:0}.comm-picker__head input:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.comm-picker__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;max-height:52vh;overflow:auto;padding:2px}.comm-pick-doc{display:flex;align-items:center;gap:9px;text-align:left;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-1);background:var(--ep-surface);padding:8px;min-width:0;cursor:pointer}.comm-pick-doc:hover{border-color:var(--ep-ligne-forte);background:var(--ep-surface-2)}.comm-pick-doc.on{border-color:var(--ep-corail);box-shadow:0 0 0 2px var(--ep-corail-voile);background:#fff}.comm-pick-doc__preview{width:42px;height:42px;border-radius:7px;background:var(--ep-canevas);display:grid;place-items:center;flex:0 0 auto;overflow:hidden}.comm-pick-doc__preview img{width:100%;height:100%;object-fit:cover}.comm-pick-doc__body{min-width:0;flex:1;display:grid;gap:1px}.comm-pick-doc__body strong,.comm-pick-doc__body small,.comm-pick-doc__body i{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-pick-doc__body strong{font-size:11.5px}.comm-pick-doc__body small{font-size:9.5px;color:var(--ep-texte-3)}.comm-pick-doc__body i{font-size:9px;color:var(--ep-texte-3);font-style:normal}.comm-pick-doc__state{font-size:9.5px;font-weight:800;color:var(--ep-texte-3);flex:0 0 auto}.comm-pick-doc.on .comm-pick-doc__state{color:var(--ep-corail-fonce)}.conv-pj--library{border-style:dashed;background:var(--ep-sable-voile)}
@media(max-width:640px){.comm-picker__head{align-items:stretch;flex-direction:column}.comm-picker__head input{width:100%}.comm-picker__grid{grid-template-columns:1fr}}
.chat-library-btn{height:36px!important;white-space:nowrap}
@media(max-width:760px){.chat-library-btn{padding:0 9px!important;font-size:10.5px!important}}

/* ═══════════════════════════════════════════════════════════════════════
   Modèles de communications — refonte bibliothèque > fiche (2026-08)
   La liste et l'éditeur ne cohabitent plus : on parcourt puis on ouvre.
   ═══════════════════════════════════════════════════════════════════════ */
.comm-catalogue{display:grid;gap:14px;min-width:0}
.comm-catalogue__tools{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--ep-ligne);border-radius:14px;background:var(--ep-surface);box-shadow:var(--ep-om-1)}
.comm-search--large{position:relative;display:flex;align-items:center}.comm-search--large>svg{position:absolute;left:12px;z-index:1;color:var(--ep-texte-3);pointer-events:none}.comm-search--large input{height:42px;padding-left:38px!important;border-radius:10px!important}
.comm-filter-pills--top{flex-wrap:nowrap}.comm-filter-pills--top button{height:34px;padding:0 10px;background:var(--ep-surface-2)}
.comm-catalogue__selects{display:flex;gap:8px}.comm-catalogue__selects label{display:grid;gap:3px}.comm-catalogue__selects label>span{font:800 8.5px/1 var(--ep-f-ui);text-transform:uppercase;letter-spacing:.07em;color:var(--ep-texte-3);padding-left:2px}.comm-catalogue__selects select{height:36px;min-width:128px;border:1px solid var(--ep-ligne-forte);border-radius:9px;background:var(--ep-surface);padding:0 30px 0 10px;font:650 10.5px/1 var(--ep-f-ui);color:var(--ep-texte);outline:0}.comm-catalogue__selects select:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.comm-catalogue__head{display:flex;align-items:end;justify-content:space-between;padding:4px 2px}.comm-catalogue__head>div{display:grid;gap:2px}.comm-catalogue__head strong{font:800 14px/1.2 var(--ep-f-titre)}.comm-catalogue__head span{font-size:10.5px;color:var(--ep-texte-3)}
.comm-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.comm-template-card{min-width:0;display:grid;grid-template-columns:42px minmax(0,1fr) 22px;gap:12px;align-items:start;text-align:left;padding:15px;border:1px solid var(--ep-ligne);border-radius:13px;background:var(--ep-surface);box-shadow:0 1px 2px rgba(43,29,20,.035);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.comm-template-card:hover{border-color:var(--ep-ligne-forte);box-shadow:0 7px 20px rgba(43,29,20,.07);transform:translateY(-1px)}
.comm-template-card__icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:var(--ep-corail-voile);color:var(--ep-corail-fonce)}
.comm-template-card__body{min-width:0;display:grid;gap:7px}.comm-template-card__title{display:flex;align-items:center;gap:8px;min-width:0}.comm-template-card__title strong{font:800 13.5px/1.25 var(--ep-f-titre);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-template-card__title i{width:7px;height:7px;flex:none;border-radius:50%;background:var(--ep-ligne-forte)}.comm-template-card__title i.is-on{background:var(--ep-ok)}
.comm-template-card__preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:31px;font:500 10.8px/1.45 var(--ep-f-ui);color:var(--ep-texte-2)}
.comm-template-card__chips{display:flex;flex-wrap:wrap;gap:4px}.comm-template-card__chips em{font:750 9px/1 var(--ep-f-ui);font-style:normal;color:var(--ep-texte-2);background:var(--ep-surface-2);border:1px solid var(--ep-ligne);border-radius:999px;padding:4px 7px}
.comm-template-card__meta{display:flex;gap:8px;flex-wrap:wrap;font:550 9.5px/1.2 var(--ep-f-ui);color:var(--ep-texte-3)}.comm-template-card__meta span+span:before{content:'·';margin-right:8px}
.comm-template-card__arrow{align-self:center;color:var(--ep-texte-3);display:grid;place-items:center}.comm-template-card:hover .comm-template-card__arrow{color:var(--ep-corail-fonce)}
.comm-catalogue__empty{grid-column:1/-1;min-height:280px;border:1px dashed var(--ep-ligne-forte);border-radius:14px;background:var(--ep-surface)}

.comm-detail-shell{border:1px solid var(--ep-ligne);border-radius:14px;background:var(--ep-surface);box-shadow:var(--ep-om-1);overflow:hidden;min-width:0}
.comm-editor--focus{max-width:none;padding:0;background:var(--ep-surface)}
.comm-editor__nav{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}
.comm-back{display:flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--ep-texte-2);font:750 11.5px/1 var(--ep-f-ui);padding:8px 4px;cursor:pointer}.comm-back:hover{color:var(--ep-corail-fonce)}
.comm-editor__nav-actions{display:flex;align-items:center;gap:10px}.comm-editor__nav-actions .ep-b{min-width:112px}
.comm-editor__hero{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;padding:17px 18px;border-bottom:1px solid var(--ep-ligne)}
.comm-editor__hero-icon{width:48px;height:48px;border-radius:12px;background:var(--ep-corail-voile);color:var(--ep-corail-fonce);display:grid;place-items:center}.comm-editor__hero-main{min-width:0}.comm-editor__hero-main>label{display:block;font:800 8.5px/1 var(--ep-f-ui);text-transform:uppercase;letter-spacing:.07em;color:var(--ep-texte-3);margin:0 0 4px 2px}.comm-editor__hero-main>input{border:0!important;box-shadow:none!important;background:transparent!important;padding:1px 0!important;border-radius:0!important;font:800 20px/1.2 var(--ep-f-titre)!important}.comm-editor__badges{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.comm-editor__badges span{font:700 9px/1 var(--ep-f-ui);padding:4px 7px;border-radius:999px;background:var(--ep-surface-2);border:1px solid var(--ep-ligne);color:var(--ep-texte-2)}
.comm-editor--focus .comm-active{padding:0 2px 0 14px;border-left:1px solid var(--ep-ligne)}
.comm-editor__main{display:grid;grid-template-columns:minmax(0,1fr) 290px;min-width:0;align-items:stretch}
.comm-editor__content{min-width:0;padding:16px 18px 18px}.comm-editor--focus .comm-subject{margin:0 0 12px}.comm-editor--focus .comm-subject>label{display:flex;align-items:center;justify-content:space-between;font-size:9px}.comm-editor--focus .comm-subject input{height:40px;border-radius:9px;padding:0 11px;font-size:12px}
.comm-compose-card--compact{border-radius:11px}.comm-compose-card--compact .comm-compose-head{padding:9px 11px;min-height:48px}.comm-compose-card--compact .comm-compose-head strong{font-size:12px}.comm-compose-card--compact .comm-compose-head small{font-size:9.5px}.comm-compose-card--compact .comm-compose-actions .ep-b{height:30px;padding:0 8px;font-size:9.5px}
.comm-body--compact{border:0!important;min-width:0}.comm-body--compact .conv-tb{position:static;padding:5px 7px;background:var(--ep-surface);min-height:38px}.comm-rte--compact{min-height:285px!important;padding:16px 18px!important;font:450 13px/1.45 var(--ep-f-ui)!important;background:var(--ep-surface)!important}.comm-rte--compact p{margin:0 0 .55em!important}.comm-rte--compact h2,.comm-rte--compact h3{margin:.85em 0 .35em!important}.comm-rte--compact ul,.comm-rte--compact ol{margin:.45em 0 .65em!important}.comm-rte--compact li{margin:.14em 0!important;line-height:1.4!important}.comm-rte--compact blockquote{margin:.55em 0!important}.comm-rte--compact img{margin:10px auto!important}.comm-compose-card--compact .comm-drop-inline{padding:5px 10px;font-size:8.7px}
.comm-side--focus{border-left:1px solid var(--ep-ligne);background:var(--ep-surface-2)}.comm-side--focus .comm-side-panel{padding:12px;max-height:430px}.comm-side--focus .comm-side-tabs button{padding:11px 8px}.comm-var-search{height:34px;display:flex;align-items:center;gap:6px;padding:0 9px;margin:0 0 11px;border:1px solid var(--ep-ligne);border-radius:8px;background:var(--ep-surface);color:var(--ep-texte-3)}.comm-var-search input{width:100%;border:0;background:transparent;outline:0;font:550 10px/1 var(--ep-f-ui);color:var(--ep-texte);padding:0}.comm-var-search:focus-within{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.comm-side--focus .comm-var-group{margin-bottom:12px}.comm-side--focus .comm-var-group>strong{margin-bottom:5px}.comm-side--focus .comm-var{padding:6px 7px;border-radius:7px}.comm-side--focus .comm-var span{font-size:10px}.comm-side--focus .comm-var code{font-size:8.5px;color:var(--ep-corail-fonce);background:var(--ep-corail-voile);border-radius:5px;padding:2px 4px}
.comm-options{margin:0 18px 16px;border:1px solid var(--ep-ligne);border-radius:11px;background:var(--ep-surface);overflow:hidden}.comm-options>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;cursor:pointer;background:var(--ep-surface-2)}.comm-options>summary::-webkit-details-marker{display:none}.comm-options>summary>span{display:grid;gap:2px}.comm-options>summary strong{font-size:11.5px}.comm-options>summary small{font-size:9.5px;color:var(--ep-texte-3)}.comm-options>summary>svg{transition:transform .16s ease}.comm-options[open]>summary>svg{transform:rotate(180deg)}.comm-options__body{padding:13px}.comm-options .comm-config-grid{gap:14px}.comm-options .comm-config>label{font-size:8.7px}.comm-options .comm-choice{font-size:10px;padding:5px 8px}.comm-options .comm-attachments{margin-top:13px;padding:11px 12px;background:var(--ep-surface-2)}
.comm-editor__danger{display:flex;justify-content:flex-end;padding:0 18px 18px}

@media(max-width:1180px){.comm-catalogue__tools{grid-template-columns:1fr}.comm-filter-pills--top{flex-wrap:wrap}.comm-catalogue__selects{justify-content:flex-start}.comm-editor__main{grid-template-columns:1fr}.comm-side--focus{border-left:0;border-top:1px solid var(--ep-ligne)}.comm-side--focus .comm-side-panel{max-height:260px}.comm-side--focus .comm-var-group>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.comm-template-grid{grid-template-columns:1fr}.comm-catalogue__selects{display:grid;grid-template-columns:1fr 1fr}.comm-catalogue__selects select{width:100%}.comm-editor__hero{grid-template-columns:42px minmax(0,1fr)}.comm-editor__hero-icon{width:42px;height:42px}.comm-editor--focus .comm-active{grid-column:2;border-left:0;padding:3px 0 0}.comm-options .comm-config-grid{grid-template-columns:1fr}}
@media(max-width:560px){.comm-catalogue__tools{padding:10px}.comm-catalogue__selects{grid-template-columns:1fr}.comm-template-card{grid-template-columns:38px minmax(0,1fr) 18px;padding:12px;gap:9px}.comm-template-card__icon{width:38px;height:38px}.comm-editor__nav{align-items:stretch;flex-direction:column;padding:9px 11px}.comm-editor__nav-actions{justify-content:space-between}.comm-editor__hero{padding:13px}.comm-editor__hero-main>input{font-size:17px!important}.comm-editor__content{padding:12px}.comm-compose-head{display:grid}.comm-rte--compact{min-height:250px!important;padding:13px 14px!important}.comm-side--focus .comm-var-group>div{grid-template-columns:1fr}.comm-options{margin:0 12px 12px}.comm-editor__danger{padding:0 12px 14px}}

/* Modèles de communications — liste alignée sur Réclamations */
.comm-catalogue--table{display:block}
.comm-catalogue__toolbar{margin:0 -18px;padding:10px 18px;border-top:1px solid var(--ep-ligne);border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface)}
.comm-catalogue__toolbar .comm-catalogue__search{flex:1;max-width:none;min-width:230px}
.comm-catalogue__head{padding:12px 0 8px}
.comm-template-list{border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);overflow:auto;background:var(--ep-surface)}
.comm-template-table{min-width:900px;table-layout:auto}
.comm-template-table tbody tr td:first-child{border-left:3px solid transparent}
.comm-template-table tbody tr[data-state="actif"] td:first-child{border-left-color:var(--ep-ok)}
.comm-template-table tbody tr[data-state="inactif"] td:first-child{border-left-color:var(--ep-ligne-forte)}
.comm-template-cell{display:flex;align-items:center;gap:10px;min-width:280px;max-width:520px}
.comm-template-cell__icon{width:30px;height:30px;display:grid;place-items:center;flex:none;border-radius:8px;background:var(--ep-corail-voile);color:var(--ep-corail-fonce)}
.comm-template-cell>div{display:grid;gap:2px;min-width:0}
.comm-template-cell strong{font:700 12.5px/1.25 var(--ep-f-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.comm-template-cell span:not(.comm-template-cell__icon){font:500 10.5px/1.3 var(--ep-f-ui);color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.comm-table-tags{display:flex;gap:4px;flex-wrap:wrap;max-width:260px}
.comm-table-tags>span:not(.muted){display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border:1px solid var(--ep-ligne);border-radius:999px;background:var(--ep-surface-2);font:700 9px/1 var(--ep-f-ui);color:var(--ep-texte-2);white-space:nowrap}
.comm-table-parks{display:block;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;color:var(--ep-texte-2)}
.comm-template-open{color:var(--ep-texte-3)}
.comm-template-table tbody tr:hover .comm-template-open{color:var(--ep-corail-fonce)}
@media(max-width:760px){.comm-catalogue__toolbar{margin:0 -12px;padding:9px 12px}.comm-catalogue__toolbar select,.comm-catalogue__toolbar .comm-catalogue__search{flex:1 1 160px;max-width:none}.comm-catalogue__head{padding-top:10px}}

/* Bibliothèque de communications — liste et fiche alignées sur Réclamations */
.comm-library-catalogue{display:block}
.comm-library-toolbar{margin:0 -18px;padding:10px 18px;border-top:1px solid var(--ep-ligne);border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface)}
.comm-library-list-table{border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);overflow:auto;background:var(--ep-surface)}
.comm-library-table{min-width:920px;table-layout:auto}
.comm-library-table tbody tr td:first-child{border-left:3px solid transparent}
.comm-library-table tbody tr[data-state="actif"] td:first-child{border-left-color:var(--ep-ok)}
.comm-library-table tbody tr[data-state="inactif"] td:first-child{border-left-color:var(--ep-ligne-forte)}
.comm-document-cell{display:flex;align-items:center;gap:10px;min-width:300px;max-width:560px}
.comm-document-cell__thumb{width:36px;height:36px;display:grid;place-items:center;flex:none;border-radius:9px;background:var(--ep-surface-2);border:1px solid var(--ep-ligne);color:var(--ep-corail-fonce);overflow:hidden}
.comm-document-cell__thumb img{width:100%;height:100%;object-fit:cover}
.comm-document-cell>div{display:grid;gap:1px;min-width:0}
.comm-document-cell strong{font:700 12.5px/1.25 var(--ep-f-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.comm-document-cell span{font:500 10.5px/1.3 var(--ep-f-ui);color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.comm-document-cell small{font:500 9px/1.25 var(--ep-f-ui);color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.comm-doc-type{display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border:1px solid var(--ep-ligne);border-radius:999px;background:var(--ep-surface-2);font:700 9px/1 var(--ep-f-ui);color:var(--ep-texte-2);white-space:nowrap}
.comm-doc-type.is-image{background:var(--ep-corail-voile);border-color:var(--ep-corail-clair);color:var(--ep-corail-fonce)}
.comm-library .comm-catalogue__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0 8px}
.comm-lib-create{display:grid;gap:14px}.comm-lib-create__drop{min-height:120px}.comm-lib-create .comm-config{padding-top:2px}

.comm-document-detail{min-width:0;background:var(--ep-surface)}
.comm-document-hero{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:14px;padding:17px 18px;border-bottom:1px solid var(--ep-ligne)}
.comm-document-hero__preview{width:64px;height:64px;border-radius:13px;border:1px solid var(--ep-ligne);background:var(--ep-surface-2);display:grid;place-items:center;overflow:hidden;color:var(--ep-corail-fonce)}
.comm-document-hero__preview img{width:100%;height:100%;object-fit:cover}
.comm-document-hero__main{min-width:0}.comm-document-hero__main>label{display:block;font:800 8.5px/1 var(--ep-f-ui);text-transform:uppercase;letter-spacing:.07em;color:var(--ep-texte-3);margin:0 0 4px 2px}
.comm-document-hero__main>input{width:100%;border:0!important;box-shadow:none!important;background:transparent!important;padding:1px 0!important;border-radius:0!important;font:800 20px/1.2 var(--ep-f-titre)!important;color:var(--ep-texte)}
.comm-document-main{display:grid;grid-template-columns:minmax(0,1fr) 310px;min-width:0;align-items:stretch}
.comm-document-content{min-width:0;padding:18px;display:grid;gap:16px}
.comm-document-aside{border-left:1px solid var(--ep-ligne);background:var(--ep-surface-2);padding:16px;display:grid;align-content:start;gap:18px}
.comm-document-preview{min-height:320px;display:grid;place-items:center;border:1px solid var(--ep-ligne);border-radius:12px;background:var(--ep-canvas);overflow:hidden}
.comm-document-preview img{display:block;max-width:100%;max-height:520px;object-fit:contain}
.comm-document-file{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px;border:1px solid var(--ep-ligne);border-radius:11px;background:var(--ep-surface)}
.comm-document-file>span{width:44px;height:44px;display:grid;place-items:center;border-radius:10px;background:var(--ep-surface-2);color:var(--ep-corail-fonce)}
.comm-document-file>div{display:grid;gap:3px;min-width:0}.comm-document-file strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-document-file small{font-size:10px;color:var(--ep-texte-3)}
.comm-document-field{display:grid;gap:6px}.comm-document-field>label{font:800 9px/1 var(--ep-f-ui);text-transform:uppercase;letter-spacing:.06em;color:var(--ep-texte-3)}
.comm-document-field textarea{width:100%;min-height:132px;resize:vertical;border:1px solid var(--ep-ligne-forte);border-radius:10px;background:var(--ep-surface);padding:11px 12px;font:500 12px/1.45 var(--ep-f-ui);color:var(--ep-texte);outline:0}.comm-document-field textarea:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.comm-document-meta{display:grid;gap:10px}.comm-document-meta>strong{font-size:12px}.comm-document-meta dl{margin:0;display:grid;gap:0;border:1px solid var(--ep-ligne);border-radius:10px;overflow:hidden;background:var(--ep-surface)}.comm-document-meta dl>div{display:grid;grid-template-columns:78px minmax(0,1fr);gap:10px;padding:8px 9px;border-bottom:1px solid var(--ep-ligne)}.comm-document-meta dl>div:last-child{border-bottom:0}.comm-document-meta dt{font:700 9.5px/1.3 var(--ep-f-ui);color:var(--ep-texte-3)}.comm-document-meta dd{margin:0;font:600 10px/1.3 var(--ep-f-ui);color:var(--ep-texte-2);overflow-wrap:anywhere}
.comm-document-parks{padding-top:1px}.comm-document-parks .comm-choices{gap:5px}.comm-document-parks .comm-choice{font-size:9.5px;padding:5px 7px}
@media(max-width:900px){.comm-document-main{grid-template-columns:1fr}.comm-document-aside{border-left:0;border-top:1px solid var(--ep-ligne)}.comm-document-hero{grid-template-columns:54px minmax(0,1fr)}.comm-document-hero__preview{width:54px;height:54px}.comm-document-hero .comm-active{grid-column:2;padding:3px 0 0;border-left:0}.comm-library .comm-catalogue__head{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.comm-library-toolbar{margin:0 -12px;padding:9px 12px}.comm-library-toolbar select,.comm-library-toolbar .comm-catalogue__search{flex:1 1 160px;max-width:none}.comm-document-content,.comm-document-aside{padding:12px}.comm-document-hero{padding:13px}.comm-document-hero__main>input{font-size:17px!important}.comm-document-file{grid-template-columns:38px minmax(0,1fr)}.comm-document-file>a{grid-column:1/-1}.comm-document-file>span{width:38px;height:38px}}

/* ══════════════════════════════════════════════════════════════════
   Chat opérateur — refonte du composer + hiérarchie des messages
   v5.64 dev · UI/UX 2026-08
   ══════════════════════════════════════════════════════════════════ */
.chat-composer{
  padding:12px 22px 14px!important;
  border-top:1px solid var(--ep-ligne)!important;
  background:linear-gradient(180deg,rgba(247,246,244,.78),var(--ep-surface))!important;
}
.chat-composer__inner{
  overflow:hidden;
  border:1px solid var(--ep-ligne);
  border-radius:14px;
  background:var(--ep-surface);
  box-shadow:0 8px 24px rgba(43,29,20,.08);
}
.chat-composer--note .chat-composer__inner{border-color:var(--ep-attn-bord);box-shadow:0 8px 24px rgba(180,117,18,.08)}
.chat-composer__tabs{display:flex;align-items:center;gap:0;min-height:46px;padding:0 12px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface)}
.chat-composer__tab{position:relative;display:inline-flex;align-items:center;gap:7px;height:46px;padding:0 14px;border:0;background:transparent;color:var(--ep-texte-3);font:700 12px/1 var(--ep-f-ui);cursor:pointer;white-space:nowrap}
.chat-composer__tab::after{content:'';position:absolute;left:12px;right:12px;bottom:-1px;height:2px;border-radius:2px 2px 0 0;background:transparent}
.chat-composer__tab:hover{color:var(--ep-texte);background:var(--ep-surface-2)}
.chat-composer__tab.on{color:var(--ep-corail-fonce)}
.chat-composer__tab.on::after{background:var(--ep-corail)}
.chat-composer__tab--note.on{color:var(--ep-attn)}.chat-composer__tab--note.on::after{background:var(--ep-attn)}
.chat-composer__tab--ai{margin-left:2px;color:var(--ep-violet)}.chat-composer__tab--ai:hover{color:var(--ep-violet);background:var(--ep-violet-voile)}
.chat-composer__ai-tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:10px 14px 0}
.chat-composer__ai-tools .ep-b{height:31px;padding:0 10px;border-radius:8px;background:var(--ep-surface);font-size:10.5px;color:var(--ep-texte-2)}
.chat-composer__ai-tools .ep-b:first-child{border-color:#D8CBEA;color:var(--ep-violet);background:var(--ep-violet-voile)}
.chat-composer__quick{gap:6px;flex-wrap:wrap;padding:10px 14px 0}.chat-composer__quick .ep-b{height:31px;font-size:10.5px}
.chat-composer__attachments{padding:10px 14px 0!important;margin:0!important}
.chat-composer__editor{margin:10px 14px 9px;border:1.5px solid var(--ep-ligne-forte);border-radius:11px;background:var(--ep-surface);overflow:hidden;transition:border-color .15s,box-shadow .15s,background .15s}
.chat-composer__editor:hover{border-color:#C9C1B6}
.chat-composer__editor:focus-within{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile);background:#fff}
.chat-composer--note .chat-composer__editor:focus-within{border-color:var(--ep-attn);box-shadow:0 0 0 3px var(--ep-attn-voile)}
.chat-composer__editor textarea{display:block;width:100%;min-height:82px;max-height:150px;resize:none;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;padding:12px 14px 6px!important;font:500 13.5px/1.5 var(--ep-f-ui)!important;color:var(--ep-texte)!important;overflow-y:auto}
.chat-composer__editor textarea::placeholder{color:var(--ep-texte-3)}
.chat-composer__editor-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px;padding:3px 7px 7px 13px;color:var(--ep-texte-3)}
.chat-composer__hint{display:inline-flex;align-items:center;gap:5px;font:550 10.5px/1.25 var(--ep-f-ui)}
.chat-composer__icon{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--ep-texte-3);font:700 17px/1 "Apple Color Emoji","Segoe UI Emoji",sans-serif;cursor:pointer}
.chat-composer__icon:hover{background:var(--ep-surface-2);color:var(--ep-texte)}
.chat-composer__footer{display:flex;align-items:center;gap:10px;padding:0 14px 13px}
.chat-composer__footer-left{display:flex;align-items:center;gap:7px;min-width:0;flex-wrap:wrap}
.chat-composer__footer .ep-b{height:38px;border-radius:9px;padding:0 11px}
.chat-composer__footer .chat-attach{width:auto!important;min-width:92px;justify-content:center}
.chat-composer__footer .chat-library-btn{height:38px!important;min-width:112px;justify-content:center}
.chat-composer__send{margin-left:auto!important;min-width:118px!important;height:40px!important;justify-content:center!important;font-size:12px!important;box-shadow:0 4px 12px rgba(233,102,70,.18)}
.chat-composer__send:hover{transform:translateY(-1px)}
.chat-com-tools{margin:0!important}.chat-com-tools select{min-width:160px;max-width:240px;height:38px!important;border-radius:9px!important;font-size:11px!important;font-weight:650!important;background-color:var(--ep-surface)!important}
.chat-composer .chat-drop-on{outline:0!important;border-color:var(--ep-corail)!important;box-shadow:0 0 0 3px var(--ep-corail-voile)!important;background:var(--ep-corail-voile)!important}

/* Messages : le corail signale l'action, pas une grande surface de texte. */
.chat-msg{max-width:72%;display:flex;gap:9px;align-items:flex-end;min-width:0}
.chat-msg--in,.chat-msg--ia{align-self:flex-start}.chat-msg--out{align-self:flex-end;flex-direction:row-reverse}
.chat-msg__avatar{flex:0 0 auto;margin-bottom:18px;color:#fff!important}
.chat-msg__content{min-width:0;display:grid;gap:4px}
.chat-msg__bubble{padding:10px 13px 11px;border:1px solid var(--ep-ligne);border-radius:12px 12px 12px 4px;background:var(--ep-surface);box-shadow:var(--ep-om-1)}
.chat-msg--out .chat-msg__bubble{border-radius:12px 12px 4px 12px;background:var(--ep-surface);border-color:#DDD6CE}
.chat-msg--ia .chat-msg__bubble{background:var(--ep-violet-voile);border-color:var(--ep-violet-bord)}
.chat-msg__label{display:block;margin-bottom:5px;font:800 9.5px/1.1 var(--ep-f-ui);letter-spacing:.055em;text-transform:uppercase;color:var(--ep-info)}
.chat-msg--out .chat-msg__label{color:var(--ep-texte-2)}.chat-msg--ia .chat-msg__label{color:var(--ep-violet)}
.chat-msg__text{font:500 13.5px/1.5 var(--ep-f-ui);color:var(--ep-texte);white-space:pre-wrap;overflow-wrap:anywhere}
.chat-msg__meta{padding:0 4px;font:500 10px/1.25 var(--ep-f-ui);color:var(--ep-texte-3)}.chat-msg--out .chat-msg__meta{text-align:right}.chat-msg__meta .is-read{color:var(--ep-ok);font-weight:700}
.chat-msg__translation{margin-top:1px;padding:7px 9px;border:1px dashed var(--ep-ligne-forte);border-radius:8px;background:var(--ep-surface-2);font:500 11px/1.4 var(--ep-f-ui);color:var(--ep-texte-2)}
.chat-msg__translation b{color:var(--ep-info);font-size:9.5px;text-transform:uppercase;letter-spacing:.05em}
.chat-msg__source{padding:0 4px;font:500 9.5px/1.3 var(--ep-f-ui);color:var(--ep-texte-3)}

@media(max-width:900px){
  .chat-composer{padding:10px 14px 12px!important}.chat-composer__footer{align-items:flex-end}.chat-composer__footer-left{flex:1}.chat-com-tools{flex:1 1 150px}.chat-com-tools select{width:100%;max-width:none}.chat-msg{max-width:82%}
}
@media(max-width:640px){
  .chat-composer{padding:8px!important}.chat-composer__inner{border-radius:11px}.chat-composer__tabs{padding:0 5px;overflow-x:auto}.chat-composer__tab{padding:0 9px}.chat-composer__tab::after{left:8px;right:8px}.chat-composer__ai-tools{padding:8px 9px 0}.chat-composer__editor{margin:8px 9px}.chat-composer__footer{padding:0 9px 9px;align-items:stretch;flex-direction:column}.chat-composer__footer-left{display:grid;grid-template-columns:1fr 1fr;width:100%}.chat-com-tools{grid-column:1/-1}.chat-composer__footer .ep-b{width:100%!important}.chat-composer__send{margin-left:0!important;width:100%!important}.chat-msg{max-width:92%}
}

/* Chat — continuité e-mail par parc */
.chat-fallback-parks{display:grid;gap:8px;margin:12px 0 16px}
.chat-fallback-park{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,1.25fr);gap:14px;align-items:center;padding:11px 12px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-1);background:var(--ep-surface-2)}
.chat-fallback-park>div{min-width:0}.chat-fallback-park strong{display:block;font-size:12.5px}.chat-fallback-park span{display:block;margin-top:2px;color:var(--ep-texte-3);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-fallback-park input{width:100%;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);background:var(--ep-surface);padding:8px 10px;font-size:12.5px;outline:0}.chat-fallback-park input:focus{border-color:var(--ep-corail)}
@media(max-width:760px){.chat-fallback-park{grid-template-columns:1fr}}
.chat-fallback-dest{display:block!important;margin-top:4px;color:var(--ep-ok,#3f7a34)!important;font-weight:650;font-size:11.5px!important}
.chat-fallback-dest.is-missing{color:var(--ep-alerte,#c0392b)!important}

/* ═══ Chat · passation IA, statut live & SLA opérateur ═══ */
.chat-live{display:inline-flex;align-items:center;gap:6px;min-height:22px;padding:3px 8px;border-radius:999px;font:750 10.5px/1.1 var(--ep-f-ui);white-space:nowrap;border:1px solid transparent}
.chat-live i{width:6px;height:6px;border-radius:50%;background:currentColor;flex:0 0 auto}
.chat-live--ia{color:var(--ep-violet);background:var(--ep-violet-voile);border-color:#D8CBEA}
.chat-live--attente{color:var(--ep-attn);background:var(--ep-attn-voile);border-color:#F0D9AA}
.chat-live--alerte{color:var(--ep-alerte);background:var(--ep-alerte-voile);border-color:#E7BBB5}
.chat-live--agent{color:var(--ep-ok);background:var(--ep-ok-voile);border-color:var(--ep-ok-bord)}
.chat-live--clos{color:var(--ep-texte-3);background:var(--ep-surface-2);border-color:var(--ep-ligne)}
.chat-sla{display:inline-flex;align-items:center;min-height:20px;padding:3px 7px;border-radius:999px;font:750 9.5px/1 var(--ep-f-data);white-space:nowrap;border:1px solid transparent}
.chat-sla--ok{color:var(--ep-ok);background:var(--ep-ok-voile);border-color:var(--ep-ok-bord)}
.chat-sla--attn{color:var(--ep-attn);background:var(--ep-attn-voile);border-color:#F0D9AA}
.chat-sla--alerte{color:var(--ep-alerte);background:var(--ep-alerte-voile);border-color:#E7BBB5}
.chat-handoff-summary{margin:0 0 12px;border:1px solid #D8CBEA;border-radius:12px;background:linear-gradient(180deg,var(--ep-violet-voile),#fff 52%);overflow:hidden;box-shadow:var(--ep-om-1)}
.chat-handoff-summary summary{list-style:none;display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;border-bottom:1px solid transparent}.chat-handoff-summary[open] summary{border-bottom-color:#E6DDF2}.chat-handoff-summary summary::-webkit-details-marker{display:none}
.chat-handoff-summary__mark{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#fff;color:var(--ep-violet);border:1px solid #D8CBEA;font-weight:900;flex:0 0 auto}
.chat-handoff-summary summary>span:nth-child(2){min-width:0;flex:1}.chat-handoff-summary summary b{display:block;font:800 12.5px/1.2 var(--ep-f-titre);color:var(--ep-texte)}.chat-handoff-summary summary small{display:block;margin-top:2px;font:550 10.5px/1.25 var(--ep-f-ui);color:var(--ep-texte-3)}
.chat-handoff-summary__toggle{font:700 10px/1 var(--ep-f-ui);color:var(--ep-violet)}.chat-handoff-summary:not([open]) .chat-handoff-summary__toggle{font-size:0}.chat-handoff-summary:not([open]) .chat-handoff-summary__toggle::after{content:'Afficher';font-size:10px}
.chat-handoff-summary__body{padding:11px 12px 12px;display:grid;gap:9px}.chat-handoff-summary__chips{display:flex;gap:6px;flex-wrap:wrap}.chat-handoff-summary__chips span{padding:4px 8px;border-radius:999px;background:#fff;border:1px solid #DED4ED;color:var(--ep-violet);font:700 10px/1 var(--ep-f-ui)}
.chat-handoff-summary__section{display:grid;gap:3px}.chat-handoff-summary__section>b{font:800 9.5px/1.2 var(--ep-f-ui);letter-spacing:.065em;text-transform:uppercase;color:var(--ep-texte-3)}.chat-handoff-summary__section p{margin:0;font:550 12.5px/1.45 var(--ep-f-ui);color:var(--ep-texte-2);white-space:pre-wrap}.chat-handoff-summary__todo{padding:8px 9px;border-radius:8px;background:var(--ep-attn-voile);border:1px solid #F0D9AA}.chat-handoff-summary__todo>b{color:var(--ep-attn)}
.chat-handoff-summary__contact{display:flex;align-items:flex-start;gap:10px;padding-top:2px;font-size:11px}.chat-handoff-summary__contact span{color:var(--ep-texte-3);flex:0 0 138px}.chat-handoff-summary__contact strong{font-weight:650;color:var(--ep-texte);overflow-wrap:anywhere}
.chat-sla-parks{display:grid;gap:7px;margin-top:10px}.chat-sla-park{display:flex;align-items:center;gap:14px;padding:9px 11px;border:1px solid var(--ep-ligne);border-radius:9px;background:var(--ep-surface)}.chat-sla-park>span:first-child{flex:1;min-width:0}.chat-sla-park strong{display:block;font-size:12.5px}.chat-sla-park small{display:block;margin-top:2px;color:var(--ep-texte-3);font-size:10.5px}.chat-sla-park__input{display:flex;align-items:center;gap:6px}.chat-sla-park__input input{width:68px!important;text-align:center}.chat-sla-park__input em{font-style:normal;font-size:11px;color:var(--ep-texte-3)}
@media(max-width:760px){.chat-handoff-summary__contact{display:grid;gap:3px}.chat-handoff-summary__contact span{flex-basis:auto}.chat-sla-park{align-items:flex-start}.chat-sla-park__input{flex:0 0 auto}.chat-sla{white-space:normal;line-height:1.2}}

/* Parc · configuration Qweekle mise en évidence */
.parc-qweekle-card{margin-top:8px;padding:16px;border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-2);background:var(--ep-surface-2)}
.parc-qweekle-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}
.parc-qweekle-card__head strong{display:flex;align-items:center;gap:7px;font-size:14px;color:var(--ep-texte)}
.parc-qweekle-card__head span:not(.badge){display:block;margin-top:2px;font-size:11.5px;color:var(--ep-texte-3)}
.parc-qweekle-card__grid{margin-top:12px}
.parc-qweekle-lock{margin-top:2px;padding:10px 12px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-1);background:#fff}
.parc-qweekle-card--focus{outline:3px solid rgba(233,102,70,.20);border-color:var(--ep-corail);transition:outline .2s,border-color .2s}

/* Qweekle — assistant de découverte parc (v5.64.7) */
.parc-qweekle-discover-intro{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0 6px;padding:11px 12px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:#fff}
.parc-qweekle-discover-intro>div{min-width:0}.parc-qweekle-discover-intro strong{display:block;font-size:12.5px}.parc-qweekle-discover-intro span{display:block;margin-top:2px;font-size:11.5px;color:var(--ep-texte-3)}
.parc-qweekle-discover{margin:10px 0 14px;padding:12px;border:1px solid var(--ep-ok-bord);border-radius:var(--ep-r-2);background:var(--ep-ok-voile)}
.qw-discover-head,.qw-discover-products-head,.qw-discover-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.qw-discover-head{padding-bottom:10px;border-bottom:1px solid rgba(63,122,52,.16)}
.qw-discover-head>div strong,.qw-discover-products-head>div strong{display:block;font-size:12.5px}.qw-discover-head>div span,.qw-discover-products-head>div span{display:block;margin-top:2px;font-size:11px;color:var(--ep-texte-3)}
.qw-discover-warning{margin-top:9px;padding:8px 10px;border:1px solid var(--ep-attn);border-radius:var(--ep-r-1);background:var(--ep-attn-voile);font-size:11.5px;color:var(--ep-attn)}
.qw-discover-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.qw-discover-grid .field{margin:0}
.qw-discover-products-head{margin-top:14px}.qw-discover-products-head input{width:min(220px,45%);border:1px solid var(--ep-ligne-forte);border-radius:var(--ep-r-1);background:#fff;padding:7px 9px;font-size:12px}
.qw-discover-products{max-height:300px;overflow:auto;margin-top:8px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:#fff}
.qw-discover-product{display:grid;grid-template-columns:auto 58px minmax(0,1fr) minmax(130px,190px);align-items:center;gap:10px;padding:10px;border-bottom:1px solid var(--ep-ligne);cursor:pointer}.qw-discover-product:last-child{border-bottom:0}.qw-discover-product:hover{background:var(--ep-surface-2)}.qw-discover-product[hidden]{display:none}
.qw-discover-product__image{width:58px;height:48px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-1);background:var(--ep-surface-2);overflow:hidden;display:grid;place-items:center;color:var(--ep-texte-3)}.qw-discover-product__image img{width:100%;height:100%;display:block;object-fit:cover}.qw-discover-product__image.is-broken::after{content:'Image indisponible';font-size:8.5px;text-align:center;padding:3px;color:var(--ep-texte-3)}
.qw-discover-product__main{min-width:0}.qw-discover-product__main strong{display:block;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qw-discover-product__main small{display:flex;align-items:center;gap:5px;min-width:0;margin-top:2px;color:var(--ep-texte-3);font-size:10.5px;white-space:nowrap;overflow:hidden}.qw-discover-product__main small span{overflow:hidden;text-overflow:ellipsis}.qw-discover-product__main small i{font-style:normal;opacity:.55}.qw-discover-product__main code{font-size:10px;white-space:nowrap}
.qw-discover-product__channels{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.qw-channel{display:inline-flex;align-items:center;gap:3px;border:1px solid var(--ep-ligne);border-radius:999px;padding:2px 6px;font-size:9.5px;font-weight:700;line-height:1.25;background:#fff;color:var(--ep-texte-3)}.qw-channel b{font-size:10px}.qw-channel.is-on{background:var(--ep-ok-voile);border-color:var(--ep-ok-bord);color:var(--ep-ok)}.qw-channel.is-off{background:var(--ep-surface-2);color:var(--ep-texte-3);text-decoration:none}.qw-channel.is-off b{color:var(--ep-alerte)}.qw-channel.is-unknown{opacity:.68}
.qw-discover-alias{width:100%;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-1);padding:6px 8px;background:#fff;font-family:var(--f-data);font-size:11px}.qw-discover-product:has(input[type=checkbox]:checked){background:var(--ep-ok-voile)}
.qw-discover-foot{margin-top:10px}.qw-discover-foot .hint{max-width:70%}
@media(max-width:760px){.parc-qweekle-discover-intro,.qw-discover-products-head,.qw-discover-foot{align-items:stretch;flex-direction:column}.qw-discover-grid{grid-template-columns:1fr}.qw-discover-products-head input{width:100%}.qw-discover-product{grid-template-columns:auto 52px minmax(0,1fr)}.qw-discover-product__image{width:52px;height:44px}.qw-discover-alias{grid-column:3}.qw-discover-foot .hint{max-width:none}}

/* v5.64.10 — Fiche Parc plein écran : la modification ne vit plus dans un drawer. */
.parc-detail-summary{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:14px 16px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:#fff}
.parc-detail-summary__icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--ep-corail-voile);color:var(--ep-corail-fonce);flex:0 0 auto}
.parc-detail-summary__main{min-width:0;flex:1}.parc-detail-summary__main strong{display:block;font-family:var(--f-titre);font-size:15px}.parc-detail-summary__main span{display:block;margin-top:2px;color:var(--ep-texte-3);font-size:12px}
.parc-detail-summary__badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.parc-detail-tabs{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:4px;margin-bottom:14px;padding:5px;border:1px solid var(--ep-ligne);border-radius:var(--ep-r-2);background:rgba(255,255,255,.96);box-shadow:var(--ep-om-1);backdrop-filter:blur(8px)}
.parc-detail-tabs button{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:8px;font-size:12.5px;font-weight:700;color:var(--ep-texte-2)}
.parc-detail-tabs button:hover{background:var(--ep-surface-2);color:var(--ep-texte)}
.parc-detail-tabs button.on{background:var(--ep-corail-voile);color:var(--ep-corail-fonce)}
.parc-detail-panel[hidden]{display:none!important}.parc-detail-grid{padding:2px 0}.parc-detail-grid .field{min-width:0}
.parc-detail-footer{display:flex;align-items:center;gap:10px;margin-top:16px;padding:14px 0 4px;border-top:1px solid var(--ep-ligne)}
.parc-detail-footer .ep-faible{flex:1;text-align:right}.parc-qweekle-card--page{margin:0;border:0;background:transparent;padding:0}
@media(max-width:760px){.parc-detail-summary{align-items:flex-start}.parc-detail-summary__badges{display:none}.parc-detail-tabs{overflow:auto;white-space:nowrap}.parc-detail-footer{position:sticky;bottom:0;z-index:4;margin-left:-12px;margin-right:-12px;padding:10px 12px;background:#fff}.parc-detail-footer .ep-faible{display:none}}

/* v5.66 — Boutique Qweekle par tags */
.qw-shop-toolbar{display:flex;align-items:end;gap:14px;justify-content:space-between;margin:18px 0 10px}.qw-shop-toolbar>div{display:flex;flex-direction:column;gap:3px}.qw-shop-toolbar span{font-size:12px;color:var(--ep-texte-3)}.qw-shop-toolbar input{width:260px}.qw-shop-tags{display:flex;flex-direction:column;gap:10px}.qw-shop-tag{border:1px solid var(--ep-ligne);border-radius:14px;background:var(--ep-fond-1);padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.qw-shop-tag__select{display:grid;grid-template-columns:auto 64px minmax(0,1fr);gap:11px;align-items:center;cursor:pointer}.qw-shop-tag__image{width:64px;height:54px;border-radius:10px;background:var(--ep-fond-2);display:grid;place-items:center;overflow:hidden}.qw-shop-tag__image img{width:100%;height:100%;object-fit:cover}.qw-shop-tag__body{display:flex;min-width:0;flex-direction:column;gap:3px}.qw-shop-tag__body strong{font-size:14px}.qw-shop-tag__body small{font-size:11px;color:var(--ep-texte-3)}.qw-shop-tag__body>span{font-size:12px;color:var(--ep-texte-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qw-shop-tag__detail{grid-column:1/-1;border-top:1px solid var(--ep-ligne);padding-top:12px}.qw-shop-detail-head{display:grid;grid-template-columns:100px minmax(0,1fr);gap:14px;align-items:start}.qw-shop-detail-head>img{width:100px;height:78px;object-fit:cover;border-radius:12px}.qw-shop-detail-head p{font-size:12px;color:var(--ep-texte-2);margin:4px 0;white-space:pre-line}.qw-shop-subtitle{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ep-texte-3);margin:16px 0 8px}.qw-shop-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.qw-shop-rule{border:1px solid var(--ep-ligne);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}.qw-shop-rule span{font-size:10.5px;color:var(--ep-texte-3)}.qw-shop-rule strong{font-size:12px}.qw-shop-products{display:flex;flex-direction:column;gap:7px}.qw-shop-product{display:grid;grid-template-columns:auto 54px minmax(0,1fr);gap:10px;align-items:center;border:1px solid var(--ep-ligne);border-radius:10px;padding:8px;cursor:pointer}.qw-shop-product__image{width:54px;height:46px;border-radius:8px;background:var(--ep-fond-2);display:grid;place-items:center;overflow:hidden}.qw-shop-product__image img{width:100%;height:100%;object-fit:cover}.qw-shop-product__body{display:flex;flex-direction:column;gap:2px;min-width:0}.qw-shop-product__body small,.qw-shop-product__body>span{font-size:11px;color:var(--ep-texte-3)}
@media(max-width:800px){.qw-shop-rules{grid-template-columns:1fr 1fr}.qw-shop-toolbar{align-items:stretch;flex-direction:column}.qw-shop-toolbar input{width:100%}.qw-shop-tag{grid-template-columns:1fr}.qw-shop-tag>button{justify-self:start}.qw-shop-detail-head{grid-template-columns:1fr}.qw-shop-detail-head>img{width:100%;height:150px}}

/* v5.66.4 — Boutique Qweekle optimisée : cache local immédiat + synchro en arrière-plan */
.qw-shop-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px;padding-top:18px;border-top:1px solid var(--ep-ligne)}
.qw-shop-section-head>div{display:flex;flex-direction:column;gap:3px}.qw-shop-section-head strong{display:flex;align-items:center;gap:7px;font-size:14px}.qw-shop-section-head span{font-size:11.5px;color:var(--ep-texte-3)}
.qw-shop-global-status{min-height:18px;margin:6px 0}
.qw-shop-loading{display:flex;align-items:center;justify-content:center;gap:8px;min-height:110px;color:var(--ep-texte-3);font-size:12px}
.qw-shop-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}
.qw-shop-kpi,.qw-shop-syncstate{border:1px solid var(--ep-ligne);background:#fff;border-radius:12px;padding:11px 12px;display:flex;flex-direction:column;gap:2px;min-width:0}
.qw-shop-kpi>span,.qw-shop-syncstate>span{font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ep-texte-3)}
.qw-shop-kpi>strong{font-size:22px;line-height:1.15}.qw-shop-kpi>small,.qw-shop-syncstate>small{font-size:10.5px;color:var(--ep-texte-3)}
.qw-shop-syncstate>strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qw-shop-syncstate.is-fresh{border-color:var(--ep-ok-bord);background:var(--ep-ok-voile)}.qw-shop-syncstate.is-stale{border-color:#ead8b5;background:#fffaf0}
.qw-shop-toolbar__actions{display:flex;align-items:center;gap:8px}.qw-shop-toolbar__actions input{width:230px}
.qw-shop-pos-picker{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:10px 0 14px;padding:10px 12px;border:1px dashed var(--ep-ligne-forte);border-radius:12px;background:#fff}
.qw-shop-pos-picker>div{display:flex;flex-direction:column;gap:2px}.qw-shop-pos-picker strong{font-size:12px}.qw-shop-pos-picker span{font-size:10.5px;color:var(--ep-texte-3)}.qw-shop-pos-picker select{min-width:280px}
.qw-shop-tag{transition:border-color .18s,box-shadow .18s,background .18s}.qw-shop-tag.is-active{border-color:rgba(34,139,94,.38);background:rgba(34,139,94,.025)}.qw-shop-tag.is-open{box-shadow:0 8px 24px rgba(30,40,50,.06)}
.qw-shop-mode{font-weight:700;color:var(--ep-texte-2)}
.qw-shop-detail-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.qw-shop-detail-head{flex:1}.qw-shop-detail-head small{font-size:10.5px;color:var(--ep-texte-3)}
.qw-shop-order-choice{display:grid;grid-template-columns:1fr 1fr;gap:8px}.qw-shop-order-choice label{display:flex;gap:9px;align-items:flex-start;border:1px solid var(--ep-ligne);border-radius:11px;padding:10px;cursor:pointer;background:#fff}.qw-shop-order-choice label:has(input:checked){border-color:var(--ep-corail);box-shadow:0 0 0 2px rgba(233,102,70,.08)}.qw-shop-order-choice span{display:flex;flex-direction:column;gap:2px}.qw-shop-order-choice strong{font-size:12px}.qw-shop-order-choice small{font-size:10.5px;color:var(--ep-texte-3)}
.qw-shop-products-head{display:flex;align-items:end;justify-content:space-between;gap:12px}.qw-shop-products-head>div:first-child{display:flex;flex-direction:column;gap:2px}.qw-shop-products-head .qw-shop-subtitle{margin-bottom:0}.qw-shop-products-head span{font-size:10.5px;color:var(--ep-texte-3)}.qw-shop-mini-actions{display:flex;gap:6px}
.qw-shop-savebar{position:sticky;bottom:8px;z-index:4;margin-top:12px;padding:10px 12px;border:1px solid var(--ep-ligne);border-radius:12px;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);box-shadow:0 8px 25px rgba(30,40,50,.08)}
#pQshopSave.has-changes{box-shadow:0 0 0 3px rgba(233,102,70,.12)}
.qw-shop-empty{padding:30px 20px;border:1px dashed var(--ep-ligne-forte);border-radius:12px;text-align:center;display:flex;flex-direction:column;gap:4px;background:#fff}.qw-shop-empty strong{font-size:13px}.qw-shop-empty span{font-size:11px;color:var(--ep-texte-3)}
@media(max-width:1050px){.qw-shop-overview{grid-template-columns:1fr 1fr}.qw-shop-order-choice{grid-template-columns:1fr}}
@media(max-width:760px){.qw-shop-section-head,.qw-shop-pos-picker,.qw-shop-products-head{align-items:stretch;flex-direction:column}.qw-shop-overview{grid-template-columns:1fr}.qw-shop-toolbar__actions{flex-direction:column;align-items:stretch}.qw-shop-toolbar__actions input,.qw-shop-pos-picker select{width:100%;min-width:0}.qw-shop-detail-top{flex-direction:column}.qw-shop-mini-actions{flex-wrap:wrap}}

/* v5.66.5 — Parc Qweekle : espace boutique plein écran et hiérarchie simplifiée */
.ep-reglages__corps.ep-reglages__corps--parc-qweekle{
  max-width:none;
  width:100%;
  box-sizing:border-box;
  padding-right:32px;
}
.ep-reglages__corps--parc-qweekle .ep-reg-tete p{max-width:980px}
.ep-reglages__corps--parc-qweekle .parc-detail-panel[data-parc-panel="qweekle"]>.ep-bloc-r{overflow:visible}
.ep-reglages__corps--parc-qweekle .parc-detail-panel[data-parc-panel="qweekle"]>.ep-bloc-r>.ep-bloc-r__c{padding:0}
.qw-parc-workspace{display:grid;gap:18px}

.qw-connection-card{border:1px solid var(--ep-ligne);border-radius:14px;background:#fff;overflow:hidden}
.qw-connection-card summary{list-style:none;display:flex;align-items:center;gap:12px;padding:13px 15px;cursor:pointer;user-select:none}
.qw-connection-card summary::-webkit-details-marker{display:none}
.qw-connection-card summary:hover{background:var(--ep-surface-2)}
.qw-connection-card__icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--ep-corail-voile);color:var(--ep-corail-fonce);flex:0 0 auto}
.qw-connection-card__main{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}
.qw-connection-card__main strong{font-size:13.5px}
.qw-connection-card__main small{font-size:11px;color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qw-connection-card__chev{display:grid;place-items:center;color:var(--ep-texte-3);transition:transform .15s ease!important}
.qw-connection-card[open] .qw-connection-card__chev{transform:rotate(180deg)}
.qw-connection-card__body{padding:2px 15px 15px;border-top:1px solid var(--ep-ligne)}
.qw-connection-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px;margin-top:12px}
.qw-connection-grid .field{margin:0}

.qw-guard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.qw-guard-card{position:relative;display:grid;grid-template-columns:auto 38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 14px;border:1px solid var(--ep-ligne);border-radius:14px;background:#fff;cursor:pointer;min-width:0}
.qw-guard-card:hover{border-color:var(--ep-ligne-forte)}
.qw-guard-card.is-on{border-color:var(--ep-ok-bord);background:var(--ep-ok-voile)}
.qw-guard-card>input{width:16px;height:16px;margin:0;accent-color:var(--ep-ok)}
.qw-guard-card__mark{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--ep-surface-2);color:var(--ep-texte-2)}
.qw-guard-card.is-on .qw-guard-card__mark{background:#fff;color:var(--ep-ok)}
.qw-guard-card>span:nth-of-type(2){min-width:0;display:flex;flex-direction:column;gap:2px}
.qw-guard-card strong{font-size:13px}
.qw-guard-card small{font-size:10.8px;line-height:1.35;color:var(--ep-texte-3)}
.qw-guard-card em{font-style:normal;font-size:10.5px;font-weight:800;border-radius:999px;padding:4px 7px;background:var(--ep-surface-2);color:var(--ep-texte-3);white-space:nowrap}
.qw-guard-card.is-on em{background:#fff;color:var(--ep-ok)}

.qw-shop-section-head--hero{margin-top:2px;padding:18px 0 0;border-top:1px solid var(--ep-ligne)}
.qw-shop-section-head--hero strong{font-size:17px}
.qw-shop-section-head--hero span{max-width:850px;font-size:12px;line-height:1.45}
#pQdiscoverPanel.qw-shop-catalogue{margin:0;padding:0;border:0;border-radius:0;background:transparent}
.qw-shop-catalogue .qw-shop-overview{grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin:0 0 16px}
.qw-shop-catalogue .qw-shop-kpi,.qw-shop-catalogue .qw-shop-syncstate{min-height:82px;justify-content:center;padding:13px 14px;border-radius:14px}
.qw-shop-catalogue .qw-shop-kpi>strong{font-size:26px}
.qw-shop-catalogue .qw-shop-syncstate>strong{white-space:normal;line-height:1.3}
.qw-shop-catalogue .qw-shop-pos-picker{margin:0 0 16px;padding:12px 14px;border-style:solid;background:#fff}
.qw-shop-catalogue .qw-shop-toolbar{align-items:center;margin:6px 0 12px;padding:12px 0;border-bottom:1px solid var(--ep-ligne)}
.qw-shop-catalogue .qw-shop-toolbar>div:first-child strong{font-size:14px}
.qw-shop-catalogue .qw-shop-toolbar__actions input{width:min(360px,32vw)}

.qw-shop-catalogue .qw-shop-tags{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px;align-items:start}
.qw-shop-catalogue .qw-shop-tag{display:grid;grid-template-columns:1fr;gap:0;padding:0;overflow:hidden;background:#fff;border-radius:15px;min-width:0}
.qw-shop-catalogue .qw-shop-tag.is-active{background:#fff;border-color:rgba(34,139,94,.45);box-shadow:inset 0 3px 0 rgba(34,139,94,.38)}
.qw-shop-catalogue .qw-shop-tag.is-open{grid-column:1/-1;box-shadow:0 10px 30px rgba(30,40,50,.08)}
.qw-shop-catalogue .qw-shop-tag__select{grid-template-columns:auto 88px minmax(0,1fr);gap:12px;padding:13px 14px;min-height:100px}
.qw-shop-catalogue .qw-shop-tag__select>input{width:17px;height:17px;accent-color:var(--ep-ok)}
.qw-shop-catalogue .qw-shop-tag__image{width:88px;height:74px;border-radius:11px}
.qw-shop-catalogue .qw-shop-tag__body{gap:5px}
.qw-shop-catalogue .qw-shop-tag__body strong{font-size:14.5px;line-height:1.2}
.qw-shop-catalogue .qw-shop-tag__body small{font-size:10.8px}
.qw-shop-catalogue .qw-shop-tag__body>span{font-size:11.5px;line-height:1.4;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.qw-shop-catalogue .qw-shop-tag>button{margin:0 14px 13px;justify-self:stretch;justify-content:center}
.qw-shop-catalogue .qw-shop-tag__detail{grid-column:auto;border-top:1px solid var(--ep-ligne);padding:18px 20px 20px;background:var(--ep-surface-2)}
.qw-shop-catalogue .qw-shop-tag.is-open>button{justify-self:start;min-width:150px}

.qw-shop-catalogue .qw-shop-detail-top{align-items:center}
.qw-shop-catalogue .qw-shop-detail-head{grid-template-columns:160px minmax(0,1fr);gap:18px}
.qw-shop-catalogue .qw-shop-detail-head>img{width:160px;height:110px;border-radius:14px}
.qw-shop-catalogue .qw-shop-detail-head strong{font-size:18px}
.qw-shop-catalogue .qw-shop-detail-head p{font-size:12.5px;line-height:1.5;max-width:900px}
.qw-shop-catalogue .qw-shop-order-choice{grid-template-columns:repeat(2,minmax(260px,1fr));max-width:900px}
.qw-shop-catalogue .qw-shop-order-choice label{padding:12px 13px}
.qw-shop-catalogue .qw-shop-rules{grid-template-columns:repeat(4,minmax(150px,1fr));gap:8px}
.qw-shop-catalogue .qw-shop-rule{background:#fff}
.qw-shop-catalogue .qw-shop-products{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:9px}
.qw-shop-catalogue .qw-shop-product{background:#fff;grid-template-columns:auto 64px minmax(0,1fr);padding:9px 10px}
.qw-shop-catalogue .qw-shop-product__image{width:64px;height:54px}
.qw-shop-catalogue .qw-shop-savebar{grid-column:1/-1;margin-top:16px}

@media(max-width:1350px){
  .qw-connection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qw-shop-catalogue .qw-shop-rules{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1050px){
  .ep-reglages__corps.ep-reglages__corps--parc-qweekle{padding-right:22px}
  .qw-guard-grid{grid-template-columns:1fr}
  .qw-shop-catalogue .qw-shop-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qw-shop-catalogue .qw-shop-products{grid-template-columns:1fr}
  .qw-shop-catalogue .qw-shop-rules{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .ep-reglages__corps.ep-reglages__corps--parc-qweekle{padding-left:14px;padding-right:14px}
  .qw-connection-grid{grid-template-columns:1fr}
  .qw-connection-card summary{align-items:flex-start}.qw-connection-card__main small{white-space:normal}
  .qw-guard-card{grid-template-columns:auto 34px minmax(0,1fr)}.qw-guard-card em{grid-column:3;justify-self:start}
  .qw-shop-catalogue .qw-shop-overview{grid-template-columns:1fr 1fr}
  .qw-shop-catalogue .qw-shop-tags{grid-template-columns:1fr}
  .qw-shop-catalogue .qw-shop-detail-head{grid-template-columns:1fr}.qw-shop-catalogue .qw-shop-detail-head>img{width:100%;height:180px}
  .qw-shop-catalogue .qw-shop-order-choice,.qw-shop-catalogue .qw-shop-rules{grid-template-columns:1fr}
}


/* v5.67.5 — Aperçu du chat : 2 colonnes sur grand écran, console sous le chat dès que la largeur devient insuffisante. */
.qw-chat-preview-grid{padding:16px 20px 24px;display:grid;grid-template-columns:minmax(360px,44%) minmax(0,56%);gap:16px;height:calc(100vh - 116px);min-height:620px}
.qw-chat-preview-pane,.qw-chat-console-pane{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.qw-chat-preview-head,.qw-chat-console-head{padding:12px 14px;border-bottom:1px solid var(--ep-ligne);display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:center}
.qw-chat-preview-head{padding:13px 15px}
.qw-chat-preview-intro,.qw-chat-console-intro{min-width:0}.qw-chat-preview-intro strong,.qw-chat-console-intro strong{display:block}.qw-chat-preview-intro .ep-faible,.qw-chat-console-intro .ep-faible{font-size:11.5px;line-height:1.35;margin-top:2px}
.qw-chat-preview-tools,.qw-chat-console-tools{display:flex;align-items:center;gap:8px;min-width:0}.qw-chat-preview-tools{justify-content:space-between}.qw-chat-console-tools{justify-content:flex-end;flex-wrap:wrap}
.qw-chat-preview-park{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:12px;white-space:nowrap}.qw-chat-preview-park .ep-select{min-width:180px;max-width:240px}.qw-chat-console-auto{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;white-space:nowrap}
#qwLabFrame{display:block}
.chat-test-badge{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--ep-attn-bord,#efcf91);background:var(--ep-attn-voile,#fff5df);color:var(--ep-attn,#9b650b);border-radius:999px;padding:3px 7px;font-size:9.5px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.chat-test-banner{margin:0 auto 10px;width:100%;max-width:860px;display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid var(--ep-attn-bord,#efcf91);border-radius:10px;background:var(--ep-attn-voile,#fff5df);color:var(--ep-texte-2);font-size:11.5px}
.chat-test-banner strong{color:var(--ep-attn,#9b650b);font-size:10px;letter-spacing:.07em;text-transform:uppercase}
@media(max-width:1280px){
  .qw-chat-preview-grid{grid-template-columns:1fr;height:auto;min-height:0;align-content:start}
  .qw-chat-preview-pane{min-height:680px}
  .qw-chat-console-pane{min-height:520px}
}
@media(max-width:640px){
  .qw-chat-preview-grid{padding:10px;gap:10px}
  .qw-chat-preview-pane{min-height:620px}
  .qw-chat-console-pane{min-height:440px}
  .qw-chat-preview-tools,.qw-chat-console-tools{align-items:stretch;flex-direction:column}
  .qw-chat-preview-park{margin-left:0;width:100%;display:grid;grid-template-columns:auto minmax(0,1fr)}
  .qw-chat-preview-park .ep-select{width:100%;min-width:0;max-width:none}
  .qw-chat-console-auto{align-self:flex-start}
}

/* v5.69.0.11 — multi-parcs : switch toujours visible dans le tableau */
.scx-qw-park-check.sc-switch{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;min-width:0!important}
.scx-qw-park-check.sc-switch input.ep-switch{display:inline-block!important;flex:0 0 auto!important;margin:0!important}
.scx-qw-park-check.sc-switch>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ══════════════════════════════════════════════════════════════════
   v5.69.0.91 — Chat opérateur : restauration de l'agencement
   La vue live utilise une grille stable et un en-tête en deux niveaux :
   identité / contexte d'un côté, actions de l'autre. Le fil reste borné.
   ══════════════════════════════════════════════════════════════════ */
.chat-console-layout{
  grid-template-columns:300px minmax(560px,1fr) 310px!important;
  height:calc(100vh - 132px);
  min-height:560px;
  overflow:hidden;
}
.chat-console-layout--visiteurs{grid-template-columns:340px minmax(0,1fr)!important}
.chat-console-layout>.conv-liste,
.chat-console-layout>.conv-lecture,
.chat-console-layout>#chatCtx{min-height:0;min-width:0}
.chat-console-layout .conv-liste{border-right:1px solid var(--ep-ligne)}
.chat-console-layout #chatCtx{background:var(--ep-surface);border-left:1px solid var(--ep-ligne);overflow-y:auto}

/* Entête conversation : ne jamais compresser le nom en colonne verticale. */
.chat-thread-header{padding:0!important;background:var(--ep-surface)!important}
.chat-thread-header__inner{padding:13px 18px 11px;display:grid;gap:10px;min-width:0}
.chat-thread-header__primary{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0}
.chat-thread-header__avatar{width:40px!important;height:40px!important;background:var(--ep-info)!important;color:#fff!important;font-size:13px!important;flex:none}
.chat-thread-header__identity{min-width:0;display:grid;gap:5px}
.chat-thread-header__title-row{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}
.chat-thread-header__title{font-size:16px!important;margin:0!important;line-height:1.18!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(360px,100%)}
.chat-thread-header__badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}
.chat-thread-header__badges #chatCycleEntete:empty{display:none}
.chat-thread-header__meta{display:flex;align-items:center;gap:7px 11px;flex-wrap:wrap;min-width:0;font-size:11.5px;color:var(--ep-texte-3)}
.chat-thread-header__presence{font-weight:750;white-space:nowrap}.chat-thread-header__presence.is-online{color:var(--ep-ok)}.chat-thread-header__presence.is-offline{color:var(--ep-texte-3)}
.chat-thread-header__meta-item{display:inline-flex;align-items:center;gap:5px;min-width:0;max-width:290px}.chat-thread-header__meta-item>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-thread-header__rating{color:var(--ep-attn);font-weight:750;white-space:nowrap}
.chat-thread-header__language{justify-self:end;align-self:center;min-width:0}
.chat-thread-header__language label{display:flex;align-items:center;gap:6px;font-size:10.5px;color:var(--ep-texte-3);white-space:nowrap}
.chat-thread-header__language label>span{font-weight:700}
.chat-thread-header__language select{height:32px;max-width:210px;border:1px solid var(--ep-ligne);border-radius:8px;background:var(--ep-surface);padding:0 27px 0 9px;font:700 11.5px/1 var(--ep-f-ui);color:var(--ep-texte);outline:0}
.chat-thread-header__language select:focus{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.chat-thread-header__language-alert{display:inline-flex;margin-top:5px;font-size:9.5px;font-weight:800;color:var(--ep-alerte);background:var(--ep-alerte-voile);border:1px solid var(--ep-alerte-bord);padding:4px 7px;border-radius:999px;white-space:nowrap}
.chat-thread-header__actions{margin-left:51px!important;display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important}
.chat-thread-header__actions .ep-b{height:32px;white-space:nowrap}
.chat-thread-header__actions #chatResoudre{margin-left:auto}

/* Fil et composer alignés sur la même colonne, un peu plus respirante. */
.chat-console-layout .conv-lec__c{padding:14px 18px 16px}
.chat-console-layout #chatMsgs{gap:11px!important}
.chat-console-layout .chat-msg{max-width:74%}
.chat-console-layout .chat-composer{padding:10px 18px 12px!important}
.chat-console-layout .chat-composer__inner{box-shadow:0 5px 18px rgba(43,29,20,.07)}
.chat-console-layout .chat-test-banner{max-width:920px;margin-bottom:11px}
.chat-console-layout #chatFrappeVisiteur{min-height:12px!important;padding-top:4px!important}

/* La file conserve des lignes lisibles sans absorber trop de largeur. */
.chat-console-layout .conv-liste__h{padding:12px 13px 10px}
.chat-console-layout .conv-mail{padding:10px 11px;grid-template-columns:14px minmax(0,1fr);gap:7px}
.chat-console-layout .conv-mail__pt{width:7px;height:7px;margin-top:5px}
.chat-console-layout .conv-mail__de{font-size:12.5px}
.chat-console-layout .conv-mail__x{font-size:11.5px}

/* À largeur intermédiaire, on protège d'abord le fil et masque le contexte. */
@media(max-width:1460px){
  .chat-console-layout:not(.chat-console-layout--visiteurs){grid-template-columns:286px minmax(540px,1fr)!important}
  .chat-console-layout:not(.chat-console-layout--visiteurs)>#chatCtx{display:none}
}
@media(max-width:1120px){
  .chat-console-layout,.chat-console-layout--visiteurs{grid-template-columns:260px minmax(0,1fr)!important}
  .chat-thread-header__primary{grid-template-columns:38px minmax(0,1fr)}
  .chat-thread-header__language{grid-column:2;justify-self:start}
  .chat-thread-header__actions{margin-left:49px!important}
  .chat-thread-header__actions #chatResoudre{margin-left:0}
}
@media(max-width:820px){
  .chat-console-layout,.chat-console-layout--visiteurs{grid-template-columns:1fr!important;height:auto;min-height:0;overflow:visible}
  .chat-console-layout>.conv-liste{display:none}
  .chat-thread-header__inner{padding:11px 12px 10px}
  .chat-thread-header__primary{grid-template-columns:36px minmax(0,1fr)}
  .chat-thread-header__avatar{width:36px!important;height:36px!important}
  .chat-thread-header__language{grid-column:1/-1;justify-self:stretch}
  .chat-thread-header__language label{width:100%}.chat-thread-header__language select{flex:1;max-width:none}
  .chat-thread-header__actions{margin-left:0!important;overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:2px}
  .chat-thread-header__actions .ep-b{flex:0 0 auto}
  .chat-console-layout .conv-lec__c{padding:12px 10px}
  .chat-console-layout .chat-msg{max-width:88%}
  .chat-console-layout .chat-composer{padding:8px!important}
}

/* ══════════════════════════════════════════════════════════════════
   v5.69.0.96 — Inbox Chat : recherche, filtres, lecture et rappel
   ══════════════════════════════════════════════════════════════════ */
.chat-inbox-tools{padding:9px 10px 10px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface);display:grid;gap:8px}
.chat-inbox-search{height:34px;border:1px solid var(--ep-ligne);border-radius:9px;background:var(--ep-surface-2);display:grid;grid-template-columns:18px minmax(0,1fr) 22px;align-items:center;gap:5px;padding:0 7px;color:var(--ep-texte-3);transition:border-color .15s,box-shadow .15s,background .15s}
.chat-inbox-search:focus-within{background:#fff;border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.chat-inbox-search input{min-width:0;width:100%;height:30px;border:0!important;box-shadow:none!important;outline:0!important;background:transparent!important;padding:0!important;font:550 11.5px/1 var(--ep-f-ui)!important;color:var(--ep-texte)!important}
.chat-inbox-search input::placeholder{color:var(--ep-texte-3)}
.chat-inbox-search>button{width:22px;height:22px;border:0;border-radius:6px;background:transparent;color:var(--ep-texte-3);cursor:pointer;font-size:16px;line-height:1}.chat-inbox-search>button:hover{background:var(--ep-surface-3);color:var(--ep-texte)}
.chat-inbox-filters{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.chat-inbox-filters>button{height:25px;border:1px solid var(--ep-ligne);border-radius:999px;background:var(--ep-surface);color:var(--ep-texte-3);padding:0 8px;display:inline-flex;align-items:center;gap:4px;font:700 9.5px/1 var(--ep-f-ui);cursor:pointer;white-space:nowrap}
.chat-inbox-filters>button:hover{border-color:var(--ep-ligne-forte);color:var(--ep-texte)}
.chat-inbox-filters>button.on{border-color:var(--ep-corail-bord, #F0C9BC);background:var(--ep-corail-voile);color:var(--ep-corail-fonce)}
.chat-inbox-filters>.chat-inbox-reset{border-color:transparent;background:transparent;color:var(--ep-corail);margin-left:auto;padding-inline:5px}
.chat-console-layout .conv-mail{padding-right:10px}
.chat-row-read{position:absolute;right:8px;bottom:8px;width:25px;height:25px;display:grid;place-items:center;border:1px solid var(--ep-ligne);border-radius:7px;background:var(--ep-surface);color:var(--ep-texte-3);cursor:pointer;opacity:0;transform:translateY(2px);transition:opacity .12s,transform .12s,border-color .12s,color .12s;z-index:3}
.conv-mail:hover .chat-row-read,.chat-row-read:focus-visible,.conv-mail:not(.lu) .chat-row-read{opacity:1;transform:none}
.chat-row-read:hover{border-color:var(--ep-corail-bord, #F0C9BC);color:var(--ep-corail-fonce);background:var(--ep-corail-voile)}
.chat-console-layout .conv-mail__m{padding-right:29px}
.chat-list-assignee{font-size:10.5px;color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:125px}
.chat-list-piece{width:19px;height:19px;display:grid;place-items:center;border-radius:6px;background:var(--ep-surface-3);color:var(--ep-texte-3)}
.chat-list-unread{margin-left:auto;min-width:18px;height:18px;border-radius:999px;background:var(--ep-corail);color:#fff;font-size:10px;font-weight:800;display:grid;place-items:center;padding:0 5px}
.chat-snooze-chip{display:inline-flex;align-items:center;gap:4px;min-height:20px;padding:3px 7px;border-radius:999px;background:var(--ep-info-voile);color:var(--ep-info);font:750 9.5px/1 var(--ep-f-data);white-space:nowrap}
.conv-mail.is-snoozed{background:color-mix(in srgb,var(--ep-info-voile) 40%,var(--ep-surface))}.conv-mail.is-snoozed .conv-mail__pt{background:var(--ep-info)}
.chat-snooze-wrap{position:relative;display:inline-flex}
.chat-snooze-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:40;min-width:185px;padding:6px;background:var(--ep-surface);border:1px solid var(--ep-ligne);border-radius:10px;box-shadow:var(--ep-om-2)}
.chat-snooze-menu[hidden]{display:none!important}
.chat-snooze-menu button{width:100%;height:32px;border:0;border-radius:7px;background:transparent;color:var(--ep-texte-2);text-align:left;padding:0 9px;font:650 11.5px/1 var(--ep-f-ui);cursor:pointer}
.chat-snooze-menu button:hover{background:var(--ep-surface-2);color:var(--ep-texte)}
.chat-toast-action{cursor:pointer;align-items:flex-start}.chat-toast-action .toast__body{display:grid;gap:3px}.chat-toast-action .toast__body>span{font-size:11.5px;color:var(--ep-texte-2);line-height:1.35}.chat-toast-action__open{justify-self:start;margin-top:4px;border:0;background:transparent;color:var(--ep-corail-fonce);padding:0;font:750 11px/1.2 var(--ep-f-ui);cursor:pointer}.chat-toast-action__open:hover{text-decoration:underline}
@media(max-width:1120px){.chat-inbox-filters>button{padding-inline:7px}.chat-list-assignee{max-width:105px}}


/* v5.69.0.97 — chargement progressif des historiques Chat. */
.chat-list-more{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 10px 18px;border-top:1px solid var(--ep-ligne);background:var(--ep-surface)}
.chat-list-more small{font-size:10px;color:var(--ep-texte-3)}

/* ══════════════════════════════════════════════════════════════════
   v5.69.0.99 — Inbox Chat : supervision équipe, SLA & densité
   ══════════════════════════════════════════════════════════════════ */
.chat-inbox-filters>.chat-inbox-density{margin-left:auto;border-style:dashed;color:var(--ep-texte-2)}
.chat-inbox-filters>.chat-inbox-density+.chat-inbox-reset{margin-left:0}
.chat-console-layout.is-compact .conv-mail{padding:7px 10px;gap:6px}
.chat-console-layout.is-compact .conv-mail__x{margin-top:-1px;font-size:11px}
.chat-console-layout.is-compact .conv-mail__m{margin-top:3px;gap:4px}
.chat-console-layout.is-compact .conv-mail__m .ep-et,
.chat-console-layout.is-compact .conv-mail__m>span{min-height:17px;padding-top:2px;padding-bottom:2px}
.conv-mail.sla-warn{box-shadow:inset 3px 0 0 var(--ep-attn)}
.conv-mail.sla-over{box-shadow:inset 3px 0 0 var(--ep-alerte);background:color-mix(in srgb,var(--ep-alerte-voile) 35%,var(--ep-surface))}
.conv-mail.sla-over.on{background:color-mix(in srgb,var(--ep-corail-voile) 65%,var(--ep-alerte-voile))}

.chat-supervision-shell{flex:1;min-height:0;overflow:auto;background:var(--ep-surface-2);padding:16px 18px 28px}
.chat-supervision{max-width:1440px;margin:0 auto;display:grid;gap:14px}
.chat-supervision-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.chat-supervision-kpis article{background:var(--ep-surface);border:1px solid var(--ep-ligne);border-radius:12px;padding:14px 15px;box-shadow:var(--ep-om-1);display:grid;gap:3px;min-width:0}
.chat-supervision-kpis article>span{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ep-texte-3)}
.chat-supervision-kpis article>b{font:800 28px/1.05 var(--ep-f-titre);color:var(--ep-texte)}
.chat-supervision-kpis article>small{font-size:11px;color:var(--ep-texte-3)}
.chat-supervision-kpis article.is-alert{border-color:var(--ep-alerte-bord);background:color-mix(in srgb,var(--ep-alerte-voile) 38%,var(--ep-surface))}
.chat-supervision-kpis article.is-alert>b{color:var(--ep-alerte)}
.chat-supervision-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:14px;align-items:start}
.chat-supervision-panel{background:var(--ep-surface);border:1px solid var(--ep-ligne);border-radius:12px;box-shadow:var(--ep-om-1);overflow:hidden;min-width:0}
.chat-supervision-panel>header{padding:13px 15px 11px;border-bottom:1px solid var(--ep-ligne);display:flex;align-items:flex-start;gap:12px;justify-content:space-between;background:linear-gradient(180deg,var(--ep-surface),var(--ep-surface-2))}
.chat-supervision-panel>header h2{margin:0;font:800 14px/1.2 var(--ep-f-titre);color:var(--ep-texte)}
.chat-supervision-panel>header p{margin:3px 0 0;font-size:10.5px;line-height:1.35;color:var(--ep-texte-3)}
.chat-supervision-panel>header>span{min-width:27px;height:23px;padding:0 7px;border-radius:999px;background:var(--ep-surface-3);display:grid;place-items:center;font:800 10.5px/1 var(--ep-f-data);color:var(--ep-texte-2)}
.chat-supervision-waits{display:grid}
.chat-supervision-wait{width:100%;border:0;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface);padding:11px 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;text-align:left;cursor:pointer;color:inherit}
.chat-supervision-wait:last-child{border-bottom:0}.chat-supervision-wait:hover{background:var(--ep-surface-2)}
.chat-supervision-wait.is-over{box-shadow:inset 3px 0 0 var(--ep-alerte);background:color-mix(in srgb,var(--ep-alerte-voile) 25%,var(--ep-surface))}
.chat-supervision-wait__main{display:grid;gap:2px;min-width:0}.chat-supervision-wait__main b{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-supervision-wait__main small{font-size:10.5px;color:var(--ep-texte-3)}
.chat-supervision-wait__main em{font-style:normal;font-size:11px;color:var(--ep-texte-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.chat-supervision-wait__side{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap;max-width:250px}.chat-supervision-open{font-size:10px;font-weight:800;color:var(--ep-corail-fonce);white-space:nowrap;margin-left:3px}
.chat-supervision-agents{padding:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.chat-supervision-agent{border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface);padding:10px;display:grid;gap:9px;min-width:0}
.chat-supervision-agent__head{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:8px;align-items:center;min-width:0}.chat-supervision-agent__head>div{min-width:0}.chat-supervision-agent__head b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-supervision-agent__head small{display:block;font-size:9.5px;color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.chat-supervision-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--ep-info);color:#fff;font-size:10.5px;font-weight:800;overflow:hidden}.chat-supervision-avatar--photo{background:var(--ep-surface-2)}.chat-supervision-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.chat-supervision-presence{font-size:9px;font-weight:800;color:var(--ep-texte-3);white-space:nowrap}.chat-supervision-presence.is-online{color:var(--ep-ok)}
.chat-supervision-agent__stats{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.chat-supervision-agent__stats>span{min-height:20px;padding:3px 6px;border-radius:6px;background:var(--ep-surface-2);font-size:9.5px;color:var(--ep-texte-3)}.chat-supervision-agent__stats b{color:var(--ep-texte);font-family:var(--ep-f-data)}.chat-supervision-agent__stats .is-libre,.chat-supervision-agent__stats .is-ok{background:var(--ep-ok-voile);color:var(--ep-ok);font-weight:800}.chat-supervision-agent__stats .is-attn{background:var(--ep-attn-voile);color:var(--ep-attn);font-weight:800}.chat-supervision-agent__stats .is-alerte{background:var(--ep-alerte-voile);color:var(--ep-alerte);font-weight:800}
.chat-supervision-agent__threads{display:grid;gap:3px}.chat-supervision-agent__threads button{width:100%;border:0;border-radius:6px;background:var(--ep-surface-2);padding:6px 7px;text-align:left;cursor:pointer;min-width:0}.chat-supervision-agent__threads button:hover{background:var(--ep-corail-voile)}.chat-supervision-agent__threads span,.chat-supervision-agent__threads small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-supervision-agent__threads span{font-size:10px;font-weight:750;color:var(--ep-texte-2)}.chat-supervision-agent__threads small{font-size:9px;color:var(--ep-texte-3);margin-top:1px}.chat-supervision-agent__empty{font-size:9.5px;color:var(--ep-texte-3);padding:5px 1px}
.chat-supervision-panel--parks{overflow:visible}.chat-supervision-parks{padding:10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.chat-supervision-park{border:1px solid var(--ep-ligne);border-radius:9px;padding:10px 11px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--ep-surface)}.chat-supervision-park b{font-size:11.5px}.chat-supervision-park small{display:block;font-size:9.5px;color:var(--ep-texte-3);margin-top:2px}.chat-supervision-park__nums{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.chat-supervision-park__nums span{font-size:9.5px;padding:4px 6px;border-radius:6px;background:var(--ep-surface-2);color:var(--ep-texte-3);white-space:nowrap}.chat-supervision-park__nums .is-alert{background:var(--ep-alerte-voile);color:var(--ep-alerte);font-weight:800}
.chat-supervision-clear{padding:24px;text-align:center;color:var(--ep-texte-3);font-size:11px}.chat-supervision-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:9.5px;color:var(--ep-texte-3);padding:0 2px}
@media(max-width:1250px){.chat-supervision-grid{grid-template-columns:1fr}.chat-supervision-agents{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:920px){.chat-supervision-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-supervision-agents{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.chat-supervision-shell{padding:10px}.chat-supervision-kpis{grid-template-columns:1fr 1fr}.chat-supervision-agents{grid-template-columns:1fr}.chat-supervision-wait{grid-template-columns:1fr}.chat-supervision-wait__side{justify-content:flex-start;max-width:none}.chat-inbox-filters>.chat-inbox-density{margin-left:0}.chat-inbox-filters>.chat-inbox-reset{margin-left:auto}}

/* ══════════════════════════════════════════════════════════════════
   v5.69.0.100 — Conversation unifiée : visiteurs + composer discret
   ══════════════════════════════════════════════════════════════════ */
.chat-live-visitor{display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 13px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface)}
.chat-live-visitor:hover{background:var(--ep-surface-2)}
.chat-live-visitor__dot{width:8px;height:8px;border-radius:50%;background:var(--ep-ok);align-self:start;margin-top:5px}
.chat-live-visitor__body{min-width:0;display:grid;gap:3px}
.chat-live-visitor__title{display:flex;align-items:center;gap:6px;min-width:0;font:750 12.5px/1.2 var(--ep-f-ui);color:var(--ep-texte)}
.chat-live-visitor__title .ep-et{transform:scale(.9);transform-origin:left center}
.chat-live-visitor__meta,.chat-live-visitor__state{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:500 10.8px/1.25 var(--ep-f-ui);color:var(--ep-texte-3)}
.chat-live-visitor__state{color:var(--ep-texte-2);font-weight:650}
.chat-live-visitor__actions{display:flex;align-items:center;gap:6px}.chat-live-visitor__actions .ep-b{white-space:nowrap}
.chat-live-visitor__history{justify-self:start;border:0;background:transparent;padding:0;color:var(--ep-info);font:700 10.5px/1.2 var(--ep-f-ui);cursor:pointer}.chat-live-visitor__history:hover{text-decoration:underline}
.chat-visitor-history{height:100%;overflow:auto;background:var(--ep-surface-2)}
.chat-visitor-history__head{position:sticky;top:0;z-index:2;display:flex;align-items:center;padding:16px 18px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface)}
.chat-visitor-history__head strong{display:block;font-size:15px}.chat-visitor-history__head small{display:block;margin-top:3px;color:var(--ep-texte-3);font-size:11px}
.chat-visitor-history__list{max-width:760px;margin:0 auto;padding:16px;display:grid;gap:8px}
.chat-visitor-history__row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;padding:11px 12px;border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface);cursor:pointer;color:var(--ep-texte)}
.chat-visitor-history__row:hover{border-color:var(--ep-ligne-forte);box-shadow:var(--ep-om-1)}
.chat-visitor-history__row>span{min-width:0;display:grid;gap:4px}.chat-visitor-history__row b{display:flex;align-items:center;gap:6px;font-size:11px}.chat-visitor-history__row b em{font-style:normal;color:var(--ep-violet);font-size:9.5px;text-transform:uppercase;letter-spacing:.04em}.chat-visitor-history__row small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;color:var(--ep-texte-2)}.chat-visitor-history__row i{font-style:normal;font-size:10.5px;color:var(--ep-texte-3)}.chat-visitor-history__row time{flex:0 0 auto;font-size:10.5px;color:var(--ep-texte-3)}

.chat-composer__inline-tools{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;flex-wrap:wrap}
.chat-composer__tool-link{border:0;background:transparent;padding:3px 1px;color:var(--ep-texte-3);font:650 10.8px/1 var(--ep-f-ui);cursor:pointer;white-space:nowrap}
.chat-composer__tool-link:hover{color:var(--ep-corail-fonce);text-decoration:underline;text-underline-offset:2px}
.chat-composer__tool-sep{color:var(--ep-ligne-forte);font-size:11px;user-select:none}
.chat-com-tools--inline{display:inline-flex!important;flex:0 1 auto!important;min-width:0!important}
.chat-com-tools--inline select{appearance:auto!important;width:auto!important;min-width:0!important;max-width:150px!important;height:auto!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:2px 2px!important;color:var(--ep-texte-3)!important;font:650 10.8px/1 var(--ep-f-ui)!important;cursor:pointer}
.chat-com-tools--inline select:hover,.chat-com-tools--inline select:focus{color:var(--ep-corail-fonce)!important;box-shadow:none!important;outline:0!important}
.chat-composer__footer--minimal{justify-content:flex-end;padding-top:0}.chat-composer__footer--minimal .chat-composer__send{margin-left:0!important}
@media(max-width:700px){.chat-live-visitor{grid-template-columns:9px minmax(0,1fr)}.chat-live-visitor__actions{grid-column:2}.chat-composer__editor-foot{align-items:flex-end;flex-direction:column}.chat-composer__hint{align-self:flex-start}.chat-composer__inline-tools{width:100%;justify-content:flex-end}.chat-composer__footer--minimal{flex-direction:row!important;align-items:center!important}.chat-composer__footer--minimal .chat-composer__send{width:auto!important;margin-left:auto!important}}
/* v5.69.0.101 — Composer discret mais identifiable + apprentissage IA */
.chat-composer__tool-link{display:inline-flex;align-items:center;gap:4px}
.chat-composer__tool-link .ep-ic,.chat-com-tools--modeles>.ep-ic{flex:0 0 auto;opacity:.88}
.chat-com-tools--modeles{align-items:center;gap:2px;color:var(--ep-texte-3)}
.chat-com-tools--modeles:hover{color:var(--ep-corail-fonce)}
.chat-msg__learn-wrap{padding:0 4px;text-align:right}
.chat-msg__learn{border:0;background:transparent;padding:2px 0;color:var(--ep-violet);font:650 10.5px/1.25 var(--ep-f-ui);cursor:pointer}
.chat-msg__learn:hover{text-decoration:underline;text-underline-offset:2px}
.chat-msg__learn.is-learned,.chat-msg__learn:disabled{color:var(--ep-ok);cursor:default;text-decoration:none;opacity:.9}
/* v5.69.0.101 — IA Studio */
.ep-ch{display:grid;gap:5px;min-width:0;color:var(--ep-texte-2);font:600 12px/1.35 var(--ep-f-ui)}
.ep-ch>span{font-weight:750;color:var(--ep-texte)}
.ep-ch>small{font-weight:500;color:var(--ep-texte-3);line-height:1.4}
.ep-ch input[type="range"]{width:100%;accent-color:var(--ep-corail)}
@media(max-width:760px){#iaStudioDetail,#iaStudioTon,#iaStudioAdresse,#iaStudioEmojis{width:100%}}

/* v5.69.0.102 — IA Studio : layout large écran + responsive + composants harmonisés */
.ep-reglages__corps--ia-studio{
  max-width:none!important;
  width:100%;
  box-sizing:border-box;
  padding:24px clamp(18px,2.2vw,38px) 52px;
}
.ep-reglages__corps--ia-studio .ep-reg-tete{margin-bottom:14px}
.ep-reglages__corps--ia-studio .ep-reg-tete p{max-width:1040px}
.ep-reglages__corps--ia-studio > .ep-msg{margin-bottom:18px;max-width:1180px}

.ia-studio-dashboard{
  display:grid;
  grid-template-columns:minmax(0,1.28fr) minmax(390px,.72fr);
  gap:18px;
  align-items:start;
  width:100%;
}
.ia-studio-dashboard__main,.ia-studio-dashboard__side{min-width:0}
.ia-studio-dashboard__side{display:grid;gap:18px}
.ia-studio-dashboard .ep-bloc-r{margin-bottom:0}

.ia-studio-knowledge-grid{
  display:grid;
  grid-template-columns:minmax(420px,.82fr) minmax(0,1.18fr);
  gap:18px;
  align-items:start;
  margin-top:18px;
}
.ia-studio-knowledge-grid>.ep-bloc-r{margin-bottom:0;min-width:0}
.ia-studio-secondary{margin-top:18px}

.ep-reglages__corps--ia-studio .ep-bloc-r{
  border-color:var(--ep-ligne);
  box-shadow:0 1px 2px rgba(43,29,20,.035),0 8px 26px rgba(43,29,20,.025);
}
.ep-reglages__corps--ia-studio .ep-bloc-r__t{padding:16px 18px 14px}
.ep-reglages__corps--ia-studio .ep-bloc-r__t h3{font-size:15.5px;line-height:1.25}
.ep-reglages__corps--ia-studio .ep-bloc-r__t .ep-s{max-width:760px;line-height:1.5}
.ep-reglages__corps--ia-studio .ep-bloc-r__c{padding:16px 18px 18px}

/* Tous les champs de l'IA Studio utilisent le même langage visuel que les réglages. */
.ep-reglages__corps--ia-studio input:not([type="checkbox"]):not([type="range"]),
.ep-reglages__corps--ia-studio select,
.ep-reglages__corps--ia-studio textarea{
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid var(--ep-ligne-forte);
  border-radius:var(--ep-r-1);
  background:var(--ep-surface);
  color:var(--ep-texte);
  padding:9px 11px;
  font:500 13px/1.4 var(--ep-f-ui);
  outline:0;
}
.ep-reglages__corps--ia-studio select{height:38px;padding-right:34px}
.ep-reglages__corps--ia-studio textarea{resize:vertical;line-height:1.5;min-height:74px}
.ep-reglages__corps--ia-studio input:not([type="checkbox"]):not([type="range"]):focus,
.ep-reglages__corps--ia-studio select:focus,
.ep-reglages__corps--ia-studio textarea:focus{
  border-color:var(--ep-corail);
  box-shadow:0 0 0 3px var(--ep-corail-voile);
}
.ep-reglages__corps--ia-studio input::placeholder,
.ep-reglages__corps--ia-studio textarea::placeholder{color:var(--ep-texte-3);opacity:.86}

.ia-studio-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.ia-studio-initiative,.ia-studio-rules{margin-top:16px}
.ia-studio-rules textarea{min-height:154px}

/* Range natif remplacé visuellement par un contrôle cohérent. */
.ep-reglages__corps--ia-studio input[type="range"]{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  height:18px;
  margin:3px 0 0;
  background:transparent;
  cursor:pointer;
}
.ep-reglages__corps--ia-studio input[type="range"]::-webkit-slider-runnable-track{
  height:5px;border-radius:999px;background:var(--ep-ligne-forte)
}
.ep-reglages__corps--ia-studio input[type="range"]::-webkit-slider-thumb{
  appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:50%;
  margin-top:-6.5px;border:3px solid var(--ep-surface);background:var(--ep-corail);
  box-shadow:0 0 0 1px var(--ep-corail),0 1px 3px rgba(43,29,20,.18)
}
.ep-reglages__corps--ia-studio input[type="range"]::-moz-range-track{
  height:5px;border:0;border-radius:999px;background:var(--ep-ligne-forte)
}
.ep-reglages__corps--ia-studio input[type="range"]::-moz-range-thumb{
  width:14px;height:14px;border-radius:50%;border:3px solid var(--ep-surface);background:var(--ep-corail);
  box-shadow:0 0 0 1px var(--ep-corail),0 1px 3px rgba(43,29,20,.18)
}

.ia-studio-switchline{
  display:flex;align-items:center;gap:12px;margin-top:15px;padding:11px 12px;
  border:1px solid var(--ep-ligne);border-radius:var(--ep-r-1);background:var(--ep-surface-2);
  cursor:pointer
}
.ia-studio-switchline>span{display:grid;gap:2px;min-width:0}
.ia-studio-switchline b{font-size:12.5px;color:var(--ep-texte)}
.ia-studio-switchline small{font-size:11px;line-height:1.35;color:var(--ep-texte-3)}
.ia-studio-switchline input[type="checkbox"].ep-switch{
  appearance:none;-webkit-appearance:none;position:relative;display:inline-block;flex:0 0 auto;
  width:44px;height:26px;padding:0;margin:0;border:0;border-radius:999px;background:var(--ep-ligne-forte);cursor:pointer
}
.ia-studio-switchline input[type="checkbox"].ep-switch::after{
  content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;
  box-shadow:0 1px 3px rgba(43,29,20,.28)
}
.ia-studio-switchline input[type="checkbox"].ep-switch:checked{background:var(--ep-ok)}
.ia-studio-switchline input[type="checkbox"].ep-switch:checked::after{left:21px}
.ia-studio-switchline input[type="checkbox"].ep-switch:focus-visible{outline:2px solid var(--ep-corail);outline-offset:2px}

.ia-studio-savebar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--ep-ligne)}
.ia-studio-savebar .ep-faible{font-size:11.5px}

.ia-studio-example-compose{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:9px}
.ia-studio-example-meta{display:grid;grid-template-columns:minmax(125px,.55fr) minmax(160px,1fr) auto;gap:8px;align-items:center;margin-top:8px}
.ia-studio-test-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.ia-studio-test-head #iaStudioRunAll{margin-left:auto}
.ia-studio-test-head .ep-faible{font-size:11px}
.ia-studio-test-compose{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,180px);gap:8px}
.ia-studio-test-expected{margin-top:8px}
.ia-studio-test-add{margin-top:8px}
.ia-studio-list{margin-top:12px;min-width:0}

/* Les éléments injectés après chargement (exemples/tests) reçoivent aussi le design system. */
#iaStudioExamples>div,#iaStudioTests>div{display:grid!important;gap:8px!important}
#iaStudioExamples article,#iaStudioTests article{
  border:1px solid var(--ep-ligne)!important;
  border-radius:var(--ep-r-1)!important;
  padding:11px 12px!important;
  background:var(--ep-surface-2)!important;
  min-width:0;
}
#iaStudioExamples article:hover,#iaStudioTests article:hover{border-color:var(--ep-ligne-forte)!important}
#iaStudioExamples article b,#iaStudioTests article b{line-height:1.35}
#iaStudioExamples article .ep-b,#iaStudioTests article .ep-b{flex:0 0 auto}

/* Base / sources : sur grand écran la description reste utile sans manger la zone d'édition. */
.ia-studio-knowledge-grid .ep-reg-l{grid-template-columns:minmax(150px,210px) minmax(0,1fr);gap:18px}
.ia-studio-knowledge-grid .ep-reg-l input[style*="min-width:260px"]{min-width:0!important}
.ia-studio-knowledge-grid #iaWebSources>div{min-width:0}
.ia-studio-knowledge-grid [data-ia-web-pages],
.ia-studio-knowledge-grid [data-ia-web-reindex],
.ia-studio-knowledge-grid [data-ia-web-delete]{white-space:nowrap}

/* La section Avis/Réclamations garde une largeur confortable sur desktop. */
.ia-studio-secondary .ep-reg-l{grid-template-columns:minmax(190px,250px) minmax(0,1fr)}

@media(max-width:1480px){
  .ia-studio-dashboard{grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr)}
  .ia-studio-knowledge-grid{grid-template-columns:1fr}
}
@media(max-width:1180px){
  .ep-reglages__corps--ia-studio{padding-right:22px;padding-left:22px}
  .ia-studio-dashboard{grid-template-columns:1fr}
  .ia-studio-dashboard__side{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ia-studio-dashboard__side>.ep-bloc-r{min-width:0}
}
@media(max-width:900px){
  .ia-studio-dashboard__side{grid-template-columns:1fr}
  .ia-studio-control-grid,.ia-studio-example-compose{grid-template-columns:1fr}
  .ia-studio-example-meta{grid-template-columns:1fr 1fr}
  .ia-studio-example-meta .ep-b{grid-column:1/-1;justify-self:start}
  .ia-studio-test-compose{grid-template-columns:1fr}
  .ia-studio-knowledge-grid .ep-reg-l,.ia-studio-secondary .ep-reg-l{grid-template-columns:1fr;gap:8px}
}
@media(max-width:640px){
  .ep-reglages__corps--ia-studio{padding:14px 10px 34px!important}
  .ep-reglages__corps--ia-studio .ep-reg-tete{margin-bottom:12px}
  .ep-reglages__corps--ia-studio .ep-reg-tete h2{font-size:19px}
  .ep-reglages__corps--ia-studio .ep-reg-tete p{font-size:12.5px;line-height:1.5}
  .ia-studio-dashboard,.ia-studio-dashboard__side,.ia-studio-knowledge-grid{gap:12px}
  .ia-studio-knowledge-grid,.ia-studio-secondary{margin-top:12px}
  .ep-reglages__corps--ia-studio .ep-bloc-r{border-radius:10px;margin-bottom:0}
  .ep-reglages__corps--ia-studio .ep-bloc-r__t{padding:13px 13px 11px}
  .ep-reglages__corps--ia-studio .ep-bloc-r__t h3{font-size:14px}
  .ep-reglages__corps--ia-studio .ep-bloc-r__t .ep-s{font-size:11.5px}
  .ep-reglages__corps--ia-studio .ep-bloc-r__c{padding:13px}
  .ia-studio-control-grid{gap:11px}
  .ia-studio-example-meta{grid-template-columns:1fr}
  .ia-studio-example-meta .ep-b{grid-column:auto;width:100%}
  .ia-studio-test-head{align-items:flex-start}
  .ia-studio-test-head #iaStudioRunAll{margin-left:0;width:100%}
  .ia-studio-savebar .ep-b,.ia-studio-test-add{width:100%;justify-content:center}
  .ia-studio-switchline{align-items:flex-start}
  .ia-studio-knowledge-grid .ep-reg-l,.ia-studio-secondary .ep-reg-l{padding:13px 0}
  .ia-studio-knowledge-grid .ep-reg-l>div:nth-child(2)>div[style*="display:flex"]{display:grid!important;grid-template-columns:1fr}
  .ia-studio-knowledge-grid .ep-reg-l>div:nth-child(2)>div[style*="display:flex"] .ep-b{width:100%;justify-content:center}
}

/* v5.69.0.103 — Assistant IA séparé : Réglages / Connaissances + documents */
.ia-studio-mode--settings .ia-knowledge-zone{display:none!important}
.ia-studio-mode--knowledge .ia-settings-zone{display:none!important}
.ia-studio-mode--settings .ia-studio-dashboard{grid-template-columns:minmax(0,1180px);justify-content:start}
.ia-studio-mode--knowledge .ia-studio-dashboard{grid-template-columns:1fr}
.ia-studio-mode--knowledge .ia-studio-dashboard__side{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ia-studio-mode--knowledge .ia-studio-dashboard__side>.ep-bloc-r{margin:0;min-width:0}
.ia-studio-switch{display:inline-flex;gap:4px;padding:4px;margin:0 0 18px;border:1px solid var(--ep-ligne);border-radius:11px;background:var(--ep-surface-2)}
.ia-studio-switch a{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:8px;color:var(--ep-texte-2);font:700 12px/1 var(--ep-f-ui);text-decoration:none}
.ia-studio-switch a:hover{color:var(--ep-texte);background:var(--ep-surface)}
.ia-studio-switch a.is-active{color:var(--ep-texte);background:var(--ep-surface);box-shadow:0 1px 3px rgba(43,29,20,.09)}
.ia-studio-documents-span{grid-column:1/-1;min-width:0}
.ia-studio-documents-span>.ep-bloc-r{margin-bottom:0}
.ia-doc-manager{display:grid;gap:12px}
.ia-doc-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--ep-ligne)}
.ia-doc-toolbar>div:first-child{display:grid;gap:3px;min-width:0}
.ia-doc-toolbar strong{font-size:13px;color:var(--ep-texte)}
.ia-doc-toolbar span{font-size:11.5px;line-height:1.4;color:var(--ep-texte-3)}
.ia-doc-toolbar__actions{display:flex;gap:7px;flex:0 0 auto}
.ia-doc-list{display:grid;gap:8px}
.ia-doc-card{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface-2)}
.ia-doc-card__icon{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:var(--ep-surface);color:var(--ep-violet);border:1px solid var(--ep-ligne)}
.ia-doc-card__body{display:grid;gap:3px;min-width:0}
.ia-doc-card__title{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}
.ia-doc-card__title strong{font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(620px,62vw)}
.ia-doc-card__body>span,.ia-doc-card__body>small{font-size:10.5px;color:var(--ep-texte-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ia-doc-card__body>em{font-size:10.5px;font-style:normal;color:var(--ep-alerte);line-height:1.35}
.ia-doc-card__actions{display:flex;gap:5px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.ia-doc-foot{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;color:var(--ep-texte-3);font-size:11px}
.ia-doc-empty{padding:28px 14px!important}
.ia-doc-upload{display:grid;gap:12px}
.ia-doc-drop{min-height:130px}
.ia-library-pick{display:grid;gap:7px;max-height:60vh;overflow:auto}
.ia-library-pick__row{display:grid;grid-template-columns:32px minmax(0,1fr) 18px;align-items:center;gap:9px;width:100%;padding:10px;border:1px solid var(--ep-ligne);border-radius:9px;background:var(--ep-surface);color:var(--ep-texte);text-align:left;cursor:pointer}
.ia-library-pick__row:hover{border-color:var(--ep-ligne-forte);background:var(--ep-surface-2)}
.ia-library-pick__row>span:nth-child(2){display:grid;gap:2px;min-width:0}.ia-library-pick__row b{font-size:12px}.ia-library-pick__row small{font-size:10.5px;color:var(--ep-texte-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ia-learn-queue{display:grid;gap:10px}.ia-learn-queue__head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ia-learn-queue__head>span:last-child{font-size:11px;color:var(--ep-texte-3)}
.ia-learn-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:10px 11px;border:1px solid var(--ep-ligne);border-radius:9px;background:var(--ep-surface-2)}
.ia-learn-card>div:first-child{display:grid;gap:4px;min-width:0}.ia-learn-card small{font-size:9.5px;color:var(--ep-texte-3)}.ia-learn-card b{font-size:12px;line-height:1.35}.ia-learn-card p{margin:0;color:var(--ep-texte-2);font-size:11.5px;line-height:1.45;white-space:pre-wrap}.ia-learn-card>div:last-child{display:flex;gap:5px;align-items:flex-start}
.ia-manual-compose{margin-bottom:10px;border:1px dashed var(--ep-ligne-forte);border-radius:9px;padding:8px 10px;background:var(--ep-surface-2)}
.ia-manual-compose summary{cursor:pointer;font:700 11.5px/1.4 var(--ep-f-ui);color:var(--ep-texte-2)}
.ia-manual-compose[open] summary{margin-bottom:9px}.ia-manual-compose .ia-studio-example-meta{margin-bottom:1px}

@media(max-width:1480px){.ia-studio-mode--knowledge .ia-studio-dashboard__side{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1080px){.ia-studio-mode--knowledge .ia-studio-dashboard__side{grid-template-columns:1fr}.ia-doc-card{grid-template-columns:34px minmax(0,1fr)}.ia-doc-card__actions{grid-column:2;justify-content:flex-start}}
@media(max-width:720px){.ia-studio-switch{display:grid;grid-template-columns:1fr 1fr;width:100%;box-sizing:border-box}.ia-studio-switch a{justify-content:center}.ia-doc-toolbar{align-items:stretch;display:grid}.ia-doc-toolbar__actions{display:grid;grid-template-columns:1fr 1fr}.ia-doc-toolbar__actions .ep-b{justify-content:center}.ia-doc-card{grid-template-columns:30px minmax(0,1fr);padding:9px}.ia-doc-card__icon{width:28px;height:28px}.ia-doc-card__actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.ia-doc-card__actions .ep-b{justify-content:center}.ia-doc-card__title strong{max-width:100%;white-space:normal}.ia-doc-card__body>span,.ia-doc-card__body>small{white-space:normal}.ia-learn-card{grid-template-columns:1fr}.ia-learn-card>div:last-child{justify-content:flex-start}.ia-studio-test-head #iaStudioGenerateTests,.ia-studio-test-head #iaStudioRunAll{width:100%;margin-left:0;justify-content:center}}
.ia-doc-edit{display:grid;gap:14px}
.ia-doc-edit__file{display:flex;gap:9px;align-items:center;padding:10px 11px;border:1px solid var(--ep-ligne);border-radius:9px;background:var(--ep-surface-2);color:var(--ep-texte-2)}
.ia-doc-edit__file>div{display:grid;gap:2px;min-width:0}.ia-doc-edit__file b{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ia-doc-edit__file small{font-size:10.5px;color:var(--ep-texte-3)}
.ia-doc-parks{display:flex;gap:6px;flex-wrap:wrap}
.ia-doc-park{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:6px 9px;border:1px solid var(--ep-ligne);border-radius:999px;background:var(--ep-surface);color:var(--ep-texte-2);font:700 11px/1 var(--ep-f-ui);cursor:pointer}
.ia-doc-park:hover{border-color:var(--ep-ligne-forte);color:var(--ep-texte)}
.ia-doc-park.is-active{border-color:color-mix(in srgb,var(--ep-violet) 36%,var(--ep-ligne));background:color-mix(in srgb,var(--ep-violet) 9%,var(--ep-surface));color:var(--ep-violet)}
@media(max-width:720px){.ia-doc-parks{display:grid;grid-template-columns:1fr 1fr}.ia-doc-park{justify-content:center}.ia-doc-edit__file{align-items:flex-start}.ia-doc-edit__file b{white-space:normal}}

/* v5.69.0.104 — Connaissances IA : ajout de document mieux composé */
.modal.modal--ia-doc-upload{width:min(780px,calc(100vw - 40px))}
.modal--ia-doc-upload .modal-body{padding:22px 24px 20px}
.modal--ia-doc-upload .modal-foot{padding:14px 24px}
.ia-doc-upload{display:grid;gap:20px}
.ia-doc-upload__grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);gap:16px 18px;align-items:start}
.ia-doc-upload__grid .field{display:grid;gap:7px;min-width:0;margin:0}
.ia-doc-upload__grid .field>label{font:700 10.5px/1.2 var(--ep-f-ui);letter-spacing:.075em;text-transform:uppercase;color:var(--ep-texte-2)}
.ia-doc-upload__grid .field input,.ia-doc-upload__grid .field select,.ia-doc-upload__grid .field textarea{box-sizing:border-box}
.ia-doc-upload__grid .field input,.ia-doc-upload__grid .field select{min-height:44px}
.ia-doc-upload__description{grid-column:1/-1}
.ia-doc-upload__description textarea{min-height:96px!important;resize:vertical}
.ia-doc-upload__file{display:grid;gap:9px;padding-top:2px}
.ia-doc-upload__file-label{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.ia-doc-upload__file-label strong{font-size:12px;color:var(--ep-texte)}
.ia-doc-upload__file-label span{font-size:10.5px;color:var(--ep-texte-3);text-align:right}
.ia-doc-drop.comm-drop{min-height:112px;padding:18px 20px;box-sizing:border-box;display:grid;grid-template-columns:44px minmax(0,1fr) auto;grid-template-rows:auto;place-items:initial;align-items:center;align-content:center;gap:14px;text-align:left;border-radius:12px;background:var(--ep-surface-2);transition:border-color var(--ep-transition),background var(--ep-transition),box-shadow var(--ep-transition),transform var(--ep-transition)}
.ia-doc-drop.comm-drop:hover{border-color:var(--ep-corail);background:color-mix(in srgb,var(--ep-corail) 4%,var(--ep-surface-2))}
.ia-doc-drop.comm-drop:focus-visible{outline:none;border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.ia-doc-drop.comm-drop.drag{border-color:var(--ep-corail);background:var(--ep-corail-voile);transform:translateY(-1px)}
.ia-doc-drop.comm-drop.has-file{border-style:solid;border-color:color-mix(in srgb,var(--ep-corail) 52%,var(--ep-ligne-forte));background:color-mix(in srgb,var(--ep-corail) 5%,var(--ep-surface))}
.ia-doc-drop__icon{width:44px;height:44px;display:grid;place-items:center;border-radius:11px;background:var(--ep-surface);border:1px solid var(--ep-ligne);color:var(--ep-corail-fonce)}
.ia-doc-drop.has-file .ia-doc-drop__icon{border-color:color-mix(in srgb,var(--ep-corail) 28%,var(--ep-ligne));background:var(--ep-corail-voile)}
.ia-doc-drop__content{display:grid;gap:3px;min-width:0}
.ia-doc-drop.comm-drop .ia-doc-drop__content strong{font-size:12.5px;line-height:1.3;color:var(--ep-texte);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ia-doc-drop.comm-drop .ia-doc-drop__content small{font-size:10.5px;line-height:1.4;color:var(--ep-texte-2)}
.ia-doc-drop__formats{font-size:9.5px;line-height:1.35;color:var(--ep-texte-3)}
.ia-doc-drop__browse{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border:1px solid var(--ep-ligne-forte);border-radius:8px;background:var(--ep-surface);color:var(--ep-texte-2);font:700 10.5px/1 var(--ep-f-ui);white-space:nowrap}
.ia-doc-drop:hover .ia-doc-drop__browse{border-color:var(--ep-corail);color:var(--ep-corail-fonce)}
.ia-doc-upload__message{min-height:0;font-size:11px;line-height:1.4;color:var(--ep-texte-3)}
.ia-doc-upload__message:empty{display:none}
.ia-doc-upload__message.is-error{display:block;padding:9px 11px;border-radius:8px;background:var(--ep-danger-voile,#fff0ed);color:var(--ep-danger,#a23b2f)}
.modal--ia-doc-upload .modal-foot .ep-b{min-height:38px}
.modal--ia-doc-upload .modal-foot #iaDocUploadGo{min-width:156px}
.modal--ia-doc-upload .modal-foot #iaDocUploadGo:disabled{opacity:.5;cursor:not-allowed}

@media(max-width:760px){
  .modal.modal--ia-doc-upload{width:100%;max-width:none}
  .modal--ia-doc-upload .modal-body{padding:18px 16px}
  .modal--ia-doc-upload .modal-foot{padding-left:16px;padding-right:16px}
  .ia-doc-upload{gap:16px}
  .ia-doc-upload__grid{grid-template-columns:1fr;gap:14px}
  .ia-doc-upload__description{grid-column:auto}
  .ia-doc-upload__file-label{display:grid;gap:3px}
  .ia-doc-upload__file-label span{text-align:left}
  .ia-doc-drop.comm-drop{grid-template-columns:40px minmax(0,1fr);gap:11px;padding:15px;min-height:118px}
  .ia-doc-drop__icon{width:40px;height:40px}
  .ia-doc-drop__browse{grid-column:1/-1;width:100%;box-sizing:border-box}
  .ia-doc-drop.comm-drop .ia-doc-drop__content strong{white-space:normal;overflow-wrap:anywhere}
  .modal--ia-doc-upload .modal-foot{display:grid;grid-template-columns:1fr 1fr}
  .modal--ia-doc-upload .modal-foot .ep-b{width:100%;justify-content:center}
  .modal--ia-doc-upload .modal-foot #iaDocUploadGo{min-width:0;margin-left:0}
}

/* v5.69.0.104 — Mon profil : signatures e-mail enrichies et réellement responsive. */
.rm-item--signature{padding:0;overflow:hidden;background:var(--ep-surface);border-radius:12px}
.rm-item--signature .rm-item__head{margin:0;padding:12px 14px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}
.rm-signature-title{display:flex;align-items:center;gap:9px;flex:1;min-width:0}
.rm-signature-title__icon{width:30px;height:30px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--ep-ligne);border-radius:8px;background:var(--ep-surface);color:var(--ep-corail-fonce)}
.rm-item--signature .rm-titre{height:36px;border:0;background:transparent;padding:0 4px;font-size:13.5px;font-weight:700;box-shadow:none}
.rm-item--signature .rm-titre:focus{outline:none;box-shadow:none}
.rm-signature-compose{margin:12px 14px 0;border:1px solid var(--ep-ligne-forte);border-radius:10px;overflow:hidden;background:var(--ep-surface)}
.rm-signature-compose .conv-tb{padding:6px 8px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2);gap:2px}
.rm-signature-compose .conv-tb__b--text{width:auto;min-width:29px;padding:0 8px;display:inline-flex;align-items:center;gap:5px;font:700 10.5px/1 var(--ep-f-ui)}
.rm-signature-compose .conv-tb__b--text span{display:inline}
.rm-rte--signature{min-height:150px;padding:16px 18px;border:0!important;border-radius:0!important;background:#fff;font-family:var(--ep-f-ui);font-size:13.5px;font-weight:400;line-height:1;color:var(--ep-texte);box-shadow:none!important;overflow:auto}
.rm-rte--signature:focus{outline:none;box-shadow:inset 0 0 0 2px var(--ep-corail-voile)!important}
.rm-rte--signature:empty:before{content:attr(data-ph);white-space:pre-line;color:var(--ep-texte-3);pointer-events:none}
.rm-rte--signature.is-drag{background:var(--ep-sable-voile);box-shadow:inset 0 0 0 2px var(--ep-corail)!important}
.rm-rte--signature p,.rm-rte--signature div{margin:0}.rm-rte--signature ul,.rm-rte--signature ol{margin:0;padding-left:1.5rem}.rm-rte--signature li{margin:0}
.rm-rte--signature a{color:var(--ep-corail-fonce);text-decoration:underline}
.rm-rte--signature img{max-width:100%;height:auto;vertical-align:middle;cursor:pointer;outline:1px dashed transparent;outline-offset:3px}
.rm-rte--signature img:hover{outline-color:var(--ep-ligne-forte)}
.rm-rte--signature table{max-width:100%}.rm-rte--signature td,.rm-rte--signature th{vertical-align:top}.rm-rte--signature td:focus,.rm-rte--signature th:focus{outline:1px solid var(--ep-corail);outline-offset:-1px}
.rm-signature-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 14px 13px}
.rm-signature-foot .rm-legend{margin:0;min-width:0}.rm-signature-status{font-size:10.5px;line-height:1.35;color:var(--ep-texte-3);text-align:right;max-width:330px}
.sig-empty{display:grid;place-items:center;gap:4px;padding:28px 18px;border:1px dashed var(--ep-ligne-forte);border-radius:11px;background:var(--ep-surface-2);text-align:center}.sig-empty strong{font-size:13px}.sig-empty span{font-size:11.5px;color:var(--ep-texte-3)}
.sig-table-dialog{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sig-table-dialog .field{margin:0}.sig-table-dialog .ep-msg{grid-column:1/-1;margin:2px 0 0}
@media(max-width:760px){.rm-item--signature .rm-item__head{padding:10px}.rm-signature-compose{margin:10px 10px 0}.rm-signature-compose .conv-tb{gap:1px}.rm-signature-compose .conv-tb__sep{margin:0 3px}.rm-signature-compose .conv-tb__b--text span{display:none}.rm-signature-compose .conv-tb__b--text{width:29px;padding:0}.rm-rte--signature{min-height:135px;padding:13px}.rm-signature-foot{display:grid;padding:9px 10px 11px}.rm-signature-status{text-align:left;max-width:none}.sig-table-dialog{grid-template-columns:1fr}}

/* v5.69.0.105 — collage de signatures HTML existantes : ne jamais imposer de bordures/paddings aux tableaux importés. */
.rm-rte--signature [data-sig-imported="1"]{max-width:100%}
.rm-rte--signature table[role="presentation"]{border-spacing:0}

/* v5.69.0.111 — Studio de signatures e-mail centralisées */
.sig-studio{display:grid;grid-template-columns:minmax(220px,280px) minmax(520px,1fr) minmax(300px,390px);gap:16px;align-items:start;margin-bottom:18px}
.sig-studio__rail,.sig-studio__main,.sig-studio__preview{min-width:0}
.sig-studio__rail{border:1px solid var(--ep-ligne);border-radius:14px;background:var(--ep-surface);overflow:hidden;position:sticky;top:16px}
.sig-studio__rail-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}
.sig-studio__rail-head strong{font-size:12.5px}.sig-studio__rail-head span{font:600 11px var(--ep-f-mono);color:var(--ep-texte-3)}
.sig-template-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:0;border-bottom:1px solid var(--ep-ligne);background:transparent;padding:11px 12px;cursor:pointer;color:var(--ep-texte)}
.sig-template-row:last-child{border-bottom:0}.sig-template-row:hover{background:var(--ep-surface-2)}.sig-template-row.is-active{background:var(--ep-corail-voile);box-shadow:inset 3px 0 0 var(--ep-corail)}
.sig-template-row span{min-width:0;display:grid;gap:2px}.sig-template-row strong{font-size:12.5px;overflow:hidden;text-overflow:ellipsis}.sig-template-row small{font-size:10.5px;color:var(--ep-texte-3)}
.sig-template-row i{font-style:normal;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--ep-vert-fonce);background:var(--ep-vert-voile);border-radius:999px;padding:3px 6px;white-space:nowrap}.sig-template-row i.is-off{color:var(--ep-texte-3);background:var(--ep-surface-3)}
.sig-studio__main{border:1px solid var(--ep-ligne);border-radius:14px;background:var(--ep-surface);overflow:hidden}
.sig-editor-head{display:grid;grid-template-columns:minmax(0,1fr) 92px auto;gap:10px;align-items:end;padding:14px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}
.sig-editor-head .field,.sig-target-panel .field{margin:0}.sig-priority input{text-align:center}.sig-editor-head .ep-switch{margin-bottom:1px;min-height:38px}
.sig-target-panel{display:grid;grid-template-columns:minmax(220px,1fr) 190px;gap:10px 14px;padding:13px 14px;border-bottom:1px solid var(--ep-ligne)}
.sig-target-panel>div:first-child{display:grid;gap:2px}.sig-target-panel strong{font-size:12px}.sig-target-panel small{font-size:10.5px;line-height:1.35;color:var(--ep-texte-3)}
.sig-targets{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.sig-target{display:inline-flex;align-items:center;gap:6px;min-height:31px;padding:4px 9px;border:1px solid var(--ep-ligne-forte);border-radius:999px;background:var(--ep-surface);color:var(--ep-texte-2);font:700 10.5px var(--ep-f-ui);cursor:pointer}.sig-target:hover{border-color:var(--ep-corail)}.sig-target.is-active{background:var(--ep-corail-voile);border-color:var(--ep-corail);color:var(--ep-corail-fonce)}
.sig-target .avatar{flex:0 0 auto}
.sig-compose{margin:14px;border:1px solid var(--ep-ligne-forte);border-radius:12px;overflow:hidden;background:#fff}.sig-compose>.conv-tb{border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}
.sig-master-rte{min-height:260px;max-height:560px;overflow:auto;line-height:1.20}.sig-master-rte p,.sig-master-rte div{margin-top:0;margin-bottom:0}
.sig-var-groups{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 14px 14px}.sig-var-groups>div{border:1px solid var(--ep-ligne);border-radius:10px;padding:9px 10px;background:var(--ep-surface-2)}.sig-var-groups strong{display:block;margin-bottom:6px;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ep-texte-3)}.sig-var-groups>div>div{display:flex;flex-wrap:wrap;gap:5px}
.sig-editor-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 14px;border-top:1px solid var(--ep-ligne);background:var(--ep-surface-2)}.sig-editor-foot>span{font-size:10.5px;line-height:1.35;color:var(--ep-texte-3)}.sig-editor-foot>div{display:flex;gap:7px;flex:0 0 auto}
.sig-preview-card{position:sticky;top:16px;border:1px solid var(--ep-ligne);border-radius:14px;background:var(--ep-surface);overflow:hidden}.sig-preview-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}.sig-preview-card__head strong{font-size:12.5px}.sig-preview-card__head small{font-size:10px;color:var(--ep-texte-3)}
.sig-preview-card>label{display:grid;grid-template-columns:88px 1fr;align-items:center;gap:7px;padding:7px 12px 0;font-size:10.5px;font-weight:700;color:var(--ep-texte-3)}.sig-preview-card select{min-width:0}
.sig-preview-frame{margin:12px;min-height:220px;padding:16px;border:1px solid #e6e1da;border-radius:8px;background:#fff;overflow:auto;color:#111;line-height:1.20}.sig-preview-frame p,.sig-preview-frame div{margin-top:0;margin-bottom:0}.sig-preview-frame img{max-width:100%;height:auto}
.sig-preview-vars{display:grid;gap:3px;padding:0 12px 12px}.sig-preview-vars span{display:grid;grid-template-columns:105px 1fr;gap:6px;font-size:9.5px;color:var(--ep-texte-3);overflow:hidden}.sig-preview-vars code{font-size:9px;color:var(--ep-corail-fonce)}
.sig-studio-empty{min-height:420px;display:grid;place-items:center;align-content:center;text-align:center;gap:10px;padding:35px}.sig-studio-empty>div{width:56px;height:56px;border-radius:16px;background:var(--ep-corail-voile);color:var(--ep-corail-fonce);display:grid;place-items:center}.sig-studio-empty strong{font-size:16px}.sig-studio-empty span{max-width:430px;color:var(--ep-texte-3);font-size:12px;line-height:1.5}
.sig-gmail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.sig-gmail-head>div:first-child{display:flex;align-items:center;gap:7px}.sig-gmail-head strong{font-size:13px}.sig-gmail-head span{font-size:10.5px;color:var(--ep-texte-3)}.sig-gmail-head>div:last-child{display:flex;gap:7px}
.sig-gmail-table{border:1px solid var(--ep-ligne);border-radius:12px;overflow:hidden;margin-bottom:10px}.sig-gmail-row{display:grid;grid-template-columns:34px minmax(220px,1fr) minmax(220px,360px) minmax(150px,260px);align-items:center;gap:10px;padding:9px 11px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface)}.sig-gmail-row:last-child{border-bottom:0}.sig-gmail-row:hover{background:var(--ep-surface-2)}
.sig-sync-toggle{width:28px;height:28px;border:1px solid var(--ep-ligne-forte);border-radius:8px;background:var(--ep-surface);color:var(--ep-texte-3);font-weight:900;cursor:pointer}.sig-sync-toggle.is-active{background:var(--ep-corail);border-color:var(--ep-corail);color:#fff}
.sig-gmail-user{display:flex;align-items:center;gap:8px;min-width:0}.sig-gmail-user>span{display:grid;min-width:0}.sig-gmail-user strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sig-gmail-user small{font-size:9.5px;color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sig-gmail-row label{display:grid;grid-template-columns:auto minmax(120px,1fr);align-items:center;gap:7px;font-size:9.5px;color:var(--ep-texte-3)}
.sig-sync-status{font-size:9.5px;line-height:1.3;color:var(--ep-texte-3)}.sig-sync-status.is-ok{color:var(--ep-vert-fonce)}.sig-sync-status.is-error{color:var(--ep-rouge)}
@media(max-width:1450px){.sig-studio{grid-template-columns:230px minmax(500px,1fr)}.sig-studio__preview{grid-column:2}.sig-preview-card{position:static}.sig-preview-frame{min-height:170px}}
@media(max-width:980px){.sig-studio{grid-template-columns:1fr}.sig-studio__rail{position:static}.sig-studio__preview{grid-column:auto}.sig-studio__rail #sigTplList{display:flex;overflow:auto}.sig-template-row{min-width:210px;border-bottom:0;border-right:1px solid var(--ep-ligne)}.sig-gmail-row{grid-template-columns:34px 1fr}.sig-gmail-row label,.sig-sync-status{grid-column:2}.sig-editor-head{grid-template-columns:1fr 90px}.sig-editor-head .ep-switch{grid-column:1/-1;justify-self:start}.sig-target-panel{grid-template-columns:1fr}.sig-targets{grid-column:auto}}
@media(max-width:650px){.sig-editor-head{grid-template-columns:1fr}.sig-priority{max-width:120px}.sig-var-groups{grid-template-columns:1fr}.sig-editor-foot,.sig-gmail-head{align-items:stretch;flex-direction:column}.sig-editor-foot>div,.sig-gmail-head>div:last-child{width:100%;display:grid;grid-template-columns:1fr 1fr}.sig-compose{margin:10px}.sig-master-rte{min-height:220px}.sig-preview-card>label{grid-template-columns:1fr}.sig-gmail-row{grid-template-columns:30px 1fr;padding:8px}.sig-gmail-row label{grid-template-columns:1fr}.sig-sync-status{grid-column:1/-1;padding-left:38px}}
.sig-compose #sigToolbar>.conv-tb{border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}
.sig-editor-head .ep-switch{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 10px;border:1px solid var(--ep-ligne-forte);border-radius:9px;background:var(--ep-surface);color:var(--ep-texte-2);font:700 10.5px var(--ep-f-ui);cursor:pointer}.sig-editor-head .ep-switch span{width:24px;height:14px;border-radius:99px;background:var(--ep-ligne-forte);position:relative}.sig-editor-head .ep-switch span:after{content:"";position:absolute;left:2px;top:2px;width:10px;height:10px;border-radius:50%;background:#fff;transition:transform .15s ease}.sig-editor-head .ep-switch.is-actif{color:var(--ep-vert-fonce);border-color:var(--ep-vert)}.sig-editor-head .ep-switch.is-actif span{background:var(--ep-vert)}.sig-editor-head .ep-switch.is-actif span:after{transform:translateX(10px)}

/* ══════════════════════════════════════════════════════════════════════════
   v5.69.0.113 — Signatures e-mail : comptes d'abord, modèles ensuite
   ══════════════════════════════════════════════════════════════════════════ */
.ep-reglages__corps--signature-studio{max-width:none;width:100%;box-sizing:border-box;padding-right:32px}
.ep-reglages__corps--signature-studio .ep-reg-tete p{max-width:980px}
.sig-studio-tabs{display:flex;align-items:center;gap:4px;margin:-6px 0 18px;border-bottom:1px solid var(--ep-ligne)}
.sig-studio-tabs button{display:flex;align-items:center;gap:7px;padding:11px 14px;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--ep-texte-3);font:700 12px var(--ep-f-ui);cursor:pointer}
.sig-studio-tabs button:hover{color:var(--ep-texte)}.sig-studio-tabs button.is-active{color:var(--ep-corail-fonce);border-bottom-color:var(--ep-corail)}
.sig-studio-tabs button span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--ep-surface-3);font:700 9.5px var(--ep-f-data);color:var(--ep-texte-3)}
.sig-studio-tabs button.is-active span{background:var(--ep-corail-voile);color:var(--ep-corail-fonce)}

.sig-workspace-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;padding:14px 16px;border:1px solid var(--ep-ligne);border-radius:14px;background:var(--ep-surface)}
.sig-workspace-card.is-ready{border-color:color-mix(in srgb,var(--ep-ok) 38%,var(--ep-ligne))}
.sig-workspace-card__main{display:flex;align-items:center;gap:11px;min-width:0}.sig-workspace-card__main>div{display:grid;gap:3px;min-width:0}.sig-workspace-card__main strong{font-size:13px}.sig-workspace-card__main span,.sig-workspace-card__main small{font-size:10.5px;color:var(--ep-texte-3);line-height:1.35}
.sig-workspace-mark{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--ep-surface-2);color:var(--ep-texte)}
.sig-workspace-card__actions{display:flex;gap:7px;flex:0 0 auto}
.sig-workspace-config{display:grid;gap:14px}.sig-workspace-config>p{margin:0;color:var(--ep-texte-3);font-size:12px;line-height:1.5}.sig-workspace-key{display:grid;gap:11px;padding:12px;border:1px solid var(--ep-ligne);border-radius:11px;background:var(--ep-surface-2)}.sig-workspace-key.is-ready{border-color:color-mix(in srgb,var(--ep-ok) 38%,var(--ep-ligne))}.sig-workspace-key__head{display:flex;align-items:center;gap:9px}.sig-workspace-key__head>span{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--ep-surface);color:var(--ep-texte-2)}.sig-workspace-key.is-ready .sig-workspace-key__head>span{color:var(--ep-vert)}.sig-workspace-key__head>div{display:grid;gap:2px}.sig-workspace-key__head strong{font-size:11.5px}.sig-workspace-key__head small{font-size:10px;color:var(--ep-texte-3)}.sig-workspace-client{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center}.sig-workspace-client>span{font-size:9.5px;font-weight:800;color:var(--ep-texte-3)}.sig-workspace-client code{min-width:0;overflow:hidden;text-overflow:ellipsis;padding:7px 8px;border-radius:7px;background:var(--ep-surface);font-size:10px}.sig-workspace-delegation{display:grid;gap:7px;padding:11px;border:1px solid var(--ep-ligne);border-radius:10px}.sig-workspace-delegation>strong{font-size:11px}.sig-workspace-delegation>span{font-size:10.5px;line-height:1.45;color:var(--ep-texte-3)}.sig-workspace-scopes{display:grid;gap:6px;padding:9px;border:1px solid var(--ep-ligne);border-radius:9px;background:var(--ep-surface-2)}.sig-workspace-scopes strong{font-size:11px}.sig-workspace-scopes code{display:block;overflow-wrap:anywhere;font-size:10px}
.sig-accounts-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid var(--ep-ligne);border-bottom:0;border-radius:14px 14px 0 0;background:var(--ep-surface)}
.sig-accounts-head>div{display:grid;gap:4px}.sig-accounts-head strong{font-size:14px}.sig-accounts-head span{font-size:11.5px;line-height:1.45;color:var(--ep-texte-3);max-width:850px}
.sig-account-table{border:1px solid var(--ep-ligne);border-radius:0 0 14px 14px;background:var(--ep-surface);overflow:hidden}
.sig-account-table__head,.sig-account-row{display:grid;grid-template-columns:minmax(210px,1.05fr) minmax(520px,2.1fr) minmax(220px,.95fr) minmax(255px,auto);gap:14px;align-items:center}
.sig-account-table__head{padding:9px 16px;background:var(--ep-surface-2);border-bottom:1px solid var(--ep-ligne);font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ep-texte-3)}
.sig-account-row{padding:13px 16px;border-bottom:1px solid var(--ep-ligne)}.sig-account-row:last-child{border-bottom:0}.sig-account-row:hover{background:color-mix(in srgb,var(--ep-surface-2) 60%,transparent)}
.sig-account-person{display:flex;align-items:center;gap:10px;min-width:0}.sig-account-person>span{display:grid;gap:2px;min-width:0}.sig-account-person strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sig-account-person small{font-size:10px;color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sig-account-fields{display:grid;grid-template-columns:minmax(190px,1.15fr) minmax(190px,1fr) minmax(175px,.9fr);gap:8px;min-width:0}.sig-account-fields label{display:grid;gap:4px;min-width:0}.sig-account-fields label>span,.sig-model-meta label>span,.sig-preview-controls label>span{font-size:9.5px;font-weight:800;letter-spacing:.025em;color:var(--ep-texte-3)}
.sig-account-fields select,.sig-model-meta select,.sig-model-meta input,.sig-preview-controls select,.sig-var-picker select{width:100%;min-width:0;height:36px;padding:0 10px;border:1px solid var(--ep-ligne-forte);border-radius:9px;background:var(--ep-surface);font:500 11px var(--ep-f-ui);color:var(--ep-texte)}
.sig-account-state{display:grid;gap:5px;min-width:0}.sig-account-state__line{display:flex;align-items:center;gap:6px}.sig-account-state__line strong{font-size:11px}.sig-account-state>small{font-size:9.8px;line-height:1.4;color:var(--ep-texte-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sig-status-dot{width:7px;height:7px;border-radius:50%;background:var(--ep-ligne-forte);flex:0 0 auto}.sig-status-dot.is-ok{background:var(--ep-vert)}.sig-status-dot.is-error{background:var(--ep-rouge)}
.sig-current-preview{border:0;background:transparent;padding:0;text-align:left;color:var(--ep-info);font:600 9.5px var(--ep-f-ui);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sig-account-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.sig-account-actions .ep-b{min-height:30px;padding:0 9px;font-size:10px}
.sig-account-help{display:flex;align-items:flex-start;gap:10px;margin-top:12px;padding:11px 13px;border:1px solid var(--ep-ligne);border-radius:11px;background:var(--ep-surface-2);font-size:10.5px}.sig-account-help strong{white-space:nowrap}.sig-account-help span{color:var(--ep-texte-3);line-height:1.45}

.sig-model-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:14px;align-items:start}.sig-model-rail{border:1px solid var(--ep-ligne);border-radius:13px;background:var(--ep-surface);overflow:hidden;position:sticky;top:12px}.sig-model-rail__head{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}.sig-model-rail__head strong{font-size:12px}
.sig-model-work{min-width:0;border:1px solid var(--ep-ligne);border-radius:13px;background:var(--ep-surface);overflow:hidden}
.sig-model-meta{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(190px,.9fr) 90px auto;gap:9px;align-items:end;padding:13px 14px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}.sig-model-meta label{display:grid;gap:4px}.sig-model-meta .ep-switch{height:36px;margin-bottom:0}.sig-model-priority input{text-align:center}
.sig-model-targets{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:9px 14px;border-bottom:1px solid var(--ep-ligne);min-height:43px}
.sig-model-editor-grid{display:grid;grid-template-columns:minmax(560px,1.55fr) minmax(340px,.8fr);min-height:590px}.sig-model-editor{min-width:0;border-right:1px solid var(--ep-ligne);display:flex;flex-direction:column}.sig-model-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2);flex-wrap:wrap}.sig-model-toolbar #sigToolbar{min-width:0}.sig-var-picker{display:flex;align-items:center;gap:6px;margin-left:auto}.sig-var-picker select{width:240px;height:32px}.sig-var-picker .ep-b{height:32px}
.sig-model-editor .sig-master-rte{flex:1;min-height:470px;border:0;border-radius:0;padding:20px 22px;background:#fff;color:#111;overflow:auto;line-height:1.20}.sig-model-editor .sig-master-rte p,.sig-model-editor .sig-master-rte div{margin-top:0;margin-bottom:0}.sig-model-editor .sig-master-rte img{max-width:100%;height:auto}
.sig-model-editor .sig-editor-foot{margin-top:auto}.sig-model-preview{min-width:0;background:var(--ep-surface-2);display:flex;flex-direction:column}.sig-model-preview__head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border-bottom:1px solid var(--ep-ligne)}.sig-model-preview__head strong{font-size:12px}.sig-model-preview__head span{font-size:9.5px;color:var(--ep-texte-3)}
.sig-preview-controls{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:10px 12px 0}.sig-preview-controls label{display:grid;gap:4px}.sig-model-preview .sig-preview-frame{flex:1;min-height:390px;margin:10px 12px;padding:18px;line-height:1.20;background:#fff}.sig-model-preview .sig-preview-frame p,.sig-model-preview .sig-preview-frame div{margin-top:0;margin-bottom:0}.sig-preview-note{padding:0 12px 12px;font-size:9.5px;line-height:1.4;color:var(--ep-texte-3)}

.sig-gmail-read{display:grid;gap:12px}.sig-gmail-read__meta{display:grid;gap:3px}.sig-gmail-read__meta strong{font-size:13px}.sig-gmail-read__meta span{font-size:10.5px;color:var(--ep-texte-3)}.sig-gmail-read__preview{padding:18px;border:1px solid var(--ep-ligne);border-radius:10px;background:#fff;color:#111;min-height:180px;max-height:480px;overflow:auto;line-height:1.20}.sig-gmail-read__preview p,.sig-gmail-read__preview div{margin-top:0;margin-bottom:0}.sig-gmail-read__preview img{max-width:100%;height:auto}

@media(max-width:1500px){
  .sig-account-table__head,.sig-account-row{grid-template-columns:minmax(190px,.95fr) minmax(440px,1.8fr) minmax(190px,.85fr)}
  .sig-account-table__head span:last-child{display:none}.sig-account-actions{grid-column:2/-1;justify-content:flex-start;margin-top:-2px}
  .sig-model-editor-grid{grid-template-columns:minmax(500px,1.35fr) minmax(320px,.8fr)}
}
@media(max-width:1180px){
  .ep-reglages__corps--signature-studio{padding-right:22px}
  .sig-account-table__head{display:none}.sig-account-row{grid-template-columns:minmax(180px,.8fr) minmax(0,1.8fr);align-items:start}.sig-account-state{grid-column:1}.sig-account-actions{grid-column:2;align-self:end}
  .sig-account-fields{grid-template-columns:1fr 1fr}.sig-account-fields label:last-child{grid-column:1/-1;max-width:320px}
  .sig-model-layout{grid-template-columns:220px minmax(0,1fr)}.sig-model-editor-grid{grid-template-columns:1fr}.sig-model-editor{border-right:0;border-bottom:1px solid var(--ep-ligne)}.sig-model-preview .sig-preview-frame{min-height:260px;max-height:430px}
  .sig-model-meta{grid-template-columns:minmax(220px,1fr) minmax(180px,.8fr) 85px}.sig-model-meta .ep-switch{grid-column:1/-1;justify-self:start}
}
@media(max-width:820px){
  .ep-reglages__corps--signature-studio{padding:18px 14px 32px;max-width:none}.sig-studio-tabs{overflow:auto}.sig-studio-tabs button{white-space:nowrap}
  .sig-workspace-card{align-items:stretch;flex-direction:column}.sig-workspace-card__actions{justify-content:flex-start;flex-wrap:wrap}
  .sig-workspace-client{grid-template-columns:1fr}.sig-workspace-client .ep-b{justify-self:start}.sig-workspace-client code{width:100%;box-sizing:border-box}
  .sig-accounts-head{align-items:stretch;flex-direction:column}.sig-accounts-head .ep-b{align-self:flex-start}
  .sig-account-row{grid-template-columns:1fr;padding:14px}.sig-account-person,.sig-account-fields,.sig-account-state,.sig-account-actions{grid-column:1}.sig-account-fields{grid-template-columns:1fr}.sig-account-fields label:last-child{grid-column:auto;max-width:none}.sig-account-actions{justify-content:flex-start}.sig-account-actions .ep-b{flex:1 1 auto}
  .sig-account-help{display:grid}.sig-model-layout{grid-template-columns:1fr}.sig-model-rail{position:static}.sig-model-rail #sigTplList{display:flex;overflow:auto}.sig-model-rail .sig-template-row{min-width:220px;border-bottom:0;border-right:1px solid var(--ep-ligne)}
  .sig-model-meta{grid-template-columns:1fr 1fr}.sig-model-name{grid-column:1/-1}.sig-model-meta .ep-switch{grid-column:auto;align-self:end}.sig-model-toolbar{align-items:stretch;flex-direction:column}.sig-var-picker{width:100%;margin-left:0}.sig-var-picker select{width:auto;flex:1}.sig-preview-controls{grid-template-columns:1fr}.sig-model-editor .sig-master-rte{min-height:340px;padding:14px}.sig-editor-foot{align-items:stretch;flex-direction:column}.sig-editor-foot>div{display:grid;grid-template-columns:1fr 1fr;width:100%}
}
@media(max-width:520px){.sig-model-meta{grid-template-columns:1fr}.sig-model-meta .ep-switch{grid-column:1}.sig-account-actions .ep-b{flex:1 1 45%}.sig-var-picker{display:grid;grid-template-columns:1fr auto}}


/* v5.69.0.118 — signatures : interligne sur sélection + barre d’outils stabilisée. */
.rm-rte--signature,.sig-master-rte,.sig-preview-frame{line-height:1.20}
.rm-rte--signature p,.sig-master-rte p,.sig-preview-frame p{margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important}
.sig-leading-select{width:auto;min-width:96px;max-width:112px;height:29px;padding:0 22px 0 7px;font-size:10.5px;font-weight:650;background-color:var(--ep-surface);flex:0 0 auto}
/* Le studio utilise deux rangées : outils puis variables. Aucun contrôle ne se chevauche. */
.sig-model-toolbar{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:6px}
.sig-model-toolbar #sigToolbar{min-width:0;width:100%}
.sig-model-toolbar #sigToolbar>.conv-tb{width:100%;min-width:0;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding:5px 6px;scrollbar-width:thin}
.sig-model-toolbar #sigToolbar .conv-tb__b,.sig-model-toolbar #sigToolbar .conv-tb__s,.sig-model-toolbar #sigToolbar .conv-tb__coul{flex:0 0 auto}
.sig-model-toolbar #sigToolbar .conv-tb__sep{flex:0 0 1px;margin:0 4px}
.sig-model-toolbar #sigToolbar .conv-tb__b--text{width:29px;min-width:29px;padding:0;justify-content:center}
.sig-model-toolbar #sigToolbar .conv-tb__b--text span{display:none}
.sig-model-toolbar .sig-var-picker{width:min(100%,390px);margin-left:0;justify-self:end}
.rm-signature-compose>.conv-tb{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
.rm-signature-compose .conv-tb__b--text{width:29px;min-width:29px;padding:0;justify-content:center}
.rm-signature-compose .conv-tb__b--text span{display:none}
@media(max-width:760px){.sig-leading-select{min-width:90px;max-width:104px;font-size:10px}.sig-model-toolbar .sig-var-picker{width:100%;justify-self:stretch}}

/* v5.69.0.123 — modèle source de vérité : sync Gmail à l'enregistrement */
.sig-editor-foot__info{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1 auto}
.sig-editor-foot__info>span{font-size:10.5px;line-height:1.35;color:var(--ep-texte-3);min-width:0}
.sig-editor-foot .ep-switch--compact{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 9px;border:1px solid var(--ep-ligne-forte);border-radius:9px;background:var(--ep-surface);color:var(--ep-texte-2);font:700 10px var(--ep-f-ui);cursor:pointer;white-space:nowrap;flex:0 0 auto}
.sig-editor-foot .ep-switch--compact>span{width:24px;height:14px;border-radius:99px;background:var(--ep-ligne-forte);position:relative;flex:0 0 auto}
.sig-editor-foot .ep-switch--compact>span:after{content:"";position:absolute;left:2px;top:2px;width:10px;height:10px;border-radius:50%;background:#fff;transition:transform .15s ease}
.sig-editor-foot .ep-switch--compact.is-actif{color:var(--ep-vert-fonce);border-color:var(--ep-vert)}
.sig-editor-foot .ep-switch--compact.is-actif>span{background:var(--ep-vert)}
.sig-editor-foot .ep-switch--compact.is-actif>span:after{transform:translateX(10px)}
@media(max-width:760px){.sig-editor-foot__info{display:flex!important;flex-direction:column;align-items:flex-start;grid-template-columns:none!important}.sig-editor-foot .ep-switch--compact{white-space:normal}}

/* v5.69.0.124 — organisation : réutilise les composants DS existants pour établissements/services. */

/* v5.69.0.125 — refonte Organisation / Utilisateurs */
.ep-reglages__corps--org-directory,
.ep-reglages__corps--users-directory{
  max-width:none!important;width:100%;box-sizing:border-box;padding-right:32px
}
.ep-reglages__corps--org-directory .ep-reg-tete p,
.ep-reglages__corps--users-directory .ep-reg-tete p{max-width:920px}

/* Organisation */
.org-company-card{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(420px,.8fr);gap:16px;align-items:center;margin:0 0 16px;padding:16px 18px;border:1px solid var(--ep-ligne);border-radius:14px;background:#fff;box-shadow:var(--ep-om-1)}
.org-company-card__identity{display:grid;grid-template-columns:42px minmax(220px,460px) auto;gap:12px;align-items:center;min-width:0}
.org-company-card__icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--ep-corail-voile);color:var(--ep-corail-fonce)}
.org-company-card__identity>div{display:grid;gap:3px;min-width:0}.org-company-card__identity small{font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--ep-texte-3)}
.org-company-card__identity input{height:38px;min-width:0;border:1px solid var(--ep-ligne-forte);border-radius:9px;padding:0 11px;font-size:15px;font-weight:700;color:var(--ep-texte);background:#fff}
.org-company-card__identity input:focus{outline:none;border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.org-company-card__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.org-company-card__stats>span{display:grid;gap:1px;padding:9px 11px;border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface-2);text-align:center}.org-company-card__stats strong{font-size:18px;line-height:1.1}.org-company-card__stats small{font-size:10px;color:var(--ep-texte-3);white-space:nowrap}
.org-directory-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,.72fr);gap:16px;align-items:start}.org-directory-grid>.ep-bloc-r{margin:0;min-width:0}.org-directory-grid .ep-bloc-r__c--plein{padding:10px}
.org-est-list{display:grid;gap:8px}.org-est-card{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(170px,.85fr) minmax(160px,.72fr) 80px auto;gap:14px;align-items:center;padding:11px 12px;border:1px solid var(--ep-ligne);border-radius:12px;background:#fff;transition:border-color .14s,box-shadow .14s}.org-est-card:hover{border-color:var(--ep-ligne-forte);box-shadow:0 5px 16px rgba(43,29,20,.045)}.org-est-card.is-inactive{opacity:.66}
.org-est-card__identity{display:flex;align-items:center;gap:10px;min-width:0}.org-est-card__icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:0 0 auto;background:var(--ep-surface-2);color:var(--ep-texte-2)}.org-est-card__title{min-width:0}.org-est-card__title>div{display:flex;align-items:center;gap:7px;min-width:0}.org-est-card__title strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.org-est-card__title small{display:block;margin-top:2px;color:var(--ep-texte-3);font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.org-est-card__title code{font-size:10px;background:transparent;color:inherit}
.org-est-card__contact{display:grid;gap:3px;min-width:0}.org-est-card__contact>small{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ep-texte-3)}.org-est-card__contact>span{display:flex;align-items:center;gap:5px;min-width:0;font-size:11px;color:var(--ep-texte-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.org-est-card__contact svg{flex:0 0 auto}
.org-integration-state{display:grid;gap:2px;min-width:0}.org-integration-state b{font-size:11.5px}.org-integration-state small{font-size:10px;color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.org-integration-state.is-ok b{color:var(--ep-ok)}.org-integration-state.is-warn b{color:#9b6b18}
.org-est-card__state,.org-service-item__state{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--ep-texte-2);white-space:nowrap}.org-status-dot{width:8px;height:8px;border-radius:50%;background:var(--ep-ligne-forte);box-shadow:0 0 0 3px var(--ep-surface-2)}.org-status-dot.is-on{background:var(--ep-ok);box-shadow:0 0 0 3px var(--ep-ok-voile)}
.org-est-card__actions{display:flex;justify-content:flex-end;gap:6px;white-space:nowrap}.org-est-card__actions .ep-b{min-height:30px}
.org-service-list{display:grid;gap:8px}.org-service-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid var(--ep-ligne);border-radius:11px;background:#fff}.org-service-item.is-inactive{opacity:.62}.org-service-item__main{display:flex;align-items:center;gap:9px;min-width:0}.org-service-item__mark{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;background:var(--ep-surface-2);color:var(--ep-texte-2);flex:0 0 auto}.org-service-item__main>div{display:grid;gap:1px;min-width:0}.org-service-item__main strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.org-service-item__main small{font-size:10px;color:var(--ep-texte-3)}.org-service-item__actions{display:flex;gap:5px}.org-service-item__actions .ep-b{width:31px;padding:0;justify-content:center}.org-empty{padding:28px 16px;text-align:center;color:var(--ep-texte-3);font-size:12px}

/* Switch vert unifié dans les fiches Organisation / Utilisateur */
.ui-switch-line{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 12px;border:1px solid var(--ep-ligne);border-radius:11px;background:var(--ep-surface-2);cursor:pointer}.ui-switch-line>span{display:grid;gap:2px;min-width:0}.ui-switch-line strong{font-size:12.5px}.ui-switch-line small{font-size:10.5px;line-height:1.35;color:var(--ep-texte-3)}
.ui-switch-line input.ep-switch{appearance:none;-webkit-appearance:none;position:relative;display:inline-block;flex:0 0 auto;width:44px;height:26px;padding:0;margin:0;border:0;border-radius:999px;background:var(--ep-ligne-forte);cursor:pointer;transition:background .16s ease}.ui-switch-line input.ep-switch::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(43,29,20,.28);transition:left .16s cubic-bezier(.32,.72,0,1)}.ui-switch-line input.ep-switch:checked{background:var(--ep-ok)}.ui-switch-line input.ep-switch:checked::after{left:21px}.ui-switch-line input.ep-switch:focus-visible{outline:2px solid var(--ep-corail);outline-offset:2px}.ui-switch-line--compact{margin-left:auto;padding:0;border:0;background:transparent}.ui-switch-line--compact>span small{display:none}
.org-mini-editor{display:grid;gap:16px}

/* Utilisateurs : vue annuaire */
.users-loading{padding:36px 0;color:var(--ep-texte-3)}
.users-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px}.users-kpis>span{display:grid;gap:2px;padding:12px 14px;border:1px solid var(--ep-ligne);border-radius:12px;background:#fff}.users-kpis strong{font-size:20px;line-height:1.1}.users-kpis small{font-size:10.5px;color:var(--ep-texte-3)}
.users-directory-card{margin:0;overflow:hidden}.users-directory-head{gap:14px}.users-directory-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.users-search{height:34px;display:flex;align-items:center;gap:6px;min-width:250px;padding:0 9px;border:1px solid var(--ep-ligne-forte);border-radius:8px;background:#fff;color:var(--ep-texte-3)}.users-search:focus-within{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}.users-search input{min-width:0;flex:1;border:0!important;outline:0!important;box-shadow:none!important;padding:0!important;height:auto!important;font-size:12px;background:transparent}.users-directory-actions>select{height:34px;min-width:120px;border:1px solid var(--ep-ligne-forte);border-radius:8px;background:#fff;padding:0 28px 0 9px;font-size:12px}
.users-table-wrap{overflow:auto}.ep-tbl--users-v125{table-layout:fixed;min-width:1040px}.ep-tbl--users-v125 th:nth-child(1){width:25%}.ep-tbl--users-v125 th:nth-child(2){width:17%}.ep-tbl--users-v125 th:nth-child(3){width:21%}.ep-tbl--users-v125 th:nth-child(4){width:24%}.ep-tbl--users-v125 th:nth-child(5){width:8%}.ep-tbl--users-v125 th:nth-child(6){width:1%}.ep-tbl--users-v125 td{vertical-align:middle;padding-top:11px;padding-bottom:11px}.ep-tbl--users-v125 tbody tr{cursor:default}.ep-tbl--users-v125 .actions{justify-content:flex-end}
.users-person{display:flex;align-items:center;gap:10px;min-width:0}.users-person>div{display:grid;gap:2px;min-width:0}.users-person strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.users-person>div>span{font-size:11px;color:var(--ep-texte-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.users-person small{display:flex;align-items:center;gap:4px;font-size:9.5px;color:var(--ep-texte-3)}
.users-org{display:grid;gap:2px;min-width:0}.users-org strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.users-org span{font-size:10.5px;color:var(--ep-texte-3)}
.users-contact{display:grid;gap:3px;min-width:0}.users-contact span{display:flex;align-items:center;gap:5px;min-width:0;font-size:10.8px;color:var(--ep-texte-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.users-contact svg{flex:0 0 auto}.users-access-list{display:flex;gap:4px;flex-wrap:wrap}.users-access-list .badge{max-width:100%;overflow:hidden;text-overflow:ellipsis}.users-state{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--ep-texte-3)}.users-state i{width:8px;height:8px;border-radius:50%;background:var(--ep-ligne-forte)}.users-state.is-active{color:var(--ep-ok)}.users-state.is-active i{background:var(--ep-ok);box-shadow:0 0 0 3px var(--ep-ok-voile)}.users-row-actions{display:flex;gap:5px}.users-row-actions .ep-b--danger{width:31px;padding:0;justify-content:center}

/* Fiche utilisateur */
.drawer.large:has(.user-editor){width:min(900px,100vw)}.drawer.large:has(.user-editor) .drawer-body{padding:16px 18px;background:var(--ep-canvas)}.user-editor{display:grid;gap:12px}.user-editor-identity,.user-editor-card{border:1px solid var(--ep-ligne);border-radius:13px;background:#fff;box-shadow:var(--ep-om-1)}.user-editor-identity{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;padding:16px}.user-photo-card{display:flex;flex-direction:column;align-items:center;gap:7px;padding:6px;border-right:1px solid var(--ep-ligne)}.user-photo-card .ep-b{justify-content:center}.user-editor-fields,.user-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;align-content:start}.user-editor-fields .full,.user-editor-grid .full{grid-column:1/-1}
.user-editor-card>header{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--ep-ligne)}.user-editor-card>header>span:first-child{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:var(--ep-surface-2);color:var(--ep-texte-2);flex:0 0 auto}.user-editor-card>header>div{display:grid;gap:1px;min-width:0;flex:1}.user-editor-card>header strong{font-size:12.5px}.user-editor-card>header small{font-size:10.5px;color:var(--ep-texte-3)}.user-editor-card>.user-editor-grid{padding:14px}.user-editor-grid--contacts{grid-template-columns:repeat(2,minmax(0,1fr))}.user-editor .field{min-width:0;margin:0}.user-editor .field label{font-size:10.5px}.user-editor .field input,.user-editor .field select{min-height:38px}
.user-access-panel{margin:0 14px 14px;border:1px solid var(--ep-ligne);border-radius:11px;overflow:hidden}.user-access-panel__head{display:grid;gap:2px;padding:10px 12px;background:var(--ep-surface-2);border-bottom:1px solid var(--ep-ligne)}.user-access-panel__head strong{font-size:11.5px}.user-access-panel__head span{font-size:10px;color:var(--ep-texte-3)}.user-access-panel .table-wrap{margin:0}.user-access-panel table{margin:0}.user-access-panel select{min-width:220px}

@media(max-width:1300px){.org-company-card{grid-template-columns:1fr}.org-directory-grid{grid-template-columns:1fr}.org-est-card{grid-template-columns:minmax(220px,1.2fr) minmax(160px,.8fr) minmax(150px,.7fr) auto}.org-est-card__state{display:none}.users-directory-actions{justify-content:flex-start}.users-directory-head{align-items:flex-start;flex-direction:column}}
@media(max-width:900px){.ep-reglages__corps--org-directory,.ep-reglages__corps--users-directory{padding-right:18px}.org-company-card__identity{grid-template-columns:42px 1fr}.org-company-card__identity .ep-b{grid-column:2;justify-self:start}.org-company-card__stats,.users-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.org-est-card{grid-template-columns:1fr auto}.org-est-card__contact,.org-est-card__integration{grid-column:1}.org-est-card__actions{grid-column:2;grid-row:1/4;align-self:center;flex-direction:column}.users-search{min-width:210px}.user-editor-identity{grid-template-columns:1fr}.user-photo-card{border-right:0;border-bottom:1px solid var(--ep-ligne);padding-bottom:14px}.user-editor-fields,.user-editor-grid,.user-editor-grid--contacts{grid-template-columns:1fr}.user-editor-fields .full,.user-editor-grid .full{grid-column:auto}}
@media(max-width:640px){.ep-reglages__corps--org-directory,.ep-reglages__corps--users-directory{padding:14px 10px 34px!important}.org-company-card{padding:12px}.org-company-card__identity{grid-template-columns:36px 1fr}.org-company-card__icon{width:36px;height:36px}.org-company-card__stats,.users-kpis{grid-template-columns:1fr 1fr}.users-directory-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.users-search{grid-column:1/-1;min-width:0}.users-directory-actions .ep-b{justify-content:center}.org-est-card{grid-template-columns:1fr}.org-est-card__actions{grid-column:1;grid-row:auto;flex-direction:row;justify-content:flex-start;flex-wrap:wrap}.org-service-item{grid-template-columns:1fr auto}.org-service-item__state{grid-column:1}.ui-switch-line{align-items:flex-start}.drawer.large:has(.user-editor) .drawer-body{padding:10px}.user-editor-card>header{align-items:flex-start;flex-wrap:wrap}.ui-switch-line--compact{width:100%;margin-left:42px;align-items:center}}

/* ══════════════════════════════════════════════════════════════════════════
   v5.69.0.126 — Organisation / Utilisateurs : densité + responsive réel
   - largeur utile plafonnée sur très grands écrans ;
   - rail de vues en tiroir dès que la navigation principale passe mobile ;
   - listes qui deviennent des cartes avant d'être comprimées ;
   - états actifs représentés par le switch vert canonique.
   ══════════════════════════════════════════════════════════════════════════ */
.ep-reglages__corps--org-directory,
.ep-reglages__corps--users-directory{
  padding:22px clamp(16px,2vw,30px) 40px!important;
  overflow-x:hidden;
}
.ep-reglages__corps--org-directory>*:not(.ep-reg-tete),
.ep-reglages__corps--users-directory>*:not(.ep-reg-tete){max-width:1480px;margin-left:auto;margin-right:auto}
.ep-reglages__corps--org-directory .ep-reg-tete,
.ep-reglages__corps--users-directory .ep-reg-tete{max-width:1480px;margin-left:auto;margin-right:auto}

/* Organisation : bandeau supérieur compact, le bouton ne s'étire jamais. */
.org-company-card{grid-template-columns:minmax(420px,1fr) minmax(390px,520px);gap:20px;padding:15px 16px}
.org-company-card__identity{grid-template-columns:42px minmax(220px,1fr) max-content;justify-content:start}
.org-company-card__identity .ep-b{justify-self:end;width:auto;min-width:118px}
.org-company-card__stats{min-width:0}
.org-company-card__stats>span{min-width:0;padding:8px 9px}
.org-company-card__stats small{overflow:hidden;text-overflow:ellipsis}

.org-directory-grid{grid-template-columns:minmax(0,2.15fr) minmax(330px,.85fr);gap:14px}
.org-est-card{grid-template-columns:minmax(260px,1.28fr) minmax(210px,.88fr) minmax(205px,.8fr) max-content max-content;gap:16px;padding:12px 13px}
.org-est-card__contact>span,.org-integration-state small{line-height:1.35}
.org-est-card__actions{align-items:center}
.org-est-card__actions .ep-b{height:32px}
.org-service-item{grid-template-columns:minmax(0,1fr) max-content max-content;padding:11px 12px}

/* Switch compact vert, utilisable directement dans les listes. */
.org-inline-switch{position:relative;display:inline-flex;align-items:center;gap:7px;min-width:86px;justify-content:flex-start;cursor:pointer;user-select:none;color:var(--ep-texte-2)}
.org-inline-switch input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}
.org-inline-switch__track{position:relative;width:36px;height:20px;border-radius:999px;background:var(--ep-ligne-forte);box-shadow:inset 0 0 0 1px rgba(43,29,20,.06);flex:0 0 auto}
.org-inline-switch__track::after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(43,29,20,.24)}
.org-inline-switch input:checked + .org-inline-switch__track{background:var(--ep-ok)}
.org-inline-switch input:checked + .org-inline-switch__track::after{left:19px}
.org-inline-switch input:focus-visible + .org-inline-switch__track{outline:2px solid var(--ep-corail);outline-offset:2px}
.org-inline-switch:has(input:disabled){opacity:.55;cursor:wait}
.org-inline-switch em{font-style:normal;font-size:11px;font-weight:700;white-space:nowrap}
.org-inline-switch input:checked ~ em{color:var(--ep-ok)}

/* Utilisateurs : liste responsive dédiée, sans min-width de tableau. */
.users-directory-card{overflow:visible}
.users-directory-card>.ep-bloc-r__c{overflow:hidden}
.users-list{width:100%;min-width:0}
.users-list-head,.users-list-row{display:grid;grid-template-columns:minmax(250px,1.3fr) minmax(175px,.82fr) minmax(225px,1.03fr) minmax(220px,1.08fr) 96px max-content;gap:14px;align-items:center}
.users-list-head{padding:9px 14px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2);color:var(--ep-texte-3);font-size:9.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.users-list-row{padding:11px 14px;border-bottom:1px solid var(--ep-ligne);background:#fff;min-width:0}
.users-list-row:last-child{border-bottom:0}
.users-list-row:hover{background:#fffdfa}
.users-list-row.is-inactive{opacity:.64}
.users-list-cell{min-width:0}
.users-list-cell--actions{justify-self:end}
.users-row-actions{justify-content:flex-end;flex-wrap:nowrap}
.users-contact{gap:3px}
.users-active-switch{min-width:82px}
.users-empty{padding:34px 18px;text-align:center;color:var(--ep-texte-3);font-size:12px}

/* Fiche utilisateur : meilleure occupation et groupes plus lisibles. */
.drawer.large:has(.user-editor){width:min(940px,100vw)}
.user-editor-identity{grid-template-columns:136px minmax(0,1fr);gap:16px}
.user-photo-card{justify-content:flex-start}
.user-editor-card>header{min-height:54px}
.user-editor-grid--contacts{grid-template-columns:repeat(3,minmax(0,1fr))}
.user-editor-grid--contacts .full{grid-column:1/-1}
.user-editor .field label{font-weight:700;letter-spacing:.025em;color:var(--ep-texte-2)}

/* Grand laptop : on cesse de compresser les cartes avant qu'elles deviennent illisibles. */
@media(max-width:1450px){
  .org-directory-grid{grid-template-columns:1fr}
  .org-service-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .users-list-head{display:none}
  .users-list-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;background:var(--ep-surface-2)}
  .users-list-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 18px;border:1px solid var(--ep-ligne);border-radius:12px;padding:13px;background:#fff;align-items:start}
  .users-list-row:last-child{border-bottom:1px solid var(--ep-ligne)}
  .users-list-cell{display:grid;gap:5px;align-content:start}
  .users-list-cell::before{content:attr(data-label);font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--ep-texte-3)}
  .users-list-cell--person{grid-column:1/-1}.users-list-cell--person::before,.users-list-cell--actions::before{display:none}
  .users-list-cell--state{align-self:end}.users-list-cell--actions{justify-self:end;align-self:end}
}

/* Navigation responsive : le rail de vues ne doit pas rester affiché quand le rail principal a déjà disparu. */
@media(max-width:1100px){
  .ep-segments{position:fixed;top:56px;left:0;bottom:0;width:min(280px,86vw);z-index:135;transform:translateX(-102%);box-shadow:2px 0 24px rgba(58,36,24,.18);background:var(--ep-surface)}
  .ep-segments.is-ouvert{transform:none}
  .ep-corps{grid-template-columns:1fr}
  #crmSegBascule{display:inline-flex}
  .ep-reglages__corps--org-directory,.ep-reglages__corps--users-directory{padding-left:18px!important;padding-right:18px!important}
  .org-company-card{grid-template-columns:1fr}
  .org-company-card__stats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .org-est-card{grid-template-columns:minmax(0,1fr) max-content}
  .org-est-card__identity{grid-column:1}.org-est-card__contact,.org-est-card__integration{grid-column:1}.org-inline-switch{grid-column:1;justify-self:start}.org-est-card__actions{grid-column:2;grid-row:1/5;align-self:center;flex-direction:column}
  .users-directory-head{align-items:stretch;flex-direction:column}
  .users-directory-actions{justify-content:flex-start;width:100%}
  .users-list-body{grid-template-columns:1fr}
  .org-service-list{grid-template-columns:1fr}
}
@media(min-width:1101px){#crmSegBascule{display:none}}

@media(max-width:900px){
  .users-list-body{grid-template-columns:1fr}
  .org-service-list{grid-template-columns:1fr}
  .user-editor-grid--contacts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .users-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:680px){
  .ep-reglages__corps--org-directory,.ep-reglages__corps--users-directory{padding:14px 10px 32px!important}
  .ep-reglages__corps--org-directory .ep-reg-tete,.ep-reglages__corps--users-directory .ep-reg-tete{margin-bottom:14px}
  .org-company-card{padding:12px;gap:12px}
  .org-company-card__identity{grid-template-columns:36px minmax(0,1fr)}
  .org-company-card__identity .ep-b{grid-column:1/-1;width:100%}
  .org-company-card__stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .org-est-card{grid-template-columns:1fr;gap:10px}
  .org-est-card__actions{grid-column:1;grid-row:auto;flex-direction:row;justify-content:flex-start;flex-wrap:wrap}
  .org-est-card__actions .ep-b{flex:1;min-width:0}
  .org-est-card__actions .ep-b--danger{flex:0 0 auto}
  .org-inline-switch{grid-column:1}
  .users-directory-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .users-search{grid-column:1/-1;width:100%;min-width:0}
  .users-directory-actions>select{min-width:0;width:100%}
  .users-directory-actions .ep-b{width:100%}
  .users-list-body{padding:8px}
  .users-list-row{grid-template-columns:1fr;gap:11px;padding:12px}
  .users-list-cell--person{grid-column:1}
  .users-list-cell--actions{justify-self:stretch}.users-row-actions{display:grid;grid-template-columns:1fr auto}.users-row-actions .ep-b:first-child{width:100%}
  .users-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.users-kpis>span{padding:10px 11px}.users-kpis strong{font-size:18px}
  .user-editor-identity{grid-template-columns:1fr}.user-photo-card{border-right:0;border-bottom:1px solid var(--ep-ligne);padding-bottom:14px}
  .user-editor-fields,.user-editor-grid,.user-editor-grid--contacts{grid-template-columns:1fr}.user-editor-grid--contacts .full{grid-column:1}
}
.settings-views-toggle{display:none}
@media(max-width:1100px){.settings-views-toggle{display:inline-flex;flex:0 0 auto}.ep-entete:has(.settings-views-toggle){gap:8px}.ep-entete:has(.settings-views-toggle) h1{margin-right:0}}
@media(max-width:520px){.settings-views-toggle{font-size:0;padding:6px 8px}.settings-views-toggle svg{margin:0}}

/* ══════════════════════════════════════════════════════════════════════════
   v5.69.0.127 — Organisation / Utilisateurs : responsive basé sur la place
   réelle disponible, pas sur une compression des colonnes.
   ══════════════════════════════════════════════════════════════════════════ */

/* Le rail Réglages coûte 196 px en plus du rail principal (238 px). Dès
   1360 px de viewport, on le transforme en tiroir : le contenu garde alors
   environ 900 px utiles au lieu de tomber sous 750/800 px. */
@media (min-width:1101px) and (max-width:1360px){
  .ep-corps{grid-template-columns:minmax(0,1fr)}
  .ep-segments{
    position:fixed;top:0;left:238px;bottom:0;width:272px;z-index:135;
    transform:translateX(-105%);transition:transform .18s ease;
    box-shadow:2px 0 24px rgba(58,36,24,.18);background:var(--ep-surface)
  }
  .ep-segments.is-ouvert{transform:none}
  .settings-views-toggle{display:inline-flex;flex:0 0 auto}
  .ep-entete:has(.settings-views-toggle){gap:8px}
  .ep-entete:has(.settings-views-toggle) h1{margin-right:0}
}

/* Sous 1100 px, le rail principal est déjà mobile : le tiroir Réglages part
   donc du bord gauche et sous la barre mobile. */
@media (max-width:1100px){
  .ep-segments{top:56px;left:0;width:min(288px,88vw)}
}

/* Le bandeau Organisation passe volontairement en deux étages avant d'être
   serré. Aucun compteur ou bouton ne doit sortir de la carte. */
@media (max-width:1360px){
  .ep-reglages__corps--org-directory,
  .ep-reglages__corps--users-directory{overflow-x:clip}
  .ep-reglages__corps--org-directory>*:not(.ep-reg-tete),
  .ep-reglages__corps--users-directory>*:not(.ep-reg-tete),
  .ep-reglages__corps--org-directory .ep-reg-tete,
  .ep-reglages__corps--users-directory .ep-reg-tete{width:100%;max-width:1180px}

  .org-company-card{grid-template-columns:minmax(0,1fr);gap:12px}
  .org-company-card__identity{grid-template-columns:42px minmax(0,1fr) max-content;min-width:0}
  .org-company-card__identity>div{min-width:0}
  .org-company-card__identity input{width:100%;max-width:none}
  .org-company-card__stats{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}
  .org-company-card__stats small{white-space:normal;line-height:1.15}

  .org-directory-grid{grid-template-columns:minmax(0,1fr)}
  .org-est-card{
    grid-template-columns:minmax(0,1fr) minmax(190px,auto);
    grid-template-areas:
      "identity state"
      "contact actions"
      "integration actions";
    gap:9px 16px;align-items:start
  }
  .org-est-card__identity{grid-area:identity}
  .org-est-card__contact{grid-area:contact}
  .org-est-card__integration{grid-area:integration}
  .org-est-card>.org-inline-switch{grid-area:state;justify-self:end;align-self:center}
  .org-est-card__actions{grid-area:actions;align-self:end;justify-content:flex-end;flex-wrap:wrap;max-width:250px}
  .org-est-card__actions .ep-b{flex:0 0 auto}

  .users-list-body{grid-template-columns:minmax(0,1fr)}
}

/* Tablette / petite fenêtre : une carte établissement devient un vrai bloc
   vertical. Les actions sont une rangée sous le contenu, jamais une colonne
   coincée hors écran. */
@media (max-width:860px){
  .org-company-card__identity{grid-template-columns:38px minmax(0,1fr)}
  .org-company-card__identity .ep-b{grid-column:1/-1;justify-self:stretch;width:100%}
  .org-company-card__stats{grid-template-columns:repeat(2,minmax(0,1fr))}

  .org-est-card{
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
      "identity state"
      "contact contact"
      "integration integration"
      "actions actions";
    gap:9px 12px
  }
  .org-est-card__actions{justify-content:flex-start;max-width:none;width:100%}
  .org-est-card__actions .ep-b:not(.ep-b--danger){flex:1 1 140px}
  .org-est-card__actions .ep-b--danger{flex:0 0 auto}

  .users-directory-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;width:100%}
  .users-search{grid-column:1/-1;width:100%;min-width:0;max-width:none}
}

/* Mobile : pas de largeur minimale cachée, pas d'élément en débordement. */
@media (max-width:620px){
  .ep-reglages__corps--org-directory,
  .ep-reglages__corps--users-directory{padding-inline:10px!important}
  .org-company-card__identity{grid-template-columns:1fr}
  .org-company-card__icon{display:none}
  .org-company-card__identity .ep-b{grid-column:1}
  .org-company-card__stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .org-est-card{grid-template-columns:minmax(0,1fr);grid-template-areas:"identity" "contact" "integration" "state" "actions"}
  .org-est-card>.org-inline-switch{justify-self:start}
  .org-est-card__actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:6px}
  .org-est-card__actions .ep-b{width:100%;min-width:0;padding-inline:8px}
  .org-est-card__actions .ep-b--danger{width:34px}
  .org-est-card__title>div{align-items:flex-start;flex-wrap:wrap}
  .org-est-card__title strong,.org-est-card__title small,.org-est-card__contact>span,.org-integration-state small{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
  .users-directory-actions{grid-template-columns:1fr 1fr}
  .users-directory-actions>select{grid-column:1/-1}
}

/* ══════════════════════════════════════════════════════════════════════════
   v5.69.0.128 — Organisation / Utilisateurs : layout fluide, aligné à gauche
   et responsive selon la largeur RÉELLE du contenu (container queries).
   Aucun max-width centré, aucune action masquée hors cadre.
   ══════════════════════════════════════════════════════════════════════════ */

/* Les vues annuaire occupent tout l'espace métier disponible. */
.ep-reglages__corps--org-directory,
.ep-reglages__corps--users-directory{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:20px 24px 40px!important;
  overflow-x:hidden!important;
  container-type:inline-size;
}
.ep-reglages__corps--org-directory > *,
.ep-reglages__corps--users-directory > *{
  box-sizing:border-box;
  width:100%;
  max-width:none!important;
  min-width:0;
  margin-left:0!important;
  margin-right:0!important;
}
.ep-reglages__corps--org-directory .ep-reg-tete,
.ep-reglages__corps--users-directory .ep-reg-tete{margin-bottom:16px}
.ep-reglages__corps--org-directory .ep-reg-tete p,
.ep-reglages__corps--users-directory .ep-reg-tete p{max-width:980px!important}

/* Organisation : tout est dans le flux, à gauche, et les deux répertoires
   sont empilés. On ne sacrifie plus la largeur des établissements pour une
   colonne Services vide ou trop étroite. */
.org-company-card{
  width:100%;
  grid-template-columns:minmax(360px,1fr) minmax(360px,auto);
  gap:16px;
  margin:0 0 14px!important;
  padding:14px 16px;
}
.org-company-card__identity{
  grid-template-columns:42px minmax(220px,1fr) max-content;
  gap:12px;
}
.org-company-card__identity input{width:100%;max-width:none}
.org-company-card__stats{grid-template-columns:repeat(4,minmax(78px,1fr));min-width:0}
.org-company-card__stats>span{min-width:0}
.org-company-card__stats small{white-space:normal;overflow:visible;text-overflow:clip}
.org-directory-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px;width:100%;min-width:0}
.org-directory-grid>.ep-bloc-r{width:100%;min-width:0;margin:0!important}
.org-directory-grid .ep-bloc-r__c--plein{padding:0}

/* Établissements : même grille pour l'en-tête et toutes les lignes. */
.org-est-directory{width:100%;min-width:0;container-type:inline-size}
.org-est-head,
.org-est-card{
  display:grid;
  grid-template-columns:minmax(260px,1.45fr) minmax(180px,.9fr) minmax(190px,.95fr) 92px minmax(230px,auto);
  gap:14px;
  align-items:center;
  min-width:0;
}
.org-est-head{
  padding:9px 14px;
  border-bottom:1px solid var(--ep-ligne);
  background:var(--ep-surface-2);
  color:var(--ep-texte-3);
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.org-est-head span:last-child{text-align:right;padding-right:2px}
.org-est-list{display:block!important;width:100%;min-width:0;padding:0}
.org-est-card{
  width:100%;
  border:0;
  border-bottom:1px solid var(--ep-ligne);
  border-radius:0;
  padding:12px 14px;
  background:#fff;
  box-shadow:none;
}
.org-est-card:last-child{border-bottom:0}
.org-est-card:hover{box-shadow:none;background:#fffdfa}
.org-est-card__identity,
.org-est-card__contact,
.org-est-card__integration,
.org-est-card__actions{min-width:0}
.org-est-card__title strong{font-size:12.5px}
.org-est-card__title small{font-size:10px}
.org-est-card__contact>span,.org-integration-state small{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.3}
.org-est-card>.org-inline-switch{min-width:0;width:max-content;justify-self:start}
.org-est-card__actions{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:6px;
  flex-wrap:nowrap;
  max-width:none!important;
  width:auto;
}
.org-est-card__actions .ep-b{flex:0 0 auto;min-height:31px;white-space:nowrap}
.org-est-card__actions .ep-b--danger{width:34px;padding-inline:0;justify-content:center}

/* Services : vraie grille alignée également. */
.org-service-directory{width:100%;min-width:0;container-type:inline-size}
.org-service-head,
.org-service-item{
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(120px,220px) 92px 86px;
  gap:14px;
  align-items:center;
  min-width:0;
}
.org-service-head{
  padding:9px 14px;
  border-bottom:1px solid var(--ep-ligne);
  background:var(--ep-surface-2);
  color:var(--ep-texte-3);
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.org-service-head span:last-child{text-align:right}
.org-service-list{display:block!important;padding:0;width:100%;min-width:0}
.org-service-item{padding:11px 14px;border:0;border-bottom:1px solid var(--ep-ligne);border-radius:0;box-shadow:none}
.org-service-item:last-child{border-bottom:0}
.org-service-item__code{font-size:11.5px;color:var(--ep-texte-2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.org-service-item>.org-inline-switch{min-width:0;width:max-content}
.org-service-item__actions{justify-self:end;display:flex;gap:5px}

/* Utilisateurs : annuaire pleine largeur et colonnes stables. */
.users-kpis{width:100%;grid-template-columns:repeat(4,minmax(120px,1fr));gap:9px;margin:0 0 14px}
.users-directory-card{width:100%;margin:0!important;overflow:hidden}
.users-directory-head{align-items:center;gap:12px}
.users-directory-head>div:first-child{min-width:220px}
.users-directory-actions{margin-left:auto;min-width:0;flex-wrap:wrap}
.users-search{min-width:220px;max-width:360px;flex:1 1 260px}
.users-list{width:100%;min-width:0;container-type:inline-size}
.users-list-body{display:block!important;width:100%;min-width:0;padding:0!important;background:transparent!important}
.users-list-head,
.users-list-row{
  display:grid!important;
  grid-template-columns:minmax(250px,1.25fr) minmax(175px,.8fr) minmax(220px,1fr) minmax(220px,1fr) 92px 138px;
  gap:14px;
  align-items:center;
  min-width:0;
}
.users-list-head{
  padding:9px 14px;
  border-bottom:1px solid var(--ep-ligne);
  background:var(--ep-surface-2);
  color:var(--ep-texte-3);
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.users-list-head span:last-child{text-align:right}
.users-list-row{
  width:100%;
  padding:11px 14px;
  border:0;
  border-bottom:1px solid var(--ep-ligne)!important;
  border-radius:0!important;
  background:#fff;
}
.users-list-row:last-child{border-bottom:0!important}
.users-list-row:hover{background:#fffdfa}
.users-list-cell{display:block!important;min-width:0}
.users-list-cell::before{display:none!important}
.users-list-cell--actions{justify-self:end!important;align-self:center!important}
.users-row-actions{display:flex!important;justify-content:flex-end;gap:6px;flex-wrap:nowrap}
.users-row-actions .ep-b:first-child{width:auto!important;white-space:nowrap}
.users-row-actions .ep-b--danger{width:34px;padding-inline:0;justify-content:center;flex:0 0 34px}
.users-active-switch{min-width:0;width:max-content}
.users-contact span{white-space:normal;overflow-wrap:anywhere}

/* Responsive selon la largeur de la zone de contenu, pas selon la fenêtre. */
@container (max-width: 920px){
  .org-company-card{grid-template-columns:minmax(0,1fr)}
  .org-company-card__stats{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@container (max-width: 1120px){
  .org-est-head{display:none}
  .org-est-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px;padding:10px!important;background:var(--ep-surface-2)}
  .org-est-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
      "identity state"
      "contact contact"
      "integration integration"
      "actions actions";
    gap:10px 14px;
    align-items:start;
    padding:13px;
    border:1px solid var(--ep-ligne)!important;
    border-radius:12px!important;
    background:#fff;
  }
  .org-est-card__identity{grid-area:identity}
  .org-est-card__contact{grid-area:contact}
  .org-est-card__integration{grid-area:integration}
  .org-est-card>.org-inline-switch{grid-area:state;justify-self:end}
  .org-est-card__actions{grid-area:actions;justify-content:flex-start;width:100%}
  .org-est-card__actions .ep-b:not(.ep-b--danger){flex:1 1 120px;justify-content:center}

  .users-list-head{display:none!important}
  .users-list-body{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px;padding:10px!important;background:var(--ep-surface-2)!important}
  .users-list-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
      "person state"
      "org org"
      "contact contact"
      "access access"
      "actions actions";
    gap:10px 14px;
    align-items:start;
    padding:13px;
    border:1px solid var(--ep-ligne)!important;
    border-radius:12px!important;
  }
  .users-list-cell{display:grid!important;gap:4px;align-content:start}
  .users-list-cell::before{display:block!important;content:attr(data-label);font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--ep-texte-3)}
  .users-list-cell--person{grid-area:person}.users-list-cell--person::before{display:none!important}
  .users-list-cell--org{grid-area:org}
  .users-list-cell--contact{grid-area:contact}
  .users-list-cell--access{grid-area:access}
  .users-list-cell--state{grid-area:state;justify-self:end}.users-list-cell--state::before{display:none!important}
  .users-list-cell--actions{grid-area:actions;justify-self:stretch!important}.users-list-cell--actions::before{display:none!important}
  .users-row-actions{width:100%;justify-content:flex-start}
  .users-row-actions .ep-b:first-child{flex:1 1 auto;justify-content:center}
}

@container (max-width: 720px){
  .org-company-card__identity{grid-template-columns:38px minmax(0,1fr)}
  .org-company-card__identity .ep-b{grid-column:1/-1;width:100%;justify-content:center}
  .org-company-card__stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .org-est-list{grid-template-columns:minmax(0,1fr)!important}
  .org-service-head{display:none}
  .org-service-list{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px;padding:8px!important;background:var(--ep-surface-2)}
  .org-service-item{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"service state" "code code" "actions actions";gap:8px 12px;padding:12px;border:1px solid var(--ep-ligne);border-radius:11px}
  .org-service-item__main{grid-area:service}.org-service-item__code{grid-area:code}.org-service-item>.org-inline-switch{grid-area:state;justify-self:end}.org-service-item__actions{grid-area:actions;justify-self:start}
  .users-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .users-list-body{grid-template-columns:minmax(0,1fr)!important}
}

@container (max-width: 520px){
  .org-company-card__identity{grid-template-columns:minmax(0,1fr)}
  .org-company-card__icon{display:none}
  .org-est-card{grid-template-columns:minmax(0,1fr);grid-template-areas:"identity" "state" "contact" "integration" "actions"}
  .org-est-card>.org-inline-switch{justify-self:start}
  .org-est-card__actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 34px;gap:6px}
  .org-est-card__actions .ep-b{min-width:0;width:100%;padding-inline:8px}
  .users-list-row{grid-template-columns:minmax(0,1fr);grid-template-areas:"person" "state" "org" "contact" "access" "actions"}
  .users-list-cell--state{justify-self:start}
}

/* À petite largeur de fenêtre, les vues de réglages passent en tiroir mais le
   contenu principal reste ancré à gauche et conserve toute la largeur. */
@media(max-width:1360px){
  .ep-reglages__corps--org-directory,
  .ep-reglages__corps--users-directory{padding-left:18px!important;padding-right:18px!important}
}
@media(max-width:680px){
  .ep-reglages__corps--org-directory,
  .ep-reglages__corps--users-directory{padding:14px 10px 32px!important}
}

/* ══════════════════════════════════════════════════════════════════════════
   v5.69.0.129 — mobile réel : cartes mono-colonne et actions compactes.
   Fallback viewport volontaire : certains contextes Safari / fenêtres étroites
   ne doivent pas dépendre uniquement des container queries.
   ══════════════════════════════════════════════════════════════════════════ */
@media (max-width:980px){
  .ep-reglages__corps--org-directory,
  .ep-reglages__corps--users-directory{
    padding:16px 12px 30px!important;
    overflow-x:hidden!important;
  }

  .org-company-card{
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    padding:12px!important;
  }
  .org-company-card__identity{
    grid-template-columns:38px minmax(0,1fr) auto!important;
    gap:9px!important;
  }
  .org-company-card__identity .ep-b{
    width:auto!important;
    min-height:34px!important;
    height:34px!important;
    align-self:end;
  }
  .org-company-card__stats{grid-template-columns:repeat(4,minmax(0,1fr))!important}

  .org-directory-grid{grid-template-columns:minmax(0,1fr)!important}
  .org-est-head{display:none!important}
  .org-est-list{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
    padding:8px!important;
    background:var(--ep-surface-2)!important;
  }
  .org-est-card{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "identity state"
      "contact contact"
      "integration integration"
      "actions actions"!important;
    gap:9px 12px!important;
    align-items:start!important;
    width:100%!important;
    min-width:0!important;
    padding:12px!important;
    border:1px solid var(--ep-ligne)!important;
    border-radius:11px!important;
    background:#fff!important;
  }
  .org-est-card__identity{grid-area:identity!important}
  .org-est-card__contact{grid-area:contact!important}
  .org-est-card__integration{grid-area:integration!important}
  .org-est-card>.org-inline-switch{grid-area:state!important;justify-self:end!important;align-self:start!important}
  .org-est-card__actions{
    grid-area:actions!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    width:100%!important;
    max-width:none!important;
    margin-top:1px!important;
  }
  .org-est-card__actions .ep-b,
  .org-est-card__actions .ep-b:not(.ep-b--danger){
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    height:32px!important;
    min-height:32px!important;
    padding:5px 9px!important;
    line-height:1!important;
  }
  .org-est-card__actions .ep-b--danger{
    flex:0 0 32px!important;
    width:32px!important;
    min-width:32px!important;
    padding:0!important;
  }

  .org-service-head{display:none!important}
  .org-service-list{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
    padding:8px!important;
    background:var(--ep-surface-2)!important;
  }
  .org-service-item{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"service state" "code code" "actions actions"!important;
    gap:8px 10px!important;
    padding:11px!important;
    border:1px solid var(--ep-ligne)!important;
    border-radius:11px!important;
  }
  .org-service-item__main{grid-area:service!important}
  .org-service-item__code{grid-area:code!important}
  .org-service-item>.org-inline-switch{grid-area:state!important;justify-self:end!important}
  .org-service-item__actions{grid-area:actions!important;justify-self:start!important;display:flex!important;gap:6px!important}
  .org-service-item__actions .ep-b{height:32px!important;min-height:32px!important;width:auto!important;min-width:32px!important}

  .users-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .users-directory-head{align-items:stretch!important}
  .users-directory-actions{width:100%!important;margin-left:0!important}
  .users-list-head{display:none!important}
  .users-list-body{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
    padding:8px!important;
    background:var(--ep-surface-2)!important;
  }
  .users-list-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "person state"
      "org org"
      "contact contact"
      "access access"
      "actions actions"!important;
    gap:9px 12px!important;
    padding:12px!important;
    border:1px solid var(--ep-ligne)!important;
    border-radius:11px!important;
    background:#fff!important;
  }
  .users-list-cell--person{grid-area:person!important}
  .users-list-cell--org{grid-area:org!important}
  .users-list-cell--contact{grid-area:contact!important}
  .users-list-cell--access{grid-area:access!important}
  .users-list-cell--state{grid-area:state!important;justify-self:end!important}
  .users-list-cell--actions{grid-area:actions!important;justify-self:stretch!important}
  .users-row-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    width:100%!important;
  }
  .users-row-actions .ep-b,
  .users-row-actions .ep-b:first-child{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    height:32px!important;
    min-height:32px!important;
    padding:5px 9px!important;
    line-height:1!important;
  }
  .users-row-actions .ep-b--danger{
    flex:0 0 32px!important;
    width:32px!important;
    min-width:32px!important;
    padding:0!important;
  }
}

@media (max-width:620px){
  .ep-reglages__corps--org-directory,
  .ep-reglages__corps--users-directory{padding:12px 8px 28px!important}
  .org-company-card__identity{grid-template-columns:minmax(0,1fr)!important}
  .org-company-card__icon{display:none!important}
  .org-company-card__identity .ep-b{width:100%!important;justify-content:center!important}
  .org-company-card__stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ep-bloc-r__t{gap:8px!important;padding:12px!important}
  .ep-bloc-r__t .ep-b{flex:0 0 auto!important}
  .org-est-card__title strong,
  .org-est-card__title small,
  .org-est-card__contact>span,
  .org-integration-state small{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere}
  .users-directory-actions{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:6px!important}
  .users-search{grid-column:1/-1!important;max-width:none!important;min-width:0!important}
  .users-directory-actions>select{grid-column:1/-1!important}
  .users-directory-actions .ep-b{min-width:0!important;justify-content:center!important}
}

/* ═══════════════════════════════════════════════════════════════════════
   v5.69.0.130 — RBAC v2 : rôles, permissions et exceptions utilisateur
   ═══════════════════════════════════════════════════════════════════════ */
.rbac-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 14px}
.rbac-kpis>span{display:flex;flex-direction:column;gap:2px;padding:13px 15px;border:1px solid var(--ep-ligne);border-radius:11px;background:#fff}
.rbac-kpis strong{font-size:1.35rem;line-height:1;color:var(--ep-texte)}
.rbac-kpis small{font-size:.72rem;color:var(--ep-texte-3)}
.rbac-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.rbac-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rbac-head-actions .users-search{min-width:250px}
.rbac-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.rbac-role-card{border:1px solid var(--ep-ligne);border-radius:12px;background:#fff;padding:14px;display:flex;flex-direction:column;gap:12px;min-width:0}
.rbac-role-card.is-inactive{opacity:.62;background:var(--ep-surface-2)}
.rbac-role-card>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.rbac-role-card>header>div{min-width:0}
.rbac-role-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.rbac-role-title strong{font-size:.95rem}.rbac-role-card p{margin:5px 0 0;color:var(--ep-texte-3);font-size:.76rem;line-height:1.35}
.rbac-users{white-space:nowrap;font-size:.7rem;font-weight:700;color:var(--ep-texte-2);background:var(--ep-surface-2);border:1px solid var(--ep-ligne);border-radius:999px;padding:5px 8px}
.rbac-role-domains{display:flex;flex-wrap:wrap;gap:5px}.rbac-domain{display:inline-flex;align-items:center;gap:5px;background:#fbf7f0;border:1px solid #eadfce;border-radius:999px;padding:4px 8px;font-size:.68rem;color:var(--ep-texte-2)}.rbac-domain b{font-size:.65rem}
.rbac-role-meta{font-size:.69rem;color:var(--ep-texte-3)}.rbac-role-card>footer{display:flex;gap:6px;flex-wrap:wrap;padding-top:9px;border-top:1px solid var(--ep-ligne)}
.rbac-editor{display:flex;flex-direction:column;gap:12px}.rbac-editor-toolbar{position:sticky;top:-1px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;padding:9px 0;border-bottom:1px solid var(--ep-ligne)}.rbac-editor-toolbar .users-search{max-width:430px;flex:1}.rbac-editor-toolbar>span{font-size:.72rem;font-weight:700;color:var(--ep-texte-3);white-space:nowrap}
.rbac-perm-groups{display:flex;flex-direction:column;gap:10px}.rbac-perm-group{border:1px solid var(--ep-ligne);border-radius:11px;background:#fff;overflow:hidden}.rbac-perm-group>header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;background:var(--ep-surface-2);border-bottom:1px solid var(--ep-ligne)}.rbac-perm-group>header>div:first-child{display:flex;flex-direction:column;gap:2px}.rbac-perm-group>header strong{font-size:.82rem}.rbac-perm-group>header small{font-size:.68rem;color:var(--ep-texte-3);font-weight:400}.rbac-perm-group>header>div:last-child{display:flex;gap:5px;flex-wrap:wrap}.ep-b--xs{min-height:27px!important;height:27px!important;padding:3px 7px!important;font-size:.67rem!important}
.rbac-perm-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.rbac-permission{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--ep-ligne);cursor:pointer;min-width:0}.rbac-permission:nth-child(odd){border-right:1px solid var(--ep-ligne)}.rbac-permission input{width:16px;height:16px;accent-color:var(--ep-accent)}.rbac-permission>span{min-width:0;display:flex;flex-direction:column;gap:2px}.rbac-permission b{font-size:.76rem}.rbac-permission small{font-size:.62rem;color:var(--ep-texte-3);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden;text-overflow:ellipsis}.rbac-scope{font-style:normal;font-size:.6rem;font-weight:700;border-radius:999px;padding:3px 6px;white-space:nowrap}.rbac-scope--global{background:#f1edf8;color:#654b83}.rbac-scope--etablissement{background:#eef4f8;color:#365f78}.rbac-scope--parc{background:#edf6e9;color:#447b35}
.user-permission-exceptions{margin-top:10px;border:1px solid var(--ep-ligne);border-radius:10px;background:#fff;overflow:hidden}.user-permission-exceptions>summary{cursor:pointer;display:flex;align-items:center;gap:7px;padding:11px 12px;font-weight:700;font-size:.78rem;background:var(--ep-surface-2)}.user-permission-exceptions>summary span{margin-left:auto;font-size:.62rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ep-texte-3)}.user-permission-exceptions>p{margin:0;padding:10px 12px 0;color:var(--ep-texte-3);font-size:.7rem}.user-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px}.user-perm-group{border:1px solid var(--ep-ligne);border-radius:9px;overflow:hidden}.user-perm-group>strong{display:block;padding:8px 10px;background:var(--ep-surface-2);font-size:.7rem}.user-perm-override{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:8px;align-items:center;padding:7px 9px;border-top:1px solid var(--ep-ligne)}.user-perm-override>span{display:flex;flex-direction:column;gap:1px;min-width:0}.user-perm-override b{font-size:.68rem}.user-perm-override small{font-size:.58rem;color:var(--ep-texte-3)}.user-perm-override select{min-width:0;height:30px;font-size:.66rem}
@media(max-width:1180px){.rbac-role-grid{grid-template-columns:1fr}.rbac-perm-list,.user-permission-grid{grid-template-columns:1fr}.rbac-permission:nth-child(odd){border-right:0}.rbac-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.rbac-kpis{grid-template-columns:1fr 1fr}.rbac-head{align-items:stretch;flex-direction:column}.rbac-head-actions{width:100%}.rbac-head-actions .users-search{min-width:0;max-width:none;width:100%;flex-basis:100%}.rbac-perm-group>header{align-items:flex-start;flex-direction:column}.rbac-permission{grid-template-columns:auto minmax(0,1fr);}.rbac-scope{grid-column:2;justify-self:start}.user-perm-override{grid-template-columns:1fr}.user-perm-override select{width:100%}}
/* RBAC — états protégés et permissions non délégables. */
.rbac-role-card--admin{background:linear-gradient(135deg,#fff 0%,#fbf6ed 100%);border-color:#dcccae;box-shadow:0 8px 22px rgba(94,69,35,.06)}
.rbac-role-card--admin .rbac-role-title strong{font-size:1rem}.rbac-role-card.is-protected{background:#fafafa}.rbac-role-card.is-protected>header,.rbac-role-card.is-protected .rbac-role-domains,.rbac-role-card.is-protected .rbac-role-meta{opacity:.72}
.rbac-permission.is-disabled{cursor:not-allowed;background:#fafafa;color:var(--ep-texte-3)}.rbac-permission.is-disabled input{cursor:not-allowed}.rbac-permission.is-disabled b{color:var(--ep-texte-3)}

/* ══════════════════════════════════════════════════════════════════════════
   v5.69.0.132 — RBAC : switches verts + responsive fluide
   - la page Rôles utilise toute la largeur métier disponible ;
   - la bibliothèque s'adapte automatiquement au conteneur ;
   - l'éditeur devient plein écran quand l'espace manque ;
   - les permissions utilisent le switch vert canonique, jamais une coche.
   ══════════════════════════════════════════════════════════════════════════ */
.ep-reglages__corps--rbac{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box;
  padding:22px clamp(14px,2vw,30px) 40px!important;
  overflow-x:hidden;
}
.ep-reglages__corps--rbac>.ep-reg-tete,
.ep-reglages__corps--rbac>.rbac-kpis,
.ep-reglages__corps--rbac>.rbac-panel,
.ep-reglages__corps--rbac>.ep-msg{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
  box-sizing:border-box;
}
.ep-reglages__corps--rbac .ep-reg-tete{margin-bottom:16px}
.ep-reglages__corps--rbac .ep-reg-tete p{max-width:980px}

.rbac-kpis{
  grid-template-columns:repeat(4,minmax(145px,1fr));
  gap:10px;
  margin-bottom:12px;
}
.rbac-kpis>span{min-width:0;padding:12px 14px}
.rbac-kpis strong{font-size:1.22rem}

.rbac-panel{margin-bottom:12px}
.rbac-panel>.ep-bloc-r__c{padding:12px}
.rbac-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:14px 18px;
}
.rbac-head>div:first-child{min-width:0}
.rbac-head .ep-s{max-width:760px}
.rbac-head-actions{
  display:grid;
  grid-template-columns:minmax(220px,360px) auto;
  align-items:center;
  gap:8px;
  min-width:0;
}
.rbac-head-actions .users-search{min-width:0;width:100%;max-width:none}

.rbac-role-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(330px,100%),1fr));
  gap:10px;
  width:100%;
  align-items:stretch;
}
.rbac-role-card{height:100%;box-sizing:border-box;padding:13px;gap:10px}
.rbac-role-card>header{min-width:0}
.rbac-role-card>header>div{min-width:0}
.rbac-role-card p{overflow-wrap:anywhere}
.rbac-role-card>footer{margin-top:auto;align-items:center}
.rbac-role-card>footer .ep-faible{line-height:1.35}

/* Éditeur de rôle : large sur desktop, plein écran dès que le viewport se resserre. */
.drawer.large:has(.rbac-editor){
  width:min(1180px,calc(100vw - 300px));
  max-width:100vw;
}
.drawer.large:has(.rbac-editor) .drawer-body{
  padding:14px 16px;
  background:var(--ep-canvas);
  overflow-x:hidden;
}
.drawer.large:has(.rbac-editor) .drawer-foot{background:#fff}
.rbac-editor{gap:10px;min-width:0}
.rbac-editor .user-editor-card{overflow:hidden}
.rbac-editor .user-editor-card>header{gap:10px}
.rbac-editor .user-editor-grid{
  grid-template-columns:minmax(180px,.9fr) minmax(260px,1.5fr) minmax(150px,.7fr);
  gap:10px 12px;
}
.rbac-editor-toolbar{
  top:-14px;
  padding:10px 0;
  gap:10px;
  background:var(--ep-canvas);
}
.rbac-editor-toolbar .users-search{max-width:520px;min-width:0}
.rbac-perm-groups{gap:9px}
.rbac-perm-group{border-radius:10px}
.rbac-perm-group>header{padding:10px 12px}
.rbac-perm-group>header>div:last-child{display:grid;grid-template-columns:repeat(3,auto);gap:5px}
.rbac-perm-list{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Permission = libellé + portée + switch. L'input reste un checkbox natif
   pour le code de sauvegarde, mais son rendu est exclusivement un switch. */
.rbac-permission{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 40px;
  gap:9px;
  align-items:center;
  min-height:58px;
  padding:9px 11px;
}
.rbac-permission__copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.rbac-permission__copy b{font-size:.76rem;line-height:1.25}
.rbac-permission__copy small{
  font-size:.61rem;
  color:var(--ep-texte-3);
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.rbac-permission input.rbac-permission-switch{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:relative;
  display:inline-block;
  width:38px!important;
  min-width:38px!important;
  height:22px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--ep-ligne-forte)!important;
  box-shadow:none!important;
  cursor:pointer;
  transition:background .16s ease!important;
  justify-self:end;
}
.rbac-permission input.rbac-permission-switch::after{
  content:"";
  position:absolute;
  top:3px;
  left:3px;
  width:16px;
  height:16px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 1px 3px rgba(43,29,20,.25);
  transition:left .16s cubic-bezier(.32,.72,0,1)!important;
}
.rbac-permission input.rbac-permission-switch:checked{background:var(--ep-ok)!important}
.rbac-permission input.rbac-permission-switch:checked::after{left:19px}
.rbac-permission input.rbac-permission-switch:focus-visible{outline:2px solid var(--ep-corail);outline-offset:2px}
.rbac-permission input.rbac-permission-switch:disabled{cursor:not-allowed;opacity:.48}
.rbac-permission.is-disabled{cursor:not-allowed}
.rbac-permission.is-disabled .rbac-scope{opacity:.65}

/* Les anciens styles de checkbox RBAC ne doivent jamais réapparaître. */
.rbac-permission input.rbac-permission-switch:checked,
.rbac-permission input.rbac-permission-switch:not(:checked){accent-color:transparent}

@media(max-width:1500px){
  .drawer.large:has(.rbac-editor){width:min(1080px,calc(100vw - 220px))}
  .rbac-role-grid{grid-template-columns:repeat(auto-fit,minmax(min(310px,100%),1fr))}
}

@media(max-width:1360px){
  .ep-reglages__corps--rbac{padding-left:18px!important;padding-right:18px!important}
  .drawer.large:has(.rbac-editor){width:min(1040px,calc(100vw - 72px))}
  .rbac-editor .user-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rbac-editor .user-editor-grid>.field:last-child{grid-column:1/-1}
}

@media(max-width:1050px){
  .drawer.large:has(.rbac-editor){width:100vw}
  .rbac-perm-list{grid-template-columns:1fr}
  .rbac-permission:nth-child(odd){border-right:0}
  .rbac-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rbac-role-grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}
}

@media(max-width:780px){
  .ep-reglages__corps--rbac{padding:14px 10px 30px!important}
  .ep-reglages__corps--rbac .ep-reg-tete{margin-bottom:13px}
  .rbac-head{grid-template-columns:1fr;align-items:stretch}
  .rbac-head-actions{grid-template-columns:1fr auto;width:100%}
  .rbac-head-actions .users-search{grid-column:1/-1}
  .rbac-role-grid{grid-template-columns:1fr}
  .rbac-role-card>header{display:grid;grid-template-columns:minmax(0,1fr) auto}
  .rbac-role-card>footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto}
  .rbac-role-card>footer .ep-b{justify-content:center;min-width:0}
  .rbac-role-card>footer .ep-faible{grid-column:1/-1}
  .drawer.large:has(.rbac-editor) .drawer-body{padding:10px}
  .rbac-editor .user-editor-grid{grid-template-columns:1fr}
  .rbac-editor .user-editor-grid>.field:last-child{grid-column:auto}
  .rbac-editor .user-editor-card>header{align-items:flex-start;flex-wrap:wrap}
  .rbac-editor .ui-switch-line--compact{width:auto;margin-left:auto}
  .rbac-editor-toolbar{top:-10px;display:grid;grid-template-columns:minmax(0,1fr) auto;padding:8px 0}
  .rbac-editor-toolbar .users-search{max-width:none}
  .rbac-perm-group>header{display:grid;grid-template-columns:1fr;align-items:start}
  .rbac-perm-group>header>div:last-child{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
  .rbac-perm-group>header>div:last-child .ep-b{justify-content:center;width:100%}
}

@media(max-width:520px){
  .rbac-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .rbac-kpis>span{padding:10px 11px}
  .rbac-kpis strong{font-size:1.05rem}
  .rbac-head-actions{grid-template-columns:1fr}
  .rbac-head-actions .ep-b{width:100%;justify-content:center}
  .rbac-role-card{padding:11px}
  .rbac-role-card>header{grid-template-columns:1fr;gap:7px}
  .rbac-users{justify-self:start}
  .rbac-role-card>footer{grid-template-columns:1fr 1fr}
  .rbac-role-card>footer .ep-b--danger{grid-column:auto;width:100%}
  .rbac-permission{
    grid-template-columns:minmax(0,1fr) 40px;
    grid-template-areas:"copy switch" "scope switch";
    gap:4px 9px;
    min-height:64px;
    padding:10px;
  }
  .rbac-permission__copy{grid-area:copy}
  .rbac-scope{grid-area:scope;justify-self:start}
  .rbac-permission input.rbac-permission-switch{grid-area:switch;align-self:center}
  .rbac-permission__copy small{white-space:normal;overflow-wrap:anywhere}
  .rbac-editor-toolbar{grid-template-columns:1fr}
  .rbac-editor-toolbar>span{justify-self:start}
  .rbac-perm-group>header>div:last-child{gap:4px}
  .ep-b--xs{font-size:.63rem!important;padding-inline:5px!important}
  .drawer.large:has(.rbac-editor) .drawer-foot{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px}
  .drawer.large:has(.rbac-editor) .drawer-foot .btn{width:100%;min-width:0}
}

/* ══════════════════════════════════════════════════════════════════════════
   v5.69.0.133 — RBAC : bibliothèque de rôles en liste + suppression claire
   ══════════════════════════════════════════════════════════════════════════ */
.rbac-role-list{
  width:100%;
  display:flex;
  flex-direction:column;
  gap:0;
  border:1px solid var(--ep-ligne);
  border-radius:11px;
  overflow:hidden;
  background:#fff;
}
.rbac-role-list-head,
.rbac-role-row{
  display:grid;
  grid-template-columns:minmax(250px,1.45fr) minmax(250px,1.15fr) 105px 90px minmax(250px,auto);
  gap:14px;
  align-items:center;
}
.rbac-role-list-head{
  padding:9px 12px;
  background:var(--ep-surface-2);
  border-bottom:1px solid var(--ep-ligne);
  color:var(--ep-texte-3);
  font-size:.61rem;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.rbac-role-list-head>span:nth-child(3),
.rbac-role-list-head>span:nth-child(4){text-align:center}
.rbac-role-list-head>span:last-child{text-align:right}
.rbac-role-row{
  min-width:0;
  padding:11px 12px;
  border-bottom:1px solid var(--ep-ligne);
  background:#fff;
}
.rbac-role-row:last-child{border-bottom:0}
.rbac-role-row.is-inactive{background:#fafafa;color:var(--ep-texte-3)}
.rbac-role-row.is-inactive .rbac-role-row__identity,
.rbac-role-row.is-inactive .rbac-role-row__permissions{opacity:.7}
.rbac-role-row.is-protected .rbac-role-row__identity,
.rbac-role-row.is-protected .rbac-role-row__permissions{opacity:.72}
.rbac-role-row--admin{background:linear-gradient(90deg,#fffdf9 0%,#fff 62%)}
.rbac-role-row__identity,
.rbac-role-row__permissions{min-width:0}
.rbac-role-row__identity p{
  margin:4px 0 0;
  max-width:680px;
  font-size:.7rem;
  line-height:1.35;
  color:var(--ep-texte-3);
  overflow-wrap:anywhere;
}
.rbac-role-row__permissions{display:flex;flex-direction:column;gap:5px}
.rbac-role-row__permissions .rbac-role-domains{gap:4px}
.rbac-role-row__permissions .rbac-domain{padding:3px 7px;font-size:.62rem}
.rbac-role-row__permissions>small{font-size:.62rem;color:var(--ep-texte-3)}
.rbac-role-row__users{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-width:0;
  line-height:1.1;
}
.rbac-role-row__users strong{font-size:.92rem}
.rbac-role-row__users span{margin-top:3px;color:var(--ep-texte-3);font-size:.6rem}
.rbac-role-row__state{display:flex;align-items:center;justify-content:center;gap:6px;font-size:.67rem;font-weight:700;white-space:nowrap}
.rbac-state-dot{width:8px;height:8px;border-radius:999px;background:var(--ep-ligne-forte);box-shadow:0 0 0 3px rgba(0,0,0,.025)}
.rbac-state-dot.is-active{background:var(--ep-ok)}
.rbac-state-dot.is-inactive{background:var(--ep-texte-3)}
.rbac-role-row__actions{
  min-width:0;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:6px;
  flex-wrap:nowrap;
}
.rbac-role-row__actions .ep-b{white-space:nowrap;min-width:0}
.rbac-role-row__actions .ep-b--danger{margin-left:2px}
.role-delete-flow{display:flex;flex-direction:column;gap:14px}
.role-delete-flow .field{margin:0}
.role-delete-flow select{width:100%}
.role-delete-flow small{display:block;margin-top:6px;color:var(--ep-texte-3);font-size:.7rem;line-height:1.4}

@media(max-width:1380px){
  .rbac-role-list-head,
  .rbac-role-row{grid-template-columns:minmax(220px,1.25fr) minmax(210px,1fr) 88px 78px minmax(126px,auto);gap:10px}
  .rbac-role-row__actions .ep-b span{display:none}
  .rbac-role-row__actions .ep-b{width:34px;min-width:34px;padding-inline:0!important;justify-content:center}
}
@media(max-width:1040px){
  .rbac-role-list{border:0;background:transparent;gap:8px;overflow:visible}
  .rbac-role-list-head{display:none}
  .rbac-role-row{
    border:1px solid var(--ep-ligne)!important;
    border-radius:10px;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
      "identity state"
      "permissions permissions"
      "users actions";
    gap:9px 12px;
    padding:12px;
  }
  .rbac-role-row__identity{grid-area:identity}
  .rbac-role-row__permissions{grid-area:permissions;padding-top:8px;border-top:1px solid var(--ep-ligne)}
  .rbac-role-row__users{grid-area:users;align-items:flex-start;flex-direction:row;gap:5px;justify-content:flex-start}
  .rbac-role-row__users strong{font-size:.75rem}.rbac-role-row__users span{margin:0;align-self:center}
  .rbac-role-row__state{grid-area:state;justify-content:flex-end}
  .rbac-role-row__actions{grid-area:actions}
  .rbac-role-row__actions .ep-b{width:auto;min-width:34px;padding-inline:9px!important}
  .rbac-role-row__actions .ep-b span{display:inline}
}
@media(max-width:640px){
  .rbac-role-row{
    grid-template-columns:1fr auto;
    grid-template-areas:
      "identity state"
      "permissions permissions"
      "users users"
      "actions actions";
  }
  .rbac-role-row__actions{justify-content:stretch;display:grid;grid-template-columns:1fr 1fr auto;width:100%}
  .rbac-role-row__actions .ep-b{width:100%;justify-content:center;padding-inline:8px!important}
  .rbac-role-row__actions .ep-b--danger{width:38px;min-width:38px;margin-left:0}
  .rbac-role-row__actions .ep-b--danger span{display:none}
  .rbac-role-row__permissions .rbac-role-domains{max-height:54px;overflow:hidden}
}
@media(max-width:430px){
  .rbac-role-row{grid-template-columns:1fr;grid-template-areas:"identity" "state" "permissions" "users" "actions"}
  .rbac-role-row__state{justify-content:flex-start}
  .rbac-role-row__actions{grid-template-columns:1fr 1fr 40px}
  .rbac-role-row__actions .ep-b span{display:inline}
  .rbac-role-row__actions .ep-b--danger span{display:none}
}

/* v5.69.0.134 — signatures Gmail personnelles vs boîtes partagées */
.sig-status-dot.is-shared{background:var(--ep-info)}
.sig-kind{display:inline-flex;align-items:center;vertical-align:middle;margin-left:5px;padding:2px 6px;border-radius:999px;font:800 8.5px var(--ep-f-ui);font-style:normal;letter-spacing:.02em}
.sig-kind.is-personal{background:color-mix(in srgb,var(--ep-ok) 13%,var(--ep-surface));color:var(--ep-vert)}
.sig-kind.is-shared{background:color-mix(in srgb,var(--ep-info) 12%,var(--ep-surface));color:var(--ep-info)}
.sig-account-row.is-shared{background:color-mix(in srgb,var(--ep-info) 2.5%,var(--ep-surface))}
.sig-sync-summary{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;margin:0 0 12px}
.sig-sync-summary>div{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--ep-ligne);border-radius:11px;background:var(--ep-surface)}
.sig-sync-summary strong{font:800 18px var(--ep-f-data);color:var(--ep-texte)}.sig-sync-summary span{font-size:9.5px;color:var(--ep-texte-3)}

.sig-shared-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;border:1px solid var(--ep-ligne);border-radius:14px;background:var(--ep-surface);margin-bottom:12px}
.sig-shared-head>div:first-child{display:grid;gap:4px;min-width:0}.sig-shared-head strong{font-size:14px}.sig-shared-head span{font-size:11px;line-height:1.45;color:var(--ep-texte-3);max-width:850px}
.sig-shared-head>div:last-child{display:flex;gap:7px;flex:0 0 auto}
.sig-shared-detected{border:1px solid color-mix(in srgb,var(--ep-info) 28%,var(--ep-ligne));border-radius:13px;background:color-mix(in srgb,var(--ep-info) 4%,var(--ep-surface));overflow:hidden;margin-bottom:12px}
.sig-shared-detected__head{display:grid;gap:3px;padding:11px 14px;border-bottom:1px solid var(--ep-ligne)}.sig-shared-detected__head strong{font-size:11.5px}.sig-shared-detected__head span{font-size:10px;color:var(--ep-texte-3)}
.sig-shared-candidate{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--ep-ligne)}.sig-shared-candidate:last-child{border-bottom:0}.sig-shared-candidate>div{display:grid;gap:2px;min-width:0}.sig-shared-candidate strong{font-size:11.5px}.sig-shared-candidate span,.sig-shared-candidate small{font-size:9.5px;color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sig-shared-table{display:grid;gap:8px;margin-bottom:12px}
.sig-shared-row{display:grid;grid-template-columns:minmax(245px,1.25fr) minmax(180px,.9fr) minmax(170px,.75fr) minmax(210px,.95fr) auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid var(--ep-ligne);border-radius:12px;background:var(--ep-surface)}
.sig-shared-row.is-inactive{opacity:.62}.sig-shared-identity{display:flex;align-items:center;gap:10px;min-width:0}.sig-shared-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--ep-info) 8%,var(--ep-surface-2));color:var(--ep-info);flex:0 0 auto}
.sig-shared-identity>div,.sig-shared-model,.sig-shared-users{display:grid;gap:2px;min-width:0}.sig-shared-identity strong,.sig-shared-model strong,.sig-shared-users strong{font-size:11.5px}.sig-shared-identity span,.sig-shared-identity small,.sig-shared-model span,.sig-shared-model small,.sig-shared-users span,.sig-shared-users small{font-size:9.5px;color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sig-shared-users strong{font:800 16px var(--ep-f-data)}
.sig-shared-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.sig-shared-actions .ep-b{min-height:30px;padding:0 8px;font-size:9.8px}
.sig-shared-form{display:grid;gap:14px}.sig-shared-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.sig-shared-form__grid .span2{grid-column:1/-1}.sig-shared-form__active{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface-2)}.sig-shared-form__active>div{display:grid;gap:2px}.sig-shared-form__active strong{font-size:11px}.sig-shared-form__active span{font-size:9.8px;color:var(--ep-texte-3)}
.sig-sync-history{border:1px solid var(--ep-ligne);border-radius:13px;background:var(--ep-surface);overflow:hidden}.sig-sync-history__head{display:grid;gap:2px;padding:11px 14px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}.sig-sync-history__head strong{font-size:11.5px}.sig-sync-history__head span{font-size:9.8px;color:var(--ep-texte-3)}
.sig-sync-log{display:grid}.sig-sync-log__row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 14px;border-bottom:1px solid var(--ep-ligne)}.sig-sync-log__row:last-child{border-bottom:0}.sig-sync-log__row>div{display:grid;gap:2px;min-width:0}.sig-sync-log__row strong{font-size:10.5px}.sig-sync-log__row small{font-size:9.3px;color:var(--ep-texte-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sig-sync-log__row em{font-size:9px;font-style:normal;font-weight:700;color:var(--ep-texte-3)}
.sig-empty--compact{min-height:90px;padding:20px}

@media(max-width:1380px){
  .sig-shared-row{grid-template-columns:minmax(220px,1.1fr) minmax(180px,.9fr) minmax(150px,.7fr) minmax(190px,.9fr)}
  .sig-shared-actions{grid-column:2/-1;justify-content:flex-start;margin-top:-2px}
}
@media(max-width:980px){
  .sig-sync-summary{grid-template-columns:1fr 1fr}
  .sig-shared-head{align-items:stretch;flex-direction:column}.sig-shared-head>div:last-child{justify-content:flex-start;flex-wrap:wrap}
  .sig-shared-row{grid-template-columns:1fr 1fr;align-items:start}.sig-shared-identity{grid-column:1/-1}.sig-shared-actions{grid-column:1/-1;margin-top:0}.sig-shared-row .sig-account-state{grid-column:auto}
}
@media(max-width:620px){
  .sig-sync-summary{grid-template-columns:1fr 1fr}.sig-sync-summary>div{padding:9px 10px}
  .sig-shared-candidate{align-items:stretch;flex-direction:column}.sig-shared-candidate .ep-b{align-self:flex-start}
  .sig-shared-row{grid-template-columns:1fr;padding:12px}.sig-shared-identity,.sig-shared-model,.sig-shared-users,.sig-shared-row .sig-account-state,.sig-shared-actions{grid-column:1}.sig-shared-actions{display:grid;grid-template-columns:1fr 1fr}.sig-shared-actions .ep-b{width:100%}
  .sig-shared-form__grid{grid-template-columns:1fr}.sig-shared-form__grid .span2{grid-column:1}.sig-shared-form__active{align-items:flex-start;flex-direction:column}
  .sig-sync-log__row{grid-template-columns:8px minmax(0,1fr)}.sig-sync-log__row em{grid-column:2}
}


/* ═══════════════════════════════════════════════════════════════════════
   v5.69.0.137 — Fiche collaborateur centrale
   ═══════════════════════════════════════════════════════════════════════ */
.drawer.large:has(.collab-editor){width:min(1120px,calc(100vw - 72px));max-width:100vw}
.drawer.large:has(.collab-editor) .drawer-body{padding:14px 16px 20px;background:var(--ep-canvas);overflow-x:hidden}
.collab-editor{gap:11px;min-width:0}
.collab-hero{display:grid;grid-template-columns:126px minmax(0,1fr) auto;gap:16px;align-items:start;padding:15px 16px;border:1px solid var(--ep-ligne);border-radius:13px;background:#fff;box-shadow:var(--ep-om-1);min-width:0}
.collab-hero .user-photo-card{border:0;padding:0;align-items:flex-start}
.collab-hero__main{display:grid;gap:10px;min-width:0}
.collab-hero__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}.collab-hero__fields .full{grid-column:1/-1}
.collab-hero__meta{display:flex;gap:6px;flex-wrap:wrap;min-width:0}
.collab-active{align-self:start;margin-top:2px}
.collab-editor-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:11px;align-items:start}
.collab-editor-grid>.user-editor-card{height:100%;min-width:0}
.collab-org-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.collab-google-card>header{align-items:center}.collab-google-card>header .ep-b{margin-left:auto;flex:0 0 auto}
.collab-google-body{padding:13px 14px}
.collab-google-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.collab-google-grid>div{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface-2);min-width:0}
.collab-google-grid small{font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ep-texte-3)}
.collab-google-grid strong{font-size:12px;overflow-wrap:anywhere}.collab-google-grid span{font-size:10px;color:var(--ep-texte-3);overflow-wrap:anywhere}.collab-google-grid .badge{justify-self:start;color:inherit}
.collab-google-empty{display:flex;gap:10px;align-items:center;padding:12px;border:1px dashed var(--ep-ligne-forte);border-radius:10px;background:var(--ep-surface-2);color:var(--ep-texte-3)}
.collab-google-empty>svg{flex:0 0 auto}.collab-google-empty>div{display:grid;gap:2px}.collab-google-empty strong{font-size:11.5px;color:var(--ep-texte-2)}.collab-google-empty span{font-size:10.5px;line-height:1.4}
.collab-access-card{min-width:0}
.collab-access-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:13px 14px 0}
.collab-access-summary>span{display:grid;gap:2px;padding:10px 11px;border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface-2)}.collab-access-summary strong{font-size:17px;line-height:1}.collab-access-summary small{font-size:9.5px;color:var(--ep-texte-3)}
.collab-account-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(220px,.8fr)!important}
.collab-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}
.collab-scope-role{display:grid;grid-template-columns:minmax(130px,.72fr) minmax(180px,1fr);gap:10px;align-items:center;padding:9px 10px;border:1px solid var(--ep-ligne);border-radius:9px;background:#fff;min-width:0}.collab-scope-role>span{display:grid;gap:2px;min-width:0}.collab-scope-role strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collab-scope-role small{font-size:9.5px;color:var(--ep-texte-3)}.collab-scope-role select{min-width:0;width:100%}
.collab-drawer-foot{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}.collab-drawer-foot>span{font-size:10.5px;color:var(--ep-texte-3)}
.users-org small{display:flex;align-items:center;gap:4px;margin-top:2px;font-size:9.5px;color:var(--ep-texte-3)}

@media(max-width:1280px){
  .drawer.large:has(.collab-editor){width:min(1040px,calc(100vw - 36px))}
  .collab-editor-grid{grid-template-columns:1fr}
  .collab-org-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .drawer.large:has(.collab-editor){width:100vw!important;max-width:100vw!important}
  .drawer.large:has(.collab-editor) .drawer-body{padding:10px}
  .collab-hero{grid-template-columns:104px minmax(0,1fr);gap:12px}.collab-active{grid-column:1/-1;justify-self:start;margin:0}
  .collab-org-grid,.collab-account-grid{grid-template-columns:1fr 1fr!important}.collab-org-grid>.field:last-child,.collab-account-grid>.field:last-child{grid-column:1/-1}
  .collab-google-grid{grid-template-columns:1fr 1fr}.collab-google-grid>div:last-child{grid-column:1/-1}
  .collab-scope-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .collab-hero{grid-template-columns:1fr;padding:12px}.collab-hero .user-photo-card{align-items:center}.collab-hero__fields{grid-template-columns:1fr}.collab-hero__fields .full{grid-column:1}
  .collab-org-grid,.collab-account-grid,.collab-google-grid{grid-template-columns:1fr!important}.collab-org-grid>.field:last-child,.collab-account-grid>.field:last-child,.collab-google-grid>div:last-child{grid-column:1}
  .collab-google-card>header{align-items:flex-start;flex-wrap:wrap}.collab-google-card>header .ep-b{width:100%;margin-left:42px;justify-content:center}
  .collab-access-summary{grid-template-columns:1fr 1fr}.collab-access-summary>span:last-child{grid-column:1/-1}
  .collab-scope-role{grid-template-columns:1fr;gap:6px}
  .collab-drawer-foot{align-items:stretch;flex-direction:column}.collab-drawer-foot .btn{width:100%}
}

/* ═══════════════════════════════════════════════════════════════════════
   v5.69.0.139 — Fiche collaborateur : flux vertical, Google/signatures,
   sécurité mot de passe et accès simplifiés
   ═══════════════════════════════════════════════════════════════════════ */
.collab-editor-grid{grid-template-columns:1fr!important}
.collab-editor-grid>.user-editor-card{height:auto}
.collab-org-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.user-editor-grid--contacts{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.collab-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.collab-google-loading{display:flex;align-items:center;gap:8px;min-height:74px;padding:14px;color:var(--ep-texte-3);font-size:11px}
.collab-google-association{display:grid;gap:11px}
.collab-google-association__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.collab-google-association__head>div{display:grid;gap:2px}.collab-google-association__head strong{font-size:12px}.collab-google-association__head span{font-size:10px;color:var(--ep-texte-3)}
.collab-google-association__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.collab-google-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.collab-signature-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.collab-signature-slot{display:grid;grid-template-rows:auto auto minmax(130px,1fr) auto;border:1px solid var(--ep-ligne);border-radius:11px;overflow:hidden;background:#fff;min-width:0}
.collab-signature-slot>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:11px 12px;border-bottom:1px solid var(--ep-ligne);background:var(--ep-surface-2)}
.collab-signature-slot>header>div{display:grid;gap:2px}.collab-signature-slot>header strong{font-size:11.5px}.collab-signature-slot>header span{font-size:9.5px;color:var(--ep-texte-3);line-height:1.35}
.collab-signature-slot__config{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;padding:10px 12px;border-bottom:1px solid var(--ep-ligne)}
.collab-signature-preview{padding:12px;min-height:120px;overflow:auto;background:#fff;line-height:1.25}
.collab-signature-preview img{max-width:100%;height:auto}
.collab-signature-slot>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-top:1px solid var(--ep-ligne);background:var(--ep-surface-2);font-size:9.5px;color:var(--ep-texte-3)}
.collab-signature-slot>footer>div{display:flex;gap:6px;flex-wrap:wrap}
.collab-gmail-current{margin-top:10px;border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface-2);overflow:hidden}
.collab-gmail-current>summary{cursor:pointer;padding:10px 12px;font-weight:700;font-size:10.5px}.collab-gmail-current>.collab-signature-preview{border-top:1px solid var(--ep-ligne)}.collab-gmail-current>.ep-b{margin:0 12px 12px}
.collab-security-panel{margin:0 14px 12px;padding:10px 12px;border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface-2);display:flex;align-items:center;justify-content:space-between;gap:12px}
.collab-security-panel>div{display:grid;gap:2px}.collab-security-panel strong{font-size:11.5px}.collab-security-panel span{font-size:9.5px;color:var(--ep-texte-3)}
.collab-password-form{margin:0 14px 14px;padding:12px;border:1px solid var(--ep-ligne-forte);border-radius:10px;background:#fff;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:10px;align-items:end}
.collab-password-form[hidden]{display:none!important}.collab-password-form .ep-b{min-height:38px;justify-content:center}
.collab-scope-head{display:flex!important;align-items:center;justify-content:space-between;gap:12px}
.collab-scope-head>div:first-child{display:grid;gap:2px}.collab-role-bulk{display:flex;align-items:center;gap:6px}.collab-role-bulk select{min-width:190px}
.user-access-advanced{margin:0 14px 14px;border:1px solid var(--ep-ligne);border-radius:11px;background:#fff;overflow:hidden}
.user-access-advanced>summary{cursor:pointer;display:flex;align-items:center;gap:7px;padding:11px 12px;font-size:11px;font-weight:800;background:var(--ep-surface-2)}.user-access-advanced>summary span{margin-left:auto;font-size:9px;color:var(--ep-texte-3);text-transform:uppercase;letter-spacing:.05em}
.user-access-panel--embedded{margin:10px!important}.user-access-panel--embedded .field{padding:10px 12px}.user-access-panel--embedded select{width:100%;min-width:0}
.user-access-advanced>.user-permission-exceptions{border:0;border-top:1px solid var(--ep-ligne);border-radius:0;margin:0}.user-access-advanced>.user-permission-exceptions>p{margin:0;padding:10px 12px;font-size:10px;color:var(--ep-texte-3)}
@media(max-width:900px){
  .collab-org-grid,.user-editor-grid--contacts,.collab-account-grid{grid-template-columns:1fr 1fr!important}
  .collab-signature-slots{grid-template-columns:1fr}
  .collab-password-form{grid-template-columns:1fr 1fr}.collab-password-form .ep-b{grid-column:1/-1}
  .collab-scope-head{align-items:stretch;flex-direction:column}.collab-role-bulk{width:100%}.collab-role-bulk select{flex:1;min-width:0}
}
@media(max-width:620px){
  .collab-org-grid,.user-editor-grid--contacts,.collab-account-grid,.collab-google-association__fields{grid-template-columns:1fr!important}
  .collab-google-actions{display:grid;grid-template-columns:1fr 1fr}.collab-google-actions .ep-b{width:100%;justify-content:center}.collab-google-actions .ep-b--danger{grid-column:1/-1}
  .collab-signature-slot__config{grid-template-columns:1fr}.collab-signature-slot__config .ep-b{width:100%;justify-content:center}
  .collab-signature-slot>footer{align-items:stretch;flex-direction:column}.collab-signature-slot>footer>div{display:grid;grid-template-columns:1fr 1fr}.collab-signature-slot>footer .ep-b{width:100%;justify-content:center}
  .collab-security-panel{align-items:stretch;flex-direction:column}.collab-security-panel .ep-b{width:100%;justify-content:center}
  .collab-password-form{grid-template-columns:1fr}
  .collab-role-bulk{display:grid;grid-template-columns:1fr auto}
}

/* v5.69.0.140 — champs téléphone internationaux */
.phone-field{display:grid;grid-template-columns:minmax(148px,.72fr) minmax(150px,1fr);gap:8px;align-items:center;width:100%}
.phone-field__country,.phone-field__number{min-width:0;width:100%}
.phone-field__country{font-variant-numeric:tabular-nums}
@media(max-width:640px){.phone-field{grid-template-columns:1fr}.phone-field__country{max-width:none}}

/* v5.69.0.140 — signatures collaborateur illimitées */
.collab-signature-library{display:flex;flex-direction:column;gap:12px}
.collab-signature-library__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:4px 0}
.collab-signature-library__head>div:first-child{display:flex;flex-direction:column;gap:3px}
.collab-signature-library__head>div:first-child span{font-size:12px;color:var(--ep-muted,#8f8378)}
.collab-signature-library__head>div:last-child{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.collab-signature-add{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(240px,1fr) auto;gap:10px;align-items:end;padding:12px;border:1px dashed var(--ep-border,#ddd5cd);border-radius:12px;background:#fbfaf8}
.collab-signature-add .hint{grid-column:1/-1}
.collab-signature-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.collab-signature-item{border:1px solid var(--ep-border,#ded7cf);border-radius:12px;background:#fff;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.collab-signature-item.is-default{box-shadow:0 0 0 1px #3d8b40 inset}
.collab-signature-item>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;border-bottom:1px solid #eee8e1}
.collab-signature-item>header>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.collab-signature-item>header>div span{font-size:11px;color:#8f8378;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.collab-signature-item>footer{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;border-top:1px solid #eee8e1;font-size:11px;color:#8f8378}
.collab-signature-item>footer>div{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.rm-signature-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.rm-item--signature:has(.rm-rte[contenteditable="false"]) .rm-signature-compose .conv-toolbar{opacity:.45;pointer-events:none}
.rm-item--signature:has(.rm-rte[contenteditable="false"]) .rm-rte{background:#faf9f7;cursor:default}
@media(max-width:900px){.collab-signature-items{grid-template-columns:1fr}.collab-signature-add{grid-template-columns:1fr}.collab-signature-library__head,.collab-signature-item>footer{flex-direction:column;align-items:stretch}.collab-signature-library__head>div:last-child,.collab-signature-item>footer>div{justify-content:flex-start}}

/* v5.69.0.140 — périodes d'activité */
.collab-activity-card>header{align-items:center}
.collab-activity-list{display:flex;flex-direction:column;gap:8px}
.collab-activity-row{display:grid;grid-template-columns:minmax(160px,1.2fr) minmax(145px,.75fr) minmax(145px,.75fr) auto auto;gap:10px;align-items:end;padding:10px;border:1px solid #e5ddd5;border-radius:10px;background:#fff}
.collab-activity-row .ui-switch-line{margin-bottom:2px}
.collab-activity-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}
.collab-activity-empty{padding:16px;border:1px dashed #ddd5cd;border-radius:10px;display:flex;flex-direction:column;gap:4px;color:#8f8378}
.collab-activity-empty strong{color:#3c332c}
@media(max-width:880px){.collab-activity-row{grid-template-columns:1fr 1fr}.collab-activity-row .field:first-child{grid-column:1/-1}.collab-activity-row .ui-switch-line{align-self:center}.collab-activity-row>button{justify-self:end}}
@media(max-width:560px){.collab-activity-row{grid-template-columns:1fr}.collab-activity-row .field:first-child{grid-column:auto}.collab-activity-row>button{justify-self:start}}

/* ═══════════════════════════════════════════════════════════════════════
   v5.69.0.141 — Passe UI Collaborateurs : rythme, alignements et
   responsive par largeur RÉELLE du composant.
   ═══════════════════════════════════════════════════════════════════════ */

/* Annuaire — une seule grammaire visuelle, jamais deux cartes étroites. */
.ep-reglages__corps--users-directory{
  --users-gap:12px;
}
.users-kpis>span{
  min-height:66px;
  justify-content:center;
  padding:12px 14px;
  border-radius:11px;
  box-shadow:none;
}
.users-directory-card{container-type:inline-size}
.users-directory-head{
  min-height:62px;
  padding:12px 14px!important;
}
.users-directory-head>div:first-child{display:grid;gap:2px;text-align:left}
.users-directory-head h3{margin:0;font-size:14px}
.users-directory-actions{gap:8px}
.users-directory-actions .ep-b,
.users-directory-actions>select,
.users-search{min-height:36px;height:36px}
.users-search{border-radius:9px}

.users-list-row{min-height:64px}
.users-person{gap:11px}
.users-person strong{font-size:12.5px;line-height:1.25}
.users-person>div>span{font-size:10.8px;line-height:1.3}
.users-org strong{font-size:11.5px;line-height:1.3}
.users-contact span{font-size:10.8px;line-height:1.35}
.users-access-list{gap:5px}
.users-row-actions .ep-b{min-height:32px;height:32px}

/* On passe directement d'une vraie liste à UNE carte par ligne. Deux cartes
   côte à côte donnent des colonnes artificiellement minuscules et une
   hiérarchie illisible. */
@container (max-width:1240px){
  .users-list-head{display:none!important}
  .users-list-body{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:9px!important;
    padding:9px!important;
    background:var(--ep-surface-2)!important;
  }
  .users-list-row{
    display:grid!important;
    grid-template-columns:minmax(230px,.95fr) minmax(0,1fr) minmax(0,1.05fr) auto;
    grid-template-areas:
      "person org contact state"
      "person access access actions";
    gap:10px 18px;
    align-items:center;
    padding:13px 14px;
    border:1px solid var(--ep-ligne)!important;
    border-radius:11px!important;
    background:#fff;
  }
  .users-list-cell{display:grid!important;gap:4px;align-content:start;min-width:0}
  .users-list-cell::before{
    display:block!important;
    content:attr(data-label);
    margin-bottom:1px;
    font-size:9px;
    line-height:1;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
    color:var(--ep-texte-3);
  }
  .users-list-cell--person{grid-area:person;align-self:start}.users-list-cell--person::before{display:none!important}
  .users-list-cell--org{grid-area:org}
  .users-list-cell--contact{grid-area:contact}
  .users-list-cell--access{grid-area:access}
  .users-list-cell--state{grid-area:state;justify-self:end}.users-list-cell--state::before{display:none!important}
  .users-list-cell--actions{grid-area:actions;justify-self:end!important}.users-list-cell--actions::before{display:none!important}
}

@container (max-width:860px){
  .users-list-row{
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
      "person state"
      "org org"
      "contact contact"
      "access access"
      "actions actions";
    gap:10px 14px;
  }
  .users-list-cell--state{align-self:start}
  .users-list-cell--actions{justify-self:stretch!important}
  .users-row-actions{width:100%;display:grid!important;grid-template-columns:minmax(0,1fr) 36px;gap:7px}
  .users-row-actions .ep-b:first-child{width:100%!important;justify-content:center}
}

@container (max-width:620px){
  .users-directory-head{padding:11px!important}
  .users-directory-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%;margin:0}
  .users-search{grid-column:1/-1!important;max-width:none!important;width:100%}
  .users-directory-actions>select{grid-column:1/-1;width:100%;min-width:0}
  .users-directory-actions .ep-b{width:100%;justify-content:center}
  .users-list-body{padding:7px!important;gap:7px!important}
  .users-list-row{padding:12px;grid-template-columns:minmax(0,1fr);grid-template-areas:"person" "state" "org" "contact" "access" "actions"}
  .users-list-cell--state{justify-self:start}
  .users-person strong,.users-person>div>span,.users-person small{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
}

/* Les KPI suivent eux aussi la largeur du contenu et non celle de l'écran. */
@container (max-width:760px){
  .users-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}
}
@container (max-width:420px){
  .users-kpis>span{min-height:58px;padding:9px 10px}
}

/* Fiche collaborateur — le tiroir est un composant responsive autonome. */
.drawer.large:has(.collab-editor) .drawer-body{container-type:inline-size}
.collab-editor{
  --collab-pad:16px;
  display:grid;
  gap:13px;
  width:100%;
  min-width:0;
}
.collab-hero,
.user-editor-card{
  border-color:var(--ep-ligne);
  border-radius:12px;
  box-shadow:none;
}
.collab-hero{padding:16px 17px;gap:15px}
.collab-hero__fields{gap:11px 13px}
.collab-hero__meta{gap:6px}

.user-editor-card>header{
  min-height:52px;
  padding:11px 15px;
  gap:10px;
  background:#fff;
}
.user-editor-card>header>span:first-child{width:30px;height:30px;border-radius:8px}
.user-editor-card>header strong{font-size:12.5px;line-height:1.25}
.user-editor-card>header small{font-size:10.5px;line-height:1.35}
.user-editor-card>.user-editor-grid{padding:15px;gap:13px 14px}
.user-editor .field{display:grid;align-content:start;gap:6px;min-width:0}
.user-editor .field label{margin:0;font-size:10px;line-height:1.2;font-weight:800;letter-spacing:.045em;text-transform:uppercase;color:var(--ep-texte-3)}
.user-editor .field input,
.user-editor .field select{min-height:40px;height:40px;border-radius:8px}
.user-editor .field .hint{margin-top:0;font-size:9.5px;line-height:1.4}

/* Le bloc Organisation reste compact sur grand tiroir. Les coordonnées ont
   volontairement seulement deux colonnes : un vrai champ téléphone a besoin
   d'espace horizontal. */
.collab-org-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.user-editor-grid--contacts{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.collab-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.collab-account-grid>.field:last-child{grid-column:1/-1}

/* Téléphone = un composant unique : pays/indicatif + numéro dans la même
   coque. Cela supprime l'effet de deux inputs mal alignés. */
.phone-field{
  display:grid!important;
  grid-template-columns:minmax(128px,40%) minmax(0,1fr)!important;
  gap:0!important;
  align-items:stretch!important;
  width:100%;
  min-height:40px;
  overflow:hidden;
  border:1px solid var(--ep-ligne-forte);
  border-radius:8px;
  background:#fff;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.phone-field:focus-within{border-color:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.phone-field__country,
.phone-field__number{
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:0!important;
  background:#fff!important;
}
.phone-field__country{
  border-right:1px solid var(--ep-ligne)!important;
  background:var(--ep-surface-2)!important;
  padding-left:10px!important;
  padding-right:26px!important;
  font-size:10.5px!important;
}
.phone-field__number{padding-inline:11px!important;font-variant-numeric:tabular-nums}
.phone-field__country:disabled,.phone-field__number:disabled{opacity:.65;background:var(--ep-surface-2)!important}

/* Périodes : grille stable, actions alignées à droite, puis empilement réel. */
.collab-activity-card>.collab-activity-list,
.collab-activity-card>#uActivityPeriods{padding:0 14px 2px}
.collab-activity-row{
  grid-template-columns:minmax(180px,1.15fr) minmax(150px,.8fr) minmax(150px,.8fr) max-content 36px;
  gap:10px 12px;
  padding:11px 12px;
  align-items:end;
  border-radius:9px;
}
.collab-activity-actions{padding:0 14px 14px;margin-top:10px}

/* Google/signatures — une hiérarchie claire : association d'abord,
   bibliothèque ensuite. */
.collab-google-body{padding:15px}
.collab-google-association{gap:13px}
.collab-google-association__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.collab-google-actions{gap:7px}
.collab-signature-library{padding-top:2px;gap:11px}
.collab-signature-library__head{padding:10px 0 2px;border-top:1px solid var(--ep-ligne)}
.collab-signature-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.collab-signature-item>header{padding:11px 12px}
.collab-signature-item>footer{padding:9px 12px}
.collab-signature-preview{min-height:110px;padding:12px}

/* Accès : mêmes espacements que les autres sections. */
.collab-access-summary{padding:14px 15px 0;gap:9px}
.collab-access-summary>span{min-height:62px;justify-content:center}
.collab-scope-grid{padding:11px 14px 14px;gap:9px}
.collab-security-panel{margin:0 14px 13px;padding:11px 12px}

/* Responsive du TIROIR selon sa largeur utile. */
@container (max-width:900px){
  .collab-hero{grid-template-columns:100px minmax(0,1fr);padding:14px}
  .collab-active{grid-column:1/-1;justify-self:start;margin:0}
  .collab-org-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .collab-org-grid>.field:last-child{grid-column:1/-1}
  .user-editor-grid--contacts{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .collab-account-grid{grid-template-columns:1fr!important}
  .collab-account-grid>.field:last-child{grid-column:1}
  .collab-google-association__fields{grid-template-columns:1fr!important}
  .collab-signature-items{grid-template-columns:1fr!important}
  .collab-activity-row{grid-template-columns:1fr 1fr auto}
  .collab-activity-row .field:first-child{grid-column:1/-1}
  .collab-activity-row .ui-switch-line{align-self:center}
  .collab-scope-grid{grid-template-columns:1fr}
}

@container (max-width:650px){
  .collab-editor{gap:9px}
  .collab-hero{grid-template-columns:1fr;padding:12px}
  .collab-hero .user-photo-card{align-items:flex-start;display:grid;grid-template-columns:auto auto auto;justify-content:start}
  .collab-hero__fields{grid-template-columns:1fr!important}
  .collab-hero__fields .full{grid-column:1}
  .collab-active{grid-column:1;margin-top:2px}
  .user-editor-card>header{padding:10px 11px;align-items:flex-start}
  .user-editor-card>.user-editor-grid{padding:12px}
  .collab-org-grid,.user-editor-grid--contacts,.collab-account-grid{grid-template-columns:1fr!important}
  .collab-org-grid>.field:last-child{grid-column:1}
  .phone-field{grid-template-columns:minmax(122px,42%) minmax(0,1fr)!important}
  .collab-activity-row{grid-template-columns:1fr!important}
  .collab-activity-row .field:first-child{grid-column:1}
  .collab-activity-row>button{justify-self:start}
  .collab-google-card>header{flex-wrap:wrap}
  .collab-google-card>header .ep-b{width:100%;margin:5px 0 0 40px;justify-content:center}
  .collab-google-actions{display:grid!important;grid-template-columns:1fr 1fr}
  .collab-google-actions .ep-b{width:100%;justify-content:center}
  .collab-google-actions .ep-b--danger{grid-column:1/-1}
  .collab-signature-library__head{flex-direction:column;align-items:stretch}
  .collab-signature-library__head>div:last-child{justify-content:flex-start}
  .collab-signature-add{grid-template-columns:1fr!important}
  .collab-signature-item>footer{align-items:stretch;flex-direction:column}
  .collab-signature-item>footer>div{justify-content:flex-start}
  .collab-access-summary{grid-template-columns:1fr 1fr}
  .collab-access-summary>span:last-child{grid-column:1/-1}
  .collab-scope-role{grid-template-columns:1fr}
  .collab-security-panel{align-items:stretch;flex-direction:column}
  .collab-security-panel .ep-b{width:100%;justify-content:center}
  .collab-password-form{grid-template-columns:1fr!important}
}

@container (max-width:440px){
  .phone-field{grid-template-columns:1fr!important}
  .phone-field__country{border-right:0!important;border-bottom:1px solid var(--ep-ligne)!important}
  .collab-google-actions{grid-template-columns:1fr}
  .collab-google-actions .ep-b--danger{grid-column:1}
  .collab-access-summary{grid-template-columns:1fr}
  .collab-access-summary>span:last-child{grid-column:1}
}

/* Une fenêtre visuellement étroite (notamment Retina) doit réellement ouvrir
   la fiche en plein écran. */
@media(max-width:1180px){
  .drawer.large:has(.collab-editor){width:100vw!important;max-width:100vw!important}
  .drawer.large:has(.collab-editor) .drawer-body{padding:10px 12px 16px}
}
@media(max-width:700px){
  .drawer.large:has(.collab-editor) .drawer-body{padding:8px}
  .drawer-head{padding:11px 13px}
  .drawer-foot{padding:9px 10px}
}


/* ═══════════════════════════════════════════════════════════════════════
   v5.69.0.142 — Fiche collaborateur : composition UI structurée.
   Objectif : supprimer collisions, vides artificiels et CTA collés en
   imposant une seule grammaire de section et un responsive par conteneur.
   ═══════════════════════════════════════════════════════════════════════ */
.drawer.large:has(.collab-editor){width:min(1020px,calc(100vw - 56px));max-width:100vw}
.drawer.large:has(.collab-editor) .drawer-body{padding:14px 16px 24px;overflow-x:hidden;scroll-padding-bottom:28px;container-type:inline-size}
.drawer.large:has(.collab-editor) .drawer-foot{background:#fff;box-shadow:0 -1px 0 var(--ep-ligne)}
.collab-editor{display:flex!important;flex-direction:column;gap:12px!important;width:100%;min-width:0}
.collab-editor>*{min-width:0}

/* Une coque de section unique. */
.collab-editor .collab-hero,
.collab-editor .user-editor-card{width:100%;min-width:0;margin:0!important;border:1px solid var(--ep-ligne)!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important;overflow:hidden}
.collab-editor .user-editor-card>header{display:grid!important;grid-template-columns:32px minmax(0,1fr) max-content;align-items:center!important;gap:11px!important;min-height:54px!important;padding:10px 14px!important;border-bottom:1px solid var(--ep-ligne)!important;background:#fff!important}
.collab-editor .user-editor-card>header>span:first-child{width:32px!important;height:32px!important;border-radius:9px!important;margin:0!important}
.collab-editor .user-editor-card>header>div{min-width:0;display:grid;gap:2px}
.collab-editor .user-editor-card>header strong{font-size:12.5px!important;line-height:1.25}
.collab-editor .user-editor-card>header small{font-size:10px!important;line-height:1.35;color:var(--ep-texte-3)}
.collab-editor .user-editor-card>header>.ep-b,
.collab-editor .user-editor-card>header>.badge{justify-self:end;margin:0!important;align-self:center}
.collab-editor .user-editor-card>.user-editor-grid,
.collab-editor .collab-google-body{padding:15px 16px!important}
.collab-editor .field{min-width:0;margin:0!important;display:grid;grid-template-rows:auto auto;align-content:start;gap:6px!important}
.collab-editor .field label{margin:0!important;min-height:12px;font-size:9.5px!important;line-height:1.2!important}
.collab-editor .field input,
.collab-editor .field select{width:100%;min-width:0;height:40px!important;min-height:40px!important;margin:0!important}
.collab-editor .field .hint{margin:0!important;padding-top:1px}

/* Identité. */
.collab-editor .collab-hero{display:grid!important;grid-template-columns:88px minmax(0,1fr) max-content!important;align-items:center!important;gap:14px!important;padding:14px 16px!important}
.collab-editor .collab-hero .user-photo-card{width:88px;min-width:88px;padding:0!important;border:0!important;gap:6px!important;align-items:center!important;justify-self:start}
.collab-editor .collab-hero .user-photo-card #uPhotoPrev{line-height:0}
.collab-editor .collab-hero .user-photo-card .ep-b{width:100%;justify-content:center}
.collab-editor .collab-hero__main{display:grid!important;gap:9px!important;min-width:0}
.collab-editor .collab-hero__fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px 12px!important}
.collab-editor .collab-hero__fields .full{grid-column:1/-1!important}
.collab-editor .collab-hero__meta{display:flex!important;gap:6px!important;flex-wrap:wrap;margin:0!important}
.collab-editor .collab-active{width:auto!important;margin:0!important;align-self:start!important;justify-self:end!important;white-space:nowrap}

/* Organisation, coordonnées et compte. */
.collab-editor .collab-org-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:start!important;gap:12px!important}
.collab-editor .user-editor-grid--contacts{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important;gap:12px 14px!important}
.collab-editor .collab-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important;gap:12px 14px!important}
.collab-editor .collab-account-grid>.field:last-child{grid-column:auto!important}

/* Téléphone : une seule coque. */
.collab-editor .phone-field{display:grid!important;grid-template-columns:150px minmax(0,1fr)!important;gap:0!important;min-width:0;width:100%;height:40px;min-height:40px;border:1px solid var(--ep-ligne-forte)!important;border-radius:8px!important;background:#fff;overflow:hidden}
.collab-editor .phone-field__country,
.collab-editor .phone-field__number{height:38px!important;min-height:38px!important;border:0!important;border-radius:0!important;box-shadow:none!important;margin:0!important}
.collab-editor .phone-field__country{border-right:1px solid var(--ep-ligne)!important;background:var(--ep-surface-2)!important}
.collab-editor .phone-field:focus-within{border-color:var(--ep-corail)!important;box-shadow:0 0 0 3px var(--ep-corail-voile)!important}

/* Périodes : actions séparées du contenu. */
.collab-editor .collab-activity-card>#uActivityPeriods,
.collab-editor .collab-activity-card>.collab-activity-list{padding:14px 16px 0!important}
.collab-editor .collab-activity-empty{margin:0!important;padding:13px 14px!important}
.collab-editor .collab-activity-actions{display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:wrap!important;padding:12px 16px 15px!important;margin:0!important}
.collab-editor .collab-activity-actions .ep-b{flex:0 0 auto}
.collab-editor .collab-activity-actions .hint{flex:1 1 320px;margin:0!important}
.collab-editor .collab-activity-list{gap:9px!important}
.collab-editor .collab-activity-row{display:grid!important;grid-template-columns:minmax(180px,1.2fr) 148px 148px max-content 36px!important;gap:10px!important;align-items:end!important;padding:11px!important;margin:0!important}
.collab-editor .collab-activity-row .ui-switch-line{margin:0 0 4px!important;align-self:end}
.collab-editor .collab-activity-row>button{width:36px!important;height:36px!important;min-height:36px!important;padding:0!important;justify-content:center}

/* Google : association -> actions -> bibliothèque. */
.collab-editor .collab-google-body{display:flex!important;flex-direction:column;gap:16px!important}
.collab-editor .collab-google-association{display:grid!important;gap:12px!important;padding:0 0 16px!important;margin:0!important;border-bottom:1px solid var(--ep-ligne)}
.collab-editor .collab-google-association__head{display:grid!important;grid-template-columns:minmax(0,1fr) max-content;gap:10px!important;align-items:start!important}
.collab-editor .collab-google-association__head>div{min-width:0}
.collab-editor .collab-google-association__fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;align-items:start!important}
.collab-editor .collab-google-actions{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;flex-wrap:wrap!important;min-height:34px}
.collab-editor .collab-google-actions .ep-b{margin:0!important;flex:0 0 auto;white-space:nowrap}
.collab-editor .collab-signature-library{display:flex!important;flex-direction:column!important;gap:12px!important;padding:0!important}
.collab-editor .collab-signature-library__head{display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;align-items:end!important;gap:12px!important;padding:0!important;margin:0!important;border:0!important}
.collab-editor .collab-signature-library__head>div:first-child{min-width:0}
.collab-editor .collab-signature-library__head>div:last-child{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;flex-wrap:wrap!important}
.collab-editor .collab-signature-library__head .ep-b{margin:0!important;white-space:nowrap}
.collab-editor .collab-signature-add{display:grid!important;grid-template-columns:minmax(160px,.7fr) minmax(220px,1fr) max-content!important;align-items:end!important;gap:10px 12px!important;padding:12px!important;margin:0!important}
.collab-editor .collab-signature-items{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
.collab-editor .collab-signature-item{width:100%;min-width:0;margin:0!important}
.collab-editor .collab-signature-item>header{display:grid!important;grid-template-columns:minmax(0,1fr) max-content;align-items:start!important;gap:12px!important;padding:11px 12px!important}
.collab-editor .collab-signature-preview{min-height:92px!important;max-height:260px;overflow:auto!important;padding:13px!important}
.collab-editor .collab-signature-item>footer{display:grid!important;grid-template-columns:minmax(0,1fr) max-content;align-items:center!important;gap:12px!important;padding:10px 12px!important}
.collab-editor .collab-signature-item>footer>div{display:flex!important;gap:7px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.collab-editor .collab-gmail-current{margin:0!important}
.collab-editor .collab-gmail-current>.ep-b{margin:0 12px 12px!important}

/* Compte & accès. */
.collab-editor .collab-access-summary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;padding:14px 16px 0!important;margin:0!important}
.collab-editor .collab-access-summary>span{min-height:58px!important;padding:9px 11px!important;justify-content:center!important}
.collab-editor .collab-security-panel{display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;align-items:center!important;gap:12px!important;margin:0 16px 14px!important;padding:11px 12px!important}
.collab-editor .collab-security-panel .ep-b{margin:0!important;white-space:nowrap}
.collab-editor .collab-password-form{margin:0 16px 14px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px 12px!important}
.collab-editor .collab-password-form .ep-b{grid-column:1/-1!important;justify-self:start!important;width:auto!important}
.collab-editor .user-access-panel{margin-left:16px!important;margin-right:16px!important}
.collab-editor .collab-scope-head{display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;align-items:center!important;gap:12px!important}
.collab-editor .collab-role-bulk{display:flex!important;align-items:center!important;gap:7px!important;min-width:0}
.collab-editor .collab-role-bulk select{width:190px!important;min-width:0!important}
.collab-editor .collab-scope-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;padding:10px 12px 12px!important}
.collab-editor .collab-scope-role{display:grid!important;grid-template-columns:minmax(170px,.7fr) minmax(220px,1fr)!important;align-items:center!important;gap:12px!important;padding:9px 10px!important}
.collab-editor .user-access-advanced{margin:0 16px 15px!important}

/* Responsive par largeur utile du tiroir. */
@container (max-width:820px){
  .collab-editor .collab-hero{grid-template-columns:80px minmax(0,1fr)!important;align-items:start!important}
  .collab-editor .collab-active{grid-column:1/-1!important;justify-self:start!important;margin-left:94px!important}
  .collab-editor .collab-org-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .collab-editor .collab-org-grid>.field:last-child{grid-column:1/-1!important}
  .collab-editor .user-editor-grid--contacts{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .collab-editor .collab-google-association__fields{grid-template-columns:1fr!important}
  .collab-editor .collab-signature-library__head{grid-template-columns:1fr!important;align-items:start!important}
  .collab-editor .collab-signature-library__head>div:last-child{justify-content:flex-start!important}
  .collab-editor .collab-activity-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) max-content 36px!important;grid-template-areas:"label label label label" "start end active delete"}
  .collab-editor .collab-activity-row>.field:nth-child(1){grid-area:label}
  .collab-editor .collab-activity-row>.field:nth-child(2){grid-area:start}
  .collab-editor .collab-activity-row>.field:nth-child(3){grid-area:end}
  .collab-editor .collab-activity-row>.ui-switch-line{grid-area:active}
  .collab-editor .collab-activity-row>button{grid-area:delete}
  .collab-editor .collab-account-grid{grid-template-columns:1fr!important}
  .collab-editor .collab-access-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .collab-editor .collab-scope-head{grid-template-columns:1fr!important;align-items:start!important}
  .collab-editor .collab-role-bulk{justify-self:start!important;width:100%!important}
}
@container (max-width:620px){
  .collab-editor .user-editor-card>header{grid-template-columns:32px minmax(0,1fr)!important;align-items:start!important;padding:10px 12px!important}
  .collab-editor .user-editor-card>header>.ep-b,
  .collab-editor .user-editor-card>header>.badge{grid-column:2!important;justify-self:start!important;margin-top:4px!important}
  .collab-editor .user-editor-card>.user-editor-grid,.collab-editor .collab-google-body{padding:13px!important}
  .collab-editor .collab-hero{grid-template-columns:1fr!important;padding:13px!important}
  .collab-editor .collab-hero .user-photo-card{width:auto;min-width:0;display:flex!important;flex-direction:row!important;align-items:center!important;justify-self:start!important}
  .collab-editor .collab-hero__fields{grid-template-columns:1fr!important}
  .collab-editor .collab-hero__fields .full{grid-column:1!important}
  .collab-editor .collab-active{grid-column:1!important;margin:0!important;justify-self:start!important}
  .collab-editor .collab-org-grid,.collab-editor .user-editor-grid--contacts{grid-template-columns:1fr!important}
  .collab-editor .collab-org-grid>.field:last-child{grid-column:1!important}
  .collab-editor .phone-field{grid-template-columns:138px minmax(0,1fr)!important}
  .collab-editor .collab-google-association__head{grid-template-columns:1fr!important}
  .collab-editor .collab-google-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}
  .collab-editor .collab-google-actions .ep-b{width:100%!important;justify-content:center!important}
  .collab-editor .collab-google-actions .ep-b--danger{grid-column:1/-1!important}
  .collab-editor .collab-signature-library__head>div:last-child{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .collab-editor .collab-signature-library__head .ep-b{width:100%!important;justify-content:center!important}
  .collab-editor .collab-signature-add{grid-template-columns:1fr!important}
  .collab-editor .collab-signature-add .ep-b{width:100%!important;justify-content:center!important}
  .collab-editor .collab-signature-item>header{grid-template-columns:1fr!important}
  .collab-editor .collab-signature-item>header .ui-switch-line{justify-self:start!important}
  .collab-editor .collab-signature-item>footer{grid-template-columns:1fr!important;align-items:start!important}
  .collab-editor .collab-signature-item>footer>div{justify-content:flex-start!important}
  .collab-editor .collab-activity-row{grid-template-columns:1fr 1fr!important;grid-template-areas:"label label" "start end" "active delete"!important}
  .collab-editor .collab-activity-row>.ui-switch-line{justify-self:start!important}
  .collab-editor .collab-activity-row>button{justify-self:end!important}
  .collab-editor .collab-access-summary{grid-template-columns:1fr 1fr!important}
  .collab-editor .collab-access-summary>span:last-child{grid-column:1/-1!important}
  .collab-editor .collab-security-panel{grid-template-columns:1fr!important;align-items:start!important}
  .collab-editor .collab-security-panel .ep-b{width:100%!important;justify-content:center!important}
  .collab-editor .collab-password-form{grid-template-columns:1fr!important;margin-left:13px!important;margin-right:13px!important}
  .collab-editor .user-access-panel{margin-left:13px!important;margin-right:13px!important}
  .collab-editor .collab-scope-role{grid-template-columns:1fr!important;gap:6px!important}
  .collab-editor .collab-role-bulk{display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important}
  .collab-editor .collab-role-bulk select{width:100%!important}
  .collab-editor .user-access-advanced{margin-left:13px!important;margin-right:13px!important}
}
@container (max-width:430px){
  .collab-editor .phone-field{grid-template-columns:1fr!important;height:auto!important}
  .collab-editor .phone-field__country{border-right:0!important;border-bottom:1px solid var(--ep-ligne)!important}
  .collab-editor .collab-google-actions{grid-template-columns:1fr!important}
  .collab-editor .collab-google-actions .ep-b--danger{grid-column:1!important}
  .collab-editor .collab-activity-row{grid-template-columns:1fr!important;grid-template-areas:"label" "start" "end" "active" "delete"!important}
  .collab-editor .collab-activity-row>button{justify-self:start!important}
  .collab-editor .collab-access-summary{grid-template-columns:1fr!important}
  .collab-editor .collab-access-summary>span:last-child{grid-column:1!important}
  .collab-editor .collab-role-bulk{grid-template-columns:1fr!important}
  .collab-editor .collab-role-bulk .ep-b{width:100%!important;justify-content:center!important}
}
@media(max-width:1120px){
  .drawer.large:has(.collab-editor){width:100vw!important;max-width:100vw!important}
  .drawer.large:has(.collab-editor) .drawer-body{padding:12px!important}
}
@media(max-width:620px){
  .drawer.large:has(.collab-editor) .drawer-body{padding:8px!important}
  .drawer.large:has(.collab-editor) .drawer-head{padding:10px 12px!important}
  .drawer.large:has(.collab-editor) .drawer-foot{padding:9px 10px!important}
}

/* ═══════════════════════════════════════════════════════════════════════
   v5.69.0.143 — Annuaire Collaborateurs : fallback responsive robuste.
   Ne dépend pas des container queries : Safari / webviews plus anciens
   reçoivent le même layout sans chevauchement.
   ═══════════════════════════════════════════════════════════════════════ */
@media (max-width: 900px){
  .ep-reglages__corps--users-directory{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
    overflow-x:hidden!important;
  }
  .ep-reglages__corps--users-directory > *{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .users-kpis{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .users-directory-card,
  .users-directory-card > .ep-bloc-r__c,
  .users-list,
  .users-list-body{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .users-list-head{display:none!important}
  .users-list-body{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:9px!important;
    padding:9px!important;
    background:var(--ep-surface-2)!important;
    overflow:hidden!important;
  }
  .users-list-row{
    display:grid!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "person state"
      "org org"
      "contact contact"
      "access access"
      "actions actions"!important;
    gap:10px 14px!important;
    padding:13px!important;
    border:1px solid var(--ep-ligne)!important;
    border-radius:11px!important;
    background:#fff!important;
    align-items:start!important;
    overflow:hidden!important;
  }
  .users-list-cell{min-width:0!important;max-width:100%!important}
  .users-list-cell--person{grid-area:person!important}
  .users-list-cell--org{grid-area:org!important}
  .users-list-cell--contact{grid-area:contact!important}
  .users-list-cell--access{grid-area:access!important}
  .users-list-cell--state{grid-area:state!important;justify-self:end!important;align-self:start!important;min-width:0!important}
  .users-list-cell--actions{grid-area:actions!important;justify-self:stretch!important;align-self:auto!important;min-width:0!important}
  .users-row-actions{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 36px!important;
    gap:7px!important;
    align-items:center!important;
  }
  .users-row-actions .ep-b:first-child{
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
  }
  .users-row-actions .ep-b--danger{
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
    justify-content:center!important;
  }
  .users-active-switch{
    min-width:0!important;
    max-width:100%!important;
  }
  .users-active-switch em{
    min-width:0!important;
    max-width:180px!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    line-height:1.2!important;
  }
}

@media (max-width: 620px){
  .ep-reglages__corps--users-directory{padding:12px 8px 28px!important}
  .users-kpis{gap:7px!important}
  .users-kpis>span{min-width:0!important;min-height:58px!important;padding:9px 10px!important}
  .users-directory-head{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:10px!important;
    padding:11px!important;
  }
  .users-directory-head>div:first-child{min-width:0!important;width:100%!important}
  .users-directory-actions{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:7px!important;
  }
  .users-directory-actions > *,
  .users-search,
  .users-directory-actions > select,
  .users-directory-actions .ep-b{
    grid-column:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .users-directory-actions .ep-b{justify-content:center!important}
  .users-list-body{padding:7px!important;gap:7px!important}
  .users-list-row{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:
      "person"
      "state"
      "org"
      "contact"
      "access"
      "actions"!important;
    gap:0!important;
    padding:12px!important;
  }
  .users-list-cell{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:9px 0!important;
  }
  .users-list-cell:first-child{padding-top:0!important}
  .users-list-cell:last-child{padding-bottom:0!important}
  .users-list-cell--org,
  .users-list-cell--contact,
  .users-list-cell--access,
  .users-list-cell--state,
  .users-list-cell--actions{
    border-top:1px solid var(--ep-ligne)!important;
  }
  .users-list-cell--state{
    justify-self:stretch!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
  .users-active-switch{
    display:grid!important;
    grid-template-columns:36px minmax(0,1fr)!important;
    gap:8px!important;
    align-items:center!important;
    width:100%!important;
  }
  .users-active-switch em{
    max-width:none!important;
    white-space:normal!important;
    line-height:1.25!important;
  }
  .users-row-actions{
    grid-template-columns:minmax(0,1fr) 40px!important;
    gap:8px!important;
  }
  .users-row-actions .ep-b,
  .users-row-actions .ep-b:first-child{
    min-height:36px!important;
    height:36px!important;
  }
  .users-row-actions .ep-b--danger{
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
  }
  .users-person,
  .users-person>div,
  .users-org,
  .users-contact,
  .users-access-list{min-width:0!important;max-width:100%!important}
  .users-person strong,
  .users-person span,
  .users-person small,
  .users-org strong,
  .users-org span,
  .users-org small,
  .users-contact span{
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere!important;
  }
}

@media (max-width: 390px){
  .users-kpis{grid-template-columns:minmax(0,1fr)!important}
  .users-directory-head{padding:10px!important}
  .users-list-body{padding:6px!important}
  .users-list-row{padding:11px!important}
}

/* Fallback viewport de la fiche collaborateur quand les container queries
   ne sont pas prises en charge. */
@media (max-width: 820px){
  .drawer.large:has(.collab-editor) .collab-editor .collab-org-grid,
  .drawer.large:has(.collab-editor) .collab-editor .user-editor-grid--contacts{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .drawer.large:has(.collab-editor) .collab-editor .collab-google-association__fields,
  .drawer.large:has(.collab-editor) .collab-editor .collab-account-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
}
@media (max-width: 620px){
  .drawer.large:has(.collab-editor) .collab-editor .collab-org-grid,
  .drawer.large:has(.collab-editor) .collab-editor .user-editor-grid--contacts,
  .drawer.large:has(.collab-editor) .collab-editor .collab-hero__fields,
  .drawer.large:has(.collab-editor) .collab-editor .collab-signature-add,
  .drawer.large:has(.collab-editor) .collab-editor .collab-account-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .drawer.large:has(.collab-editor) .collab-editor .phone-field{
    grid-template-columns:138px minmax(0,1fr)!important;
    width:100%!important;
    min-width:0!important;
  }
}
@media (max-width: 430px){
  .drawer.large:has(.collab-editor) .collab-editor .phone-field{grid-template-columns:minmax(0,1fr)!important;height:auto!important}
  .drawer.large:has(.collab-editor) .collab-editor .phone-field__country{border-right:0!important;border-bottom:1px solid var(--ep-ligne)!important}
}

/* ═══════════════════════════════════════════════════════════════════════
   v5.69.0.145 — Collaborateurs : layout déterministe par largeur mesurée
   Le JavaScript applique ces classes via ResizeObserver. On ne dépend plus
   d'un breakpoint de viewport ni du support des container queries.
   ═══════════════════════════════════════════════════════════════════════ */
.users-list.users-list--cards{
  min-width:0!important;
  width:100%!important;
  overflow:visible!important;
}
.users-list.users-list--cards .users-list-head{display:none!important}
.users-list.users-list--cards .users-list-body{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:9px!important;
  width:100%!important;
  min-width:0!important;
  padding:9px!important;
  background:var(--ep-surface-2)!important;
  overflow:visible!important;
}
.users-list.users-list--cards .users-list-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-areas:
    "person"
    "org"
    "contact"
    "access"
    "state"
    "actions"!important;
  gap:11px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  padding:13px!important;
  margin:0!important;
  border:1px solid var(--ep-ligne)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.users-list.users-list--cards .users-list-cell{
  display:grid!important;
  min-width:0!important;
  max-width:100%!important;
  gap:5px!important;
  align-content:start!important;
  justify-self:stretch!important;
  overflow:visible!important;
}
.users-list.users-list--cards .users-list-cell::before{
  display:block!important;
  content:attr(data-label)!important;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  color:var(--ep-texte-3)!important;
}
.users-list.users-list--cards .users-list-cell--person{grid-area:person!important}
.users-list.users-list--cards .users-list-cell--person::before,
.users-list.users-list--cards .users-list-cell--actions::before{display:none!important}
.users-list.users-list--cards .users-list-cell--org{grid-area:org!important}
.users-list.users-list--cards .users-list-cell--contact{grid-area:contact!important}
.users-list.users-list--cards .users-list-cell--access{grid-area:access!important}
.users-list.users-list--cards .users-list-cell--state{
  grid-area:state!important;
  justify-self:stretch!important;
  align-self:start!important;
  padding-top:2px!important;
}
.users-list.users-list--cards .users-list-cell--actions{
  grid-area:actions!important;
  justify-self:stretch!important;
  align-self:start!important;
  padding-top:1px!important;
}
.users-list.users-list--cards .users-active-switch{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  gap:8px!important;
  white-space:normal!important;
}
.users-list.users-list--cards .users-active-switch .org-inline-switch__track{
  flex:0 0 36px!important;
  margin-top:1px!important;
}
.users-list.users-list--cards .users-active-switch em{
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  line-height:1.35!important;
}
.users-list.users-list--cards .users-row-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 36px!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
  align-items:stretch!important;
}
.users-list.users-list--cards .users-row-actions .ep-b,
.users-list.users-list--cards .users-row-actions .ep-b:first-child{
  width:100%!important;
  min-width:0!important;
  height:36px!important;
  min-height:36px!important;
  margin:0!important;
  justify-content:center!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
}
.users-list.users-list--cards .users-row-actions .ep-b--danger{
  width:36px!important;
  min-width:36px!important;
  max-width:36px!important;
  padding:0!important;
}
.users-list.users-list--cards .users-person,
.users-list.users-list--cards .users-person>div,
.users-list.users-list--cards .users-org,
.users-list.users-list--cards .users-contact,
.users-list.users-list--cards .users-access-list{
  min-width:0!important;
  max-width:100%!important;
}
.users-list.users-list--cards .users-person strong,
.users-list.users-list--cards .users-person>div>span,
.users-list.users-list--cards .users-person small,
.users-list.users-list--cards .users-org strong,
.users-list.users-list--cards .users-org span,
.users-list.users-list--cards .users-contact span{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
}

/* Barre de filtres : elle change de structure selon la largeur mesurée de
   la carte, pas selon la fenêtre du navigateur. */
.users-directory-card.users-directory-card--compact .users-directory-head{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:10px!important;
}
.users-directory-card.users-directory-card--compact .users-directory-head>div:first-child{
  min-width:0!important;
  width:100%!important;
}
.users-directory-card.users-directory-card--compact .users-directory-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.users-directory-card.users-directory-card--compact .users-search{
  grid-column:1/-1!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}
.users-directory-card.users-directory-card--compact .users-directory-actions>select{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}
.users-directory-card.users-directory-card--compact .users-directory-actions>.ep-b{
  width:100%!important;
  min-width:0!important;
  justify-content:center!important;
  margin:0!important;
}
.users-directory-card.users-directory-card--narrow .users-directory-actions{
  grid-template-columns:minmax(0,1fr)!important;
}
.users-directory-card.users-directory-card--narrow .users-search,
.users-directory-card.users-directory-card--narrow .users-directory-actions>select,
.users-directory-card.users-directory-card--narrow .users-directory-actions>.ep-b{
  grid-column:1!important;
}
.users-list.users-list--narrow .users-list-body{padding:7px!important;gap:7px!important}
.users-list.users-list--narrow .users-list-row{padding:11px!important;gap:9px!important}

/* Sécurité finale : aucune largeur héritée de l'ancien tableau v125. */
.ep-reglages__corps--users-directory .users-list,
.ep-reglages__corps--users-directory .users-list-body,
.ep-reglages__corps--users-directory .users-list-row{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* ═══════════════════════════════════════════════════════════════════════
   v5.69.0.146 — Annuaire mobile : DOM dédié, sans héritage du tableau.
   Sous 820 px, admin.js rend des cartes réelles au lieu de tenter de
   transformer les six colonnes desktop avec du CSS.
   ═══════════════════════════════════════════════════════════════════════ */
.users-list.users-list--mobile-dom{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
.users-list.users-list--mobile-dom .users-list-head{display:none!important}
.users-list.users-list--mobile-dom .users-list-body{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  padding:8px!important;
  margin:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  background:var(--ep-surface-2)!important;
}
.users-mobile-card{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  border:1px solid var(--ep-ligne)!important;
  border-radius:12px!important;
  background:#fff!important;
}
.users-mobile-card.is-inactive{opacity:.66}
.users-mobile-card__person{
  display:block!important;
  min-width:0!important;
  padding:12px!important;
}
.users-mobile-card__section{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:7px!important;
  min-width:0!important;
  max-width:100%!important;
  padding:11px 12px!important;
  border-top:1px solid var(--ep-ligne)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.users-mobile-card__section>b{
  display:block!important;
  margin:0!important;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  color:var(--ep-texte-3)!important;
}
.users-mobile-card__section .users-active-switch{
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr)!important;
  align-items:center!important;
  justify-content:stretch!important;
  gap:9px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
.users-mobile-card__section .users-active-switch .org-inline-switch__track{
  width:36px!important;
  min-width:36px!important;
  max-width:36px!important;
  margin:0!important;
}
.users-mobile-card__section .users-active-switch em{
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
  line-height:1.3!important;
}
.users-mobile-card__section .users-person,
.users-mobile-card__section .users-org,
.users-mobile-card__section .users-contact,
.users-mobile-card__section .users-access-list,
.users-mobile-card__person .users-person,
.users-mobile-card__person .users-person>div{
  min-width:0!important;
  max-width:100%!important;
}
.users-mobile-card__section .users-contact span,
.users-mobile-card__section .users-org strong,
.users-mobile-card__section .users-org span,
.users-mobile-card__section .users-org small,
.users-mobile-card__person .users-person strong,
.users-mobile-card__person .users-person span,
.users-mobile-card__person .users-person small{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
}
.users-mobile-card__actions{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  padding:10px 12px 12px!important;
  border-top:1px solid var(--ep-ligne)!important;
  box-sizing:border-box!important;
}
.users-mobile-card__actions .users-row-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 40px!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
.users-mobile-card__actions .users-row-actions .ep-b{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  height:38px!important;
  min-height:38px!important;
  margin:0!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}
.users-mobile-card__actions .users-row-actions .ep-b--danger{
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
}
.users-directory-card.users-directory-card--mobile-dom{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
.users-directory-card.users-directory-card--mobile-dom .users-directory-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:10px!important;
  align-items:stretch!important;
  padding:11px!important;
}
.users-directory-card.users-directory-card--mobile-dom .users-directory-head>div:first-child,
.users-directory-card.users-directory-card--mobile-dom .users-directory-actions{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
}
.users-directory-card.users-directory-card--mobile-dom .users-directory-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:7px!important;
}
.users-directory-card.users-directory-card--mobile-dom .users-directory-actions>*,
.users-directory-card.users-directory-card--mobile-dom .users-search,
.users-directory-card.users-directory-card--mobile-dom .users-directory-actions>select,
.users-directory-card.users-directory-card--mobile-dom .users-directory-actions>.ep-b{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  grid-column:1!important;
  box-sizing:border-box!important;
}
.users-directory-card.users-directory-card--mobile-dom .users-directory-actions>.ep-b{
  justify-content:center!important;
}

@media (max-width:820px){
  .ep-reglages__corps--users-directory{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:12px 8px 28px!important;
    margin:0!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
  }
  .ep-reglages__corps--users-directory .users-kpis{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
}
@media (max-width:420px){
  .ep-reglages__corps--users-directory .users-kpis{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .users-list.users-list--mobile-dom .users-list-body{padding:6px!important;gap:6px!important}
  .users-mobile-card__person,
  .users-mobile-card__section{padding-left:10px!important;padding-right:10px!important}
  .users-mobile-card__actions{padding:9px 10px 10px!important}
}

/* ═══════════════════════════════════════════════════════════════════════
   v5.69.0.147 — Collaborateurs : état/actions séparés + Google/signatures
   La liste ne laisse plus la période d'activité empiéter sur les actions.
   Google Workspace et les signatures sont deux informations distinctes.
   ═══════════════════════════════════════════════════════════════════════ */
.ep-reglages__corps--users-directory .users-kpis--collaborateurs{
  grid-template-columns:repeat(5,minmax(105px,1fr))!important;
}
.ep-reglages__corps--users-directory .users-list-head,
.ep-reglages__corps--users-directory .users-list-row{
  grid-template-columns:minmax(230px,1.25fr) minmax(160px,.82fr) minmax(200px,1fr) minmax(145px,.72fr) minmax(150px,.74fr) minmax(175px,.82fr) 116px!important;
  gap:12px!important;
}
.ep-reglages__corps--users-directory .users-list-cell--state{
  min-width:0!important;
  width:100%!important;
  overflow:hidden!important;
}
.ep-reglages__corps--users-directory .users-active-switch{
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  white-space:normal!important;
}
.ep-reglages__corps--users-directory .users-active-switch .org-inline-switch__track{
  width:36px!important;
  min-width:36px!important;
  margin:0!important;
}
.ep-reglages__corps--users-directory .users-active-switch em{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
  line-height:1.25!important;
  font-size:10.5px!important;
}
.ep-reglages__corps--users-directory .users-list-cell--actions{
  min-width:116px!important;
  width:116px!important;
  justify-self:end!important;
}
.ep-reglages__corps--users-directory .users-row-actions{
  width:100%!important;
  min-width:0!important;
}
.users-google-state,.users-signature-state{
  display:grid;
  gap:2px;
  min-width:0;
}
.users-google-state strong,.users-signature-state strong{
  min-width:0;
  font-size:10.8px;
  line-height:1.25;
  color:var(--ep-texte-2);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.users-google-state span,.users-signature-state span,.users-data-empty{
  display:block;
  min-width:0;
  color:var(--ep-texte-3);
  font-size:9.8px;
  line-height:1.3;
  overflow-wrap:anywhere;
}
.users-google-state.is-linked strong{color:var(--ep-ok)}
.users-mobile-card__section .users-google-state strong,
.users-mobile-card__section .users-signature-state strong{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
}
.users-mobile-card__section--state{
  background:#fbfcf9!important;
}
.users-mobile-card__section--state .users-active-switch{
  margin:0!important;
}

/* Fiche collaborateur : Google et signatures deviennent deux cartes autonomes. */
.collab-editor .collab-signatures-body{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  padding:15px 16px!important;
  min-width:0!important;
}
.collab-editor .collab-google-card .collab-google-body{
  gap:12px!important;
}
.collab-editor .collab-google-association{
  padding-bottom:0!important;
  border-bottom:0!important;
}
.collab-editor .collab-google-summary{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  margin-top:2px!important;
}
.collab-editor .collab-google-summary>span{
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
  padding:10px 11px!important;
  border:1px solid var(--ep-ligne)!important;
  border-radius:9px!important;
  background:var(--ep-surface-2)!important;
}
.collab-editor .collab-google-summary small{
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  color:var(--ep-texte-3)!important;
}
.collab-editor .collab-google-summary strong{
  min-width:0!important;
  font-size:10.8px!important;
  overflow-wrap:anywhere!important;
}
.collab-editor .collab-signatures-card>header{
  background:#fff!important;
}
.collab-editor .collab-signatures-card .collab-signature-library{
  gap:11px!important;
}
.collab-editor .collab-signatures-card .collab-gmail-current{
  border:1px solid var(--ep-ligne)!important;
  border-radius:10px!important;
  overflow:hidden!important;
}

@container (max-width:820px){
  .collab-editor .collab-google-summary{grid-template-columns:1fr!important}
}
@media(max-width:1380px){
  .ep-reglages__corps--users-directory .users-kpis--collaborateurs{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .ep-reglages__corps--users-directory .users-kpis--collaborateurs{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .collab-editor .collab-signatures-body{padding:13px!important}
}
@media(max-width:430px){
  .ep-reglages__corps--users-directory .users-kpis--collaborateurs{
    grid-template-columns:1fr!important;
  }
}

/* v5.69.0.148 — téléphone international : composant premium unifié.
   Le pays reste un select natif pour l'accessibilité, mais sa présentation
   est entièrement intégrée au champ. */
.phone-field.phone-field--v148,
.collab-editor .phone-field.phone-field--v148{
  display:grid!important;
  grid-template-columns:minmax(156px,178px) minmax(0,1fr)!important;
  gap:0!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
  height:52px!important;
  min-height:52px!important;
  border:1px solid var(--ep-ligne-forte)!important;
  border-radius:11px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:0 1px 2px rgba(47,36,27,.025)!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.phone-field.phone-field--v148:hover:not(.is-disabled){border-color:#cbbeb2!important}
.phone-field.phone-field--v148:focus-within{
  border-color:var(--ep-corail)!important;
  box-shadow:0 0 0 3px var(--ep-corail-voile),0 1px 2px rgba(47,36,27,.04)!important;
}
.phone-field--v148 .phone-field__country-shell{
  position:relative!important;
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr) 16px!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
  height:50px!important;
  min-height:50px!important;
  padding:0 11px 0 12px!important;
  margin:0!important;
  border-right:1px solid var(--ep-ligne)!important;
  background:linear-gradient(180deg,#fbfaf8 0%,#f7f4f0 100%)!important;
  cursor:pointer!important;
  user-select:none!important;
}
.phone-field--v148 .phone-field__flag{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:28px!important;
  height:28px!important;
  border:1px solid rgba(91,74,60,.11)!important;
  border-radius:50%!important;
  background:#fff!important;
  font-size:17px!important;
  line-height:1!important;
  box-shadow:0 1px 2px rgba(44,33,24,.04)!important;
}
.phone-field--v148 .phone-field__country-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:1px!important;
  min-width:0!important;
  line-height:1.1!important;
}
.phone-field--v148 .phone-field__country-copy strong{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:var(--ep-texte-1)!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.phone-field--v148 .phone-field__country-copy small{
  display:block!important;
  margin:0!important;
  color:var(--ep-texte-3)!important;
  font-size:10.5px!important;
  font-weight:650!important;
  font-variant-numeric:tabular-nums!important;
}
.phone-field--v148 .phone-field__chevron{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:var(--ep-texte-3)!important;
  pointer-events:none!important;
}
.phone-field--v148 .phone-field__country-select{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  opacity:0!important;
  cursor:pointer!important;
  appearance:auto!important;
}
.phone-field--v148 .phone-field__number-shell{
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
  height:50px!important;
  min-height:50px!important;
  padding:0 14px!important;
  background:#fff!important;
}
.phone-field--v148 .phone-field__number{
  display:block!important;
  flex:1 1 auto!important;
  width:100%!important;
  min-width:0!important;
  height:48px!important;
  min-height:48px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  color:var(--ep-texte-1)!important;
  font-size:14px!important;
  font-weight:550!important;
  line-height:1!important;
  letter-spacing:.015em!important;
  font-variant-numeric:tabular-nums!important;
}
.phone-field--v148 .phone-field__number::placeholder{color:#afa39a!important;font-weight:450!important;opacity:1!important}
.phone-field--v148.is-disabled{background:var(--ep-surface-2)!important;opacity:.72!important}
.phone-field--v148.is-disabled .phone-field__country-shell,
.phone-field--v148.is-disabled .phone-field__number-shell{cursor:not-allowed!important;background:var(--ep-surface-2)!important}
.phone-field--v148 .phone-field__country-select:disabled,
.phone-field--v148 .phone-field__number:disabled{cursor:not-allowed!important}

/* À largeur moyenne on conserve le composant horizontal, mais le nom du pays
   s'efface avant de compresser le numéro. */
@container (max-width:520px){
  .collab-editor .phone-field.phone-field--v148{grid-template-columns:112px minmax(0,1fr)!important}
  .collab-editor .phone-field--v148 .phone-field__country-shell{grid-template-columns:28px minmax(0,1fr) 14px!important;gap:6px!important;padding-inline:9px!important}
  .collab-editor .phone-field--v148 .phone-field__country-copy strong{display:none!important}
  .collab-editor .phone-field--v148 .phone-field__country-copy small{font-size:11px!important}
}
@media(max-width:540px){
  .phone-field.phone-field--v148{grid-template-columns:112px minmax(0,1fr)!important}
  .phone-field--v148 .phone-field__country-shell{grid-template-columns:28px minmax(0,1fr) 14px!important;gap:6px!important;padding-inline:9px!important}
  .phone-field--v148 .phone-field__country-copy strong{display:none!important}
}


/* v5.69.0.149 — téléphone compact et cohérent avec les autres champs.
   Une seule bordure : sélecteur pays à gauche, indicatif + numéro à droite. */
.phone-field.phone-field--v149,
.collab-editor .phone-field.phone-field--v149{
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr)!important;
  gap:0!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid var(--ep-ligne-forte)!important;
  border-radius:var(--ep-r-1)!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:none!important;
  transition:border-color var(--ep-transition),box-shadow var(--ep-transition),background var(--ep-transition)!important;
}
.phone-field.phone-field--v149:hover:not(.is-disabled){border-color:#cbbeb2!important}
.phone-field.phone-field--v149:focus-within{
  border-color:var(--ep-corail)!important;
  box-shadow:0 0 0 3px var(--ep-corail-voile)!important;
}
.phone-field--v149 .phone-field__country-shell{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-width:0!important;
  width:64px!important;
  height:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:0 8px!important;
  border:0!important;
  border-right:1px solid var(--ep-ligne)!important;
  border-radius:0!important;
  background:var(--ep-surface-2)!important;
  cursor:pointer!important;
  user-select:none!important;
}
.phone-field--v149 .phone-field__flag{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:16px!important;
  line-height:1!important;
}
.phone-field--v149 .phone-field__chevron{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:12px!important;
  color:var(--ep-texte-3)!important;
  pointer-events:none!important;
}
.phone-field--v149 .phone-field__country-name{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.phone-field--v149 .phone-field__country-select{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  opacity:0!important;
  cursor:pointer!important;
  appearance:auto!important;
}
.phone-field--v149 .phone-field__number-shell{
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
  width:100%!important;
  height:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:0 10px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
}
.phone-field--v149 .phone-field__dial{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  height:20px!important;
  margin:0 9px 0 0!important;
  padding:0 9px 0 0!important;
  border-right:1px solid var(--ep-ligne)!important;
  color:var(--ep-texte-3)!important;
  font-family:var(--ep-f-data)!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1!important;
  font-variant-numeric:tabular-nums!important;
  white-space:nowrap!important;
}
.phone-field--v149 .phone-field__number,
.collab-editor .phone-field--v149 .phone-field__number{
  flex:1 1 auto!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  color:var(--ep-texte-1)!important;
  font-family:var(--ep-f-data)!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:0!important;
  font-variant-numeric:tabular-nums!important;
}
.phone-field--v149 .phone-field__number::placeholder{color:#aaa098!important;font-weight:400!important;opacity:1!important}
.phone-field--v149.is-disabled{background:var(--ep-canvas)!important;opacity:1!important}
.phone-field--v149.is-disabled .phone-field__country-shell,
.phone-field--v149.is-disabled .phone-field__number-shell{background:var(--ep-canvas)!important;cursor:not-allowed!important}
.phone-field--v149 .phone-field__country-select:disabled,
.phone-field--v149 .phone-field__number:disabled{cursor:not-allowed!important;color:var(--ep-texte-3)!important}
@media(max-width:390px){
  .phone-field.phone-field--v149,
  .collab-editor .phone-field.phone-field--v149{grid-template-columns:56px minmax(0,1fr)!important}
  .phone-field--v149 .phone-field__country-shell{width:56px!important;padding-inline:6px!important;gap:5px!important}
  .phone-field--v149 .phone-field__number-shell{padding-inline:8px!important}
  .phone-field--v149 .phone-field__dial{margin-right:7px!important;padding-right:7px!important;font-size:11.5px!important}
}

/* ═══════════════════════════════════════════════════════════════════════
   v5.69.0.150 — Fiche Collaborateur finalisée
   Périodes en timeline compacte, Google synthétique, signatures en liste,
   sécurité dans une modale dédiée. Pas de changement métier.
   ═══════════════════════════════════════════════════════════════════════ */

/* Périodes d'activité : une vraie timeline, pas un formulaire-tabulaire. */
.collab-editor .collab-activity-card>#uActivityPeriods{padding:14px 16px 0!important}
.collab-editor .collab-activity-list--v150{display:grid!important;gap:10px!important;padding:0!important}
.collab-editor .collab-activity-period{
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr)!important;
  gap:10px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid var(--ep-ligne)!important;
  border-radius:10px!important;
  background:#fff!important;
  overflow:hidden!important;
}
.collab-editor .collab-activity-period__rail{position:relative!important;background:var(--ep-surface-2)!important}
.collab-editor .collab-activity-period__rail:before{content:"";position:absolute;top:0;bottom:0;left:8px;width:1px;background:var(--ep-ligne-forte)}
.collab-editor .collab-activity-period__rail>span{position:absolute;top:15px;left:4px;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:#9c928a;box-shadow:0 0 0 1px var(--ep-ligne-forte)}
.collab-editor .collab-activity-period--active .collab-activity-period__rail>span{background:var(--ep-ok)}
.collab-editor .collab-activity-period--future .collab-activity-period__rail>span{background:#c58a22}
.collab-editor .collab-activity-period--past .collab-activity-period__rail>span,
.collab-editor .collab-activity-period--off .collab-activity-period__rail>span{background:#a69d96}
.collab-editor .collab-activity-period__content{display:grid!important;gap:10px!important;min-width:0!important;padding:11px 12px 12px 0!important}
.collab-editor .collab-activity-period__head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;min-width:0!important}
.collab-editor .collab-activity-period__head>div{display:grid!important;gap:2px!important;min-width:0!important}
.collab-editor .collab-activity-period__head strong{font-size:11.5px!important;line-height:1.25!important;overflow-wrap:anywhere!important}
.collab-editor .collab-activity-period__head span:not(.collab-activity-status){font-size:9.8px!important;color:var(--ep-texte-3)!important;font-family:var(--ep-f-data)!important}
.collab-editor .collab-activity-status{display:inline-flex!important;align-items:center!important;min-height:22px!important;padding:0 8px!important;border:1px solid var(--ep-ligne)!important;border-radius:999px!important;background:var(--ep-surface-2)!important;color:var(--ep-texte-2)!important;font-size:9.3px!important;font-weight:750!important;white-space:nowrap!important}
.collab-editor .collab-activity-status--active{border-color:#b9d7b6!important;background:#f0f8ef!important;color:#357a35!important}
.collab-editor .collab-activity-status--future{border-color:#ead7ae!important;background:#fff8e9!important;color:#9b6914!important}
.collab-editor .collab-activity-status--incomplete{border-color:#f0c6bd!important;background:#fff2ef!important;color:#b65343!important}
.collab-editor .collab-activity-period__fields{display:grid!important;grid-template-columns:minmax(0,1.3fr) minmax(145px,.7fr) minmax(145px,.7fr)!important;gap:10px!important;min-width:0!important}
.collab-editor .collab-activity-period__foot{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding-top:9px!important;border-top:1px solid var(--ep-ligne)!important}
.collab-editor .collab-activity-period__foot .ui-switch-line{margin:0!important}
.collab-editor .collab-activity-empty--v150{display:flex!important;align-items:center!important;gap:11px!important;padding:14px!important;background:var(--ep-surface-2)!important}
.collab-editor .collab-activity-empty__icon{display:grid!important;place-items:center!important;width:32px!important;height:32px!important;flex:0 0 32px!important;border:1px solid var(--ep-ligne)!important;border-radius:9px!important;background:#fff!important;color:var(--ep-texte-3)!important}
.collab-editor .collab-activity-empty--v150>div{display:grid!important;gap:2px!important;min-width:0!important}
.collab-editor .collab-activity-empty--v150 strong{font-size:11.5px!important}
.collab-editor .collab-activity-empty--v150 span:not(.collab-activity-empty__icon){font-size:10px!important;color:var(--ep-texte-3)!important}
.collab-editor .collab-activity-actions{border-top:0!important;padding-top:11px!important}

/* Google Workspace : d'abord l'état, puis la configuration repliable. */
.collab-editor .collab-google-body{padding:14px 16px!important}
.collab-editor .collab-google-v150{display:grid!important;gap:11px!important;min-width:0!important}
.collab-editor .collab-google-state-v150{display:grid!important;grid-template-columns:34px minmax(0,1fr) max-content!important;align-items:center!important;gap:10px!important;padding:11px 12px!important;border:1px solid var(--ep-ligne)!important;border-radius:10px!important;background:var(--ep-surface-2)!important;min-width:0!important}
.collab-editor .collab-google-state-v150__icon{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:9px!important;background:#fff!important;border:1px solid var(--ep-ligne)!important;color:var(--ep-texte-2)!important}
.collab-editor .collab-google-state-v150>div{display:grid!important;gap:2px!important;min-width:0!important}
.collab-editor .collab-google-state-v150 strong{font-size:11.5px!important;line-height:1.25!important;overflow-wrap:anywhere!important}
.collab-editor .collab-google-state-v150 span:not(.badge):not(.collab-google-state-v150__icon){font-size:9.8px!important;line-height:1.35!important;color:var(--ep-texte-3)!important;overflow-wrap:anywhere!important}
.collab-editor .collab-google-meta-v150{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
.collab-editor .collab-google-meta-v150>span{display:grid!important;gap:3px!important;min-width:0!important;padding:9px 10px!important;border:1px solid var(--ep-ligne)!important;border-radius:9px!important;background:#fff!important}
.collab-editor .collab-google-meta-v150 small{font-size:8.8px!important;font-weight:800!important;letter-spacing:.05em!important;text-transform:uppercase!important;color:var(--ep-texte-3)!important}
.collab-editor .collab-google-meta-v150 strong{min-width:0!important;font-size:10.5px!important;line-height:1.3!important;overflow-wrap:anywhere!important}
.collab-editor .collab-google-config-v150{border:1px solid var(--ep-ligne)!important;border-radius:9px!important;background:#fff!important;overflow:hidden!important}
.collab-editor .collab-google-config-v150>summary{display:flex!important;align-items:center!important;gap:7px!important;min-height:38px!important;padding:0 11px!important;cursor:pointer!important;font-size:10.5px!important;font-weight:700!important;color:var(--ep-texte-2)!important;list-style:none!important}
.collab-editor .collab-google-config-v150>summary::-webkit-details-marker{display:none}
.collab-editor .collab-google-config-v150[open]>summary{border-bottom:1px solid var(--ep-ligne)!important;background:var(--ep-surface-2)!important}
.collab-editor .collab-google-config-v150__body{display:grid!important;gap:11px!important;padding:12px!important}
.collab-editor .collab-google-config-v150 .collab-google-association__fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}

/* Signatures : liste compacte ; l'aperçu ne prend de place qu'à la demande. */
.collab-editor .collab-signature-library--v150{gap:10px!important}
.collab-editor .collab-signature-library__head--v150{align-items:center!important;padding-bottom:10px!important;border-bottom:1px solid var(--ep-ligne)!important}
.collab-editor .collab-signature-list-v150{display:grid!important;gap:7px!important;min-width:0!important}
.collab-editor .collab-signature-row{display:grid!important;grid-template-columns:minmax(220px,1fr) max-content max-content!important;grid-template-areas:"main default actions" "preview preview preview";align-items:center!important;gap:9px 12px!important;min-width:0!important;padding:9px 10px!important;border:1px solid var(--ep-ligne)!important;border-radius:9px!important;background:#fff!important}
.collab-editor .collab-signature-row.is-default{border-color:#b9d7b6!important;background:#fbfefb!important;box-shadow:inset 3px 0 0 var(--ep-ok)!important}
.collab-editor .collab-signature-row__main{grid-area:main;display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;align-items:center!important;gap:9px!important;min-width:0!important}
.collab-editor .collab-signature-row__icon{display:grid!important;place-items:center!important;width:30px!important;height:30px!important;border:1px solid var(--ep-ligne)!important;border-radius:8px!important;background:var(--ep-surface-2)!important;color:var(--ep-texte-3)!important}
.collab-editor .collab-signature-row__main>div{display:grid!important;gap:2px!important;min-width:0!important}
.collab-editor .collab-signature-row__main strong{font-size:11px!important;line-height:1.2!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.collab-editor .collab-signature-row__main span{font-size:9.5px!important;color:var(--ep-texte-3)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.collab-editor .collab-signature-default{grid-area:default;margin:0!important;white-space:nowrap!important}
.collab-editor .collab-signature-row__actions{grid-area:actions;display:flex!important;align-items:center!important;gap:6px!important;justify-self:end!important}
.collab-editor .collab-signature-row__actions .ep-b{margin:0!important;white-space:nowrap!important}
.collab-editor .collab-signature-row__preview{grid-area:preview;min-width:0!important;border-top:1px solid var(--ep-ligne)!important;padding-top:9px!important}
.collab-editor .collab-signature-row__preview[hidden]{display:none!important}
.collab-editor .collab-signature-row__preview .collab-signature-preview{min-height:0!important;max-height:300px!important;overflow:auto!important;padding:11px!important;border:1px solid var(--ep-ligne)!important;border-radius:8px!important;background:#fff!important}
.collab-editor .collab-signature-add--v150{grid-template-columns:minmax(0,.75fr) minmax(0,1fr) max-content!important;align-items:end!important;padding:11px!important;border:1px dashed var(--ep-ligne-forte)!important;border-radius:9px!important;background:var(--ep-surface-2)!important}
.collab-editor .collab-gmail-current--v150{margin-top:0!important}
.collab-editor .collab-gmail-current--v150>summary{font-size:10.5px!important}
.collab-editor .collab-gmail-current--v150 .collab-signature-preview{min-height:0!important;max-height:260px!important;overflow:auto!important}

/* Sécurité : la fiche n'embarque plus le formulaire mot de passe. */
.collab-editor .collab-security-panel--v150{margin:0 16px 15px!important;padding:11px 12px!important;border:1px solid var(--ep-ligne)!important;border-radius:10px!important;background:var(--ep-surface-2)!important}
.collab-password-modal{display:grid!important;gap:13px!important}
.collab-password-modal>.field{display:grid!important;gap:6px!important}
.collab-password-modal input{height:40px!important}

@container (max-width:760px){
  .collab-editor .collab-activity-period__fields{grid-template-columns:1fr 1fr!important}
  .collab-editor .collab-activity-period__fields>.field:first-child{grid-column:1/-1!important}
  .collab-editor .collab-google-meta-v150{grid-template-columns:1fr!important}
  .collab-editor .collab-google-config-v150 .collab-google-association__fields{grid-template-columns:1fr!important}
  .collab-editor .collab-signature-row{grid-template-columns:minmax(0,1fr) max-content!important;grid-template-areas:"main default" "actions actions" "preview preview"!important}
  .collab-editor .collab-signature-row__actions{justify-self:start!important}
  .collab-editor .collab-signature-add--v150{grid-template-columns:1fr!important}
}
@container (max-width:520px){
  .collab-editor .collab-activity-period{grid-template-columns:12px minmax(0,1fr)!important;gap:7px!important}
  .collab-editor .collab-activity-period__rail:before{left:5px!important}
  .collab-editor .collab-activity-period__rail>span{left:1px!important}
  .collab-editor .collab-activity-period__content{padding-right:9px!important}
  .collab-editor .collab-activity-period__head{display:grid!important;gap:7px!important}
  .collab-editor .collab-activity-status{justify-self:start!important}
  .collab-editor .collab-activity-period__fields{grid-template-columns:1fr!important}
  .collab-editor .collab-activity-period__fields>.field:first-child{grid-column:1!important}
  .collab-editor .collab-activity-period__foot{align-items:flex-start!important;flex-direction:column!important}
  .collab-editor .collab-google-state-v150{grid-template-columns:32px minmax(0,1fr)!important}
  .collab-editor .collab-google-state-v150>.badge{grid-column:2!important;justify-self:start!important}
  .collab-editor .collab-signature-row{grid-template-columns:1fr!important;grid-template-areas:"main" "default" "actions" "preview"!important;align-items:start!important}
  .collab-editor .collab-signature-default,.collab-editor .collab-signature-row__actions{justify-self:start!important}
  .collab-editor .collab-signature-row__actions{flex-wrap:wrap!important}
  .collab-editor .collab-security-panel--v150{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .collab-editor .collab-security-panel--v150 .ep-b{width:100%!important;justify-content:center!important}
}


/* ══════════════════════════════════════════════════════════════════════════
   v5.69.0.151 — NAVIGATION : ÉTAT ACTIF SANS APLAT ORANGE
   L'ancien fond corail plein donnait l'impression d'un overlay sur la case.
   Le rail garde la marque Expéria en accent, sans recouvrir le libellé.
   ══════════════════════════════════════════════════════════════════════════ */
.ep-rail__nav a.on,
.ep-rail__nav a.is-actif {
  position:relative;
  background:rgba(255,255,255,.72);
  color:var(--ep-encre);
  font-weight:650;
  box-shadow:inset 3px 0 var(--ep-corail), 0 1px 2px rgba(43,29,20,.06);
}
.ep-rail__nav a.on:hover,
.ep-rail__nav a.is-actif:hover {
  background:var(--ep-surface);
  color:var(--ep-encre);
}
.ep-rail__nav a.on > svg,
.ep-rail__nav a.is-actif > svg { color:var(--ep-corail-fonce); }
.ep-rail__nav a.on .ep-pastille,
.ep-rail__nav a.is-actif .ep-pastille {
  background:rgba(43,29,20,.08);
  color:var(--ep-texte-2);
}
.ep-rail__nav a.on .ep-pastille--chaud,
.ep-rail__nav a.is-actif .ep-pastille--chaud {
  background:var(--ep-corail);
  color:#fff;
}
/* Les titres de section deviennent de vrais repères de lecture, sans être
   assimilés à des boutons. */
.ep-rail__grp {
  padding:16px 10px 7px;
  font-size:10px;
  line-height:1.2;
  letter-spacing:.105em;
  color:var(--ep-texte-3);
}


/* ══════════════════════════════════════════════════════════════════════
   v5.69.0.153 — Avis en ligne / Google Business
   Centre de pilotage Google : aperçu, mapping des fiches et performance.
   ══════════════════════════════════════════════════════════════════════ */
.gbp-page{display:grid;gap:16px;min-width:0}
.gbp-head .gbp-connection{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 9px;border:1px solid var(--ep-ligne);border-radius:999px;background:var(--ep-surface-2);font-size:11px;font-weight:700;color:var(--ep-texte-3)}
.gbp-head .gbp-connection--ok{border-color:var(--ep-ok-bord);background:var(--ep-ok-voile);color:var(--ep-ok)}
.gbp-tabs{display:flex;align-items:center;gap:4px;min-width:0;padding:4px;border:1px solid var(--ep-ligne);border-radius:11px;background:var(--ep-surface);overflow-x:auto;scrollbar-width:none}
.gbp-tabs::-webkit-scrollbar{display:none}.gbp-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--ep-texte-3);font:600 11.5px var(--ep-f-ui);white-space:nowrap;cursor:pointer}
.gbp-tabs button:hover{background:var(--ep-surface-2);color:var(--ep-texte)}.gbp-tabs button.on{background:var(--ep-corail-voile);color:var(--ep-corail);box-shadow:inset 0 0 0 1px var(--ep-corail-bord, #F0C9BC)}
.gbp-content{display:grid;gap:14px;min-width:0}.gbp-loading{display:grid;gap:10px;padding:20px 0}.gbp-overview-head,.gbp-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-width:0}
.gbp-overview-head h2,.gbp-section-head h2{font:700 18px var(--ep-f-titre);letter-spacing:-.01em}.gbp-overview-head p,.gbp-section-head p{margin-top:3px;font-size:12px;line-height:1.45;color:var(--ep-texte-3)}
.gbp-overview-actions,.gbp-section-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;flex:0 0 auto}.gbp-overview-actions select,.gbp-section-head select{width:auto;min-width:150px}
.gbp-alert{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid var(--ep-info-bord);border-radius:10px;background:var(--ep-info-voile)}.gbp-alert--warning{border-color:var(--ep-attn-bord);background:var(--ep-attn-voile)}
.gbp-alert>div{display:flex;align-items:center;gap:10px;min-width:0}.gbp-alert>div>svg{flex:none}.gbp-alert span{display:grid;gap:2px}.gbp-alert strong{font-size:11.5px}.gbp-alert small{font-size:10.5px;line-height:1.4;color:var(--ep-texte-3)}
.gbp-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gbp-kpi{display:grid;gap:4px;padding:13px 14px;border:1px solid var(--ep-ligne);border-radius:11px;background:var(--ep-surface);box-shadow:var(--ep-om-1);min-width:0}
.gbp-kpi>span{font-size:9.5px;font-weight:800;letter-spacing:.055em;text-transform:uppercase;color:var(--ep-texte-3)}.gbp-kpi>strong{font:600 22px var(--ep-f-data);letter-spacing:-.03em;overflow-wrap:anywhere}.gbp-kpi>small{font-size:10px;color:var(--ep-texte-3)}
.gbp-kpi--rating{border-top:2px solid var(--ep-dore)}.gbp-kpi--ok{border-top:2px solid var(--ep-ok)}.gbp-kpi--warning{border-top:2px solid var(--ep-attn)}.gbp-kpi--alert{border-top:2px solid var(--ep-alerte)}
.gbp-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,.75fr);gap:12px;align-items:start}.gbp-panel{min-width:0;border:1px solid var(--ep-ligne);border-radius:12px;background:var(--ep-surface);overflow:hidden;box-shadow:var(--ep-om-1)}
.gbp-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid var(--ep-ligne)}.gbp-panel>header h3{font-size:12.5px;font-weight:750}.gbp-panel>header p{margin-top:2px;font-size:10.5px;color:var(--ep-texte-3)}
.gbp-establishments{display:grid}.gbp-establishment{display:grid;grid-template-columns:34px minmax(140px,1fr) repeat(3,minmax(54px,74px)) minmax(112px,auto);align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--ep-ligne);min-width:0}.gbp-establishment:last-child{border-bottom:0}
.gbp-establishment__icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--ep-ligne);border-radius:9px;background:var(--ep-surface-2);color:var(--ep-texte-3)}.gbp-establishment.is-mapped .gbp-establishment__icon{background:var(--ep-ok-voile);border-color:var(--ep-ok-bord);color:var(--ep-ok)}
.gbp-establishment__main{display:grid;gap:2px;min-width:0}.gbp-establishment__main strong{font-size:11.5px;overflow-wrap:anywhere}.gbp-establishment__main span{font-size:9.8px;color:var(--ep-texte-3)}.gbp-establishment__metric{display:grid;gap:1px;text-align:right}.gbp-establishment__metric b{font:600 13px var(--ep-f-data)}.gbp-establishment__metric span{font-size:8.8px;text-transform:uppercase;color:var(--ep-texte-3)}
.gbp-establishment__state{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.gbp-state{display:inline-flex;align-items:center;gap:4px;width:max-content;max-width:100%;padding:3px 7px;border:1px solid var(--ep-ligne);border-radius:999px;background:var(--ep-surface-2);font-size:9px;font-weight:750;color:var(--ep-texte-3);white-space:nowrap}.gbp-state--ok{border-color:var(--ep-ok-bord);background:var(--ep-ok-voile);color:var(--ep-ok)}.gbp-state--warning{border-color:var(--ep-attn-bord);background:var(--ep-attn-voile);color:var(--ep-attn)}
.gbp-pending{display:grid}.gbp-pending-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto 14px;align-items:center;gap:9px;width:100%;padding:11px 13px;border:0;border-bottom:1px solid var(--ep-ligne);background:transparent;text-align:left;color:inherit;cursor:pointer}.gbp-pending-row:last-child{border-bottom:0}.gbp-pending-row:hover{background:var(--ep-surface-2)}.gbp-pending-row__main{display:grid;gap:2px;min-width:0}.gbp-pending-row__main strong{font-size:10.8px}.gbp-pending-row__main small{font-size:9px;color:var(--ep-texte-3)}.gbp-pending-row__main>span{font-size:10px;line-height:1.35;color:var(--ep-texte-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gbp-pending-row__rating .star{font-size:10px}.gbp-empty-good{display:grid;place-items:center;gap:5px;padding:28px 16px;text-align:center;color:var(--ep-ok)}.gbp-empty-good strong{font-size:11.5px}.gbp-empty-good span{font-size:10px;color:var(--ep-texte-3)}
.gbp-review-toolbar{margin:0}.gbp-location-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gbp-location-card{display:grid;border:1px solid var(--ep-ligne);border-radius:12px;background:var(--ep-surface);overflow:hidden;box-shadow:var(--ep-om-1);min-width:0}.gbp-location-card.is-mapped{border-top:2px solid var(--ep-ok)}
.gbp-location-card>header{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 14px;border-bottom:1px solid var(--ep-ligne)}.gbp-location-card__icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--ep-ligne);border-radius:9px;background:var(--ep-surface-2)}.gbp-location-card>header h3{font-size:12px;font-weight:750}.gbp-location-card>header p{margin-top:2px;font-size:9.8px;color:var(--ep-texte-3)}
.gbp-location-card__body{display:grid;gap:12px;padding:14px}.gbp-location-card__body label{display:grid;gap:5px}.gbp-location-card__body label>span{font-size:9.5px;font-weight:750;text-transform:uppercase;letter-spacing:.04em;color:var(--ep-texte-3)}.gbp-location-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gbp-location-meta>span{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--ep-ligne);border-radius:9px;background:var(--ep-surface-2);min-width:0}.gbp-location-meta small{font-size:8.8px;text-transform:uppercase;color:var(--ep-texte-3)}.gbp-location-meta strong{font-size:10px;line-height:1.35;overflow-wrap:anywhere}.gbp-location-card>footer{display:flex;align-items:center;justify-content:flex-end;min-height:49px;padding:9px 14px;border-top:1px solid var(--ep-ligne)}
.gbp-feature-preview{display:flex;align-items:flex-start;gap:14px;padding:18px;border:1px solid var(--ep-ligne);border-radius:12px;background:var(--ep-surface);box-shadow:var(--ep-om-1)}.gbp-feature-preview__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--ep-corail-voile);color:var(--ep-corail);flex:none}.gbp-feature-preview h3{font-size:13px}.gbp-feature-preview p{max-width:720px;margin-top:4px;font-size:11.5px;line-height:1.5;color:var(--ep-texte-3)}.gbp-feature-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:11px}.gbp-feature-chips span{padding:4px 8px;border:1px solid var(--ep-ligne);border-radius:999px;background:var(--ep-surface-2);font-size:9.5px;color:var(--ep-texte-2)}
.gbp-performance-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:12px}.gbp-month-bars{display:flex;align-items:end;gap:5px;height:190px;padding:20px 16px 12px}.gbp-month-bars>div{display:flex;flex:1;flex-direction:column;justify-content:flex-end;align-items:stretch;gap:5px;height:100%;min-width:0}.gbp-month-bars i{display:block;min-height:4px;border-radius:4px 4px 1px 1px;background:var(--ep-corail);opacity:.78}.gbp-month-bars span{font:500 8.5px var(--ep-f-data);text-align:center;color:var(--ep-texte-3)}.gbp-rating-dist{display:grid;gap:9px;padding:16px}.gbp-rating-dist>div{display:grid;grid-template-columns:34px 1fr 28px;align-items:center;gap:8px;font-size:10px}.gbp-rating-dist>div>i{display:block;height:7px;border-radius:999px;background:var(--ep-surface-2);overflow:hidden}.gbp-rating-dist>div>i>b{display:block;height:100%;border-radius:inherit;background:var(--ep-dore)}.gbp-rating-dist strong{font:600 10px var(--ep-f-data);text-align:right}.gbp-metrics-next{padding:12px 14px;border:1px dashed var(--ep-ligne-forte);border-radius:10px;background:var(--ep-surface-2)}.gbp-metrics-next>div{display:flex;align-items:center;gap:10px}.gbp-metrics-next span{display:grid;gap:2px}.gbp-metrics-next strong{font-size:11px}.gbp-metrics-next small{font-size:9.8px;line-height:1.4;color:var(--ep-texte-3)}
@media(max-width:1120px){.gbp-dashboard-grid,.gbp-performance-grid{grid-template-columns:1fr}.gbp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.gbp-establishment{grid-template-columns:34px minmax(130px,1fr) repeat(2,minmax(54px,70px)) auto}.gbp-establishment__metric:nth-of-type(4){display:none}}
@media(max-width:800px){.gbp-overview-head,.gbp-section-head{display:grid;grid-template-columns:1fr}.gbp-overview-actions,.gbp-section-actions{justify-content:flex-start}.gbp-location-grid{grid-template-columns:1fr}.gbp-establishment{grid-template-columns:32px minmax(0,1fr) auto}.gbp-establishment__metric{display:none!important}.gbp-establishment__state{grid-column:2/-1;justify-content:flex-start}.gbp-pending-row{grid-template-columns:30px minmax(0,1fr) 14px}.gbp-pending-row__rating{display:none}}
@media(max-width:560px){.gbp-page{gap:12px}.gbp-tabs{margin:0 -2px}.gbp-tabs button{padding:0 10px}.gbp-kpis{grid-template-columns:1fr 1fr;gap:8px}.gbp-kpi{padding:11px}.gbp-kpi>strong{font-size:19px}.gbp-location-meta{grid-template-columns:1fr}.gbp-alert{align-items:flex-start;flex-direction:column}.gbp-alert>.ep-b{width:100%;justify-content:center}.gbp-location-card>header{grid-template-columns:34px minmax(0,1fr)}.gbp-location-card>header>.gbp-state{grid-column:2}.gbp-feature-preview{padding:14px}.gbp-feature-preview__icon{width:38px;height:38px}.gbp-month-bars{height:160px;padding-left:10px;padding-right:10px}}

/* ══════════════════════════════════════════════════════════════════════
   v5.69.0.154 — Liste des avis
   Lecture plus rapide : identité regroupée, note renforcée, statut isolé
   et hiérarchie d'actions stable sur chaque ligne.
   ══════════════════════════════════════════════════════════════════════ */
.stars-ro{display:inline-flex;align-items:center;gap:2px;letter-spacing:0;line-height:1}
.stars-ro .star{color:var(--ep-ligne-forte);font-size:12px;line-height:1}
.stars-ro .star.on{color:var(--ep-attn)}
.gbp-review-toolbar{padding:10px 0;border:1px solid var(--ep-ligne);border-radius:10px;background:var(--ep-surface);box-shadow:var(--ep-om-1)}
.gbp-review-toolbar>select,.gbp-review-toolbar>input{min-height:36px}
.gbp-review-toolbar #avQ{flex:1 1 240px;min-width:220px;max-width:none}
.gbp-review-toolbar #avFiltrer{min-height:36px;padding-inline:13px;background:var(--ep-surface-2)}
.avis-bar{padding:9px 1px 7px}.avis-bar #avVuTous{margin-left:auto}

.avis-list-shell{min-width:0;border:1px solid var(--ep-ligne);border-radius:12px;background:var(--ep-surface);box-shadow:var(--ep-om-1);overflow:hidden}
.avis-list-head,.avis-list-row{display:grid;grid-template-columns:minmax(205px,.9fr) minmax(390px,2fr) minmax(150px,.7fr) 105px minmax(205px,.9fr);gap:18px;min-width:0}
.avis-list-head{align-items:center;padding:9px 15px;background:var(--ep-surface-2);border-bottom:1px solid var(--ep-ligne-forte);font-size:9.5px;font-weight:800;letter-spacing:.075em;text-transform:uppercase;color:var(--ep-texte-3)}
.avis-list-row{position:relative;align-items:start;min-height:112px;padding:15px;cursor:pointer;border-bottom:1px solid var(--ep-ligne);transition:background .12s,border-color .12s}
.avis-list-row:last-child{border-bottom:0}.avis-list-row:hover{background:var(--ep-sable-voile)}
.avis-list-row.avis-neuf{box-shadow:inset 3px 0 var(--ep-corail)}
.avis-list-row.is-sensitive{box-shadow:inset 3px 0 var(--ep-alerte)}
.avis-list-person{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:start;min-width:0}
.avis-list-person>.avis-photo,.avis-list-person>.avatar{width:38px!important;height:38px!important;margin-top:1px}
.avis-list-person__main{display:grid;gap:4px;min-width:0}.avis-list-person__name{display:flex;align-items:center;gap:6px;min-width:0}
.avis-list-person__name strong{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:12.5px;line-height:1.25;white-space:nowrap;color:var(--ep-encre)}
.avis-unread-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--ep-corail);box-shadow:0 0 0 3px var(--ep-corail-voile)}
.avis-list-person__park{font-size:10.5px;line-height:1.35;color:var(--ep-texte-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.avis-list-person__meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:1px}.avis-list-person__meta .badge{padding:2px 7px;font-size:9.5px}.avis-list-person__meta .avis-flag{width:17px;height:12px}

.avis-list-review{display:grid;align-content:start;gap:7px;min-width:0}.avis-list-rating{display:flex;align-items:center;gap:9px;min-height:20px}
.avis-list-rating .stars-ro .star{font-size:16px}.avis-list-rating>strong{font:700 12px var(--ep-f-data);color:var(--ep-encre)}.avis-list-rating>strong small{margin-left:1px;font-size:9px;font-weight:600;color:var(--ep-texte-3)}
.avis-list-review>p{margin:0;max-width:760px;font-size:12.5px;line-height:1.48;color:var(--ep-texte-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.avis-list-review__meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:18px;font-size:9.8px;color:var(--ep-texte-3)}
.avis-list-review__meta>span{display:inline-flex;align-items:center;gap:4px}.avis-list-reply--done{color:var(--ep-ok);font-weight:700}.avis-list-reply--draft{color:var(--ep-attn);font-weight:700}

.avis-list-status{display:grid;align-content:start;justify-items:start;gap:5px;min-width:0}.avis-list-status .statut-pill{min-height:24px;padding:3px 8px;font-size:10px}.avis-list-status .statut-sub{font-size:9.5px;line-height:1.35}.avis-list-status .statut-chips{gap:4px}.avis-list-status .chip{font-size:9px;padding:2px 6px}
.avis-list-date{display:grid;align-content:start;gap:3px;padding-top:3px;min-width:0}.avis-list-date strong{font:600 10.5px var(--ep-f-data);color:var(--ep-texte-2);white-space:nowrap}.avis-list-date span{font-size:9px;color:var(--ep-texte-3);white-space:nowrap}

.avis-list-actions{display:grid;align-content:start;gap:7px;min-width:0}.avis-list-actions__main{display:grid}.avis-list-actions__main>.btn{width:100%;min-height:32px;justify-content:center;border-radius:8px;font-size:10.5px}.avis-list-actions__main>.btn--edit{background:var(--ep-surface);border-color:var(--ep-ligne-forte);color:var(--ep-texte)}
.avis-list-actions__secondary{display:flex;align-items:center;gap:3px;flex-wrap:wrap}.avis-list-actions__secondary>.btn{min-height:27px;padding:4px 6px;border-radius:7px;font-size:9.5px}.avis-list-actions__secondary>.btn--ghost{color:var(--ep-texte-3)}.avis-list-actions__secondary>.btn--ghost:hover{color:var(--ep-texte)}
.avis-list-actions__secondary .avis-list-external{padding-inline:6px}.avis-list-actions__secondary .avis-list-delete{margin-left:auto;padding-inline:6px}

@media(max-width:1420px){
  .avis-list-head,.avis-list-row{grid-template-columns:minmax(185px,.85fr) minmax(300px,1.7fr) minmax(135px,.65fr) 90px minmax(180px,.82fr);gap:13px}
  .avis-list-actions__secondary>.btn{padding-inline:5px}.avis-list-actions__secondary .avis-list-external span{display:none}
}
@media(max-width:1180px){
  .avis-list-head{display:none}
  .avis-list-row{grid-template-columns:minmax(190px,.8fr) minmax(0,1.5fr) minmax(180px,.75fr);grid-template-areas:"person review actions" "person status date";gap:10px 16px;min-height:0;padding:14px}
  .avis-list-person{grid-area:person}.avis-list-review{grid-area:review}.avis-list-status{grid-area:status}.avis-list-date{grid-area:date}.avis-list-actions{grid-area:actions}
}
@media(max-width:860px){
  .gbp-review-toolbar{padding:9px}.gbp-review-toolbar>select{flex:1 1 calc(50% - 8px)}.gbp-review-toolbar #avQ{flex:1 1 100%}.gbp-review-toolbar #avFiltrer{flex:1 1 100%}
  .avis-list-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"person status" "review review" "date actions";gap:11px 14px}
  .avis-list-status{justify-items:end}.avis-list-status .statut-sub{text-align:right}.avis-list-status .statut-chips{justify-content:flex-end}.avis-list-date{align-self:end}.avis-list-actions{min-width:190px}
}
@media(max-width:620px){
  .avis-bar{align-items:stretch}.avis-bar #avVuTous{margin-left:0;width:100%}.avis-bar .segmented{width:100%}.avis-bar .segmented button{flex:1}
  .avis-list-shell{border-radius:10px}.avis-list-row{grid-template-columns:1fr;grid-template-areas:"person" "review" "status" "date" "actions";gap:10px;padding:13px}
  .avis-list-status{justify-items:start}.avis-list-status .statut-sub{text-align:left}.avis-list-status .statut-chips{justify-content:flex-start}.avis-list-date{display:flex;align-items:center;gap:7px;padding:0}.avis-list-actions{min-width:0}.avis-list-actions__secondary{display:grid;grid-template-columns:1fr 1fr}.avis-list-actions__secondary>.btn{width:100%}.avis-list-actions__secondary .avis-list-delete{margin-left:0}
}
