
@font-face{font-family:"IBM Plex Sans";font-weight:400;font-style:normal;font-display:swap;src:url(/police/400.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-weight:500;font-style:normal;font-display:swap;src:url(/police/500.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-weight:600;font-style:normal;font-display:swap;src:url(/police/600.woff2) format("woff2")}
:root{
  --page:#F4F6FA;--blanc:#FFFFFF;--encre:#161E2E;--second:#5B6578;--discret:#8A93A5;--trait:#E1E5EE;--trait-fort:#C9D0DE;
  --ardoise:#1E2A44;--ardoise-2:#2A3857;--action:#2B4A8B;--action-fonce:#1E3566;--action-pale:#E8EEF9;
  --turquoise:#6FB3A8;--turquoise-fonce:#2A7468;--turquoise-pale:#E6F3F0;
  --urgent:#A33B2B;--urgent-pale:#FBEEEA;--ambre:#8A6014;--ambre-pale:#FBF3E1;
  --neutre:#EDF0F6;--survol:var(--survol);--survol2:var(--survol2);--barre-pale:#B9C6E4;--fort-fond:#2B4A8B;--halo:none;
  --degrade:linear-gradient(90deg,#401983,#16288C,#015DA8,#03A193);
  --r-controle:8px;--r-panneau:14px;--r-bulle:20px;
}
/* Thème « digital » : fond nuit, reflets bleu et turquoise (les couleurs du dégradé HPTM), surfaces en verre sombre */
:root[data-theme="dark"]{
  --page:#0A0F1F;--blanc:#111A2E;--encre:#E8EDFB;--second:#A3AFCB;--discret:#7F8CAD;--trait:#222C47;--trait-fort:#34415F;
  --ardoise:#070B16;--ardoise-2:#1B2540;--action:#6C97FF;--action-fonce:#4F7CF2;--action-pale:rgba(108,151,255,.14);
  --turquoise:#3DD6C0;--turquoise-fonce:#4FE0C9;--turquoise-pale:rgba(61,214,192,.13);
  --urgent:#FF8A78;--urgent-pale:rgba(255,138,120,.13);--ambre:#F4C15A;--ambre-pale:rgba(244,193,90,.13);
  --neutre:#1A2440;--survol:#17213B;--survol2:#141D33;--barre-pale:rgba(108,151,255,.32);--fort-fond:linear-gradient(135deg,#3B5BDB,#1F6FE0 55%,#0E9AA7);
  --halo:radial-gradient(900px 420px at 80% -10%,rgba(63,111,255,.16),transparent 60%),radial-gradient(700px 380px at 0% 105%,rgba(3,161,147,.12),transparent 60%);
}
*{box-sizing:border-box}
html{font-family:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;font-size:15px;line-height:1.55;color:var(--encre);background:var(--page);color-scheme:light;font-variant-numeric:tabular-nums}
body{margin:0;height:100vh;overflow:hidden;background:var(--halo),var(--page)}
:root[data-theme="dark"]{color-scheme:dark}
h1{font-size:26px;line-height:1.2;font-weight:600;margin:0;letter-spacing:-.01em}
h2{font-size:16px;line-height:1.3;font-weight:600;margin:0}
h3{font-size:15px;font-weight:600;margin:0}
p{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--action);outline-offset:2px}
svg.ico{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* coque : rail à gauche, zone de travail à droite */
.coque{display:flex;height:100vh}
.rail{flex:none;width:232px;background:var(--ardoise);color:#C7D0E4;display:flex;flex-direction:column;padding:24px 12px 16px}
.marque{display:flex;flex-direction:column;gap:6px;padding:0 12px 24px}
.marque-nom{color:#fff;font-weight:600;font-size:18px;letter-spacing:.1em;line-height:1}
.marque-trait{width:28px;height:3px;border-radius:2px;background:linear-gradient(90deg,#401983,#16288C,#015DA8,#03A193)}
.marque-sous{font-size:13px;color:#8FA0C3}
#onglets{display:flex;flex-direction:column;gap:2px;flex:1 1 auto}
#onglets button{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;color:#C7D0E4;padding:10px 12px;border-radius:var(--r-controle);cursor:pointer;font-weight:500;text-align:left;position:relative;transition:background .12s}
#onglets button:hover{background:rgba(255,255,255,.07);color:#fff}
#onglets button[aria-current="page"]{background:rgba(255,255,255,.12);color:#fff}
#onglets button[aria-current="page"]::before{content:"";position:absolute;left:-12px;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:var(--turquoise)}
.pastille{margin-left:auto;background:#F2B8A5;color:#5A2314;border-radius:999px;font-size:12px;font-weight:600;padding:0 8px;line-height:20px;min-width:20px;text-align:center}
.rail-bas{padding:16px 12px 0;border-top:1px solid rgba(255,255,255,.1)}
.moi{display:flex;align-items:center;gap:12px}
.avatar{width:32px;height:32px;border-radius:50%;background:var(--ardoise-2);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex:none}
.moi-nom{color:#fff;font-weight:500}
.moi-actions{display:flex;gap:16px;margin-top:10px}
.ligne-membre{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:8px 16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--trait)}
.ligne-membre .actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}
.ligne-membre .nom{font-weight:600}
.ligne-membre .edition{grid-column:1/-1}
.ligne-membre .edition .actions{margin-top:12px}
.carte input[readonly]{width:100%;min-width:260px}
.lien-rail{background:none;border:0;padding:0;color:#8FA0C3;font-size:12.5px;cursor:pointer;text-decoration:underline}
.lien-rail:hover{color:#fff}
.rail-regle{font-size:12.5px;line-height:1.45;color:#8FA0C3;margin-top:12px}

.zone{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;height:100vh}
.bandeau-erreur{flex:none;background:var(--urgent-pale);color:var(--urgent);border-bottom:1px solid #E7BDB3;padding:12px 32px;font-weight:500}
.page{flex:1 1 auto;min-height:0;overflow-y:auto;padding:32px clamp(16px,3.5vw,48px) 48px}
.page.plein{overflow:hidden;padding:0;display:flex;flex-direction:column}

/* en-tête de page */
.tete{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;justify-content:space-between;margin-bottom:32px}
.tete .sous{color:var(--second);margin-top:4px;max-width:640px}
.tete .jour{color:var(--discret);font-size:14px}
.contenu{max-width:1120px;margin:0 auto}

/* boutons */
.bouton{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;border-radius:var(--r-controle);border:1px solid var(--trait-fort);background:var(--blanc);cursor:pointer;font-weight:500;transition:background .12s,border-color .12s}
.bouton:hover{background:var(--action-pale);border-color:var(--action)}
.bouton.fort{background:var(--fort-fond);border-color:transparent;color:#fff}
.bouton.fort:hover{filter:brightness(1.12)}
.bouton.danger{color:var(--urgent);border-color:#DDB3AA}
.bouton.danger:hover{background:var(--urgent-pale);border-color:var(--urgent)}
.bouton.petit{height:34px;padding:0 12px;font-size:14px}
.bouton[disabled]{opacity:.55;cursor:default}
.lien{background:none;border:0;padding:0;color:var(--action);cursor:pointer;font-weight:500;text-decoration:none}
.lien:hover{text-decoration:underline;text-decoration-thickness:2px}
.puce{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--trait-fort);background:var(--blanc);border-radius:999px;padding:8px 16px;cursor:pointer;font-weight:500;transition:background .12s,border-color .12s}
.puce:hover{background:var(--action-pale);border-color:var(--action);color:var(--action)}
.badge{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:500;border-radius:999px;padding:1px 10px;background:var(--neutre);color:var(--second);white-space:nowrap}
.badge.vert{background:var(--turquoise-pale);color:var(--turquoise-fonce)}
.badge.ambre{background:var(--ambre-pale);color:var(--ambre)}
.badge.rouge{background:var(--urgent-pale);color:var(--urgent)}
.badge.bleu{background:var(--action-pale);color:var(--action)}
.point{width:8px;height:8px;border-radius:50%;background:var(--discret);display:inline-block;flex:none}
.point.vert{background:#3E9E8F}.point.ambre{background:#C48A1B}.point.rouge{background:var(--urgent)}

/* panneaux */
.panneau{background:var(--blanc);border:1px solid var(--trait);border-radius:var(--r-panneau)}
.panneau.pad{padding:24px}
.titre-section{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 12px}
.titre-section h2{color:var(--encre)}
.grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;align-items:start}
.vide{color:var(--second);padding:16px 0}
.ligne{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--trait)}
.ligne:last-child{border-bottom:0}
.ligne .corps{flex:1 1 240px;min-width:0}
.ligne .petit{color:var(--second);font-size:14px}
.ligne .actions{display:flex;gap:8px;flex:none}

/* accueil : conversation + panneau du jour */
.accueil{display:flex;flex:1 1 auto;min-height:0}
.conversation{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}
.defil{flex:1 1 auto;min-height:0;overflow-y:auto;padding:32px clamp(16px,3vw,40px) 16px}
.fil{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:24px}
.accueil-titre{max-width:760px;margin:0 auto 32px}
.accueil-titre p{color:var(--second);margin-top:8px;max-width:560px}
.suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.msg{display:flex;gap:12px;align-items:flex-start}
.msg .corps-msg{min-width:0;max-width:100%}
.msg.agent .avatar{background:var(--ardoise);width:32px;height:32px;font-size:13px}
.msg.agent .avatar::after{content:"";position:absolute}
.msg .texte{word-break:break-word;line-height:1.6}
.msg .texte p+p,.msg .texte ul+p,.msg .texte p+ul{margin-top:12px}
.msg .texte ul{margin:0;padding-left:20px}
.msg .texte li+li{margin-top:4px}
.msg .heure{font-size:12px;color:var(--discret);margin-top:4px}
.msg.moi{flex-direction:row-reverse}
.msg.moi .corps-msg{display:flex;flex-direction:column;align-items:flex-end;max-width:80%}
.msg.moi .texte{background:var(--fort-fond);color:#fff;border-radius:var(--r-bulle) var(--r-bulle) 6px var(--r-bulle);padding:12px 18px;white-space:pre-wrap}
.msg.agent .texte{padding-top:4px}
.actes{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.acte{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--second);background:var(--neutre);border-radius:999px;padding:2px 10px}
.acte svg.ico{width:14px;height:14px;stroke:var(--turquoise-fonce)}
.fichier{display:flex;align-items:center;gap:16px;margin-top:12px;padding:12px 16px;border:1px solid var(--trait);border-radius:var(--r-panneau);background:var(--blanc);max-width:460px}
.fichier .ico-pdf{width:40px;height:48px;border-radius:8px;background:var(--urgent-pale);color:var(--urgent);display:flex;align-items:center;justify-content:center;flex:none}
.fichier .ico-pdf svg.ico{width:22px;height:22px}
.fichier .infos{flex:1 1 auto;min-width:0}
.fichier .nom{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fichier .petit{color:var(--second);font-size:13px}
.ecrit{display:inline-flex;gap:5px;align-items:center;padding:10px 0}
.ecrit span{width:7px;height:7px;border-radius:50%;background:var(--discret);animation:rebond 1.1s infinite ease-in-out}
.ecrit span:nth-child(2){animation-delay:.15s}.ecrit span:nth-child(3){animation-delay:.3s}
@keyframes rebond{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}
.composeur-zone{flex:none;padding:8px clamp(16px,3vw,40px) 24px;background:transparent}
.composeur{max-width:760px;margin:0 auto;background:var(--blanc);border:1px solid var(--trait-fort);border-radius:var(--r-bulle);padding:8px 8px 8px 20px;display:flex;align-items:flex-end;gap:8px;transition:border-color .12s}
.composeur:focus-within{border-color:var(--action)}
.composeur textarea{flex:1 1 auto;border:0;outline:0;resize:none;background:transparent;padding:10px 0;max-height:176px;line-height:1.5}
.composeur textarea:focus-visible{outline:0}
.envoi{flex:none;width:44px;height:44px;border-radius:50%;border:0;background:var(--fort-fond);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s}
.envoi:hover{filter:brightness(1.12)}
.envoi[disabled]{background:var(--trait-fort);cursor:default}
.aide-saisie{max-width:760px;margin:8px auto 0;color:var(--discret);font-size:13px;text-align:center}

.jour-panneau{flex:none;width:340px;border-left:1px solid var(--trait);background:var(--blanc);overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:32px}
.jour-bloc h2{margin-bottom:12px}
.etat-ligne{display:flex;align-items:center;gap:8px;padding:6px 0;color:var(--second)}
.etat-ligne strong{color:var(--encre);font-weight:500;margin-left:auto}
.mini{border:1px solid var(--trait);border-radius:12px;padding:12px;margin-bottom:8px}
.mini .t{font-weight:500}
.mini .petit{color:var(--second);font-size:13px}
.mini .actions{display:flex;gap:8px;margin-top:8px}
.doc-mini{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--trait)}
.doc-mini:last-child{border-bottom:0}
.doc-mini .ico-pdf{width:28px;height:34px;border-radius:6px;background:var(--urgent-pale);color:var(--urgent);display:flex;align-items:center;justify-content:center;flex:none}
.doc-mini .ico-pdf svg.ico{width:16px;height:16px}
.doc-mini .infos{flex:1 1 auto;min-width:0}
.doc-mini .nom{font-weight:500;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.doc-mini .petit{color:var(--second);font-size:13px}
.reglages{display:flex;gap:8px;flex-wrap:wrap}

/* formulaires */
.carte-doc{padding:24px;display:flex;flex-direction:column;gap:16px}
.carte-doc .entete{display:flex;gap:16px;align-items:flex-start}
.carte-doc .ico-rond{width:44px;height:44px;border-radius:12px;background:var(--action-pale);color:var(--action);display:flex;align-items:center;justify-content:center;flex:none}
.carte-doc p{color:var(--second);font-size:14px;margin-top:2px}
.champs{display:flex;flex-wrap:wrap;gap:16px}
.champ{display:flex;flex-direction:column;gap:6px;flex:1 1 150px}
.champ label{font-size:14px;font-weight:500;color:var(--encre)}
.champ input,.champ select{height:44px;border:1px solid var(--trait-fort);border-radius:var(--r-controle);padding:0 12px;background:var(--blanc)}
.champ input:focus,.champ select:focus{border-color:var(--action)}
.segments{display:inline-flex;background:var(--neutre);border-radius:var(--r-controle);padding:3px;width:100%}
.segments button{flex:1 1 0;border:0;background:transparent;height:38px;border-radius:6px;cursor:pointer;font-weight:500;color:var(--second)}
.segments button[aria-pressed="true"]{background:var(--blanc);color:var(--encre);box-shadow:none;outline:1px solid var(--trait-fort)}
.resultat{padding:12px 16px;border-radius:12px;background:var(--turquoise-pale);color:var(--turquoise-fonce);font-weight:500}
.resultat.erreur{background:var(--urgent-pale);color:var(--urgent)}
.resultat a{color:inherit;text-decoration:underline}

/* listes et tableaux */
.liste-doc .ligne{padding:12px 16px}
.maitre-detail{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}
.maitre{flex:1 1 280px;max-width:380px;padding:8px}
.detail{flex:3 1 480px;min-width:0}
.item-nav{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;background:transparent;border:0;border-radius:10px;padding:10px 12px;cursor:pointer}
.item-nav:hover{background:var(--survol)}
.item-nav[aria-pressed="true"]{background:var(--action-pale)}
.item-nav .t{font-weight:500}
.item-nav .petit{display:flex;align-items:center;gap:6px;color:var(--second);font-size:13px}
.lecture{padding:32px;max-width:820px}
.lecture h2{font-size:20px;margin-bottom:4px}
.lecture .meta{color:var(--second);font-size:14px;margin-bottom:24px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}
.lecture h3{margin:24px 0 8px}
.lecture p,.lecture ul{margin:0 0 12px}
.lecture ul{padding-left:22px}
.lecture li+li{margin-top:4px}
.lecture .actions{margin-top:24px;padding-top:24px;border-top:1px solid var(--trait)}
.recherche{height:44px;border:1px solid var(--trait-fort);border-radius:var(--r-controle);padding:0 14px;min-width:260px;background:var(--blanc)}
.recherche:focus{border-color:var(--action)}
.outil{display:flex;flex-wrap:wrap;gap:12px 24px;padding:16px 24px;border-bottom:1px solid var(--trait);align-items:flex-start}
.outil:last-child{border-bottom:0}
.outil .nom{flex:0 0 220px;font-weight:600;overflow-wrap:anywhere}
.outil .desc{flex:1 1 360px;color:var(--second);font-size:14px;min-width:0}
.outil .labels{flex:0 0 auto;display:flex;flex-wrap:wrap;gap:6px;max-width:300px;justify-content:flex-end}
.filtres{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.filtres button{border:1px solid var(--trait-fort);background:var(--blanc);border-radius:999px;padding:6px 16px;cursor:pointer;font-weight:500;color:var(--second)}
.filtres button:hover{border-color:var(--action);color:var(--action)}
.filtres button[aria-pressed="true"]{background:var(--action-pale);border-color:var(--action);color:var(--action)}
.evt{display:flex;flex-wrap:wrap;gap:8px 16px;padding:14px 24px;border-bottom:1px solid var(--trait);align-items:baseline}
.evt:last-child{border-bottom:0}
.evt .quand{flex:0 0 120px;color:var(--second);font-size:14px}
.evt .qui{flex:0 0 100px;font-weight:500}
.evt .quoi{flex:1 1 280px;min-width:0}
.evt .quoi .petit{display:block;color:var(--second);font-size:14px;overflow-wrap:anywhere}
.refus{max-width:520px;margin:96px auto;padding:0 16px}
.refus h1{margin-bottom:16px}


/* nav : groupes */
.groupe-nav{font-size:12.5px;color:#7F90B5;padding:16px 12px 6px;font-weight:500}
.groupe-nav:first-child{padding-top:0}
/* tableau de bord */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}
.kpi{background:var(--blanc);border:1px solid var(--trait);border-radius:var(--r-panneau);padding:20px 20px 16px;display:flex;flex-direction:column;gap:2px;min-width:0}
.kpi .lib{color:var(--second);font-size:14px}
.kpi .val{font-size:30px;font-weight:600;line-height:1.15;letter-spacing:-.015em;overflow-wrap:anywhere}
.kpi .var{margin-top:6px;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--second);flex-wrap:wrap}
.kpi.urgent .val{color:var(--urgent)}
.kpi.attention .val{color:var(--ambre)}
.ligne-deux{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px;margin-bottom:24px;align-items:start}
.ligne-trois{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:24px;align-items:start}
@media (max-width:1100px){.ligne-deux{grid-template-columns:minmax(0,1fr)}}
.carte{background:var(--blanc);border:1px solid var(--trait);border-radius:var(--r-panneau);padding:20px 24px 24px;min-width:0}
.carte .titre-section{margin-bottom:16px}
.carte .note{color:var(--second);font-size:13px;margin-top:12px}
.svg-graph{width:100%;height:auto;display:block}
.svg-graph text{font-family:inherit;fill:var(--second);font-size:12px}
.svg-graph .val{fill:var(--encre);font-weight:500}
.svg-graph .barre-actif{fill:url(#degradeBarre)}
.svg-graph .barre-pale{fill:var(--barre-pale)}
.svg-graph .axe{stroke:var(--trait-fort)}
.a-traiter{display:flex;flex-direction:column}
.a-traiter .item{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--trait);width:100%;text-align:left;background:transparent;border-left:0;border-right:0;border-top:0;cursor:pointer}
.a-traiter .item:last-child{border-bottom:0}
.a-traiter .item:hover .texte-i{color:var(--action)}
.a-traiter .point{margin-top:7px}
.texte-i{flex:1 1 auto}
.rien{display:flex;gap:12px;align-items:center;color:var(--turquoise-fonce);padding:8px 0;font-weight:500}
.carre{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:8px;flex:none}
.tab{width:100%;border-collapse:collapse}
.tab th{font-weight:500;font-size:13px;color:var(--second);text-align:left;padding:8px 12px;border-bottom:1px solid var(--trait-fort);white-space:nowrap}
.tab td{padding:12px;border-bottom:1px solid var(--trait);vertical-align:middle}
.tab tr:last-child td{border-bottom:0}
.tab .num{text-align:right;white-space:nowrap}
.tab th.num{text-align:right}
.tab tr.total td{font-weight:600;border-top:1px solid var(--trait-fort)}
.tab tbody tr:hover td{background:var(--survol2)}
.tab .nom-cell{display:flex;align-items:center;font-weight:500;white-space:nowrap}
.defile-x{overflow-x:auto}
.barre-h{display:flex;align-items:center;gap:12px;padding:6px 0}
.cell-barre{width:160px}.cell-barre .piste{height:8px;background:var(--neutre);border-radius:999px;overflow:hidden}.cell-barre .remplie{height:100%;background:var(--degrade);border-radius:999px}
.barre-h .lib{flex:0 0 38%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.barre-h .piste{flex:1 1 auto;height:10px;background:var(--neutre);border-radius:999px;overflow:hidden}
.barre-h .remplie{height:100%;background:var(--degrade);border-radius:999px}
.barre-h .v{flex:0 0 auto;min-width:92px;text-align:right;font-weight:500}
.apport-ligne{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--trait)}
.apport-ligne:last-child{border-bottom:0}
.apport-ligne .rang{flex:0 0 24px;color:var(--discret);font-weight:500}
.apport-ligne .corps{flex:1 1 auto;min-width:0}
.apport-ligne .corps .n{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.apport-ligne .petit{color:var(--second);font-size:13px}
.bandeau-note{margin-top:24px;color:var(--second);font-size:13px}
.bandeau-info{background:var(--action-pale);color:var(--action);border-radius:12px;padding:12px 16px;margin-bottom:24px;font-weight:500}
.bandeau-manques{background:var(--ambre-pale);color:var(--ambre);border-radius:12px;padding:12px 16px;margin-bottom:24px;font-weight:500}
.outils-barre{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:16px}
.outils-barre .champ{flex:0 1 200px}
.coche{display:flex;align-items:center;gap:8px;height:44px;font-weight:500}
.coche input{width:18px;height:18px}
.pagination{display:flex;align-items:center;gap:12px;justify-content:flex-end;margin-top:16px;color:var(--second)}
.statut-agent{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;padding:12px 32px;border-bottom:1px solid var(--trait);background:var(--blanc);color:var(--second);font-size:14px}
.statut-agent .it{display:flex;align-items:center;gap:8px}
.statut-agent strong{color:var(--encre);font-weight:500}
.statut-agent .actions{margin-left:auto;display:flex;gap:8px}


/* discussions : liste à gauche, fil à droite */
.accueil-col{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}
.discussions{display:flex;flex:1 1 auto;min-height:0}
.liste-fils{flex:none;width:320px;border:0;border-right:1px solid var(--trait);border-radius:0;overflow-y:auto;padding:16px 12px;background:var(--blanc)}
.nouveau-fil{display:flex;gap:8px;margin-bottom:8px;padding:0 4px}
.groupe-liste{font-size:13px;color:var(--discret);font-weight:500;padding:16px 8px 6px}
.item-fil{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;background:transparent;border:0;border-radius:10px;padding:10px 12px;cursor:pointer}
.item-fil:hover{background:var(--survol)}
.item-fil[aria-pressed="true"]{background:var(--action-pale)}
.item-fil .ligne-1{display:flex;gap:8px;align-items:baseline;justify-content:space-between}
.item-fil .t{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.item-fil .quand-fil{flex:none;font-size:12px;color:var(--discret)}
.item-fil .apercu{color:var(--second);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fil-droite{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}
.entete-fil{flex:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px clamp(16px,3vw,40px);border-bottom:1px solid var(--trait);background:var(--blanc)}
.entete-texte{display:flex;flex-direction:column;min-width:0}
.entete-texte .petit{color:var(--second);font-size:13px}
@media (max-width:900px){.liste-fils{display:none}}


/* habillage digital : reflets, liseré dégradé, données en chiffres tabulaires */
.kpi{position:relative;overflow:hidden}
.kpi::before{content:"";position:absolute;left:20px;top:0;width:36px;height:3px;border-radius:0 0 3px 3px;background:var(--degrade)}
.kpi .val{font-feature-settings:"tnum" 1,"zero" 1}
:root[data-theme="dark"] .kpi,:root[data-theme="dark"] .carte,:root[data-theme="dark"] .panneau{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,0) 60%),var(--blanc);border-color:var(--trait)}
:root[data-theme="dark"] .carte,:root[data-theme="dark"] .kpi{box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
:root[data-theme="dark"] .rail{border-right:1px solid #141C33}
#onglets button[aria-current="page"]{background:linear-gradient(90deg,rgba(108,151,255,.26),rgba(108,151,255,0))}
.page h1{background:var(--degrade-titre,none)}
.liseré{height:2px;background:var(--degrade);border-radius:2px;opacity:.9;margin-bottom:24px;max-width:96px}
:root[data-theme="dark"] .msg.agent .avatar{background:linear-gradient(135deg,#3B5BDB,#0E9AA7)}
:root[data-theme="dark"] .msg.agent .texte{color:var(--encre)}
:root[data-theme="dark"] .bandeau-erreur{border-bottom-color:#5A2A22}
:root[data-theme="dark"] .resultat{color:var(--turquoise-fonce)}
:root[data-theme="dark"] .resultat.erreur{color:var(--urgent)}
:root[data-theme="dark"] .acte svg.ico{stroke:var(--turquoise)}
:root[data-theme="dark"] .fichier .ico-pdf,:root[data-theme="dark"] .doc-mini .ico-pdf{background:var(--urgent-pale)}
:root[data-theme="dark"] .tab tbody tr:hover td{background:var(--survol2)}
.theme-bouton{display:flex;align-items:center;gap:10px;width:100%;border:1px solid rgba(255,255,255,.14);background:transparent;color:#C7D0E4;border-radius:var(--r-controle);padding:8px 12px;cursor:pointer;font-weight:500;margin-bottom:12px}
.theme-bouton:hover{background:rgba(255,255,255,.07);color:#fff}
/* applications connectées */
.apps{display:flex;flex-direction:column;gap:24px}
.app-carte{padding:24px;display:flex;flex-direction:column;gap:20px}
.app-tete{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-start;justify-content:space-between}
.app-tete h2{font-size:18px}
.app-tete p{color:var(--second);max-width:640px;margin-top:2px}
.app-colonnes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.app-bloc h3{font-size:14px;color:var(--second);font-weight:500;margin-bottom:8px}
.app-bloc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.app-bloc li{display:flex;gap:10px;align-items:flex-start;font-size:14px}
.app-bloc ul.outils-liste li{flex-direction:column;gap:0}
.app-bloc li .nom-o{font-weight:500;flex:0 0 auto}
.app-bloc li .res{color:var(--second)}
.app-bloc .vide{padding:4px 0;font-size:14px}
.ligne-ecriture{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--trait);font-size:14px}
.ligne-ecriture:last-child{border-bottom:0}
.ligne-ecriture .corps-e{flex:1 1 auto;min-width:0}
.ligne-ecriture .precision{color:var(--second);font-size:13px}
.app-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding-top:4px}
.app-sortie{margin-top:4px}
.activite{color:var(--second);font-size:14px}

@media (max-width:1080px){.jour-panneau{display:none}}
@media (max-width:820px){
  body{overflow:auto;height:auto}.coque{flex-direction:column;height:auto}
  .rail{width:100%;flex-direction:row;align-items:center;padding:8px 12px;gap:8px;overflow-x:auto}
  .marque{padding:0 8px;flex:none}.marque-sous,.rail-bas{display:none}
  #onglets{flex-direction:row;flex:1 1 auto}#onglets button{width:auto;white-space:nowrap}
  #onglets button[aria-current="page"]::before{left:12px;right:12px;top:auto;bottom:-8px;width:auto;height:3px;border-radius:3px 3px 0 0}
  .zone{height:auto}.page.plein{height:calc(100vh - 64px)}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
