/* PREUVE EN MAIN — application : coquille logicielle professionnelle */
:root {
  --encre:#1C2430; --encre-douce:#5B6472; --encre-3:#8A93A0;
  --bleu:#1E3A5F; --bleu-fonce:#152B47; --bleu-clair:#31527A; --bleu-vif:#2563A8;
  --papier:#F4F5F7; --papier-2:#ECEEF1; --blanc:#FFFFFF; --sb:#FBFBFC;
  --vert:#2F6B4F; --vert-fonce:#245439; --vert-pale:#E9F3EE;
  --ambre:#B8791F; --ambre-texte:#8A5A13; --ambre-pale:#FBF3E4; --brume:#E6E8EC;
  --trait:#E4E7EB; --trait-2:#EDEEF1;
  --serif:Georgia,'Times New Roman',serif;
  --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --tete-h:56px; --sb-w:246px;
  --ombre:0 1px 2px rgba(20,28,42,.04),0 1px 3px rgba(20,28,42,.05);
  --ombre-2:0 4px 14px rgba(20,28,42,.08),0 1px 3px rgba(20,28,42,.05);
  --ombre-hero:0 10px 30px rgba(20,41,66,.20);
  --r:12px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{height:100%}
body{font-family:var(--sans);font-size:15.5px;line-height:1.55;color:var(--encre);
  background:var(--papier);min-height:100dvh;-webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility}
h1,h2,h3{font-family:var(--serif);color:var(--bleu);line-height:1.22;letter-spacing:-.01em}
h1{font-size:1.55rem;margin-bottom:2px}
h2{font-size:1.18rem;margin:26px 0 12px}
h3{font-size:1.02rem;margin-bottom:6px}
a{color:var(--bleu-vif)}
button{font:inherit;cursor:pointer}

/* Icônes trait (style logiciel) */
.ic-svg{width:1.15em;height:1.15em;flex-shrink:0;display:inline-block;vertical-align:-0.18em}
.sb-nav .ic{display:inline-flex;width:19px;justify-content:center;flex-shrink:0}
.sb-nav .ic .ic-svg{width:18px;height:18px;vertical-align:middle}
.app-etat .ic-svg{width:14px;height:14px;vertical-align:-2px;margin-right:2px}
.bouton .ic-svg{width:16px;height:16px;vertical-align:-3px;margin-right:6px}
.bouton.geant .ic-svg{width:18px;height:18px}
.metric .ic .ic-svg{width:20px;height:20px;color:var(--bleu)}
.row .ri .ic-svg{width:18px;height:18px;color:var(--bleu)}
.row .rch .ic-svg{width:18px;height:18px}
.nudge-ic .ic-svg{width:18px;height:18px;color:var(--ambre-texte)}
.nudge-ch .ic-svg{width:18px;height:18px}
.sb-doss-ic .ic-svg{width:19px;height:19px;color:var(--bleu)}
.doss-ic .ic-svg{width:24px;height:24px;color:var(--bleu)}
.cap-choix .ic .ic-svg{width:26px;height:26px;color:var(--bleu)}
.carte-titre .ic-svg{width:17px;height:17px;color:var(--bleu);vertical-align:-3px;margin-right:4px}
.retour .ic-svg{width:15px;height:15px;vertical-align:-2px}
.filtre-barre .ic-svg,.db-lien .ic-svg{width:14px;height:14px;vertical-align:-2px}
.etape-ic{display:inline-flex}.etape-ic .ic-svg{width:17px;height:17px;vertical-align:-3px}
.verif-ic{display:inline-flex}.verif-ic .ic-svg{width:16px;height:16px;vertical-align:-3px}
.verif li.ok .verif-ic{color:var(--vert)}.verif li.attention .verif-ic{color:var(--ambre-texte)}
.ed-palette .ic-svg,.ed-mini-lien .ic-svg,.ed-mini-ctrl .ic-svg{width:13px;height:13px;vertical-align:-2px;margin-right:3px}
.ed-outils .ic-svg{width:15px;height:15px;vertical-align:-2px}

/* ===================== COQUILLE APPLICATION ===================== */
.ap{display:flex;min-height:100dvh}

/* Barre latérale (bureau) */
.sb{width:var(--sb-w);flex-shrink:0;background:var(--sb);border-right:1px solid var(--trait);
  position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;padding:14px 12px}
.sb-brand{display:flex;gap:9px;align-items:center;text-decoration:none;padding:6px 8px 15px;
  font-family:var(--serif);font-weight:bold;color:var(--bleu);font-size:1.14rem}
.sb-brand i{font-style:normal;color:var(--ambre)}
/* Sélecteur de dossier (haut de la barre latérale) */
.sb-doss{display:flex;align-items:center;gap:10px;width:100%;text-align:left;cursor:pointer;
  background:var(--blanc);border:1px solid var(--trait);border-radius:10px;padding:9px 11px;
  margin:0 0 12px;transition:border-color .12s,box-shadow .12s}
.sb-doss:hover{border-color:#c9d3df;box-shadow:var(--ombre)}
.sb-doss-ic{font-size:1.15rem;flex-shrink:0}
.sb-doss-txt{min-width:0;flex:1;display:flex;flex-direction:column}
.sb-doss-nom{font-family:var(--serif);font-weight:bold;color:var(--bleu);font-size:.94rem;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-doss-type{font-size:.72rem;color:var(--encre-douce);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-doss-ch{color:var(--encre-3);font-size:.95rem;flex-shrink:0}

.sb-nav{display:flex;flex-direction:column;gap:1px;overflow-y:auto;flex:1;margin:0 -2px;padding:0 2px}
.sb-nav a{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--encre-douce);
  font-size:.92rem;font-weight:550;padding:9px 11px;border-radius:8px;
  transition:background .12s,color .12s;white-space:nowrap}
.sb-nav a .ic{width:19px;text-align:center;font-size:1rem;opacity:.9;flex-shrink:0}
.sb-nav a:hover{background:#EEEFF2;color:var(--encre)}
.sb-nav a.actif{background:var(--bleu);color:#fff;font-weight:650}
.sb-nav a.actif .ic{opacity:1}
.sb-sec{font-size:.66rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:var(--encre-3);padding:15px 11px 5px}
.sb-foot{border-top:1px solid var(--trait);margin-top:8px;padding:12px 11px 2px;
  font-size:.75rem;color:var(--vert-fonce);font-weight:600;display:flex;align-items:center;gap:7px}
.sb-foot .dot{width:8px;height:8px;border-radius:50%;background:var(--vert);flex-shrink:0}

/* Avant l'ouverture d'un dossier : coquille épurée */
body.sans-dossier .sb-nav,body.sans-dossier .sb-foot,body.sans-dossier .app-nav,
body.sans-dossier .tbar-rech{display:none}

/* Zone principale */
.ap-main{flex:1;min-width:0;display:flex;flex-direction:column}
.tbar{position:sticky;top:0;z-index:20;height:var(--tete-h);display:flex;align-items:center;gap:12px;
  padding:0 28px;background:rgba(255,255,255,.82);backdrop-filter:saturate(160%) blur(10px);
  -webkit-backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--trait)}
.tbar-back{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;
  border:1px solid var(--trait);background:var(--blanc);border-radius:9px;cursor:pointer;color:var(--bleu);
  transition:border-color .12s,background .12s}
.tbar-back:hover{border-color:var(--bleu);background:#F7F9FB}
.tbar-back .ic-svg{width:18px;height:18px}
.tbar-back[hidden]{display:none}
.tbar-title{font-family:var(--serif);font-weight:bold;color:var(--bleu);font-size:1.04rem}
.tbar-sp{flex:1}
.tbar-brand{display:none;gap:9px;align-items:center;text-decoration:none;
  font-family:var(--serif);font-weight:bold;color:var(--bleu);font-size:1.08rem}
.tbar-brand i{font-style:normal;color:var(--ambre)}
.app-etat{font-size:.72rem;font-weight:600;background:var(--vert-pale);color:var(--vert-fonce);
  border:1px solid #c6e0d1;border-radius:20px;padding:4px 12px;white-space:nowrap}

.app-corps{flex:1 0 auto;width:100%;max-width:1040px;margin:0 auto;padding:28px 28px 44px}

/* Pied */
.app-pied{border-top:1px solid var(--trait);padding:16px 28px;
  font-size:.72rem;color:var(--encre-douce);text-align:center;background:var(--papier)}
.app-pied p{max-width:1040px;margin:0 auto}

/* ===================== TABLEAU DE BORD ===================== */
.pg-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;
  flex-wrap:wrap;margin-bottom:22px}
.pg-head h1{margin:0}
.pg-eyebrow{font-size:.76rem;font-weight:600;color:var(--encre-douce);
  text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.pg-actions{display:flex;gap:10px;flex-wrap:wrap}
.pg-actions .bouton{min-height:0;padding:11px 17px}

/* Rappel discret (notes à compléter…) */
.nudge{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--encre);
  background:var(--ambre-pale);border:1px solid #ecd6b3;border-radius:12px;
  padding:12px 16px;margin:0 0 18px;font-size:.9rem}
.nudge:hover{border-color:var(--ambre)}
.nudge-ic{font-size:1.15rem}
.nudge strong{color:var(--ambre-texte)}
.nudge-ch{margin-left:auto;color:var(--ambre-texte);font-size:1.1rem}

.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
.metric{background:var(--blanc);border:1px solid var(--trait);border-radius:var(--r);
  padding:16px 17px 14px;box-shadow:var(--ombre);position:relative}
.metric .n{font-size:1.75rem;font-weight:700;color:var(--encre);line-height:1;
  font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.metric .l{font-size:.83rem;color:var(--encre-douce);margin-top:6px;font-weight:500}
.metric .ic{position:absolute;top:15px;right:15px;font-size:1.05rem;opacity:.5}

.dash{display:grid;grid-template-columns:1fr 336px;gap:18px;align-items:start}
.col-side{display:flex;flex-direction:column;gap:18px}

.panel{background:var(--blanc);border:1px solid var(--trait);border-radius:var(--r);
  box-shadow:var(--ombre);overflow:hidden}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:13px 17px;border-bottom:1px solid var(--trait-2)}
.panel-head h2{margin:0;font-size:1rem}
.panel-head .db-lien{font-size:.82rem;font-weight:600;text-decoration:none}
.panel-body{padding:15px 17px}

/* Lignes de liste (activité, échéances…) */
.rows{display:flex;flex-direction:column}
.row{display:flex;align-items:center;gap:13px;padding:13px 17px;text-decoration:none;
  color:var(--encre);border-bottom:1px solid var(--trait-2);transition:background .12s}
.row:last-child{border-bottom:0}
.row:hover{background:#F7F8FA}
.row .ri{width:34px;height:34px;flex-shrink:0;border-radius:9px;background:var(--papier-2);
  display:flex;align-items:center;justify-content:center;font-size:1.05rem}
.row .rc-txt{display:block;min-width:0;flex:1}
.row .rt{display:block;font-weight:600;font-size:.93rem;color:var(--encre);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.row .rm{display:block;font-size:.83rem;color:var(--encre-douce);margin-top:1px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.row .rch{margin-left:auto;color:var(--encre-3);font-size:1.1rem;flex-shrink:0}
.vide-etat{padding:26px 18px;text-align:center;color:var(--encre-douce);font-size:.9rem}

/* Titre de section avec filet d'accent (réutilisé dans les vues) */
.db-sect{display:flex;align-items:center;gap:10px;margin:26px 0 12px}
.db-sect::before{content:"";width:4px;height:1.02rem;border-radius:3px;background:var(--ambre)}
.db-sect h2{margin:0}
.db-sect .db-lien{margin-left:auto;font-size:.82rem;font-weight:600;text-decoration:none}

/* Ligne titre + bouton (en-tête de vue) */
.ligne-titre{display:flex;align-items:center;justify-content:space-between;gap:12px;
  flex-wrap:wrap;margin-bottom:6px}
.ligne-titre h1{margin:0}
.ligne-titre .bouton{min-height:0;padding:9px 15px;font-size:.92rem}

/* Grille 2 colonnes (échange prévu/réel…) */
.grille-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}

/* Barre du bas — mobile uniquement (masquée au bureau) */
.app-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:20;
  background:rgba(255,255,255,.95);backdrop-filter:saturate(160%) blur(14px);
  -webkit-backdrop-filter:saturate(160%) blur(14px);
  border-top:1px solid var(--trait);box-shadow:0 -2px 14px rgba(20,28,42,.06);
  padding-bottom:env(safe-area-inset-bottom)}
.app-nav-inner{max-width:640px;margin:0 auto;display:flex;padding:6px 8px}
.app-nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;text-decoration:none;color:var(--encre-douce);
  font-size:1.22rem;line-height:1;padding:6px 2px;border-radius:11px;min-height:50px;
  transition:color .16s,background .16s,transform .08s}
.app-nav a span{display:block;font-size:.66rem;font-weight:600;margin-top:4px}
.app-nav a .ic-svg{width:21px;height:21px}
.app-nav a:active{transform:scale(.94)}
.app-nav a.actif{color:var(--blanc);background:var(--bleu)}
.app-nav a.actif span{color:#dfe7f1}

/* ===================== RESPONSIVE ===================== */
@media (max-width:900px){
  .dash{grid-template-columns:1fr}
  .metrics{grid-template-columns:1fr 1fr}
}
@media (max-width:820px){
  .sb{display:none}
  body{padding-bottom:calc(66px + env(safe-area-inset-bottom))}
  .app-nav{display:block}
  .tbar{padding:0 16px}
  .tbar-title{display:none}
  .tbar-brand{display:flex}
  .app-corps{padding:18px 16px 26px;max-width:760px}
  .app-pied{padding:16px}
}
@media (max-width:440px){
  .grille-2{grid-template-columns:1fr}
  .metrics{gap:11px}
}

/* Composants */
.carte{background:var(--blanc);border:1px solid var(--trait);border-radius:var(--r);
  padding:17px;margin:13px 0;box-shadow:var(--ombre)}
.carte.calme{background:var(--vert-pale);border-color:#c6e0d1}
.carte.chaude{background:var(--ambre-pale);border-color:#ecd6b3}
.bouton{display:inline-block;text-align:center;font-weight:650;border:1.5px solid transparent;
  border-radius:11px;padding:12px 20px;min-height:47px;text-decoration:none;font-size:1rem;
  transition:background .14s,border-color .14s,box-shadow .14s,transform .05s}
.bouton:active{transform:translateY(1px)}
.bouton.primaire{background:var(--bleu);color:var(--blanc);box-shadow:0 2px 8px rgba(20,41,66,.22)}
.bouton.primaire:hover{background:var(--bleu-fonce);box-shadow:0 4px 14px rgba(20,41,66,.28)}
.bouton.secondaire{background:var(--blanc);color:var(--bleu);border-color:#c9d3df}
.bouton.secondaire:hover{background:var(--bleu);color:var(--blanc);border-color:var(--bleu)}
.bouton.geant{display:block;width:100%;font-size:1.1rem;padding:17px;border-radius:13px}
.bouton.discret{background:none;border:none;color:var(--encre-douce);text-decoration:underline;
  padding:8px;font-weight:400;font-size:.9rem;min-height:0}
.bouton[disabled]{opacity:.62;cursor:default}
.bouton[disabled]:hover{background:var(--blanc);color:var(--bleu);border-color:#c9d3df;box-shadow:none}
.bouton .sourdine{font-weight:400}
.bouton.danger{background:var(--blanc);color:#8A2A1F;border-color:#e0c0ba}
.bouton.danger:hover{background:#8A2A1F;color:var(--blanc);border-color:#8A2A1F}
.rangee-boutons{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.rangee-boutons .bouton{flex:1;min-width:150px}
.etiquette{display:inline-block;font-size:.72rem;font-weight:700;border-radius:20px;
  padding:3px 11px;vertical-align:middle}
.etiquette.verrou{background:var(--vert-pale);color:var(--vert-fonce);border:1px solid #bcdcc9}
.etiquette.brouillon{background:var(--ambre-pale);color:var(--ambre-texte);border:1px solid #ecd6b3}
.etiquette.fictif{background:var(--papier-2);color:var(--encre-douce);border:1px solid var(--brume)}
.sourdine{color:var(--encre-douce);font-size:.86rem}
.cote{font-size:.7rem;font-weight:700;background:var(--ambre-pale);color:var(--ambre-texte);
  border:1px solid #ecd6b3;border-radius:5px;padding:2px 6px;white-space:nowrap}

/* Formulaires */
label.champ{display:block;margin:14px 0 4px;font-weight:650;font-size:.92rem}
label.champ .aide{display:block;font-weight:400;font-size:.82rem;color:var(--encre-douce);margin-top:2px}
input[type=text],input[type=email],input[type=date],input[type=time],input[type=datetime-local],
input[type=number],select,textarea{width:100%;font:inherit;padding:11px 13px;
  border:1px solid #D3D7DD;border-radius:9px;background:var(--blanc);color:var(--encre);
  transition:border-color .14s,box-shadow .14s}
input:hover,select:hover,textarea:hover{border-color:#B7BDC6}
textarea{min-height:120px;line-height:1.5}
input:focus,select:focus,textarea:focus{border-color:var(--bleu);
  box-shadow:0 0 0 3px rgba(30,58,95,.14);outline:none}
button:focus-visible,a:focus-visible{outline:3px solid var(--ambre);outline-offset:2px}
.rappel-factuel{background:var(--vert-pale);border-left:3px solid var(--vert);
  padding:10px 13px;font-size:.85rem;margin:10px 0;border-radius:0 9px 9px 0;color:var(--vert-fonce)}

/* Listes d'entrées */
.entree{display:block;background:var(--blanc);border:1px solid var(--trait);border-radius:var(--r);
  padding:14px 16px;margin:10px 0;text-decoration:none;color:var(--encre);box-shadow:var(--ombre);
  transition:border-color .14s,box-shadow .14s,transform .06s}
.entree:hover{border-color:#c9d3df;box-shadow:var(--ombre-2);transform:translateY(-1px)}
.entree:active{transform:translateY(0)}
.entree .quand{font-family:var(--serif);color:var(--bleu);font-weight:bold;font-size:1.05rem}
.entree .apercu{font-size:.88rem;color:var(--encre-douce);margin-top:3px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.deux-dates{font-size:.78rem;color:var(--encre-douce)}

/* ===== Formulaires de saisie (fiches) ===== */
.retour{display:inline-flex;align-items:center;gap:5px;font-size:.85rem;font-weight:600;
  text-decoration:none;color:var(--encre-douce);margin-bottom:10px}
.retour:hover{color:var(--bleu)}
.fiche{max-width:720px}
.fiche .carte{padding:18px}
.carte-titre{display:flex;align-items:center;gap:8px;font-family:var(--serif);color:var(--bleu);
  font-size:1.02rem;font-weight:bold;margin-bottom:2px}
.carte-titre .num{width:22px;height:22px;flex-shrink:0;border-radius:50%;background:var(--bleu);
  color:#fff;font-family:var(--sans);font-size:.78rem;font-weight:700;display:flex;
  align-items:center;justify-content:center}
.carte-sous{font-size:.82rem;color:var(--encre-douce);margin:0 0 6px}
.carte .champ:first-of-type{margin-top:8px}
/* Barre d'action collante (Enregistrer / Supprimer) */
.barre-actions{display:flex;gap:10px;align-items:center;margin-top:16px;padding:12px 0;
  position:sticky;bottom:0;background:linear-gradient(to top,var(--papier) 72%,rgba(244,245,247,0))}
.barre-actions .bouton{min-height:44px}
.barre-actions .grandir{flex:1}
.barre-actions .espace{flex:1}
@media (max-width:820px){.barre-actions{position:static;background:none}}

/* Options du rapport */
.rap-opt{background:var(--blanc);border:1px solid var(--trait);border-radius:var(--r);box-shadow:var(--ombre);margin:10px 0 0}
.rap-opt>summary{list-style:none;cursor:pointer;padding:13px 16px;font-weight:600;color:var(--bleu);display:flex;align-items:center;gap:8px}
.rap-opt>summary::-webkit-details-marker{display:none}
.rap-opt>summary .ic-svg{width:16px;height:16px}
.rap-opt[open]>summary{border-bottom:1px solid var(--trait-2)}
.rap-opt-corps{padding:6px 16px 15px}
.rap-tog{display:flex;gap:11px;align-items:flex-start;cursor:pointer;padding:10px 0;border-bottom:1px solid var(--trait-2)}
.rap-tog input{width:auto;margin-top:3px;flex-shrink:0;accent-color:var(--bleu)}
.rap-tog span span.aide{display:block;font-weight:400}
.rap-pieces-tete{display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:.85rem;color:var(--encre-douce);margin:12px 0 6px}
.rap-pieces{display:flex;flex-direction:column;max-height:230px;overflow:auto;border:1px solid var(--trait-2);border-radius:9px}
.rap-pc{display:flex;align-items:center;gap:9px;padding:8px 11px;border-bottom:1px solid var(--trait-2);cursor:pointer}
.rap-pc:last-child{border-bottom:0}
.rap-pc input{width:auto;flex-shrink:0;accent-color:var(--vert)}
.cote-mini{font-size:.68rem;font-weight:700;background:var(--ambre-pale);color:var(--ambre-texte);border:1px solid #ecd6b3;border-radius:4px;padding:1px 6px;flex-shrink:0}
.rap-pc-t{font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Aperçu du rapport (en direct) */
.apercu-frame{width:100%;height:540px;border:1px solid var(--trait);border-radius:10px;
  background:#fff;display:block;margin:4px 0 12px}

/* Jurisprudence — badges de recoupement */
.jur-b{font-size:.7rem;font-weight:700;border-radius:20px;padding:3px 10px;white-space:nowrap}
.jur-h{background:var(--vert-pale);color:var(--vert-fonce);border:1px solid #c6e0d1}
.jur-m{background:var(--ambre-pale);color:var(--ambre-texte);border:1px solid #ecd6b3}
.jur-f{background:var(--papier-2);color:var(--encre-douce);border:1px solid var(--brume)}
.lien-suppr{background:none;border:none;color:var(--encre-douce);font-size:.78rem;cursor:pointer;padding:2px 4px;text-decoration:underline;white-space:nowrap}
.lien-suppr:hover{color:#b3261e}
.ju-detecte{margin:2px 0 4px;min-height:4px}
.ju-detok{display:inline-flex;align-items:center;gap:6px;font-size:.86rem;color:var(--vert-fonce);background:var(--vert-pale);border:1px solid #c6e0d1;border-radius:8px;padding:6px 10px}
.ju-detok .ic-svg{width:15px;height:15px}
/* La méthode (préparation) */
.methode{border-color:#c9d3df;background:linear-gradient(180deg,#fbfcfe,#fff)}
.methode>summary{cursor:pointer;font-weight:700;color:var(--bleu-fonce,#1e3a5f);display:flex;align-items:center;gap:8px;list-style:none;font-size:1rem}
.methode>summary::-webkit-details-marker{display:none}
.methode>summary::after{content:"▾";margin-left:auto;color:var(--encre-douce);transition:transform .2s}
.methode[open]>summary::after{transform:rotate(180deg)}
.methode>summary .ic-svg{width:18px;height:18px;color:var(--bleu)}
.methode-corps{margin-top:12px}
.methode-corps h3{font-size:.95rem;margin:16px 0 6px;color:var(--bleu-fonce,#1e3a5f)}
.methode-corps p{margin:0 0 8px;line-height:1.55}
.meth-el{list-style:none;padding:0;margin:8px 0}
.meth-el li{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 12px;border:1px solid var(--brume);border-radius:9px;margin-bottom:8px;background:#fff}
.meth-el li>span{flex:1;min-width:180px;font-size:.94rem}
.meth-add{white-space:nowrap;flex:none}
.meth-et{margin:8px 0 8px 20px;padding:0}
.meth-et li{margin:7px 0;line-height:1.5}
.meth-opt{font-weight:400;font-size:.82rem;color:var(--encre-douce)}
/* Profil de domaine — l'accent s'adapte au type de dossier */
body[data-dom="famille"]     {--bleu:#1f6f57;--bleu-fonce:#17513f;--bleu-vif:#2f9276}
body[data-dom="logement"]    {--bleu:#7a4b1e;--bleu-fonce:#5f3a16;--bleu-vif:#a9691f}
body[data-dom="travail"]     {--bleu:#8a4b1a;--bleu-fonce:#6c3a14;--bleu-vif:#b3541e}
body[data-dom="criminel"]    {--bleu:#7a3550;--bleu-fonce:#5e283e;--bleu-vif:#a1476b}
body[data-dom="immigration"] {--bleu:#1e4f8a;--bleu-fonce:#163d6c;--bleu-vif:#2563a8}
body[data-dom="constat"]     {--bleu:#3f4d80;--bleu-fonce:#303c64;--bleu-vif:#5468a8}
body[data-dom="municipal"]   {--bleu:#4a5a86;--bleu-fonce:#3a4869;--bleu-vif:#5f74a8}
body[data-dom="autre"]       {--bleu:#54467e;--bleu-fonce:#423762;--bleu-vif:#6d5aa6}
/* Délais & prescription */
.del-presets{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 4px}
.del-chip{border:1px solid var(--brume);background:#fff;border-radius:20px;padding:7px 12px;font-size:.86rem;cursor:pointer;color:var(--encre);transition:border-color .15s,background .15s}
.del-chip:hover{border-color:var(--bleu);background:#f7f9fb}
.del-liste{list-style:none;padding:0;margin:8px 0 0}
.del-liste li{display:flex;flex-direction:column;padding:9px 0;border-top:1px solid var(--trait-2)}
.del-liste li:first-child{border-top:0}
.del-liste li>span{font-size:.86rem;color:var(--encre-douce)}
.del-res{margin-top:14px;padding:16px;border-radius:12px;border:1px solid var(--brume);text-align:center;background:#fff}
.del-res.del-ok{background:var(--vert-pale);border-color:#c6e0d1}
.del-res.del-warn{background:#fdf6e6;border-color:#ecd6b3}
.del-res.del-bad{background:#fdecec;border-color:#f0c4c4}
.del-date{font-size:1.5rem;font-weight:700;color:var(--encre)}
.del-sous{font-size:.82rem;color:var(--encre-douce);margin:2px 0 8px}
.del-reste{font-weight:700}
.del-res.del-bad .del-reste{color:#b3261e}
.del-res.del-ok .del-reste{color:var(--vert-fonce)}
/* Jour d'audience */
.aud-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.aud-actions{display:flex;gap:8px;flex-wrap:wrap}
.aud-prog{position:relative;height:10px;background:var(--papier-2);border-radius:20px;margin:6px 0 16px;overflow:visible}
.aud-bar{height:10px;background:var(--bleu);border-radius:20px;transition:width .25s}
.aud-prog span{position:absolute;right:0;top:14px;font-size:.8rem;color:var(--encre-douce)}
.aud-liste{list-style:none;padding:0;margin:0}
.aud-item{display:flex;gap:11px;align-items:flex-start;cursor:pointer;padding:9px 0;line-height:1.45;border-top:1px solid var(--trait-2)}
.aud-liste li:first-child .aud-item{border-top:0}
.aud-item input{width:auto;margin-top:3px;flex:none}
.aud-item.fait span{color:var(--encre-douce);text-decoration:line-through}
/* Cohérence de la chronologie */
.coh{border-radius:12px;padding:12px 14px;margin:2px 0 14px;font-size:.92rem}
.coh-ok{display:flex;align-items:center;gap:8px;background:var(--vert-pale);border:1px solid #c6e0d1;color:var(--vert-fonce)}
.coh-ok .ic-svg{width:16px;height:16px;flex:none}
.coh-attn{background:#fdf6e6;border:1px solid #ecd6b3}
.coh-tete{display:flex;align-items:center;gap:8px;font-size:1rem}
.coh-tete .ic-svg{width:18px;height:18px;color:#b8791f;flex:none}
.coh-intro{margin:6px 0 10px;color:var(--encre-douce);font-size:.88rem;line-height:1.5}
.coh-liste{list-style:none;padding:0;margin:0}
.coh-liste li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;padding:9px 0;border-top:1px solid #ecd6b3}
.coh-liste li>span{flex:1;min-width:200px;line-height:1.45}
.coh-liste li>a{font-size:.82rem;white-space:nowrap}
.coh-liste li.coh-err>span{border-left:3px solid #d0453b;padding-left:9px}
.coh-liste li.coh-attn>span{border-left:3px solid #b8791f;padding-left:9px}
.coh-liste li.coh-info>span{border-left:3px solid var(--encre-3);padding-left:9px}
/* Bascule rapide de dossier */
.doss-pop{position:fixed;z-index:200;background:#fff;border:1px solid var(--brume);border-radius:12px;box-shadow:var(--ombre-2);overflow:hidden;font-size:.92rem}
.dp-tete{padding:9px 12px;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--encre-douce);background:var(--sb);border-bottom:1px solid var(--trait-2)}
.dp-liste{max-height:44vh;overflow:auto;padding:4px}
.dp-row{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:0;border-radius:8px;padding:9px 10px;cursor:pointer;color:var(--encre)}
.dp-row:hover{background:var(--papier-2)}
.dp-row.actif{background:var(--papier-2)}
.dp-nom{font-weight:600;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dp-type{font-size:.78rem;color:var(--encre-douce);white-space:nowrap}
.dp-actif{font-size:.66rem;font-weight:700;text-transform:uppercase;color:var(--bleu);background:var(--papier);border:1px solid var(--brume);border-radius:20px;padding:1px 7px}
.dp-vide{padding:12px;color:var(--encre-douce);margin:0}
.dp-bas{border-top:1px solid var(--trait-2);padding:4px;display:flex;flex-direction:column}
.dp-act{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:0;border-radius:8px;padding:9px 10px;cursor:pointer;color:var(--bleu);font-weight:600}
.dp-act:hover{background:var(--papier-2)}
.dp-act .ic-svg{width:16px;height:16px}
.dp-lang{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-top:1px solid var(--trait-2);font-size:.82rem;color:var(--encre-douce)}
.dp-lang-seg{display:inline-flex;border:1px solid var(--brume);border-radius:20px;overflow:hidden}
.dp-lang-seg button{background:#fff;border:0;padding:4px 12px;font-size:.78rem;font-weight:700;cursor:pointer;color:var(--encre-douce)}
.dp-lang-seg button.on{background:var(--bleu);color:#fff}
/* Assistant de démarrage (wizard) */
.wiz-dots{display:flex;align-items:center;gap:7px;justify-content:center;margin:2px 0 18px}
.wiz-dots span{width:9px;height:9px;border-radius:50%;background:var(--brume)}
.wiz-dots span.on{background:var(--bleu);transform:scale(1.25)}
.wiz-dots span.fait{background:var(--bleu-clair)}
.wiz-dots em{margin-left:8px;font-style:normal;font-size:.8rem;color:var(--encre-douce)}
.wiz-types{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(min-width:620px){.wiz-types{grid-template-columns:repeat(4,1fr)}}
.wiz-type{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;padding:16px 10px;background:#fff;border:1px solid var(--brume);border-radius:12px;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .1s}
.wiz-type:hover{border-color:var(--bleu);transform:translateY(-1px);box-shadow:var(--ombre)}
.wiz-type.sel{border-color:var(--bleu);box-shadow:0 0 0 2px var(--bleu) inset}
.wiz-type .ic{color:var(--bleu)}.wiz-type .ic .ic-svg{width:24px;height:24px}
.wiz-type strong{font-size:.98rem}.wiz-type small{color:var(--encre-douce);font-size:.78rem;line-height:1.3}
.wiz-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px}
.wiz-recap{display:flex;flex-direction:column}
.wr-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--trait-2)}
.wr-row:first-child{border-top:0}
.wr-row>span{color:var(--encre-douce)}
/* Bascule de langue (barre du haut) */
.tbar-lang{border:1px solid var(--brume);background:#fff;color:var(--bleu);font-weight:700;font-size:.78rem;border-radius:20px;padding:4px 11px;cursor:pointer;letter-spacing:.03em}
.tbar-lang:hover{background:var(--papier-2)}
.meth-pistes{margin:8px 0;padding:0;list-style:none}
.meth-pistes li{position:relative;padding:8px 12px 8px 30px;border:1px solid var(--brume);border-radius:8px;margin-bottom:7px;background:#fff;line-height:1.5;font-size:.94rem}
.meth-pistes li::before{content:"→";position:absolute;left:11px;top:8px;color:var(--bleu);font-weight:700}

/* Rechercher dans les lois */
.loi-dom{font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--bleu);background:var(--papier-2);border:1px solid var(--brume);border-radius:20px;padding:2px 9px;white-space:nowrap}
.corpus-liste{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.corpus-item{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:11px 13px;border:1px solid var(--brume);border-radius:9px;background:#fff;text-decoration:none;color:inherit;transition:border-color .15s,background .15s}
.corpus-item:hover{border-color:var(--bleu);background:#f7f9fb}
.corpus-nom{font-weight:600;font-size:.95rem}
.corpus-src{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;color:var(--encre-douce);white-space:nowrap}
.corpus-src .ic-svg{width:14px;height:14px}
.corpus-plus{margin-top:10px}
.corpus-plus>summary{cursor:pointer;font-size:.88rem;color:var(--bleu);font-weight:600}
.carte.loi{padding:15px 17px}
.loi-r{font-size:.92rem;line-height:1.55;color:var(--encre);margin:2px 0 8px}
.loi-src{font-size:.8rem;color:var(--encre-douce);margin:0}
.loi-src a{font-weight:600}

/* Calendrier (chronologie) */
.cal-tete{display:flex;align-items:center;gap:10px;margin:6px 0 10px}
.cal-nav{width:34px;height:34px;border:1px solid var(--trait);background:var(--blanc);border-radius:9px;
  cursor:pointer;color:var(--bleu);display:inline-flex;align-items:center;justify-content:center}
.cal-nav:hover{border-color:var(--bleu);background:#F7F9FB}
.cal-nav .ic-svg{width:16px;height:16px}
.cal-titre{font-family:var(--serif);font-weight:bold;color:var(--bleu);font-size:1.12rem;text-transform:capitalize}
.cal-grille{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal-entetes{margin-bottom:6px}
.cal-eh{text-align:center;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--encre-3);padding:2px 0}
.cal-cell{min-height:78px;border:1px solid var(--trait);border-radius:9px;background:var(--blanc);
  padding:5px 5px 4px;overflow:hidden;cursor:pointer;transition:border-color .12s,box-shadow .12s}
.cal-cell.cal-vide{background:transparent;border:0;cursor:default}
.cal-cell:not(.cal-vide):hover{border-color:var(--bleu);box-shadow:var(--ombre)}
.cal-num{display:block;font-size:.82rem;font-weight:700;color:var(--encre-douce);margin-bottom:3px}
.cal-cell.cal-today{border-color:var(--bleu);box-shadow:0 0 0 1px var(--bleu)}
.cal-cell.cal-today .cal-num{color:var(--bleu)}
.cal-cell.cal-sel{background:#EEF3F8;border-color:var(--bleu)}
.cal-ev{display:block;font-size:.68rem;line-height:1.3;color:#fff;background:var(--bleu);border-radius:4px;
  padding:1px 4px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-ev.cal-ech{background:var(--ambre-texte)}
.cal-plus{font-size:.66rem;color:var(--encre-3);font-weight:600}
@media (max-width:640px){.cal-cell{min-height:56px}.cal-ev{font-size:.6rem}.cal-eh{font-size:.62rem}}

/* Déroulement à la cour */
.derou{list-style:none;counter-reset:d;margin:0;padding:0}
.derou li{position:relative;padding:2px 0 16px 40px;counter-increment:d}
.derou li:last-child{padding-bottom:2px}
.derou li::before{content:counter(d);position:absolute;left:0;top:0;width:26px;height:26px;
  border-radius:50%;background:var(--bleu);color:#fff;font-family:var(--sans);font-size:.82rem;
  font-weight:700;display:flex;align-items:center;justify-content:center}
.derou li:not(:last-child)::after{content:"";position:absolute;left:13px;top:28px;bottom:2px;width:2px;background:var(--trait)}
.derou li strong{display:block;color:var(--bleu);font-family:var(--serif);font-size:1rem}
.derou li span{display:block;font-size:.9rem;color:var(--encre-douce);margin-top:2px}
.derou-suites{margin:0;padding-left:20px}
.derou-suites li{margin:7px 0;font-size:.92rem;line-height:1.5}

/* Préparer mon dossier */
.pr-point,.pr-temoin{padding:12px 0;border-top:1px solid var(--trait-2)}
.pr-point:first-child,.pr-temoin:first-child{border-top:0;padding-top:2px}
.pr-point .bouton.discret,.pr-temoin .bouton.discret{padding:6px 0;margin-top:4px}

/* Modèles rapides (barre de chips au-dessus du journal) */
.modeles-barre{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:14px 0 6px}
.modeles-lbl{font-size:.74rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--encre-3);margin-right:2px}
.modele-chip{border:1px solid #d3d7dd;background:var(--blanc);border-radius:20px;padding:6px 13px 6px 10px;
  font-size:.84rem;font-weight:600;color:var(--bleu);cursor:pointer;transition:all .12s}
.modele-chip:hover{border-color:var(--bleu);background:#F7F9FB}
.modele-chip .ic-svg{width:13px;height:13px;vertical-align:-2px;margin-right:3px}

/* Capture rapide (P6 : capturer d'abord, raconter ensuite) */
.cap-choix{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:6px 0 4px}
.cap-choix label,.cap-choix button{display:flex;flex-direction:column;align-items:center;gap:4px;
  justify-content:center;background:var(--blanc);border:1.5px solid var(--trait);border-radius:12px;
  padding:20px 12px;cursor:pointer;color:var(--encre);text-align:center;
  transition:border-color .12s,background .12s,transform .06s}
.cap-choix label:hover,.cap-choix button:hover{border-color:var(--bleu);background:#F7F9FB;transform:translateY(-1px)}
.cap-choix .ic{font-size:1.7rem}
.cap-choix strong{font-family:var(--serif);color:var(--bleu);font-size:1rem}
.cap-choix small{color:var(--encre-douce);font-size:.78rem}
.brouillon-liste .entree{border-left:3px solid var(--ambre)}

/* Renseignements du dossier — parties */
.info-grille{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:560px){.info-grille{grid-template-columns:1fr}.cap-choix{grid-template-columns:1fr}}

/* Recherche (barre supérieure) */
.tbar-rech{flex:1;max-width:340px;position:relative}
.tbar-rech input{width:100%;padding:8px 12px 8px 34px;border-radius:8px;font-size:.88rem;
  border:1px solid var(--trait);background:var(--blanc)}
.rech-ic{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--encre-3);
  pointer-events:none;display:inline-flex}
.rech-ic .ic-svg{width:15px;height:15px}
@media (max-width:820px){.tbar-rech{display:none}}

/* Mes dossiers */
.doss-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.doss-carte{background:var(--blanc);border:1px solid var(--trait);border-radius:var(--r);
  padding:16px;box-shadow:var(--ombre);display:flex;flex-direction:column;gap:3px}
.doss-carte.actif{border-color:var(--bleu);box-shadow:0 0 0 1px var(--bleu),var(--ombre)}
.doss-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.doss-ic{font-size:1.7rem}
.doss-badge{font-size:.68rem;font-weight:700;background:var(--vert-pale);color:var(--vert-fonce);
  border:1px solid #c6e0d1;border-radius:20px;padding:2px 9px}
.doss-badge.fictif{background:var(--papier-2);color:var(--encre-douce);border-color:var(--brume)}
.doss-nom{font-family:var(--serif);font-weight:bold;color:var(--bleu);font-size:1.1rem}
.doss-meta{font-size:.84rem;color:var(--encre-douce)}
.doss-stats{font-size:.8rem;color:var(--encre-3);margin-top:1px}
.doss-actions{display:flex;gap:8px;align-items:center;margin-top:12px}
.doss-actions .bouton{min-height:0;padding:9px 14px;font-size:.88rem}
.doss-actions .bouton.discret{margin-left:auto;padding:8px 4px}
.doss-neuf{background:var(--blanc);border:1.5px dashed #c6ccd5;border-radius:var(--r);
  padding:20px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:3px;color:var(--bleu);cursor:pointer;min-height:150px;transition:border-color .12s,background .12s}
.doss-neuf:hover{border-color:var(--bleu);background:#F7F9FB}
.doss-neuf .pl{font-size:1.7rem;line-height:1}
.doss-neuf span{font-family:var(--serif);font-weight:bold;font-size:1rem}
.doss-neuf small{color:var(--encre-douce);font-size:.76rem;font-weight:400;text-align:center}

/* Écran d'accueil (avant l'ouverture d'un dossier) */
.bienv{max-width:620px;margin:8px auto 4px;text-align:center}
.bienv-eyebrow{font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ambre-texte);margin-bottom:8px}
.bienv h1{font-size:2rem;line-height:1.18;margin-bottom:12px}
.bienv-sub{color:var(--encre-douce);font-size:1.02rem;max-width:36em;margin:0 auto}
.bienv-atouts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin:22px 0 4px}
.bienv-atouts div{background:var(--blanc);border:1px solid var(--trait);border-radius:var(--r);
  padding:16px 12px;box-shadow:var(--ombre)}
.bienv-atouts .ic{font-size:1.5rem;display:block}
.bienv-atouts strong{display:block;color:var(--bleu);font-family:var(--serif);margin:6px 0 2px}
.bienv-atouts small{color:var(--encre-douce);font-size:.8rem}
.bienv-form{max-width:620px;margin-left:auto;margin-right:auto}
@media (max-width:480px){.bienv h1{font-size:1.55rem}.bienv-atouts{grid-template-columns:1fr}}

/* Coffre */
.galerie{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:12px}
.galerie .piece{background:var(--blanc);border:1px solid var(--brume);border-radius:12px;
  padding:8px;font-size:.78rem;cursor:pointer;box-shadow:var(--ombre)}
.galerie .piece img{width:100%;height:100px;object-fit:cover;border-radius:7px;background:#EEE;display:block}
.galerie .piece .doc{width:100%;height:100px;border-radius:7px;background:var(--ambre-pale);
  display:flex;align-items:center;justify-content:center;font-size:1.7rem}
.galerie .piece strong{display:block;margin-top:6px}
.hash{font-family:ui-monospace,Menlo,monospace;font-size:.68rem;word-break:break-all;
  color:var(--encre-douce)}

/* Stats + guide de départ */
.stat-ligne{display:flex;gap:11px;flex-wrap:wrap;margin:13px 0}
.stat{flex:1;min-width:100px;background:var(--blanc);border:1px solid var(--trait);
  border-radius:var(--r);padding:15px 10px;text-align:center;box-shadow:var(--ombre)}
.stat b{display:block;font-family:var(--serif);font-size:1.85rem;color:var(--bleu);line-height:1}
.stat span{font-size:.72rem;font-weight:600;color:var(--encre-douce);display:block;margin-top:5px}
.progres-piste{background:var(--brume);border-radius:5px;height:9px;margin:10px 0;overflow:hidden}
.progres-piste i{display:block;height:9px;border-radius:5px;background:var(--vert);
  transition:width .3s}
.progres-etape{margin:7px 0;display:flex;gap:8px;align-items:baseline}
.progres-etape .rond{color:var(--vert)}

/* Chrono */
.chrono-item{border-left:3px solid var(--brume);padding:6px 0 10px 15px;margin-left:6px}
.chrono-item .t{font-size:.78rem;color:var(--encre-douce)}
.filtre-barre{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}
.filtre-barre button{border:1px solid #d8d0c4;background:var(--blanc);border-radius:20px;
  padding:7px 14px;font-size:.82rem;font-weight:600;color:var(--encre);transition:all .14s}
.filtre-barre button:hover{border-color:var(--bleu)}
.filtre-barre button.actif{background:var(--bleu);color:var(--blanc);border-color:var(--bleu)}

/* Vérificateur */
.verif li{list-style:none;padding:9px 11px;margin:7px 0;border-radius:9px;font-size:.9rem}
.verif li.ok{background:var(--vert-pale)}
.verif li.attention{background:var(--ambre-pale)}
.verif li .action{display:block;font-size:.8rem;margin-top:2px}

/* Visite en cours — collée sous la tête */
.vec{position:sticky;top:var(--tete-h);z-index:10;background:var(--ambre-pale);
  border:1px solid var(--ambre);border-radius:12px;padding:14px;margin:0 0 16px;
  box-shadow:0 2px 10px rgba(184,121,31,.14)}
.vec .duree{font-family:var(--serif);font-size:1.6rem;color:var(--ambre-texte);line-height:1}

/* Dialogue */
#dialogue-fond{position:fixed;inset:0;background:rgba(31,41,51,.5);z-index:40;
  display:flex;align-items:center;justify-content:center;padding:16px}
#dialogue-fond[hidden]{display:none!important}
#dialogue-fond .dialogue{background:var(--blanc);border-radius:14px;max-width:460px;width:100%;
  max-height:85vh;overflow:auto;padding:22px;box-shadow:0 20px 50px rgba(31,41,51,.35)}

/* Visite guidée */
.tour{text-align:center;padding:4px 4px 2px}
.tour-ic{width:56px;height:56px;margin:0 auto 12px;border-radius:16px;display:flex;align-items:center;
  justify-content:center;background:var(--vert-pale);color:var(--vert-fonce)}
.tour-ic .ic-svg{width:28px;height:28px}
.tour-pas{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--encre-3)}
.tour h3{margin:4px 0 8px;font-size:1.2rem}
.tour p{color:var(--encre-douce);font-size:.95rem;line-height:1.55}
.tour-dots{display:flex;gap:6px;justify-content:center;margin:16px 0 14px}
.tour-dot{width:7px;height:7px;border-radius:50%;background:var(--brume)}
.tour-dot.on{background:var(--bleu);width:22px;border-radius:4px}
.tour-nav{display:flex;gap:10px;justify-content:space-between;align-items:center}
.tour-nav .bouton{min-height:0;padding:11px 18px}
.tour-nav .bouton.primaire{flex:1;max-width:60%}

/* Étapes générateur */
.etapes{display:flex;gap:5px;margin:12px 0}
.etapes span{flex:1;height:7px;border-radius:4px;background:var(--brume)}
.etapes span.fait{background:var(--vert)}
.etapes span.actif{background:var(--bleu)}
.valide-legende img{width:100%;max-height:300px;object-fit:contain;background:#EEE;border-radius:9px}

/* Bascule (toast) */
#toast{border-radius:10px!important}

/* Checklist (préparation d'audience) */
.checklist{list-style:none;margin:10px 0 4px;padding:0}
.checklist li{margin:8px 0}
.checklist label{display:flex;gap:11px;align-items:flex-start;cursor:pointer;font-size:.95rem;line-height:1.4}
.checklist input[type=checkbox]{width:21px;height:21px;margin-top:1px;flex-shrink:0;accent-color:var(--vert);cursor:pointer}
.checklist input:checked + *,.checklist label:has(input:checked){color:var(--encre-douce)}

/* Gestion des catégories */
.cat-ligne{display:flex;gap:8px;align-items:center;margin:8px 0}
.cat-ligne .cat-nom{flex:1}
.cat-ligne .bouton{padding:6px 10px;min-height:0}

/* ============ Éditeur de rapport (type PDF / Canva) ============ */
.ed-barre{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px}
.ed-barre .bouton{padding:9px 14px;min-height:0}
.ed-palette{display:flex;flex-wrap:wrap;gap:6px;align-items:center;position:sticky;top:calc(var(--tete-h) + 2px);
  z-index:8;background:var(--papier);padding:8px 0;border-bottom:1px solid var(--brume);margin-bottom:10px}
.ed-palette button{border:1px solid var(--bleu);background:var(--blanc);color:var(--bleu);
  border-radius:20px;padding:6px 12px;font-size:.82rem;font-weight:600;cursor:pointer}
.ed-palette button:hover{background:var(--bleu);color:#fff}
/* La « page » du document */
.ed-page{background:#fff;border:1px solid var(--brume);border-radius:6px;
  box-shadow:0 4px 20px rgba(31,41,51,.10);padding:26px 30px;font-family:Georgia,serif;color:#1a1a1a}
.ed-bloc{position:relative;border:1px solid transparent;border-radius:8px;padding:6px 8px;margin:2px 0;
  transition:border-color .12s,background .12s}
.ed-bloc:hover{border-color:#cdd7e3;background:#fafcff}
.ed-bloc.ed-over{border-color:var(--vert);background:var(--vert-pale)}
.ed-bloc.ed-drag{opacity:.5}
.ed-outils{display:none;position:absolute;top:-13px;right:8px;z-index:5;gap:2px;
  background:var(--bleu);border-radius:16px;padding:2px 4px;align-items:center;box-shadow:0 2px 8px rgba(31,41,51,.25)}
.ed-bloc:hover .ed-outils{display:flex}
.ed-outils button{background:none;border:0;color:#fff;font-size:.85rem;cursor:pointer;padding:3px 5px;border-radius:12px;line-height:1}
.ed-outils button:hover:not(:disabled){background:rgba(255,255,255,.22)}
.ed-outils button:disabled{opacity:.35;cursor:default}
.ed-outils .ed-type{color:#cdd9ea;font-family:var(--sans);font-size:.66rem;padding:0 6px 0 4px;letter-spacing:.02em}
.ed-poignee{color:#fff;cursor:grab;font-family:var(--sans);font-size:.9rem;padding:0 3px;user-select:none}
.ed-poignee:active{cursor:grabbing}
/* Contrôles par bloc : cachés jusqu'au survol / à la sélection (document propre d'abord) */
.ed-mini-ctrl,.ed-style{display:none}
.ed-bloc:hover .ed-mini-ctrl,.ed-bloc:focus-within .ed-mini-ctrl,.ed-bloc.ed-sel .ed-mini-ctrl,
.ed-bloc:hover .ed-style,.ed-bloc:focus-within .ed-style,.ed-bloc.ed-sel .ed-style{display:flex}
.ed-mini-ctrl{gap:4px;margin-bottom:4px;font-family:var(--sans);flex-wrap:wrap}
.ed-mini-ctrl button{border:1px solid var(--brume);background:var(--blanc);border-radius:6px;
  padding:2px 9px;font-size:.75rem;cursor:pointer;color:var(--encre)}
.ed-mini-ctrl button.actif{background:var(--bleu);color:#fff;border-color:var(--bleu)}
.ed-edit{outline:none;border-radius:4px;padding:2px 4px;min-height:1.2em}
.ed-edit:focus{background:#fffbe9;box-shadow:inset 0 0 0 2px var(--ambre)}
.ed-h1{font-size:1.5rem;font-weight:bold;text-align:center;color:#111}
.ed-h2{font-size:1.2rem;font-weight:bold;color:#111;border-bottom:1px solid #bbb;padding-bottom:3px}
.ed-h3{font-size:1.02rem;font-weight:bold;color:#111}
.ed-p{font-size:.98rem;line-height:1.5;white-space:pre-wrap}
.ed-tbl-wrap{overflow-x:auto}
.ed-tbl{border-collapse:collapse;width:100%;font-family:var(--sans);font-size:.82rem}
.ed-tbl th,.ed-tbl td{border:1px solid #bbb;padding:5px 7px;text-align:left;vertical-align:top;min-width:44px}
.ed-tbl th{background:#eef;font-weight:bold}
.ed-tbl td[contenteditable]:focus,.ed-tbl th[contenteditable]:focus{background:#fffbe9;outline:2px solid var(--ambre)}
.ed-tbl-x{border:0!important;background:none!important;width:26px;text-align:center;padding:0!important}
.ed-tbl-x button{border:0;background:none;color:#b04a3a;cursor:pointer;font-size:1rem;line-height:1}
.ed-img img{max-width:100%;max-height:280px;display:block;border:1px solid #bbb;border-radius:4px}
.ed-img-vide{background:var(--brume);border-radius:6px;padding:26px;text-align:center;color:var(--encre-douce);font-family:var(--sans)}
.ed-img-cap{font-size:.9rem;margin-top:5px}
.ed-legende{border-radius:4px;padding:1px 4px}
.ed-mini-lien{background:none;border:0;color:var(--bleu);text-decoration:underline;cursor:pointer;
  font-family:var(--sans);font-size:.8rem;padding:4px 0}
.ed-saut{text-align:center;color:var(--encre-douce);font-family:var(--sans);font-size:.8rem;
  border-top:2px dashed #c9c0b2;border-bottom:2px dashed #c9c0b2;padding:6px;letter-spacing:.05em}
.ed-mention{font-style:italic;font-size:.86rem;color:#333;border-top:1px solid #bbb;padding-top:8px}
.ed-attest{background:#f5f5f5;border:1px solid #ddd;border-radius:6px;padding:12px 14px;font-family:var(--sans)}
.ed-note{font-family:var(--sans);font-size:.75rem;color:var(--encre-douce);margin-top:4px}
.ed-choix{display:grid;gap:8px;max-height:50vh;overflow:auto;margin:10px 0}
.ed-choix-item{text-align:left;border:1px solid var(--brume);background:var(--blanc);border-radius:8px;
  padding:10px 12px;cursor:pointer;font-size:.9rem}
.ed-choix-item:hover{border-color:var(--bleu);background:var(--papier)}
/* Barre de style (couleur / taille / gras / italique) */
.ed-style{flex-wrap:wrap;gap:4px;align-items:center;margin-bottom:5px;font-family:var(--sans)}
.ed-style button{border:1px solid var(--brume);background:var(--blanc);border-radius:6px;
  padding:2px 8px;font-size:.75rem;cursor:pointer;color:var(--encre);line-height:1.3}
.ed-style button.actif{background:var(--bleu);color:#fff;border-color:var(--bleu)}
.ed-sw{width:19px;height:19px;padding:0!important;border-radius:50%!important;border:2px solid #fff!important;
  box-shadow:0 0 0 1px var(--brume)}
.ed-sw.actif{box-shadow:0 0 0 2px var(--bleu)}
.ed-sep2{width:1px;height:16px;background:var(--brume);margin:0 3px}
/* Blocs liste / encadré / signature / séparateur */
.ed-liste{margin:2px 0 2px 22px}
.ed-liste li{margin:4px 0}
.ed-liste .ed-edit{display:inline-block;min-width:60px}
.ed-li-x{border:0;background:none;color:#b04a3a;cursor:pointer;font-size:.95rem;line-height:1}
.ed-encadre{border:1px solid #999;background:#f5f5f5;border-radius:6px;padding:9px 12px}
.ed-encadre.calme{border-color:var(--vert);background:var(--vert-pale)}
.ed-signature{white-space:pre-wrap;margin-top:12px}
.ed-sep-vis{border-top:1px solid #999;margin:8px 0}
.ed-bloc.ed-sel{border-color:var(--bleu);box-shadow:0 0 0 1px var(--bleu)}

@media print{.app-nav,.sb,.tbar,.app-pied{display:none}
  .app-corps{max-width:none;padding:0}}

/* ===== Paywall (modal) ===== */
.pw-plans{display:flex;gap:10px;margin:14px 0 2px}
.pw-plan{flex:1;text-align:center;border:1px solid var(--brume);border-radius:12px;padding:12px 6px;text-decoration:none;color:var(--encre);background:#fff;transition:border-color .15s,transform .1s}
.pw-plan:hover{border-color:var(--bleu);transform:translateY(-1px)}
.pw-plan strong{display:block;font-size:1.25rem;color:var(--bleu)}
.pw-plan span{font-size:.78rem;color:var(--encre-douce)}
.pw-vie{border-color:var(--ambre);background:var(--ambre-pale)}
.pw-vie strong{color:var(--ambre-texte)}

/* ===== Compte ===== */
.cpt-ou{display:flex;align-items:center;gap:10px;margin:4px 0 8px;color:var(--encre-douce);font-size:.82rem}
.cpt-ou::before,.cpt-ou::after{content:"";flex:1;height:1px;background:var(--trait)}

/* ===== Sélecteur de dossier (agrandi) ===== */
.dp-row{padding:12px 12px;gap:11px}
.dp-ic{flex:none;width:34px;height:34px;border-radius:9px;background:var(--papier-2);display:flex;align-items:center;justify-content:center;color:var(--bleu)}
.dp-ic .ic-svg{width:18px;height:18px}
.dp-txt{flex:1;min-width:0;display:flex;flex-direction:column}
.dp-txt .dp-nom{font-size:.98rem}
.dp-txt .dp-type{font-size:.78rem}
.dp-va{font-size:.78rem;color:var(--bleu);font-weight:600;white-space:nowrap;opacity:0}
.dp-row:hover .dp-va{opacity:1}
.dp-row[data-dom="famille"] .dp-ic{color:#1f6f57}.dp-row[data-dom="logement"] .dp-ic{color:#7a4b1e}
.dp-row[data-dom="criminel"] .dp-ic{color:#7a3550}.dp-row[data-dom="immigration"] .dp-ic{color:#1e4f8a}

/* ===== Dates de vérification (contenu juridique) ===== */
.verif-src{font-size:.74rem;color:var(--encre-3);margin:6px 0 0;font-style:italic}

/* ===== Index d'articles clés ===== */
.art-groupe{margin-top:12px}
.art-code{font-weight:700;font-size:.82rem;letter-spacing:.03em;text-transform:uppercase;color:var(--encre-douce);margin-bottom:6px}
.art-liste{display:flex;flex-wrap:wrap;gap:6px}
.art-item{display:inline-block;border:1px solid var(--brume);border-radius:8px;padding:5px 9px;font-size:.82rem;text-decoration:none;color:var(--encre);background:#fff}
.art-item:hover{border-color:var(--bleu);background:#f7f9fb}
.art-item strong{color:var(--bleu);margin-right:3px}
.cpt-det{margin-top:12px;border-top:1px solid var(--trait-2);padding-top:10px}
.cpt-det>summary{cursor:pointer;font-weight:600;color:var(--bleu);font-size:.92rem}
