/* BBC Habitat CRM, lot Fidélité (12/10/2026) : chaque écran reproduit sa maquette (décision de Mike, 12/10, 13 h 13 et
   13 h 14 : « exactement la maquette »). Chargée après crm.css : les mesures ci-dessous sont celles des maquettes, relevées
   dans leur source (.dc.html) et, pour la coque, dans coque-fiche-v5-surcharges-maquette.css (session-2026-10-11/coque/).
   Les couleurs passent par les jetons (assets/jetons.css), qui portent aussi le thème sombre. */

/* ---------- base des maquettes : Geist 13,5 px, interligne 19 px, chiffres tabulaires ---------- */
body{font-family:var(--corps);font-size:13.5px;line-height:19px;letter-spacing:-.005em;font-feature-settings:"tnum" 1;-webkit-font-smoothing:antialiased;background:var(--canvas)}
.mono,.numero{font-family:var(--mono);letter-spacing:0}

/* ---------- coque : barre latérale (maquette v5 : 216 px, dégradé #4271d8 → #3866cc, textes blancs Geist 900) ---------- */
.app{grid-template-columns:216px minmax(0,1fr);background:var(--canvas)}
.rail{padding:16px 12px;gap:2px;background:linear-gradient(180deg,var(--coque-haut) 0%,var(--coque-milieu) 55%,var(--coque-bas) 100%);box-shadow:none}
.rail .marque{display:flex;align-items:center;gap:9px;padding:4px 8px 14px;margin:0;font-size:15.5px;line-height:19px;font-weight:900;letter-spacing:.005em;color:var(--coque-texte);text-decoration:none;border:0;background:none}
.rail .marque i{width:26px;height:26px;border-radius:7px;background:#fff;color:var(--coque-logo-maison);display:grid;place-items:center;flex:none}
.rail .marque i svg{width:15px;height:15px;stroke-width:2}
.ic16{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rail .find{height:30px;border:0;border-radius:8px;background:var(--coque-recherche);display:flex;align-items:center;gap:7px;padding:0 9px;margin:0 0 12px;
  color:var(--coque-texte);font:inherit;font-size:13.5px;font-weight:900;letter-spacing:.005em;cursor:pointer;text-align:left;width:100%}
.rail .find svg{width:14px;height:14px}
.rail .find span{flex:1}
.rail .find kbd{font:inherit;font-size:11.5px}
.rail .nav{display:flex;flex-direction:column;gap:2px;padding:0;margin:0}
.rail .nav h6{margin:10px 8px 4px;font-size:12px;line-height:16px;font-weight:900;letter-spacing:.005em;color:var(--coque-texte)}
.rail .nv,.rail .nav-groupe>summary.nv{height:32px;min-height:32px;display:flex;align-items:center;gap:9px;padding:0 8px;border-radius:7px;font-size:15px;line-height:19px;font-weight:900;
  letter-spacing:.005em;color:var(--coque-texte);text-decoration:none;background:none;box-shadow:none;cursor:pointer;list-style:none}
.rail .nav-groupe>summary.nv::-webkit-details-marker{display:none}
.rail .nav-groupe>summary.nv::after{content:none}
.rail .nv svg{color:var(--coque-texte);stroke-width:2.4}
.rail .nv em.compte{margin-left:auto;font-style:normal;font-size:12px;font-weight:900;color:var(--coque-texte);background:none;padding:0;min-width:0}
.rail .nv[aria-current="page"]{background:#fff;color:var(--coque-actif-texte);box-shadow:var(--coque-ombre-actif)}
.rail .nv[aria-current="page"] svg,.rail .nv[aria-current="page"] em.compte{color:var(--coque-actif-texte)}
.rail .nav-groupe{margin:0;padding:0;border:0}
.rail .nav-groupe .sous-menu{display:flex;flex-direction:column;gap:2px;margin:2px 0 4px}
.rail .nv.sous-nv{height:30px;min-height:30px;padding-left:33px;font-size:13.5px}
.rail .nv.sous-nv svg{display:none}
@media (hover:hover) and (pointer:fine){.rail .nv:not([aria-current="page"]):hover{background:var(--coque-survol)}.rail .find:hover{background:rgba(255,255,255,.22)}}
.rail .nv:focus-visible,.rail .find:focus-visible,.rail .moi>summary:focus-visible{outline:2px solid #fff;outline-offset:2px}

/* le compte, en bas (maquette : rond de 30 px, nom et rôle) ; son menu s'ouvre vers le haut */
.rail .moi{margin-top:auto;position:relative}
.rail .moi>summary.profil{display:flex;align-items:center;gap:9px;padding:8px;border-top:1px solid var(--coque-filet);list-style:none;cursor:pointer;color:var(--coque-texte);border-radius:0}
.rail .moi>summary::-webkit-details-marker{display:none}
.rail .moi .avatar{width:30px;height:30px;border-radius:50%;background:var(--personne,#8e8e93);color:#fff;display:grid;place-items:center;font-style:normal;font-size:11.5px;font-weight:600;flex:none;box-shadow:none;border:0}
.rail .moi summary span{display:flex;flex-direction:column;line-height:16px;min-width:0}
.rail .moi summary b{font-size:13.5px;font-weight:900;letter-spacing:.005em;color:var(--coque-texte);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail .moi summary small{font-size:11.5px;font-weight:900;letter-spacing:.005em;color:var(--coque-texte)}
.rail .menu-moi{position:absolute;left:0;right:0;bottom:calc(100% + 6px);padding:6px;border-radius:12px;background:var(--surface);box-shadow:var(--ombre-pop),0 0 0 1px var(--line);
  display:flex;flex-direction:column;gap:1px;z-index:40;transform-origin:bottom left;animation:moi-entre 150ms var(--eo)}
@keyframes moi-entre{from{opacity:0;transform:scale(.96)}}
@media (prefers-reduced-motion:reduce){.rail .menu-moi{animation:moi-fondu 120ms ease}@keyframes moi-fondu{from{opacity:0}}}
.rail .menu-moi>a,.rail .menu-moi>button,.rail .menu-moi .quitter button{display:flex;align-items:center;width:100%;height:32px;padding:0 10px;border:0;border-radius:8px;background:none;
  color:var(--ink);font:inherit;font-size:13.5px;font-weight:500;text-decoration:none;text-align:left;cursor:pointer;letter-spacing:-.005em}
.rail .menu-moi .son{justify-content:flex-start}
.rail .menu-moi .son.on{color:var(--ink)}
.rail .menu-moi .quitter{margin:0;padding:0;border-top:1px solid var(--line);padding-top:4px;margin-top:3px}
.rail .menu-moi .apercu-rail{margin:0;padding:6px 10px 8px;border-top:1px solid var(--line)}
.rail .menu-moi .apercu-rail label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--ink-2)}
.rail .menu-moi .apercu-rail select{width:100%;height:30px;font-size:13px}
@media (hover:hover) and (pointer:fine){.rail .menu-moi>a:hover,.rail .menu-moi>button:hover,.rail .menu-moi .quitter button:hover{background:var(--fill)}}
.rail .bas,.rail .profil-liens{display:none}

/* ---------- contenu : plus de barre du haut sur toutes les pages ; la recherche est dans la barre latérale ---------- */
.contenu{background:var(--canvas)}
.contenu>header.barre{display:none}

/* ---------- interrupteur « Sombre » (maquette : 32 × 19, pastille de 15 px, vert quand il est mis) ---------- */
.sw{display:inline-flex;align-items:center;gap:8px;color:var(--ink-2);font-size:12.5px;cursor:pointer;user-select:none}
.sw input{position:absolute;opacity:0;pointer-events:none}
.sw i{width:32px;height:19px;border-radius:10px;background:var(--fill);position:relative;transition:background-color .2s var(--eo);flex:none}
.sw i::after{content:"";position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .25s var(--eo)}
.sw input:checked+i{background:#34c759}
.sw input:checked+i::after{transform:translateX(13px)}
.sw input:focus-visible+i{outline:2px solid var(--accent);outline-offset:2px}

/* ---------- recherche globale (⌘K) : une palette centrée, sans animation d'ouverture (geste du clavier) ---------- */
dialog.palette{width:min(560px,calc(100vw - 32px));max-height:min(480px,70vh);margin:14vh auto auto;padding:0;border:0;border-radius:14px;background:var(--surface);color:var(--ink);
  box-shadow:0 0 0 .5px rgba(0,0,0,.14),0 22px 44px -14px rgba(15,25,50,.4);overflow:hidden}
dialog.palette::backdrop{background:rgba(14,22,40,.32)}
dialog.palette .recherche{display:flex;align-items:center;gap:10px;height:52px;max-width:none;margin:0;padding:0 16px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;color:var(--ink-3);box-shadow:none}
dialog.palette .recherche:focus-within{box-shadow:none;border-color:var(--line)}
dialog.palette .recherche svg{width:16px;height:16px}
dialog.palette .recherche input{flex:1;height:50px;border:0;outline:0;background:none;font:inherit;font-size:15px;color:var(--ink);padding:0;box-shadow:none!important}
dialog.palette kbd{font:inherit;font-size:11.5px;color:var(--ink-3);padding:1px 6px;border-radius:5px;background:var(--fill)}
dialog.palette .resultats{overflow:auto;max-height:calc(min(480px,70vh) - 52px);padding:6px}
dialog.palette .resultats:empty{display:none}
dialog.palette .res{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:8px 10px;border-radius:9px;color:inherit;text-decoration:none}
dialog.palette .res b{font-weight:600;font-size:13.5px}
dialog.palette .res small{grid-column:1;color:var(--ink-3);font-size:12px}
dialog.palette .res .ph{grid-row:1/3;grid-column:2;align-self:center;color:var(--ink-2);font-size:12px}
dialog.palette .res[aria-selected="true"]{background:var(--accent-soft)}
dialog.palette .res[aria-selected="true"] b{color:var(--accent-text)}

/* =====================================================================================================================
   FICHE DOSSIER, haut de page (maquette palettes/brainstorm-2026-10-08/tour2/Fiche-D1-P1-geist et coque v5)
   ===================================================================================================================== */
body.fiche main.page{padding:0 24px 14px;max-width:none;display:flex;flex-direction:column;gap:8px}
body.fiche main.page>.succes,body.fiche main.page>.alerte{margin:10px 0 0}
.fiche-tete{display:flex;flex-direction:column;gap:10px}
/* barre du haut : 50 px, « < Pipeline », le numéro en Geist Mono, « Sombre », « Autres actions », « Modifier » */
.fiche-tete .tb{height:50px;flex:none;display:flex;align-items:center;gap:12px;margin:0 -24px;padding:0 24px;background:var(--canvas);box-shadow:0 1px 0 var(--line);position:relative;z-index:15}
.fiche-tete .tb .back{display:flex;align-items:center;gap:3px;color:var(--accent-text);font-weight:500;text-decoration:none}
.fiche-tete .tb .back svg{width:16px;height:16px}
.fiche-tete .tb .crumb{display:flex;align-items:center;gap:12px;color:var(--ink-3);font-size:12.5px}
.fiche-tete .tb .crumb b{color:var(--onglet-texte);font-weight:600;font-family:var(--mono);letter-spacing:0;font-size:12.5px;text-transform:none}
.fiche-tete .tb .sp{flex:1}
.fiche-tete .tb .btn,.fiche-tete .tb .menu-fiche>summary{height:30px;min-height:30px;padding:0 13px;border-radius:8px;border:0;background:var(--fill);color:var(--ink);font-weight:500;font-size:13px;
  display:inline-flex;align-items:center;gap:6px;white-space:nowrap;cursor:pointer;list-style:none;box-shadow:none}
.fiche-tete .tb .menu-fiche>summary::-webkit-details-marker{display:none}
.fiche-tete .tb .btn svg{width:16px;height:16px}
@media (hover:hover) and (pointer:fine){.fiche-tete .tb .btn:hover,.fiche-tete .tb .menu-fiche>summary:hover{filter:brightness(.97);background:var(--fill)}}
.press{transition:transform 160ms var(--eo),background-color 160ms ease}
.press:active{transform:scale(.97)}
@media (prefers-reduced-motion:reduce){.press:active{transform:none}}
/* « Autres actions » : le menu sort du bouton (charte, Mouvement f) */
.menu-fiche{position:relative}
.menu-fiche .menu{position:absolute;right:0;top:calc(100% + 6px);z-index:30;min-width:260px;padding:6px;border-radius:12px;background:var(--surface);
  box-shadow:0 0 0 .5px rgba(0,0,0,.14),0 22px 44px -14px rgba(15,25,50,.4);display:flex;flex-direction:column;gap:1px;transform-origin:top right;animation:menu-entre 160ms var(--eo)}
@keyframes menu-entre{from{opacity:0;transform:scale(.96)}}
@media (prefers-reduced-motion:reduce){.menu-fiche .menu{animation:menu-fondu 120ms ease}@keyframes menu-fondu{from{opacity:0}}}
.menu-fiche .menu form{margin:0}
.menu-fiche .menu .lien,.menu-fiche .menu button.lien{display:flex;align-items:center;width:100%;height:32px;padding:0 10px;border:0;border-radius:8px;background:none;color:var(--ink);
  font:inherit;font-size:13.5px;text-align:left;text-decoration:none;cursor:pointer}
.menu-fiche .menu .lien.rouge{color:var(--danger)}
.menu-fiche .menu select{width:100%;height:32px;margin:2px 0;font-size:13.5px}
@media (hover:hover) and (pointer:fine){.menu-fiche .menu .lien:hover{background:var(--fill)}}

/* en-tête du client, une rangée : vignette Carte 70 px, nom 22 px, coordonnées 13,5 px, les six cases, les ronds */
.fiche-tete .hd{display:flex;align-items:center;gap:12px;min-width:0}
.fiche-tete .map{position:relative;width:70px;height:70px;border-radius:16px;overflow:hidden;flex:none;display:block;
  box-shadow:0 0 0 .5px rgba(0,0,0,.05),0 1px 3px rgba(0,0,0,.05),0 6px 16px -10px rgba(20,40,80,.5)}
.fiche-tete .mapart{width:70px;height:70px;position:absolute;inset:0;stroke:none}
.fiche-tete .m-bg{fill:#e6ecf3}.fiche-tete .m-park{fill:#cfe6cf}.fiche-tete .m-rd{fill:none;stroke:#fff;stroke-width:5}.fiche-tete .m-rd2{fill:none;stroke:#fff;stroke-width:2.5}
:root[data-theme="sombre"] .fiche-tete .m-bg{fill:#34373d}:root[data-theme="sombre"] .fiche-tete .m-park{fill:#2f4a37}:root[data-theme="sombre"] .fiche-tete :is(.m-rd,.m-rd2){stroke:#4a4e56}
.fiche-tete .pinmk{position:absolute;left:50%;top:44%;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:var(--danger);
  display:grid;place-items:center;box-shadow:0 4px 10px -3px rgba(200,30,20,.7);transition:margin .2s var(--eo)}
.fiche-tete .pinmk svg{transform:rotate(45deg);color:#fff;width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.fiche-tete .map small{position:absolute;left:0;right:0;bottom:0;height:18px;background:rgba(0,0,0,.45);color:#fff;font-size:10.5px;font-weight:600;display:grid;place-items:center;letter-spacing:.01em}
@media (hover:hover) and (pointer:fine){.fiche-tete .map:hover .pinmk{margin-top:-15px}}
/* nom long (18/10/2026, signalé par CONSOLE BBC sur les planches du lot Téléphone persistant ; la maquette ne dessine que « M. Jean Dupont ») :
   la colonne du nom se réduit déjà à la place libre (règle plus bas, « une alerte de doublon longue »), mais son nom, sa source et sa date,
   sur une ligne sans retour, la débordaient sous les six cases. Quand la date d'arrivée toucherait les cases (assets/crm.js pose alors
   « serre » sur .hd), le nom passe à la ligne, la source et la date d'arrivée viennent dessous. Sinon (nom court : la ligne dépasse de 4 px à 1366
   sans toucher les cases), aucune de ces règles ne joue : l'en-tête est celui de la maquette. */
.fiche-tete .id{display:flex;flex-direction:column;gap:3px;min-width:0;flex:none}
.fiche-tete .id h1{margin:0;font-size:22px;line-height:28px;font-weight:700;letter-spacing:-.015em;display:flex;align-items:center;gap:8px;white-space:nowrap;color:var(--ink)}
.fiche-tete .hd.serre .id h1{flex-wrap:wrap;gap:0 8px}
.fiche-tete .hd.serre .id h1 .nom{min-width:0;white-space:normal;overflow-wrap:anywhere}
.fiche-tete .src{display:flex;align-items:center;gap:6px;font-size:11.5px;line-height:16px;font-weight:600;letter-spacing:0;color:var(--entete-secondaire)}
.fiche-tete .src>span+span{padding-left:6px;box-shadow:inset 1px 0 0 var(--line)}
.fiche-tete .src .tag.meta{height:22px;padding:0 8px;border-radius:6px;font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;background:var(--accent-soft);color:var(--accent-text);line-height:1}
.fiche-tete .ln{display:flex;align-items:center;gap:6px;color:var(--onglet-texte);font-weight:500;font-size:13.5px;line-height:18px;white-space:nowrap}
.fiche-tete .ln svg{width:13px;height:13px;flex:none;color:var(--entete-icone);fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.fiche-tete .ln .cp{font-weight:600}
.fiche-tete .sepd{width:1px;height:12px;background:var(--line);margin:0 6px}
.fiche-tete .lk{color:inherit;text-decoration:none;border-radius:4px}
@media (hover:hover) and (pointer:fine){.fiche-tete .lk:hover{color:var(--accent-text);text-decoration:underline;text-underline-offset:2px}}
.fiche-tete .alerte-doublon{color:var(--danger);font-weight:600}
.fiche-tete .alerte-doublon a{color:inherit}
.fiche-tete .pills{display:flex;gap:4px;padding-left:12px;margin-left:0;border-left:1px solid var(--line)}
.fiche-tete .pl{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:7px 8px 8px;border-radius:10px;background:var(--surface);box-shadow:0 0 0 1px var(--line);min-width:0}
.fiche-tete .pl small{font-size:11px;line-height:12px;font-weight:600;color:var(--entete-secondaire);text-transform:none;letter-spacing:.005em;white-space:nowrap}
.fiche-tete .pl b{display:flex;align-items:center;gap:5px;font-size:15px;line-height:19px;font-weight:700;letter-spacing:-.01em;white-space:nowrap;color:var(--ink)}
.fiche-tete .pl.vide b{color:var(--entete-secondaire);font-weight:500;font-size:12.5px}
.fiche-tete .pl em{font-style:normal;font-size:11px;font-weight:500;color:var(--ink-3);margin-left:1px}
/* Revenus : couleurs imposées par la console (charte, « ne pas les retoucher ») */
.fiche-tete .pl.cat-tmo{background:var(--tmo-fond)}.fiche-tete .pl.cat-tmo b{color:var(--tmo-texte)}
.fiche-tete .pl.cat-mo{background:var(--mo-fond)}.fiche-tete .pl.cat-mo b{color:var(--mo-texte)}
.fiche-tete .pl.cat-inter{background:var(--inter-fond)}.fiche-tete .pl.cat-inter b{color:var(--inter-texte)}
.fiche-tete .pl.cat-sup{background:var(--sup-fond)}.fiche-tete .pl.cat-sup b{color:var(--sup-texte)}
.fiche-tete .pl.p-cat small{color:var(--onglet-texte)}
.fiche-tete .hd>.sp{flex:1}
.fiche-tete .qa{display:flex;gap:4px;flex:none}
.fiche-tete .qa>a,.fiche-tete .qa>button{width:32px;height:32px;border-radius:50%;border:0;padding:0;background:var(--surface);box-shadow:0 0 0 1px var(--line);color:var(--accent-text);display:grid;place-items:center;cursor:pointer}
.fiche-tete .qa svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.fiche-tete .qa .qa-wa{color:#1fa855}
:root[data-theme="sombre"] .fiche-tete .qa .qa-wa{color:#4fd683}
@media (hover:hover) and (pointer:fine){.fiche-tete .qa>a:hover,.fiche-tete .qa>button:not(:disabled):hover{background:var(--accent-soft)}}
/* lot Correctifs de l'audit (audit 5-1) : « Ne pas appeler », ronds inactifs (même aspect que .btn[disabled]) */
.fiche-tete .qa>button:disabled,.fiche-tete .lk[aria-disabled]{opacity:.5;cursor:default}
.fiche-tete :is(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* frise et Prochaine action : deux colonnes, la carte de droite à 452 px ; les deux cartes à la même hauteur */
.jr{display:grid;grid-template-columns:minmax(0,1fr) 452px;gap:12px;align-items:stretch}
.jr.seule{grid-template-columns:minmax(0,1fr)}
.jr>.card{background:var(--surface);border-radius:16px;box-shadow:0 0 0 1px var(--line);min-width:0;border:0;margin:0}
.jr .fr{padding:14px 18px 12px;display:flex;flex-direction:column;justify-content:center;gap:12px}
.jr .fr .top{display:flex;align-items:center;justify-content:space-between;font-size:12px;line-height:19px;color:var(--ink-3);padding:0;background:none;border:0;gap:12px}
.jr .fr .top b{color:var(--ink);font-weight:600}
.jr .who{display:flex;align-items:center;gap:5px}
.jr .who .gap{width:10px}
.jr .mini{width:18px;height:18px;border-radius:50%;background:var(--personne,#5d6a7e);color:#fff;font-style:normal;font-size:8.5px;font-weight:700;display:grid;place-items:center}
.jr .steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin:0}
.jr .st{display:flex;flex-direction:column;gap:8px;border:0;background:none;padding:0;margin:0;text-align:left;font:inherit;color:inherit;cursor:pointer;min-width:0;border-radius:8px}
.jr .st .trait{display:flex;align-items:center}
.jr .st .nd{width:22px;height:22px;border-radius:50%;flex:none;display:grid;place-items:center;position:relative;z-index:1;background:var(--fill)}
.jr .st .ln2{flex:1;height:4px;border-radius:2px;margin:0 4px;background:var(--fill)}
.jr .st:last-child .ln2{visibility:hidden}
.jr .st.done .nd{background:linear-gradient(180deg,var(--cobalt-haut),var(--cobalt-bas));box-shadow:0 3px 8px -3px var(--cobalt-haut)}
.jr .st.done .ln2{background:linear-gradient(90deg,var(--cobalt-haut),var(--cobalt-clair))}
.jr .st .ck{width:13px;height:13px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.jr .st.now .nd{background:var(--surface);box-shadow:inset 0 0 0 2px var(--warning)}
.jr .st.now .nd::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--warning);opacity:.3;transform:scale(1.1)}
.jr .st.now .nd b{width:8px;height:8px;border-radius:50%;background:var(--warning);display:block}
.jr .st .lb{display:block;padding-right:6px}
.jr .st .nm{display:block;font-size:12.5px;font-weight:600;color:var(--ink);line-height:16px}
.jr .st small{display:block;font-weight:400;color:var(--ink-3);font-size:11.5px;line-height:16px;letter-spacing:.01em}
.jr .st.todo .nm{color:var(--ink-3);font-weight:500}
.jr .st.now .nm,.jr .st.now small{color:var(--warning)}
.jr .st.now small{font-weight:500}
.jr .steps.sortie{opacity:.5}
.jr .sortie-frise{margin:0}
@media (hover:hover) and (pointer:fine){.jr .st.todo:hover .nd{box-shadow:inset 0 0 0 1.5px var(--accent)}}
.jr .st:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* carte Prochaine action : cobalt de #2f63d8 à #16295a, reflet en haut à gauche ; le temps qui reste et les boutons secondaires sur
   le voile sombre (décision de Mike du 11/10, choix 1, qui prime sur le blanc à 18 % de la maquette) */
.jr .na{display:flex;flex-direction:column;align-items:stretch;gap:9px;padding:12px 14px 13px;border-radius:14px;color:#fff;
  background:radial-gradient(120% 140% at 0% 0%,rgba(255,255,255,.18),rgba(255,255,255,0) 55%),linear-gradient(135deg,var(--cobalt-haut),var(--cobalt-bas));
  box-shadow:0 0 0 .5px rgba(0,0,0,.08),0 14px 30px -14px var(--cobalt-haut);position:relative;overflow:hidden}
.jr .na .nahd{display:flex;align-items:center;justify-content:space-between;gap:8px}
.jr .na .live{display:flex;align-items:center;gap:9px;font-size:13px;line-height:19px;font-weight:600;color:rgba(255,255,255,.92)}
.jr .na .live i{width:12px;height:12px;border-radius:50%;background:#5dff94;animation:pouls 1.6s cubic-bezier(.2,.7,.3,1) infinite;flex:none}
@keyframes pouls{0%{box-shadow:0 0 0 0 rgba(93,255,148,.85),0 0 0 0 rgba(93,255,148,.45)}70%{box-shadow:0 0 0 9px rgba(93,255,148,0),0 0 0 16px rgba(93,255,148,0)}100%{box-shadow:0 0 0 0 rgba(93,255,148,0),0 0 0 0 rgba(93,255,148,0)}}
@media (prefers-reduced-motion:reduce){.jr .na .live i{animation:none}}
.jr .na .cd{font-size:11.5px;line-height:16px;font-weight:600;padding:2px 8px;border-radius:10px;background:var(--voile-cobalt);color:#fff;white-space:nowrap;margin-left:auto}
.jr .na .cd.rouge{background:#fff;color:var(--danger)}
.jr .na .alertes-appel{display:flex;gap:4px;margin-left:auto}
.jr .na .alertes-appel span{font-size:11.5px;line-height:16px;font-weight:600;padding:2px 8px;border-radius:10px;background:#fff;color:var(--danger);white-space:nowrap}
.jr .na .alertes-appel+.cd{margin-left:0}
/* correctif essai de Mike : « Valider la Pré-VT » inactif tant que le calcul indicatif n'est pas rangé, la raison sous les boutons */
.jr .na .acts:has(.na-bloque){flex-wrap:wrap}
.jr .na .na-bloque{flex-basis:100%;margin:2px 2px 0;font-size:12px;line-height:16px;color:rgba(255,255,255,.88)}
body.fiche #p-prevt .vt-validation .vt-bloque{margin:8px 0 0;font-size:12.5px;line-height:17px;color:var(--ink-2)}
/* correctif essai de Mike : « Note et devis pas encore prêts », « Devis pas prêt : appeler pour décaler » (en rouge, lisible sur la carte bleue) */
.jr .na .na-alerte{display:inline-block;font-size:12px;line-height:16px;font-weight:600;padding:2px 8px;border-radius:10px;background:#fff;color:var(--danger)}
.jr .na .nabody{display:flex;align-items:center;gap:12px}
.jr .na .clock{padding:6px 11px;border-radius:12px;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 .5px rgba(255,255,255,.3);flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;color:#fff}
.jr .na .clock small{font-size:11.5px;font-weight:600;opacity:.85;letter-spacing:.01em}
.jr .na .clock .h{font-size:22px;font-weight:700;letter-spacing:-.03em;margin-top:3px;font-variant-numeric:tabular-nums}
.jr .na .txt{min-width:0;display:block}
.jr .na .txt .fil-pour{display:block;font-size:12px;line-height:16px;font-weight:600;color:rgba(255,255,255,.92)}
.jr .na .txt b{display:block;font-size:17px;line-height:22px;font-weight:700;letter-spacing:-.015em;color:#fff;margin:0}
.jr .na .txt .quand{display:block;font-style:normal;font-size:12.5px;line-height:17px;color:rgba(255,255,255,.88);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jr .na .acts{display:flex;gap:6px;margin:0;padding:0;flex-wrap:nowrap}
.jr .na .acts form{margin:0;display:flex}
.jr .na .acts form.grand,.jr .na .acts>.btn.w{flex:1}
.jr .na .acts form.grand .btn{flex:1}
.jr .na .btn{height:32px;min-height:32px;padding:0 13px;border-radius:8px;border:0;font-size:13px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;cursor:pointer}
.jr .na .btn.w{background:#fff;color:var(--cobalt-bas);font-weight:600;box-shadow:0 4px 12px -6px rgba(0,0,0,.5)}
.jr .na .btn.g{background:var(--voile-cobalt);color:#fff}
.jr .na .btn svg{width:16px;height:16px}
@media (hover:hover) and (pointer:fine){.jr .na .btn.w:hover{background:#f2f6ff}.jr .na .btn.g:hover{background:var(--voile-cobalt-survol)}}
.jr .na .btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
/* les autres fils ouverts (lot Prochaines actions) : une ligne chacun sous les boutons */
.jr .na .autres-fils{display:flex;flex-direction:column;gap:6px;padding-top:9px;border-top:1px solid rgba(255,255,255,.16)}
.jr .na .ligne-fil{display:grid;grid-template-columns:auto minmax(0,1fr) auto 16px;align-items:center;gap:10px;width:100%;padding:7px 10px;border:0;border-radius:8px;
  background:var(--voile-cobalt);font:inherit;color:#fff;text-align:left;cursor:pointer;transition:background-color 150ms ease,transform 120ms var(--eo)}
.jr .na .ligne-fil:active{transform:scale(.985)}
.jr .na .ligne-fil .tag{background:rgba(255,255,255,.16);color:#fff;font-weight:600}
.jr .na .ligne-fil b{display:block;font-size:13px;font-weight:600;line-height:17px;margin:0;color:#fff}
.jr .na .ligne-fil small{display:block;color:rgba(255,255,255,.88);font-size:12px;line-height:16px}
.jr .na .ligne-fil .c{min-width:0}
.jr .na .ligne-fil .d{font-size:12px;white-space:nowrap}
.jr .na .ligne-fil.retard .d{font-weight:700;text-decoration:underline;text-decoration-color:rgba(255,174,61,.9);text-decoration-thickness:2px;text-underline-offset:3px}
.jr .na .ligne-fil .ico{width:15px;height:15px}
@media (hover:hover) and (pointer:fine){.jr .na .ligne-fil:hover{background:var(--voile-cobalt-survol)}}
@media (prefers-reduced-motion:reduce){.jr .na .ligne-fil:active{transform:none}}

/* onglets de la fiche (coque v5) : chacun dans sa bulle, sur une ligne */
body.fiche .onglets{margin:0;padding:2px;gap:8px}

/* =====================================================================================================================
   FICHE, onglet Aperçu (maquette tour2/Fiche-D1-P1-geist) : trois colonnes 1,16 / 1 / 0,96, écart 12 px
   ===================================================================================================================== */
#p-apercu.on{display:block}
#p-apercu .gr{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(0,1fr) minmax(0,.96fr);gap:12px;align-items:stretch}
#p-apercu .col{display:flex;flex-direction:column;gap:12px;min-height:0;min-width:0}
#p-apercu .gr>.col:first-child,#p-apercu .gr>.colonne1{display:flex;flex-direction:column;gap:12px}
#p-apercu .card,body.fiche .panneau .card{background:var(--surface);border-radius:16px;box-shadow:0 0 0 1px var(--line);min-width:0;border:0;margin:0}
body.fiche .card>h3{margin:0;padding:12px 16px 8px;font-size:13px;line-height:19px;font-weight:800;color:var(--titre-bloc);display:flex;align-items:center;gap:8px}
body.fiche .card>h3 .r{margin-left:auto;font:inherit;font-size:13px;font-weight:500;color:var(--accent-text);background:none;border:0;padding:0;cursor:pointer;text-decoration:none}
@media (hover:hover) and (pointer:fine){body.fiche .card>h3 .r:hover{text-decoration:underline;text-underline-offset:2px}}
body.fiche .card>h3 .tag{height:22px;padding:0 8px;border-radius:6px;font-size:11.5px;font-weight:600;display:inline-flex;align-items:center}
/* Chiffres clés : deux colonnes séparées d'un filet, la machine sur toute la largeur */
#p-apercu .kf{display:grid;grid-template-columns:1fr 1fr;padding:0 16px 6px}
#p-apercu .k{padding:6px 0;border-top:1px solid var(--line);min-width:0}
#p-apercu .k:nth-child(odd){padding-right:6px}
#p-apercu .k:nth-child(even){padding-left:12px;border-left:1px solid var(--line)}
#p-apercu .k.w{grid-column:1/-1;padding-left:0!important;border-left:0!important}
#p-apercu .k small{display:block;color:var(--ink-3);font-size:11.5px;line-height:15px;letter-spacing:.01em}
#p-apercu .k b{display:flex;align-items:center;gap:4px;font-size:14px;line-height:20px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
#p-apercu .k b.vide{color:var(--ink-3);font-weight:500}
#p-apercu .k b em{font-style:normal;font-weight:400;color:var(--ink-3);font-size:11.5px;margin-left:0}
#p-apercu .k .tag{height:22px;padding:0 5px;font-size:11px;font-weight:600;border-radius:6px;display:inline-flex;align-items:center;line-height:1}
#p-apercu .dpe{width:20px;height:20px;border-radius:5px;background:#eb8235;color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center;flex:none}
#p-apercu .dpe-a{background:#009a4e}#p-apercu .dpe-b{background:#51b64a}#p-apercu .dpe-c{background:#b4d334}#p-apercu .dpe-d{background:#f2e500;color:#3a3a00}
#p-apercu .dpe-e{background:#f7b31c;color:#3a2a00}#p-apercu .dpe-f{background:#eb8235}#p-apercu .dpe-g{background:#d7221f}
/* Financement */
#p-apercu .fi{padding:0 16px 14px}
#p-apercu .fi .rac{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}
#p-apercu .fi .rac small{display:block;color:var(--ink-3);font-size:11.5px;line-height:15px}
#p-apercu .fi .rac b{display:block;font-size:18px;line-height:24px;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
#p-apercu .fi .rac span{color:var(--ink-3);font-size:12px;text-align:right;line-height:16px}
#p-apercu .fi .rac span strong{display:block;color:var(--ink);font-size:21px;line-height:26px;letter-spacing:-.02em;font-weight:700}
#p-apercu .fi .rac span.rest,#p-apercu .fi .rac span.rest strong{color:var(--danger)}
#p-apercu .split{display:flex;height:7px;border-radius:4px;overflow:hidden;gap:2px;margin:8px 0 7px}
#p-apercu .split i{height:100%;display:block}
#p-apercu .s-mpr{background:var(--accent)}#p-apercu .s-cee{background:#5ac8fa}#p-apercu .s-cli{background:var(--danger)}
#p-apercu .leg{display:grid;gap:3px;font-size:13px}
#p-apercu .leg div{display:flex;align-items:center;gap:8px}
#p-apercu .leg i{width:8px;height:8px;border-radius:2px;flex:none}
#p-apercu .leg span{flex:1;color:var(--ink-2)}
#p-apercu .leg em{font-style:normal;color:var(--ink-3);font-size:12px;margin-right:6px}
#p-apercu .leg b{font-weight:600;color:var(--ink)}
#p-apercu .fn{display:flex;justify-content:space-between;gap:10px;margin-top:6px;padding-top:5px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3)}
#p-apercu .fn.f2{margin-top:0;padding-top:3px;border-top:0}
#p-apercu .fn b{font-weight:500;color:var(--ink);text-align:right}
/* Pièces */
#p-apercu .pc{padding:0 16px 12px}
#p-apercu .pc .row{display:flex;justify-content:space-between;font-size:12.5px;color:var(--ink-2);margin-bottom:6px}
#p-apercu .pc .row b{color:var(--ink)}
#p-apercu .pc .track{height:6px;border-radius:3px;background:var(--fill);overflow:hidden}
#p-apercu .pc .track i{display:block;height:100%;background:var(--accent);border-radius:3px}
#p-apercu .pc .miss{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}
#p-apercu .pc .miss .tag{height:22px;padding:0 8px;border-radius:6px;font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;background:var(--fill);color:var(--ink-2)}
#p-apercu .pc .fn{margin-top:10px;padding-top:9px}
#p-apercu .col>.card:last-child{flex:1}
/* Historique récent : sur toute la hauteur de la troisième colonne, « Ajouter une note… » en bas */
#p-apercu .hi{display:flex;flex-direction:column;min-height:0}
#p-apercu .tl{padding:0 16px 12px;display:flex;flex-direction:column}
#p-apercu .ev{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;padding:8px 0;position:relative}
#p-apercu .ev::before{content:"";position:absolute;left:12.5px;top:38px;bottom:-6px;width:1px;background:var(--line)}
#p-apercu .ev:last-child::before{display:none}
#p-apercu .ev .ic{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;color:#fff}
#p-apercu .ev .ic svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#p-apercu .ev .t{min-width:0}
#p-apercu .ev .t small{display:flex;gap:8px;color:var(--ink-3);font-size:11.5px;line-height:15px;letter-spacing:.01em}
#p-apercu .ev .t small .by{color:var(--ink-2)}
#p-apercu .ev .t b{display:block;font-weight:550;font-size:13px;line-height:18px;color:var(--ink)}
#p-apercu .ev .t p{margin:4px 0 0;padding:8px 10px;border-radius:9px;background:var(--fill);color:var(--ink);font-size:12.5px;line-height:17px}
#p-apercu .hi .foot{margin-top:auto;padding:10px 16px;border-top:1px solid var(--line);display:flex;gap:8px;align-items:center;color:var(--ink-3);font-size:12.5px}
#p-apercu .hi .foot input{flex:1;height:30px;border-radius:8px;background:var(--fill);border:0;padding:0 10px;font:inherit;font-size:12.5px;color:var(--ink);box-shadow:none;min-width:0}
#p-apercu .hi .foot input::placeholder{color:var(--ink-3)}
#p-apercu .hi .foot .pj{border:0;background:none;padding:0;color:var(--ink-3);cursor:pointer;display:grid;place-items:center}
#p-apercu .hi .foot .pj svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#p-apercu .note-dossier .pad{padding:0 16px 14px}
#p-apercu .card.editable .edition-actions{margin-left:auto;display:none;gap:10px;align-items:center}
#p-apercu .card.editable.en-edition .edition-actions{display:flex}
#p-apercu .card.editable.en-edition>h3>.bascule-edition{display:none}

/* titres des onglets : pastille orange (6 px, halo) devant le nom, compteur en 11 px (coque v5) */
body.fiche .onglets button{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 13px;border-radius:11px;font-size:13.5px;font-weight:800;color:var(--onglet-texte);
  background:var(--surface);box-shadow:0 0 0 1px var(--onglet-filet),0 1px 2px rgba(20,32,51,.06);border:0;white-space:nowrap;letter-spacing:.005em}
body.fiche .onglets button i{font-style:normal;font-size:11px;font-weight:800;color:var(--onglet-compteur);font-variant-numeric:tabular-nums}
body.fiche .onglets button .dot{margin:0;width:6px;height:6px;border-radius:50%;background:var(--onglets-alerte);box-shadow:0 0 0 2px rgba(255,174,61,.18);flex:none;vertical-align:0}
body.fiche .onglets button.on,body.fiche .onglets .ind{color:#fff;background:linear-gradient(180deg,var(--matiere-haut) 0%,var(--matiere-bas) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 4px 12px -4px rgba(47,99,216,.7)}
body.fiche .onglets button.on i{color:rgba(255,255,255,.9)}
body.fiche .onglets .ind{height:34px;border-radius:11px}
/* le statut sous la phase en cours : en orange comme la maquette ; à risque (9.3) en rouge */
.jr .st small .statut{display:inline-block}
.jr .st small .statut::first-letter{text-transform:uppercase}
.jr .st.now small .statut.rouge{color:var(--danger);font-weight:600}

/* ---------- corrections après la première superposition (14 h 30) : règles anciennes de crm.css qui débordaient ---------- */
.rail .marque{position:static;white-space:nowrap}
.rail .marque::before,.rail .marque::after{content:none;display:none}
label.sw{flex-direction:row;font-size:12.5px;font-weight:400;color:var(--ink-2)}
body.fiche .card>h3{text-transform:none;letter-spacing:0}
#p-apercu .ev{grid-template-columns:26px minmax(0,1fr);gap:10px;padding:8px 0}
#p-apercu .ev .t{text-align:left;padding-top:0;font-size:inherit;color:inherit}
.fiche-tete .ln .adr-txt{display:inline}
/* la fiche occupe toute la hauteur de la fenêtre, comme la maquette : l'Aperçu descend jusqu'en bas (marge basse 14 px) */
body.fiche .contenu{min-height:100vh}
body.fiche main.page{flex:1;min-height:0}
body.fiche #p-apercu.on{flex:1;display:flex;flex-direction:column;min-height:0}
body.fiche #p-apercu .gr{flex:1}

/* =====================================================================================================================
   FICHE, onglet Client et logement (maquette fiche-onglets/Fiche-Client, v4) : 1,1 / 1,1 / 0,9, la Parcelle sur toute la hauteur,
   Dernières modifications sous les deux premières colonnes
   ===================================================================================================================== */
body.fiche #p-client.on{flex:1;display:flex;flex-direction:column;min-height:0}
#p-client .gr.cl{flex:1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.1fr) minmax(0,.9fr);grid-template-rows:minmax(0,1fr) auto;gap:12px;align-self:stretch;width:100%}
#p-client .gr.cl>.c1{grid-column:1;grid-row:1}#p-client .gr.cl>.c2{grid-column:2;grid-row:1}#p-client .gr.cl>.c3{grid-column:3;grid-row:1 / -1}
#p-client .gr.cl>.mdc{grid-column:1 / 3;grid-row:2}
#p-client .col{display:flex;flex-direction:column;gap:12px;min-height:0;min-width:0}
#p-client .card{background:var(--surface);border-radius:16px;box-shadow:0 0 0 1px var(--line);min-width:0;border:0;margin:0;display:flex;flex-direction:column}
#p-client .col>.card.g1{flex:2 1 auto}#p-client .col>.card.g2{flex:3 1 auto}#p-client .col>.card.g4{flex:4 1 auto}
#p-client .card>h2,#p-client .card>h3{margin:0;padding:12px 16px 8px;font-size:13px;line-height:19px;font-weight:800;color:var(--titre-bloc);display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0}
#p-client .card h2 .r,#p-client .card h3 .r{margin:-3px -6px -3px auto;height:22px;padding:0 6px;border:0;border-radius:6px;background:transparent;font:inherit;font-size:12px;font-weight:500;color:var(--accent-text);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:transform 140ms var(--eo),background-color 150ms ease}
#p-client .card h2 .r:active,#p-client .card h3 .r:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){#p-client .card h2 .r:hover,#p-client .card h3 .r:hover{background:var(--accent-soft)}}
#p-client .kf{flex:1;display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:auto;align-content:stretch;padding:0 16px 4px}
#p-client .kf.lecture-carte{display:grid}
#p-client .card.adr .kf{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)}
#p-client .k{padding:6px 12px 6px 0;border-top:1px solid var(--line);min-width:0;display:flex;flex-direction:column;justify-content:center}
#p-client .k.e{padding:6px 0 6px 12px;border-left:1px solid var(--line)}
#p-client .k.w{grid-column:1/-1;padding-right:0}
#p-client .k small{display:block;color:var(--ink-3);font-size:11.5px;line-height:15px;letter-spacing:.01em}
#p-client .k b{display:flex;align-items:center;gap:4px;font-size:14px;line-height:20px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.005em}
#p-client .k b.vide{color:var(--ink-3);font-weight:500}
#p-client .k b em{font-style:normal;font-weight:400;color:var(--ink-3);font-size:11.5px;margin-left:2px}
#p-client .k b a{color:var(--accent-text);font-weight:500;overflow:hidden;text-overflow:ellipsis;text-decoration:none}
#p-client .k .sub{display:block;font-style:normal;color:var(--ink-3);font-size:11.5px;line-height:15px;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#p-client .k .tag{height:22px;padding:0 6px;font-size:11.5px;font-weight:600;border-radius:6px;display:inline-flex;align-items:center;line-height:1}
#p-client .vt{height:20px;padding:0 6px;border-radius:6px;background:var(--accent-soft);color:var(--accent-text);font-size:11.5px;font-weight:600;display:inline-flex;align-items:center}
#p-client .dpe{width:20px;height:20px;border-radius:5px;background:#eb8235;color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center;flex:none}
#p-client .dpe-a{background:#009a4e}#p-client .dpe-b{background:#51b64a}#p-client .dpe-c{background:#b4d334}#p-client .dpe-d{background:#f2e500;color:#3a3a00}
#p-client .dpe-e{background:#f7b31c;color:#3a2a00}#p-client .dpe-g{background:#d7221f}
#p-client .alr{grid-column:1/-1;display:flex;align-items:center;gap:7px;padding:6px 0 5px;border-top:1px solid var(--line);font-size:12.5px;line-height:17px;font-weight:500;color:var(--warning)}
#p-client .alr::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--warning);flex:none}
#p-client .alr .lien{margin-left:auto;color:var(--accent-text);font-weight:500;font-size:12.5px;text-decoration:none}
#p-client .alr.gris{color:var(--ink-3);margin:0 16px 8px;font-weight:400}#p-client .alr.gris::before{background:var(--ink-3)}
/* la modification en place : les champs du bloc remplacent la lecture */
#p-client .editable .champs{display:none}
#p-client .editable.en-edition .champs{display:grid;grid-template-columns:1fr 1fr;padding:0 0 6px}
#p-client .editable.en-edition .lecture-carte,#p-client .editable.en-edition .alr{display:none}
#p-client .editable.en-edition>h2>.r.bascule-edition{display:none}
#p-client .editable .edition-actions{display:none;margin-left:auto;gap:12px;align-items:center}
#p-client .editable.en-edition .edition-actions{display:flex}
#p-client .editable.en-edition .champ{padding:8px 16px}
#p-client .champ:has([name="code_insee"]),#p-client .champ:has([name="latitude"]),#p-client .champ:has([name="longitude"]){display:none!important}
/* Parcelle */
#p-client .card.par{flex:1 1 auto;min-height:0}
#p-client .pv{position:relative;margin:0 12px;flex:1;min-height:0;border-radius:10px;overflow:hidden;background:#dfe3da}
#p-client .pv img{width:100%;height:100%;object-fit:cover;display:block}
#p-client .pv .cap{position:absolute;left:8px;bottom:8px;height:24px;padding:0 9px;border-radius:7px;display:inline-flex;align-items:center;font-size:12px;font-weight:600;color:#fff;background:rgba(20,20,22,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
#p-client .pl2{display:flex;gap:6px;padding:10px 12px 12px}
#p-client .pl2 .btn{flex:1;justify-content:center;height:30px;min-height:30px;border-radius:8px;border:0;background:var(--fill);color:var(--ink);font-weight:500;font-size:13px}
#p-client .pl2 .btn.on{background:var(--accent-soft);color:var(--accent-text);box-shadow:inset 0 0 0 1.5px var(--accent)}
/* Dernières modifications */
#p-client .mods{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;padding:0 16px 6px}
#p-client .mo{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 10px;padding:6px 0 4px;border-top:1px solid var(--line)}
#p-client .mo b{grid-column:1/-1;font-size:12.5px;line-height:17px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#p-client .mo span{font-size:12px;line-height:16px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#p-client .mo time{color:var(--ink-3);font-size:11.5px;line-height:16px;white-space:nowrap;font-variant-numeric:tabular-nums}

/* =====================================================================================================================
   FICHE, composants communs des onglets (Pré-VT, VT, Dimensionnement, Devis, Mandats, Pièces, Historique) : les blocs prennent
   la carte des maquettes (rayon 16, filet, titre bleu 13 px 800, cellules libellé au-dessus, valeur 14 px) ; écarts de 12 px
   ===================================================================================================================== */
body.fiche .panneau .grille{gap:12px}
body.fiche .panneau .pile{gap:12px}
body.fiche .panneau .bloc,body.fiche .panneau .carte{border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);background:var(--surface)}
body.fiche .panneau .bloc-t{padding:12px 16px 8px;border-bottom:0;align-items:center;gap:8px}
body.fiche .panneau .bloc-t h2,body.fiche .panneau .bloc>h2{font-size:13px;line-height:19px;font-weight:800;color:var(--titre-bloc);margin:0;text-transform:none;letter-spacing:0}
body.fiche .panneau .bloc-t .n{font-size:12px;color:var(--ink-3)}
body.fiche .panneau .bloc-t .lien,body.fiche .panneau .bloc-t .bascule-edition{font-size:12px;font-weight:500;color:var(--accent-text);text-decoration:none}
body.fiche .panneau .champs{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 16px 4px;margin:0}
body.fiche .panneau .champ{padding:6px 12px 6px 0;border-top:1px solid var(--line)}
body.fiche .panneau .champ:nth-child(even){padding:6px 0 6px 12px;border-left:1px solid var(--line)}
body.fiche .panneau .champ.large{padding-right:0;padding-left:0;border-left:0}
body.fiche .panneau .champ>span{font-size:11.5px;line-height:15px;color:var(--ink-3);letter-spacing:.01em}
body.fiche .panneau .champ b{font-size:14px;line-height:20px;font-weight:600;color:var(--ink)}
body.fiche .panneau .champ b.vide,body.fiche .panneau .vide.lecture{color:var(--ink-3);font-weight:500;font-style:normal}
body.fiche .panneau .pad{padding:4px 16px 14px}
body.fiche .panneau .item{padding:8px 16px;border-top:1px solid var(--line)}
/* tableaux libellé et valeur (relevé, étude) : le libellé à gauche en gris, la valeur à droite en gras (maquette Fiche-PreVT) */
body.fiche .panneau .tab.kv{font-size:13px}
body.fiche .panneau .tab.kv th{width:auto;padding:6px 0 6px 16px;color:var(--ink-2);font-weight:400;font-size:13px;background:none;text-transform:none;letter-spacing:0}
body.fiche .panneau .tab.kv td{padding:6px 16px 6px 12px;text-align:right;font-weight:600;color:var(--ink);height:auto}
body.fiche .panneau .tab.kv td small{display:block;font-weight:400;color:var(--ink-3);font-size:11.5px}
body.fiche .panneau .tab.kv tr+tr td,body.fiche .panneau .tab.kv tr+tr th{border-top:1px solid var(--line)}
body.fiche .panneau .tab.kv td,body.fiche .panneau .tab.kv th{border-bottom:0}
/* « Modifier » en place, comme dans Client et logement */
body.fiche .panneau .editable.en-edition{box-shadow:0 0 0 1.5px var(--accent)}

/* FICHE, onglet Pré-VT (maquette fiche-onglets/Fiche-PreVT) : trois colonnes 1,1 / 1 / 1 */
body.fiche #p-prevt .gr.trois,body.fiche #p-vt .gr.trois{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}
body.fiche .panneau .gr.trois>.col{display:flex;flex-direction:column;gap:12px;min-width:0}
body.fiche .panneau .bloc-t .n:first-of-type{margin-left:0}
/* Validation de la VT : l'alerte orange en tête, les lignes libellé et valeur, les deux boutons */
body.fiche .vt-validation .bloc-t .n{color:var(--warning);font-weight:600;font-size:13px;flex-basis:100%;display:flex;align-items:center;gap:7px;order:2}
body.fiche .vt-validation .bloc-t .n::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--warning)}
body.fiche .lignes-validation{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;margin:0 0 12px;font-size:13px;line-height:18px}
body.fiche .lignes-validation dt{color:var(--ink-3)}
body.fiche .lignes-validation dd{margin:0;color:var(--ink)}
body.fiche .lignes-validation dd b{font-weight:600}
body.fiche .lignes-validation dd span{color:var(--ink-3);margin-left:4px}
body.fiche .vt-validation .boutons{display:flex;gap:6px}
body.fiche .vt-validation .boutons form{flex:1.4;margin:0;display:flex}
body.fiche .vt-validation .boutons .btn{height:32px;min-height:32px;border-radius:8px;font-size:13px}
body.fiche .vt-validation .boutons form .btn,body.fiche .vt-validation .boutons .valider-vt-avert{flex:1.4;background:linear-gradient(180deg,var(--matiere-haut),var(--matiere-bas));border:0;color:#fff;font-weight:600}
body.fiche .vt-validation .boutons .refuser-vt{flex:1;background:var(--accent-soft);color:var(--accent-text);border:0}
/* listes libellé à gauche, valeur à droite (Étude téléphonique, Pièces chauffées) */
body.fiche .panneau .liste-kv .champs{display:block;padding:0 16px 8px}
body.fiche .panneau .liste-kv .champ{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:5px 0;border-left:0}
body.fiche .panneau .liste-kv .champ:nth-child(even){padding:5px 0;border-left:0}
body.fiche .panneau .liste-kv .champ>span{font-size:13px;color:var(--ink-2);line-height:18px}
body.fiche .panneau .liste-kv .champ b{font-size:13px;font-weight:600;text-align:right;line-height:18px}
body.fiche .panneau .liste-kv.en-edition .champ{display:block}
/* Chiffrage estimé (maquette Fiche-PreVT) : la lecture en tête, le tableau des précisions dessous, en petit */
body.fiche .vt-chiffrage .ch-vis .kf{display:grid;grid-template-columns:1fr 1fr;padding:0 16px 4px}
body.fiche .vt-chiffrage .ch-vis .k{padding:6px 12px 6px 0;border-top:1px solid var(--line);min-width:0}
body.fiche .vt-chiffrage .ch-vis .k.e{padding:6px 0 6px 12px;border-left:1px solid var(--line)}
body.fiche .vt-chiffrage .ch-vis .k.w{grid-column:1/-1;padding-right:0}
body.fiche .vt-chiffrage .ch-vis .k small{display:block;color:var(--ink-3);font-size:11.5px;line-height:15px}
body.fiche .vt-chiffrage .ch-vis .k b{display:block;font-size:14px;line-height:20px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.fiche .vt-chiffrage .ch-vis .k b em{font-style:normal;font-weight:400;color:var(--ink-3);font-size:11.5px}
body.fiche .vt-chiffrage .ch-vis .rac{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:8px 16px 0;border-top:1px solid var(--line);margin:0 16px;padding-left:0;padding-right:0}
body.fiche .vt-chiffrage .ch-vis .rac small{display:block;color:var(--ink-3);font-size:11.5px;line-height:15px}
body.fiche .vt-chiffrage .ch-vis .rac b{display:block;font-size:21px;line-height:26px;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
body.fiche .vt-chiffrage .ch-vis .rac span{color:var(--ink-3);font-size:12px;line-height:16px;text-align:right}
body.fiche .vt-chiffrage .ch-vis .rac span strong{display:block;color:var(--ink);font-size:21px;line-height:26px;font-weight:700;letter-spacing:-.02em}
body.fiche .vt-chiffrage .ch-vis .rac span.rest,body.fiche .vt-chiffrage .ch-vis .rac span.rest strong{color:var(--danger)}
body.fiche .vt-chiffrage .ch-vis .rac span.rest.nul,body.fiche .vt-chiffrage .ch-vis .rac span.rest.nul strong{color:var(--success)}
body.fiche .vt-chiffrage .ch-vis .split{display:flex;height:7px;border-radius:4px;overflow:hidden;gap:2px;margin:8px 16px 7px}
body.fiche .vt-chiffrage .ch-vis .split i{height:100%;display:block}
body.fiche .vt-chiffrage .s-mpr{background:var(--accent)}body.fiche .vt-chiffrage .s-cee{background:#5ac8fa}body.fiche .vt-chiffrage .s-edf{background:#5856d6}body.fiche .vt-chiffrage .s-cli{background:var(--danger)}
body.fiche .vt-chiffrage .ch-vis .leg{display:grid;gap:3px;font-size:13px;padding:0 16px 10px}
body.fiche .vt-chiffrage .ch-vis .leg div{display:flex;align-items:center;gap:8px}
body.fiche .vt-chiffrage .ch-vis .leg i{width:8px;height:8px;border-radius:2px;flex:none}
body.fiche .vt-chiffrage .ch-vis .leg span{flex:1;color:var(--ink-2)}
body.fiche .vt-chiffrage .ch-vis .leg em{font-style:normal;color:var(--ink-3);font-size:12px;margin-right:6px}
body.fiche .vt-chiffrage .ch-vis .leg b{font-weight:600;color:var(--ink)}
body.fiche .vt-chiffrage .vt-lignes tr.dbl{display:none}
body.fiche .vt-chiffrage .vt-lignes{font-size:12.5px}
body.fiche .vt-chiffrage .vt-lignes th{padding:4px 0 4px 16px;color:var(--ink-3);font-weight:400;background:none;text-transform:none;letter-spacing:0;font-size:12.5px;border-bottom:0;border-top:1px solid var(--line)}
body.fiche .vt-chiffrage .vt-lignes td{padding:4px 16px 4px 12px;text-align:right;height:auto;border-bottom:0;border-top:1px solid var(--line)}
body.fiche .vt-chiffrage .vt-lignes td b{font-weight:500}
body.fiche .vt-chiffrage .vt-lignes td small{display:block;color:var(--ink-3);font-size:11.5px}
/* frise : une phase à venir n'a pas de rond (maquette Fiche-PreVT), son filet reste gris */
.jr .st.todo .nd{background:transparent;box-shadow:none}
body.fiche .vt-chiffrage .modif-chiffrage>summary{display:none}
body.fiche .vt-chiffrage .modif-chiffrage[open]{border-top:1px solid var(--line);margin-top:4px}
body.fiche .vt-chiffrage .modif-chiffrage form{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;padding:10px 16px 14px;margin:0;align-items:end}
body.fiche .vt-chiffrage .modif-chiffrage label{font-size:11.5px;color:var(--ink-3);gap:3px}
body.fiche .vt-chiffrage .modif-chiffrage select,body.fiche .vt-chiffrage .modif-chiffrage input{height:32px;font-size:13px;padding:4px 8px}
body.fiche .vt-chiffrage .ouvre-modif{font-size:12.5px;font-weight:500;color:var(--accent-text);margin-left:6px;text-decoration:none}
/* règle d'épuration (Mike, 11/10) : en lecture, une ligne sans valeur ne s'affiche pas ; elle revient en modification */
body.fiche .panneau .liste-kv:not(.en-edition) .champ:has(> b.vide){display:none}

/* FICHE, onglet VT (maquette fiche-onglets/Fiche-VT) : la barre des vues sur toute la largeur, trois colonnes, des lignes compactes */
body.fiche #p-vt .vt-bandeau{display:flex;flex-wrap:nowrap;width:100%;margin:0 0 12px;padding:3px;gap:2px;border-radius:12px;background:var(--surface);box-shadow:0 0 0 1px var(--line)}
body.fiche #p-vt .vt-bandeau button{flex:1;height:30px;border:0;border-radius:9px;background:none;color:var(--ink-2);font:inherit;font-size:13.5px;font-weight:500;white-space:nowrap;cursor:pointer}
body.fiche #p-vt .vt-bandeau button.on{background:var(--accent-soft);color:var(--accent-text);font-weight:600}
@media (hover:hover) and (pointer:fine){body.fiche #p-vt .vt-bandeau button:not(.on):hover{color:var(--ink)}}
body.fiche #p-vt .gr.trois>.col>.pile{display:flex;flex-direction:column;gap:12px}
body.fiche .panneau .vt-lignes{font-size:13px}
body.fiche .panneau .vt-lignes th{width:auto;padding:3px 0 3px 16px;color:var(--ink-3);font-weight:400;font-size:13px;background:none;border:0;line-height:18px}
body.fiche .panneau .vt-lignes td{padding:3px 16px 3px 12px;text-align:right;border:0;height:auto;line-height:18px;color:var(--ink)}
body.fiche .panneau .vt-lignes td b{font-weight:600}
body.fiche .panneau .vt-lignes td small{display:inline;color:var(--ink-3);font-size:12px;margin-left:5px}
body.fiche .panneau .vt-lignes tr.sous-titre th,body.fiche .panneau .vt-lignes tr.sous-titre td{background:none;padding-top:10px}
/* le relevé en chiffres : cellules deux par deux, libellé au-dessus */
body.fiche .panneau .vt-chiffres-grille tbody{display:grid;grid-template-columns:1fr 1fr;padding:0 16px 6px}
body.fiche .panneau .vt-chiffres-grille tr{display:flex;flex-direction:column;padding:5px 12px 5px 0;border-top:1px solid var(--line);min-width:0}
body.fiche .panneau .vt-chiffres-grille tr:nth-child(even of :not(.w)){padding:5px 0 5px 12px;border-left:1px solid var(--line)}
body.fiche .panneau .vt-chiffres-grille tr.w{grid-column:1/-1;padding-right:0}
body.fiche .panneau .vt-chiffres-grille th{padding:0;font-size:11.5px;line-height:15px;color:var(--ink-3)}
body.fiche .panneau .vt-chiffres-grille td{padding:0;text-align:left;font-size:14px;line-height:20px}
body.fiche .panneau .vt-chiffres-grille td small{font-size:11.5px}
body.fiche .panneau .vt-lignes td b{white-space:nowrap}
body.fiche .panneau .vt-lignes td small+small{display:block;margin-left:0}
body.fiche .panneau .vt-chiffres-grille td small{display:inline}
body.fiche .panneau .vt-chiffres-grille td small+small{display:block}
/* lot Console (défaut vu le 20/10 : « Monophasé, 9 kVA Tableau vétuste » sortait de la carte) : la valeur va à la ligne dans sa cellule */
body.fiche .panneau .vt-chiffres-grille th,body.fiche .panneau .vt-chiffres-grille td{min-width:0;max-width:100%;overflow-wrap:break-word}
body.fiche .panneau .vt-chiffres-grille td b{white-space:normal}
body.fiche .panneau .vt-ecarts th,body.fiche .panneau .vt-ecarts td{background:none;border:0;padding:4px 0 4px 16px;font-size:13px;height:auto}
body.fiche .panneau .vt-ecarts td{padding:4px 16px 4px 8px;text-align:right}
body.fiche .panneau .vt-ecarts thead th{font-size:12px;color:var(--ink-3);text-align:right;padding-right:16px}
body.fiche .panneau .vt-ecarts tbody tr+tr th,body.fiche .panneau .vt-ecarts tbody tr+tr td{border-top:1px solid var(--line)}
/* une règle se lit dans une aide « ? » (charte, Principes) : le paragraphe du mode de vente et de Sofinco */
body.fiche .aide-regle{margin:0 16px 12px}
body.fiche .aide-regle>summary{list-style:none;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--accent-text);background:var(--accent-soft);cursor:pointer}
body.fiche .aide-regle>summary::-webkit-details-marker{display:none}
body.fiche .aide-regle .note.pad{padding:8px 0 0;font-size:12.5px;color:var(--ink-2)}
body.fiche #p-devis>form.bloc{margin-top:12px}

/* FICHE, onglet Devis (maquettes fiche-onglets/Fiche-Devis, -Preparer) : 0,8 / 1,63 / 1, cartes à 16 px de marge, lignes 13 px */
body.fiche #p-devis .dv-grille{grid-template-columns:minmax(0,.8fr) minmax(0,1.63fr) minmax(0,1fr);gap:12px;align-items:stretch}
body.fiche #p-devis .dv-grille>*{display:flex;flex-direction:column;gap:12px;min-width:0}
body.fiche #p-devis .bloc{padding:0}
body.fiche #p-devis .dv-corps{padding:4px 16px 14px;gap:10px;font-size:13px}
body.fiche #p-devis .dv-lignes li{padding:7px 0;gap:2px 12px;font-size:13px}
body.fiche #p-devis .dv-lignes b{font-weight:600}
body.fiche #p-devis .dv-lignes small{font-size:11.5px}
body.fiche #p-devis .dv-totaux{background:var(--fill);border:0;border-radius:10px;padding:10px 12px;gap:2px 20px}
body.fiche #p-devis .dv-totaux dl{font-size:12.5px;gap:2px 10px}
body.fiche #p-devis .dv-net{padding-top:8px;margin-top:4px;align-items:center}
body.fiche #p-devis .dv-net b,body.fiche #p-devis .dv-net strong{color:var(--accent-text);font-size:15px;font-weight:700}
body.fiche #p-devis .dv-net small{font-size:11.5px}
body.fiche #p-devis .dv-ctrl ul{padding:0 16px 8px}
body.fiche #p-devis .dv-ctrl li{padding:6px 0;font-size:13px}
body.fiche #p-devis .dv-frise{gap:8px;font-size:13px}
body.fiche #p-devis .dv-frise li.fait .pt{background:var(--success-soft);border-color:transparent}
body.fiche #p-devis .dv-frise li.fait .pt .ico{stroke:var(--success)}
body.fiche #p-devis .dv-repris{font-size:12.5px}
body.fiche #p-devis .dv-repris a,body.fiche #p-devis .lien{text-decoration:none;color:var(--accent-text)}
/* en-tête : une alerte de doublon longue ne pousse pas les cases ni les ronds hors de l'écran */
.fiche-tete .id{flex:0 1 auto;min-width:0}
.fiche-tete .alerte-doublon{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:520px;display:block}
body.fiche .panneau h3:not(.card>h3){text-transform:none;letter-spacing:0;font-size:13px;line-height:18px;color:var(--ink-2);font-weight:600;margin:6px 0 4px}

/* =====================================================================================================================
   AUJOURD'HUI (maquettes aujourdhui/Aujourdhui-File2 pour le télépro, palettes/brainstorm-2026-10-08/Aujourdhui-D1 pour
   l'administrateur) : la salutation, les trois chiffres, « Appel suivant » en masse cobalt, Ma file
   ===================================================================================================================== */
body.accueil main.page,main.page:has(> .greet){padding:18px 28px 20px;display:flex;flex-direction:column;gap:14px;max-width:none}
.greet{display:flex;align-items:flex-end;gap:16px;margin:0;padding:0;border:0}
.greet h1{margin:0;font-size:26px;line-height:32px;font-weight:700;letter-spacing:-.026em;color:var(--ink)}
.greet p{margin:0 0 3px;color:var(--ink-2);font-size:13.5px;text-transform:none;letter-spacing:0;font-weight:400;font-family:var(--corps)}
.greet .sp{flex:1}
.greet .sw{margin-bottom:4px}
.sous-greet{margin:-8px 0 0;color:var(--ink-2);font-size:13.5px}
.k3{display:flex;gap:10px;margin:0}
.k3 .kx{display:flex;align-items:center;gap:12px;padding:10px 16px 10px 12px;border-radius:14px;background:var(--surface);box-shadow:0 0 0 1px var(--line);border:0;font:inherit;color:inherit;text-align:left;cursor:pointer;
  min-height:0;width:auto;flex:none;transition:transform 140ms var(--eo),box-shadow 150ms ease}
.k3 .kx b{font-size:24px;line-height:28px;font-weight:700;letter-spacing:-.03em;min-width:26px;text-align:center;color:var(--ink)}
.k3 .kx span{display:flex;flex-direction:column;line-height:17px}
.k3 .kx span strong{font-size:13.5px;font-weight:600;color:var(--ink)}
.k3 .kx span small{font-size:12px;color:var(--ink-3)}
.k3 .kx.late b,.k3 .kx.late span small{color:var(--danger)}
.k3 .kx.late span small{font-weight:500}
.k3 .kx:active{transform:scale(.98)}
@media (hover:hover) and (pointer:fine){.k3 .kx:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}}
/* Appel suivant : la masse cobalt de l'écran (charte : une seule masse cobalt par écran) */
.appel-suivant-pile{margin:0}
.appel-suivant.h2c{position:relative;border-radius:20px;color:#fff;overflow:hidden;border:0;padding:0;
  background:radial-gradient(90% 140% at 0% 0%,rgba(255,255,255,.18),rgba(255,255,255,0) 55%),linear-gradient(135deg,var(--cobalt-haut),var(--cobalt-bas));
  box-shadow:0 0 0 .5px rgba(0,0,0,.08),0 12px 28px -18px rgba(0,40,120,.55)}
.appel-suivant.h2c[hidden]{display:none}
.h2c .in{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:22px;padding:18px 22px 16px}
.h2c .top{display:flex;align-items:center;gap:10px;font-size:13px;margin:0}
.h2c .live{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:rgba(255,255,255,.92)}
.h2c .live i{width:12px;height:12px;border-radius:50%;background:#5dff94;animation:pouls 1.6s cubic-bezier(.2,.7,.3,1) infinite}
@media (prefers-reduced-motion:reduce){.h2c .live i{animation:none}}
.h2c .rk{color:rgba(255,255,255,.85);font-weight:500}
.h2c .late{margin-left:auto;display:flex;align-items:center;gap:7px;padding:3px 10px 3px 8px;border-radius:12px;background:#fff;color:#c8281c;font-weight:600;font-size:12.5px}
.h2c .late.calme{background:var(--voile-cobalt);color:#fff}
.h2c .late svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.h2c h2{margin:8px 0 2px;font-size:28px;line-height:34px;font-weight:750;letter-spacing:-.028em;display:flex;align-items:baseline;gap:12px;color:#fff}
.h2c h2 b{font-weight:750;font-size:inherit}
.h2c h2 small{align-self:center;font-size:13px;font-weight:600;letter-spacing:0;padding:2px 9px;border-radius:10px;background:var(--voile-cobalt);color:#fff}
.h2c .ctx{font-size:13.5px;color:rgba(255,255,255,.88);margin:0}
.h2c .cols{display:grid;grid-template-columns:1fr 1.25fr 1.25fr;margin-top:14px;border-radius:14px;background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.h2c .cols>div{padding:10px 14px 11px}
.h2c .cols>div+div{box-shadow:inset 1px 0 0 rgba(255,255,255,.14)}
.h2c .cols small{display:block;font-size:11.5px;font-weight:600;color:rgba(255,255,255,.88);margin-bottom:3px}
.h2c .cols p{margin:0;font-size:13.5px;line-height:19px;color:#fff}
.h2c .cols b{font-weight:650}
.h2c .act{display:flex;flex-direction:column;gap:8px;justify-content:center;margin:0;padding:0}
.h2c .call{height:52px;border-radius:14px;background:#fff;color:var(--cobalt-bas);font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:9px;border:0;
  box-shadow:0 10px 22px -10px rgba(0,0,0,.55);text-decoration:none;min-height:52px;padding:0}
.h2c .call svg{width:18px;height:18px}
.h2c .two2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.h2c .two2>:only-child{grid-column:1/-1}
.h2c .gh{height:34px;border:0;border-radius:10px;background:var(--voile-cobalt);color:#fff;font:inherit;font-size:13px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;cursor:pointer}
.h2c .gh svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}
.h2c .kb{font-size:11.5px;color:rgba(255,255,255,.88);text-align:center}
.h2c .kb kbd{font:inherit;font-weight:600;padding:0 5px;border-radius:4px;background:rgba(255,255,255,.16)}
@media (hover:hover) and (pointer:fine){.h2c .call:hover{background:#f2f6ff}.h2c .gh:hover{background:var(--voile-cobalt-survol)}}
/* Ma file */
.ma-file.qf{border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);overflow:hidden;background:var(--surface);margin:0}
.ma-file .qh{display:flex;align-items:center;gap:12px;padding:12px 16px 8px;border:0}
.ma-file .qh h3{margin:0;padding:0;font-size:15px;font-weight:650;letter-spacing:-.01em;color:var(--ink);text-transform:none}
.ma-file .qh .sp{flex:1}
.ma-file .qh small{color:var(--ink-3);font-size:12.5px}
.ma-file .sg{display:inline-flex;padding:2px;border-radius:9px;background:var(--fill);gap:2px;border:0;margin:0}
.ma-file .sg button{height:28px;padding:0 11px;border:0;border-radius:7px;background:transparent;color:var(--ink-2);font-size:13px;font-weight:500;display:flex;align-items:center;gap:6px;box-shadow:none}
.ma-file .sg button span{font-size:11.5px;color:var(--ink-3);font-weight:500;margin:0}
.ma-file .sg button.on{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.12)}
.ma-file .groupe-file{margin:8px 16px 2px;font-size:11.5px;font-weight:600;color:var(--ink-3);padding:0;border:0;background:none;text-transform:none;letter-spacing:0}
.ma-file .ligne-file.row{display:grid;grid-template-columns:112px minmax(0,1fr) 150px 40px;gap:12px;align-items:center;min-height:50px;padding:0 16px;border-top:1px solid var(--line);cursor:pointer;background:none}
.ma-file .ligne-file[hidden]{display:none}
.ma-file .row .tm{display:flex;flex-direction:column;line-height:17px}
.ma-file .row .tm b{font-size:14px;font-weight:650;color:var(--ink)}
.ma-file .row .tm small{font-size:11.5px;color:var(--ink-3);white-space:nowrap}
.ma-file .row .tm.late b,.ma-file .row .tm.late small{color:var(--danger)}
.ma-file .row .tm.warn b{color:var(--warning)}
.ma-file .row .t b{display:block;font-size:14px;font-weight:600;line-height:19px;color:var(--ink)}
.ma-file .row .t small{display:block;font-size:12.5px;color:var(--ink-3);line-height:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ma-file .row .chip{height:24px;padding:0 9px;border-radius:12px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-self:start;white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}
.ma-file .c-new{background:var(--accent-soft);color:var(--accent-text)}
.ma-file .c-rap{background:var(--fill);color:var(--ink-2)}
.ma-file .c-dev{background:var(--warning-soft);color:var(--warning)}
.ma-file .c-vt{background:rgba(106,88,201,.12);color:#5442b0}
.ma-file .cbtn{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;justify-self:end;color:var(--accent-text);background:transparent;box-shadow:inset 0 0 0 1px var(--line);transition:background-color 150ms ease,color 150ms ease,transform 140ms var(--eo)}
.ma-file .cbtn .ico{width:16px;height:16px}
.ma-file .cbtn:active{transform:scale(.95)}
@media (hover:hover) and (pointer:fine){.ma-file .row:hover{background:var(--fill)}.ma-file .row:hover .cbtn{background:var(--accent);color:#fff;box-shadow:none}}
.grille.suite-a2{margin:0}
/* barre latérale : aucun libellé ne se coupe ni ne déborde (« Registre des traitements ») ; un libellé trop long passe à la ligne,
   aligné sur le texte, l'entrée grandit (suites du lot Après la pose, point 2) */
.rail .nv,.rail .nv.sous-nv{height:auto;white-space:normal;overflow-wrap:break-word;padding-top:6px;padding-bottom:6px}
.rail .nv svg{flex:none}
/* Aujourd'hui : les règles de crm.css (H2b) qui portent sur les mêmes éléments l'emportaient par leur spécificité */
.chiffres-jour.k3{display:flex;grid-template-columns:none;margin:0}
.chiffres-jour .chiffre.kx{flex-direction:row;align-items:center;gap:12px;padding:10px 16px 10px 12px;border:0;border-radius:14px;box-shadow:0 0 0 1px var(--line)}
.chiffres-jour .chiffre.kx span{font-size:inherit;font-weight:inherit}
.chiffres-jour .chiffre.kx b{font-size:24px;line-height:28px}
.appel-suivant.h2c .top{padding:0;background:none;border:0}
.appel-suivant.h2c .tete .n{margin-left:0;font-size:13px;color:rgba(255,255,255,.85)}
.appel-suivant.h2c .attente{color:#c8281c;font-size:12.5px}
.appel-suivant.h2c .attente.calme{color:#fff}
.appel-suivant.h2c h2 .nom{font-size:28px;line-height:34px;font-weight:750;margin:0;letter-spacing:-.028em;color:#fff}
.appel-suivant.h2c h2 small.type{color:#fff;font-size:13px;line-height:18px}
.appel-suivant.h2c .ctx.coord{color:rgba(255,255,255,.88)}
.appel-suivant.h2c .act.boutons{flex-direction:column;align-items:stretch;flex-wrap:nowrap;margin:0}
.appel-suivant.h2c .call.btn{width:auto;height:52px;padding:0 14px;border:0;background:#fff;color:var(--cobalt-bas);font-size:16px;font-weight:700;box-shadow:0 10px 22px -10px rgba(0,0,0,.55)}
.appel-suivant.h2c .kb.touche{margin:0;color:rgba(255,255,255,.88)}
.appel-suivant.h2c .kb kbd{border:0;font-family:inherit;color:#fff}
.appel-suivant.h2c .libelle{text-transform:none;letter-spacing:0;font-size:13px;font-weight:600;color:rgba(255,255,255,.92)}
/* Aujourd'hui de l'administrateur (maquette Aujourdhui-Admin, couleurs de palettes/Aujourdhui-D1) */
.chiffres-jour.k4 .chiffre.kx{flex:1;min-width:0}
.decision-suivante.h2c{margin:0}
.decision-suivante .cols.c3{grid-template-columns:1fr 1.25fr 1.1fr}
.decision-suivante .cols.c1{grid-template-columns:1fr}
.decision-suivante .act form{display:contents}
.decision-suivante .call{height:52px;border:0;border-radius:14px;background:#fff;color:var(--cobalt-bas);font:inherit;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;cursor:pointer;box-shadow:0 10px 22px -10px rgba(0,0,0,.55)}
.decision-suivante .call svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.decision-suivante .kb{line-height:16px}
.adm2{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px;align-items:start}
.adm2 .ma-file .ligne-file.row{grid-template-columns:118px minmax(0,1fr) 168px 84px;min-height:48px}
.adm2 .ma-file .row .chip{max-width:168px}
.ma-file .row .tm b.sm{font-size:13px}
.ma-file .c-red{background:var(--danger-soft,rgba(215,0,21,.09));color:var(--danger)}
.ma-file .ob{height:30px;padding:0 12px;border:0;border-radius:8px;background:transparent;box-shadow:inset 0 0 0 1px var(--line);color:var(--accent-text);font-size:13px;font-weight:600;justify-self:end;display:inline-flex;align-items:center;text-decoration:none;transition:transform 140ms var(--eo),background-color 160ms ease,box-shadow 160ms ease}
.ma-file .ob:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.ma-file .row:hover .ob{background:var(--accent-soft);box-shadow:none}}
.side2{display:flex;flex-direction:column;gap:12px;min-width:0}
.side2 .card{background:var(--surface);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);margin:0;padding:0}
.side2 .card h3{margin:0;padding:12px 16px 8px;font-size:12px;font-weight:600;color:var(--ink-2);text-transform:none;letter-spacing:0}
.tm2{padding:0 16px 10px}
.tp{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:4px 10px;align-items:center;padding:9px 0;border-top:1px solid var(--line)}
.tp:first-child{border-top:0}
.tp .av{grid-row:span 2;width:22px;height:22px;border-radius:50%;background:var(--personne,#64748b);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;letter-spacing:.01em}
.tp strong{font-size:13.5px;font-weight:600;line-height:17px;color:var(--ink)}
.tp em{font-style:normal;font-size:12px;color:var(--ink-3);text-align:right}
.tp small{grid-column:2/-1;font-size:12px;color:var(--ink-2);line-height:16px}
.tp small b{color:var(--danger);font-weight:600}
.wk{padding:0 16px 12px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.wk div{padding:9px 11px;border-radius:11px;background:var(--fill);display:flex;flex-direction:column}
.wk b{font-size:20px;line-height:24px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink)}
.wk small{font-size:12px;color:var(--ink-2);line-height:15px}
.adm2 section.bloc.ma-file{padding:0}
/* Aujourd'hui de l'administratif (maquette gestion/Aujourdhui-Administratif) */
.kp{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.kp>div{background:var(--surface);border-radius:14px;box-shadow:0 0 0 1px var(--line);padding:12px 16px;display:flex;align-items:center;gap:12px}
.kp b{font-size:28px;line-height:32px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink)}
.kp b.late{color:var(--danger)}
.kp span{font-size:12.5px;line-height:17px;font-weight:600;color:var(--ink)}
.kp small{display:block;font-weight:400;color:var(--ink-3);font-size:11.5px}
.gx{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:12px;align-items:start}
.gx>.col{display:flex;flex-direction:column;gap:12px;min-width:0;min-height:0;background:none;border:0;border-radius:0}
.gx .card{background:var(--surface);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);margin:0;padding:0;min-width:0}
.gx .card h3{margin:0;padding:12px 16px 8px;font-size:12px;font-weight:600;color:var(--ink-2);text-transform:none;letter-spacing:0}
.gx .pt{display:flex;flex-direction:column;overflow:hidden}
.gx .pt .grp{display:flex;align-items:baseline;gap:10px;padding:10px 16px 6px;font-size:12.5px;font-weight:600;color:var(--ink)}
.gx .pt .grp small{font-weight:500;color:var(--ink-3)}
.gx .pt .trp{display:grid;grid-template-columns:104px minmax(0,1.1fr) minmax(0,1.7fr) 132px 92px;gap:12px;align-items:center;padding:0 16px;min-height:52px;border-top:1px solid var(--line);font-size:12.5px;line-height:17px;cursor:pointer}
.gx .pt .grp+.trp{border-top:0}
.gx .pt .trp b{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
.gx .pt .trp b.quoi{font-weight:500}
.gx .pt .trp b.late{color:var(--danger)}
.gx .pt .trp small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gx .pt .trp .btn{justify-self:end;height:30px;padding:0 12px;font-size:12.5px}
.gx .pt .vide{padding:10px 16px 14px}
.chp{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:11px;font-size:11.5px;font-weight:600;white-space:nowrap}
.chp.cv{background:var(--accent-soft);color:var(--accent-text)}
.chp.cs{background:var(--warning-soft);color:var(--warning)}
.chp.cr{background:var(--fill);color:var(--ink-2)}
.wk.wk3{grid-template-columns:repeat(3,minmax(0,1fr));padding:2px 16px 14px}
@media (hover:hover) and (pointer:fine){.gx .pt .trp:hover{background:var(--fill)}}
/* ===== Pipeline (maquette palettes/brainstorm-2026-10-08/tour5-pipeline/D1-couleurs-Pipeline-Liste et -Phases) ===== */
main.page:has(> .ph0){padding:20px 28px 18px;display:flex;flex-direction:column;gap:12px;max-width:none}
main.page:has(> .ph0)>*{margin-top:0;margin-bottom:0}
.entete.ph0{display:flex;align-items:flex-end;gap:14px;flex-wrap:nowrap;margin:0}
.ph0 h1{margin:0;font-size:26px;line-height:32px;font-weight:700;letter-spacing:-.026em;color:var(--ink)}
.ph0 .sous{margin:0 0 4px;color:var(--ink-2);font-size:13.5px}
.ph0 .sp{flex:1}
.ph0 .sw{margin-bottom:6px}
.ph0 .droite{margin:0;display:flex;gap:8px;align-items:center;flex-wrap:nowrap}
.ph0 .btn{height:34px;padding:0 14px;border-radius:9px;font-size:13px;font-weight:500;border:0;display:inline-flex;align-items:center;gap:6px}
.ph0 .btn.ghost{background:var(--fill);color:var(--ink);box-shadow:none}
.ph0 .btn.principal{background:var(--accent);color:#fff}
.ph0 .btn .ico{width:15px;height:15px}
.frise-filtre{display:grid;grid-template-columns:92px repeat(6,minmax(0,1fr));gap:6px;margin:0}
.frise-filtre .tuile{padding:9px 12px 10px;border-radius:12px;background:var(--surface);border:0;box-shadow:0 0 0 1px var(--line);gap:2px;transition:transform 140ms var(--eo)}
.frise-filtre .tuile:active{transform:scale(.98)}
.frise-filtre .tuile>span{display:flex;align-items:center;font-size:12px;color:var(--ink-2);font-weight:500}
.frise-filtre .tuile>span .pt-phase{width:8px;height:8px;margin-right:6px}
.frise-filtre .tuile b{font-size:20px;line-height:24px;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.frise-filtre .tuile.on{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent);border:0}
.frise-filtre .tuile.on>span,.frise-filtre .tuile.on b{color:var(--accent-text)}
@media (hover:hover) and (pointer:fine){.frise-filtre .tuile:not(.on):hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}}
.barre-filtres.outils{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;margin:0}
.barre-filtres .fd{height:32px;border-radius:9px;background:var(--surface);box-shadow:0 0 0 1px var(--line);display:flex;align-items:center;gap:7px;padding:0 10px;color:var(--ink-3);width:280px;flex:none}
.barre-filtres .fd .ic16{width:14px;height:14px}
.barre-filtres .fd input{border:0;background:transparent;outline:none;font:inherit;font-size:13px;flex:1;min-width:0;color:var(--ink);padding:0;height:auto;box-shadow:none}
.barre-filtres .sp{flex:1}
.barre-filtres .dd{height:32px;padding:0 28px 0 12px;border:0;border-radius:9px;background-color:var(--surface);box-shadow:0 0 0 1px var(--line);font:inherit;font-size:13px;font-weight:500;color:var(--ink);display:inline-flex;align-items:center;gap:6px;width:auto;min-width:0;cursor:pointer;appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%238591a3' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px}
.barre-filtres summary.dd{list-style:none}
.barre-filtres summary.dd::-webkit-details-marker{display:none}
.barre-filtres summary.dd .ic16{width:14px;height:14px;color:var(--ink-3)}
.barre-filtres .sg{display:inline-flex;padding:2px;border-radius:9px;background:var(--fill);gap:2px;border:0;margin:0}
.barre-filtres .sg a{height:28px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:var(--ink-2);font-size:13px;font-weight:500;display:flex;align-items:center;gap:6px;text-decoration:none}
.barre-filtres .sg a .ic16{width:14px;height:14px}
.barre-filtres .sg a.on{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.12)}
.vues-enregistrees{display:flex;gap:6px;flex-wrap:wrap;margin:0}
.vues-enregistrees .tag{white-space:nowrap;height:28px;padding:0 10px;border:0;border-radius:14px;background:var(--fill);font-size:12.5px;font-weight:500;color:var(--ink-2);display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.vues-enregistrees .tag b{font-weight:600;color:var(--ink)}
.vues-enregistrees .tag.rk b{color:var(--danger)}
.vues-enregistrees .tag.on{background:var(--ink);color:var(--surface)}
.vues-enregistrees .tag.on b{color:var(--surface)}
.tab-scroll.tb2{border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);background:var(--surface);overflow-x:auto}
table.liste-pipeline{table-layout:fixed;width:100%;border-collapse:collapse}
table.liste-pipeline th{height:36px;padding:0 5px;font-size:12px;font-weight:500;color:var(--ink-3);text-transform:none;letter-spacing:0;background:none;border-bottom:1px solid var(--line)}
table.liste-pipeline td{padding:7px 5px;height:auto;min-height:52px;border-top:1px solid var(--line);border-bottom:0;vertical-align:middle;font-size:13px;color:var(--ink)}
table.liste-pipeline tbody tr:first-child td{border-top:0}
table.liste-pipeline th:first-child,table.liste-pipeline td:first-child{padding-left:16px}
table.liste-pipeline th:last-child,table.liste-pipeline td:last-child{padding-right:16px;text-align:right}
table.liste-pipeline th:nth-child(1){width:19%}table.liste-pipeline th:nth-child(2){width:14%}table.liste-pipeline th:nth-child(3){width:46px}
table.liste-pipeline th:nth-child(4){width:88px}table.liste-pipeline th:nth-child(5){width:80px}table.liste-pipeline th:nth-child(6){width:16.5%}
table.liste-pipeline th:nth-child(7){width:18%}table.liste-pipeline th:nth-child(8){width:114px}table.liste-pipeline th:nth-child(9){width:84px}table.liste-pipeline th:nth-child(10){width:62px}
table.liste-pipeline .pcl b{display:block;font-size:14px;font-weight:600;line-height:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
table.liste-pipeline .pcl b.cm{font-weight:500;font-size:13px}
table.liste-pipeline .pcl small{display:block;font-size:12px;color:var(--ink-3);line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
table.liste-pipeline .pcl small a{color:inherit;text-decoration:none;font-family:inherit}
table.liste-pipeline .zn,table.liste-pipeline .en2{color:var(--ink-2)}
table.liste-pipeline td .tag.cat-bleu,table.liste-pipeline td .tag[class*="cat"]{height:22px;padding:0 8px;border-radius:6px;font-size:12px;font-weight:600}
table.liste-pipeline .ps .phase{display:flex;align-items:center;font-size:11.5px;line-height:14px;color:var(--ink-2);margin-bottom:3px;white-space:nowrap}
table.liste-pipeline .ps .phase .pt-phase{width:8px;height:8px;margin-right:6px}
table.liste-pipeline .pst{height:22px;padding:0 8px;border-radius:11px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:5px;background:var(--fill);color:var(--ink-2);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;border:0}
table.liste-pipeline .pst::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7;flex:none}
table.liste-pipeline .pst.ambre{background:var(--warning-soft);color:var(--warning)}
table.liste-pipeline .pst.rouge{background:var(--danger-soft);color:var(--danger)}
table.liste-pipeline .na2{font-size:13px;line-height:18px}
table.liste-pipeline .na2.jour{color:var(--ink);font-weight:600}
table.liste-pipeline .na2.rouge,table.liste-pipeline .na2.retard{color:var(--danger);font-weight:600}
table.liste-pipeline td.who2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
table.liste-pipeline .who2 .av{display:inline-grid;vertical-align:middle;margin-right:7px;width:22px;height:22px;border-radius:50%;background:var(--personne,#64748b);color:#fff;font-size:9.5px;font-weight:700;place-items:center}
table.liste-pipeline .src2{color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
table.liste-pipeline .ag{color:var(--ink-3);font-variant-numeric:tabular-nums}
@media (hover:hover) and (pointer:fine){table.liste-pipeline tbody tr:hover td{background:var(--fill)}}
.sorties{margin:0}
.barre-filtres label.fd{flex-direction:row;gap:7px}
.barre-filtres .fd input.filtre{min-width:0;min-height:0;width:auto;border:0;padding:0;background:transparent}
.barre-filtres .dd{white-space:nowrap;min-height:0}
.barre-filtres details{flex:none;position:relative}
table.liste-pipeline .ps .phase{background:none;padding:0;border-radius:0;font-weight:500}
/* Pipeline, vue groupée par phase (maquette D1-couleurs-Pipeline-Phases) */
.vue-phases{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px;align-items:start;margin:0}
.vue-phases .gp{display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);padding:0;gap:0}
.vue-phases .groupe-phase{border:0;margin:0;padding:0;background:none;box-shadow:none;border-radius:0}
.vue-phases .gh{display:flex;align-items:center;gap:10px;padding:10px 16px;background:color-mix(in srgb,var(--fill) 55%,transparent);border-top:1px solid var(--line);box-shadow:inset 3px 0 0 var(--ph,var(--line));margin:0}
.vue-phases .groupe-phase:first-child .gh{border-top:0}
.vue-phases .gh b{display:inline-flex;align-items:center;font-size:13.5px;font-weight:650;color:var(--ink)}
.vue-phases .gh b .pt-phase{width:8px;height:8px;margin-right:6px}
.vue-phases .gh .n{font-size:12.5px;color:var(--ink-3);font-weight:400}
.vue-phases .gh .mo{margin-left:auto;font-size:12.5px;color:var(--accent-text);font-weight:500;text-decoration:none}
.vue-phases .tr2{display:grid;grid-template-columns:minmax(0,1.5fr) 64px minmax(0,1.25fr) minmax(0,1.4fr) 104px 50px;gap:14px;align-items:center;padding:0 16px;min-height:46px;border-top:1px solid var(--line);text-decoration:none;color:var(--ink)}
.vue-phases .gh+.tr2{border-top:0}
.vue-phases .tr2 .pcl b{display:block;font-size:14px;font-weight:600;line-height:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vue-phases .tr2 .pcl small{display:block;font-size:12px;color:var(--ink-3);line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vue-phases .tr2 .tag{height:22px;padding:0 8px;border-radius:6px;font-size:12px;font-weight:600}
.vue-phases .tr2 .pst{height:22px;padding:0 8px;border-radius:11px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:5px;background:var(--fill);color:var(--ink-2);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.vue-phases .tr2 .pst::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7;flex:none}
.vue-phases .tr2 .pst.ambre{background:var(--warning-soft);color:var(--warning)}
.vue-phases .tr2 .pst.rouge{background:var(--danger-soft);color:var(--danger)}
.vue-phases .na2{font-size:13px;line-height:18px}
.vue-phases .na2.jour{font-weight:600}
.vue-phases .na2.rouge{color:var(--danger);font-weight:600}
.vue-phases .who2{display:flex;align-items:center;gap:7px;font-size:13px;white-space:nowrap;overflow:hidden}
.vue-phases .who2 .av{width:22px;height:22px;border-radius:50%;background:var(--personne,#64748b);color:#fff;font-size:9.5px;font-weight:700;display:grid;place-items:center;flex:none}
.vue-phases .ag{font-size:13px;color:var(--ink-3);text-align:right;font-variant-numeric:tabular-nums}
@media (hover:hover) and (pointer:fine){.vue-phases .tr2:hover{background:var(--fill)}}
.vue-phases .side{display:flex;flex-direction:column;gap:12px;min-width:0}
.vue-phases .side .card{background:var(--surface);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);padding:0;margin:0}
.vue-phases .side .card h3{margin:0;padding:12px 16px 8px;font-size:12px;font-weight:600;color:var(--ink-2);text-transform:none;letter-spacing:0}
.vue-phases .wl{padding:0 8px 8px}
.vue-phases .wi{display:flex;align-items:center;gap:10px;padding:9px 8px;border-radius:10px;text-decoration:none;color:var(--ink);border:0;background:none;margin:0}
.vue-phases .wi+.wi{border-top:1px solid var(--line);border-radius:0}
.vue-phases .wi b.nb{font-size:20px;font-weight:700;min-width:24px;text-align:center;color:var(--ink)}
.vue-phases .wi.r b.nb{color:var(--danger)}
.vue-phases .wi.a b.nb{color:var(--warning)}
.vue-phases .wi span{display:flex;flex-direction:column;flex:1}
.vue-phases .wi span strong{font-size:13.5px;font-weight:600}
.vue-phases .wi span small{font-size:12px;color:var(--ink-3)}
/* Pipeline, vue Colonnes (maquette pipeline/Pipeline-Colonnes) */
.kanban.kb{display:grid;grid-auto-flow:column;grid-auto-columns:262px;gap:12px;overflow-x:auto;align-items:start;margin:0;padding-bottom:8px}
.kanban .kcol{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:16px;background:color-mix(in srgb,var(--fill) 60%,transparent);border:0;min-height:0}
.kanban .kh{display:flex;align-items:center;gap:8px;padding:2px 4px 4px;border:0;background:none;margin:0}
.kanban .kh b{display:inline-flex;align-items:center;font-size:13.5px;font-weight:650;color:var(--ink)}
.kanban .kh b .pt-phase{width:8px;height:8px;margin-right:6px}
.kanban .kh>span{font-size:12.5px;color:var(--ink-3)}
.kanban .kh em{margin-left:auto;font-style:normal;font-size:11.5px;font-weight:600;color:var(--danger)}
.kanban .cartes{display:flex;flex-direction:column;gap:8px;padding:0;background:none}
.kanban .kc{background:var(--surface);border:0;border-radius:12px;box-shadow:0 0 0 1px var(--line);padding:10px 12px;display:flex;flex-direction:column;gap:6px;transition:box-shadow 150ms ease}
@media (hover:hover) and (pointer:fine){.kanban .kc:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent),0 6px 16px -10px rgba(20,40,80,.35)}}
.kanban .kc .n{display:flex;align-items:baseline;gap:6px}
.kanban .kc .n b{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kanban .kc .n small{margin-left:auto;font-size:11.5px;color:var(--ink-3);white-space:nowrap}
.kanban .kc .c{font-size:12px;color:var(--ink-3);margin:-4px 0 0}
.kanban .kc .tg2{display:flex;gap:6px;flex-wrap:wrap;margin:0}
.kanban .kc .tag{height:22px;padding:0 8px;border-radius:6px;font-size:12px;font-weight:600;display:inline-flex;align-items:center}
.kanban .kc .pst{border-radius:11px;gap:5px;background:var(--fill);color:var(--ink-2)}
.kanban .kc .pst::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7}
.kanban .kc .pst.ambre{background:var(--warning-soft);color:var(--warning)}
.kanban .kc .pst.rouge{background:var(--danger-soft);color:var(--danger)}
.kanban .kc .na2{font-size:12.5px;margin:0;display:block;color:var(--ink)}
.kanban .kc .na2.rouge{color:var(--danger);font-weight:600}
.kanban .kc .na2.jour{font-weight:600}
.kanban .kc .ft{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2)}
.kanban .kc .ft .av{width:18px;height:18px;border-radius:50%;background:var(--personne,#64748b);color:#fff;font-size:8.5px;font-weight:700;display:grid;place-items:center}
.kanban .kc .ft .src{margin-left:auto;color:var(--ink-3)}
.kanban .kmore{font-size:12.5px;color:var(--accent-text);text-align:left;padding:2px 4px}
.kanban .vide{padding:8px 4px;color:var(--ink-3);font-size:12.5px;text-align:left}
.kanban>.col.kcol{border:0;border-top:0;box-shadow:none;min-height:0}
.kanban .col-t.kh{border:0;box-shadow:none;padding:2px 4px 4px;background:none}
.kanban .col-t.kh>span{margin-left:0}
.kanban .kc .action.na2,.kanban .kc .tags.tg2{margin:0}
.kanban .kc .action.na2{padding:0;border:0;display:block}
/* ===== Dossiers (maquette palettes/brainstorm-2026-10-08/Dossiers-D1-sans-barres) ===== */
.frise-filtre.frise-etapes{grid-template-columns:92px repeat(7,minmax(0,1fr))}
.frise-etapes .tuile.tag{height:auto;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}
.frise-etapes .tuile>span{white-space:normal;line-height:14px;min-height:28px;align-items:flex-start}
.frise-etapes .tuile:first-child>span{min-height:0}
.avert-etape{margin:0}
/* correctif du 22/10 : « Étape à renseigner » à 4,5:1 au moins (4,14:1 avec --warning sur sa pastille) : la couleur de la charte déjà posée pour les pastilles ambre sur fond */
.avert-etape .tag.ambre{color:var(--warning-sur-fond)}
table.liste-dossiers{table-layout:fixed;width:100%;border-collapse:collapse}
table.liste-dossiers th{height:36px;padding:0 8px;font-size:12px;font-weight:500;color:var(--ink-3);text-transform:none;letter-spacing:0;background:none;border-bottom:1px solid var(--line)}
table.liste-dossiers td{padding:7px 8px;height:auto;border-top:1px solid var(--line);border-bottom:0;vertical-align:middle;font-size:13px;color:var(--ink)}
table.liste-dossiers tbody tr:first-child td{border-top:0}
table.liste-dossiers th:first-child,table.liste-dossiers td:first-child{padding-left:16px}
table.liste-dossiers th:last-child,table.liste-dossiers td:last-child{padding-right:16px}
table.liste-dossiers th:nth-child(1){width:19%}table.liste-dossiers th:nth-child(2){width:17%}table.liste-dossiers th:nth-child(3){width:20%}
table.liste-dossiers th:nth-child(4){width:14%}table.liste-dossiers th:nth-child(6){width:120px}
table.liste-dossiers .pcl b{display:block;font-size:13.5px;font-weight:600;line-height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
table.liste-dossiers .pcl b a{color:inherit;text-decoration:none}
table.liste-dossiers .pcl b.et.vert{color:var(--success)}
table.liste-dossiers .pcl small{display:block;font-size:12px;color:var(--ink-3);line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
table.liste-dossiers .pcl small.rouge{color:var(--danger);font-weight:600}
table.liste-dossiers .na2{font-weight:500}
table.liste-dossiers .na2.rouge{color:var(--danger);font-weight:600}
table.liste-dossiers .aides .vx{display:flex;gap:10px}
table.liste-dossiers .aides .voyants{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600}
table.liste-dossiers .aides small{display:block;font-size:12px;color:var(--ink-3);line-height:16px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
table.liste-dossiers .pay{font-size:12.5px;color:var(--ink-2)}
table.liste-dossiers td.who2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
table.liste-dossiers .who2 .av{display:inline-grid;vertical-align:middle;margin-right:7px;width:22px;height:22px;border-radius:50%;background:var(--personne,#64748b);color:#fff;font-size:9.5px;font-weight:700;place-items:center}
@media (hover:hover) and (pointer:fine){table.liste-dossiers tbody tr:hover td{background:var(--fill)}}
.sorties{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-3)}
.sorties .tag{height:24px;padding:0 9px;border-radius:12px;background:var(--fill);border:0;color:var(--ink-2);font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:5px;text-decoration:none}
.sorties .tag b{font-weight:600;color:var(--ink)}
.sorties .sp{flex:1}
.sorties .compte-liste{font-size:12.5px;color:var(--ink-3)}
table.liste-dossiers .pcl b a{font:inherit;color:inherit}
/* Connexion (charte ; maquette palettes/brainstorm-2026-10-08/tour3/Connexion-cobalt) */
body.connexion main.page{min-height:100vh;display:grid;place-items:center;padding:24px 16px;box-sizing:border-box}
.bloc-cnx{width:100%;max-width:380px;display:flex;flex-direction:column;align-items:center;gap:22px}
body.seul .bloc-cnx .etroit,.bloc-cnx .etroit{margin:0;width:100%;box-sizing:border-box}
/* lot Fidélité 2 : « body.seul .etroit » (marge haute de 12vh) éloignait la carte du logo ; la règle porte maintenant body.seul */
.marque-cnx{display:flex;align-items:center;gap:10px;color:#fff;font-weight:650;font-size:17px;letter-spacing:-.01em}
.marque-cnx i{width:32px;height:32px;border-radius:9px;background:rgba(255,255,255,.18);display:grid;place-items:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
.marque-cnx svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* thème sombre : la pastille violette des visites lisible (charte, contraste 4,5:1) */
:root[data-theme="sombre"] .ma-file .c-vt{background:rgba(160,150,255,.16);color:#c3bcff}
/* barre d'outils : les menus gardent leur largeur, la recherche cède la place */
.barre-filtres .dd{flex:none;max-width:170px}
.barre-filtres .fd{flex:0 1 280px;min-width:170px;width:auto}
/* cartes de Client et logement : le titre seul dans le h2, les boutons à côté (lecture des titres par les tests et les lecteurs d'écran) */
#p-client .card>.card-t{display:flex;align-items:center;gap:8px;padding:12px 16px 8px}
#p-client .card>.card-t>h2{margin:0;padding:0;font-size:13px;line-height:19px;font-weight:800;color:var(--titre-bloc);text-transform:none;letter-spacing:0}
#p-client .card-t .r{margin:-3px -6px -3px auto;height:22px;padding:0 6px;border:0;border-radius:6px;background:transparent;font:inherit;font-size:12px;font-weight:500;color:var(--accent-text);cursor:pointer;display:inline-flex;align-items:center}
@media (hover:hover) and (pointer:fine){#p-client .card-t .r:hover{background:var(--accent-soft)}}
#p-client .editable.en-edition>.card-t>.r.bascule-edition{display:none}
.fiche-tete .src .nrp-alerte{height:22px;padding:0 8px;border-radius:6px;font-size:11.5px;font-weight:700;display:inline-flex;align-items:center;background:var(--warning-soft);color:var(--warning)}
/* lot Fidélité 2 (Mike, 12/10, 19 h 17, décision 18 annulée) : plus de retouche de contraste ; les valeurs exactes des maquettes
   (voile de « Rechercher ⌘K », reflet et libellés des cartes cobalt, bandeau « Carte », compteur de l'onglet actif, chiffres rouges
   des vues enregistrées) sont celles des règles d'origine plus haut */
/* ---------- écrans étroits (≤ 800 px : téléphone, fenêtre réduite) : une colonne, les rangées passent à la ligne ---------- */
@media (max-width:800px){
  .fiche-tete .tb{flex-wrap:wrap;height:auto;gap:8px;padding:8px 0}
  .fiche-tete .hd{flex-wrap:wrap;align-items:flex-start}
  .fiche-tete .id{flex:1 1 220px}
  .fiche-tete .id h1{white-space:normal;flex-wrap:wrap}
  .fiche-tete .ln{white-space:normal;flex-wrap:wrap}
  .fiche-tete .pills{flex-wrap:wrap;border-left:0;padding-left:0;width:100%}
  .fiche-tete .hd>.sp{display:none}
  .jr{grid-template-columns:1fr!important}
  .jr .steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:12px}
  body.fiche .onglets{overflow-x:auto;flex-wrap:nowrap}
  #p-apercu .gr,#p-client .gr,.gr.cl,.gr.trois,.dv-grille,.vt-synthese-cols{grid-template-columns:1fr!important}
  main.page:has(> .greet),main.page:has(> .ph0){padding:14px 16px}
  .greet{flex-wrap:wrap}
  .k3{flex-wrap:wrap}.k3 .kx{flex:1 1 150px}
  .h2c .in{grid-template-columns:1fr;padding:16px}
  .h2c h2{flex-wrap:wrap;font-size:22px;line-height:28px}
  .h2c .cols,.decision-suivante .cols.c3{grid-template-columns:1fr}
  .h2c .cols>div+div{box-shadow:inset 0 1px 0 rgba(255,255,255,.14)}
  .h2c .top{flex-wrap:wrap}.h2c .late{margin-left:0}
  .ma-file .qh{flex-wrap:wrap}
  .ma-file .ligne-file.row,.adm2 .ma-file .ligne-file.row{grid-template-columns:80px minmax(0,1fr) auto;padding:6px 12px}
  .ma-file .row .chip{display:none}
  .adm2,.gx,.vue-phases{grid-template-columns:1fr}
  .kp{grid-template-columns:1fr 1fr}
  .gx .pt .trp{grid-template-columns:80px minmax(0,1fr) auto}
  .gx .pt .trp>span:nth-child(3),.gx .pt .trp>span:nth-child(4){display:none}
  .entete.ph0{flex-wrap:wrap;align-items:center}
  .ph0 .droite{flex-wrap:wrap}
  .barre-filtres.outils{flex-wrap:wrap}
  .barre-filtres .fd{flex:1 1 100%;width:auto}
  .barre-filtres .sp{display:none}
  .frise-filtre,.frise-filtre.frise-etapes{grid-template-columns:repeat(3,minmax(0,1fr))}
  table.liste-pipeline,table.liste-dossiers{min-width:960px}
  .vue-phases .tr2{grid-template-columns:minmax(0,1fr) auto;row-gap:2px;padding:8px 12px}
  .vue-phases .tr2>.cat,.vue-phases .tr2>.pers{display:none}
}
/* écrans étroits : la barre latérale devient un bandeau en haut (marque, recherche, entrées, compte sur une ou deux lignes) */
@media (max-width:800px){
  .app{grid-template-columns:minmax(0,1fr)}
  .rail{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px}
  .rail .marque{margin:0 auto 0 0;padding:4px 0}
  .rail .find{order:2;margin:0;flex:0 0 auto;width:auto}
  .rail .find kbd{display:none}
  .rail .nav{order:3;flex-direction:row;flex-wrap:wrap;width:100%;gap:4px}
  .rail .nav h6{display:none}
  .rail .nav .nv{height:32px;padding:0 10px}
  .rail .nav-groupe{width:auto}
  .rail .moi{order:1;margin:0}
  .rail .moi>summary.profil{border-top:0;padding:4px}
  .rail .moi>summary.profil>span{display:none}
}
/* la case du mode de vente porte « Modifier » : elle passe à la ligne plutôt que de couper le bouton (cliquable en entier) */
body.fiche .vt-chiffrage .ch-vis .k b:has(.ouvre-modif){white-space:normal;overflow:visible}

/* =====================================================================================================================
   LOT FIDÉLITÉ 2 (12/10/2026), onglet Pré-VT (maquettes fiche-onglets/Fiche-PreVT et Fiche-PreVT-Telepro) : listes cochées des
   Critères et des Gages avec leur compteur, Observation du télépro, Étude téléphonique en lignes groupées. La saisie s'ouvre par
   « Modifier » du haut de la fiche : les formulaires « edition-seule » n'apparaissent qu'en modification.
   ===================================================================================================================== */
body.fiche #p-prevt .editable.edition-seule:not(.en-edition){display:none}
body.fiche #p-prevt .editable.edition-seule{border-radius:0 0 16px 16px;box-shadow:none;border-top:1px solid var(--line);background:none}
body.fiche #p-prevt .editable.edition-seule.en-edition{box-shadow:inset 0 0 0 1.5px var(--accent)}
body.fiche #p-prevt .vt-carte{display:flex;flex-direction:column}
body.fiche #p-prevt .bloc-t .cpt{height:22px;padding:0 8px;border-radius:6px;font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;white-space:nowrap;background:var(--fill);color:var(--ink-2)}
body.fiche #p-prevt .bloc-t .cpt.plein{background:var(--success-soft);color:var(--success)}
body.fiche #p-prevt .bloc-t .cpt.ambre{background:var(--warning-soft);color:var(--warning)}
body.fiche #p-prevt .bloc-t .qui{margin-left:auto;font-size:12px;color:var(--ink-3);font-weight:400}
body.fiche #p-prevt .cr{padding:0 16px 6px}
body.fiche #p-prevt .cr-l{display:flex;align-items:center;gap:9px;padding:9.5px 0;border-top:1px solid var(--line);font-size:13px;line-height:18px}
body.fiche #p-prevt .gages .cr-l{padding:4px 0}
body.fiche #p-prevt .cr-l>span{flex:1;min-width:0;color:var(--ink)}
body.fiche #p-prevt .cr-l>b{font-weight:600;color:var(--ink-2);white-space:nowrap}
body.fiche #p-prevt .cr-l>b.rouge{color:var(--danger)}
body.fiche #p-prevt .cr-l>b.gris{color:var(--ink-3);font-weight:500}
body.fiche #p-prevt .ck{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--success-soft);color:var(--success)}
body.fiche #p-prevt .ck svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
body.fiche #p-prevt .ck.non{background:var(--danger);color:#fff}
body.fiche #p-prevt .ck.att{background:transparent;box-shadow:inset 0 0 0 1.5px rgba(0,0,0,.18);color:var(--ink-3)}
body.fiche #p-prevt .ck.att svg{stroke-width:1.6}
body.fiche #p-prevt .gages .regle{margin:0 16px;padding:6px 0 10px;border-top:1px solid var(--line);font-size:12px;line-height:16px;color:var(--ink-3)}
body.fiche #p-prevt .vt-validation .obs{padding:9px 11px;border-radius:9px;background:var(--fill);font-size:13px;line-height:18px;color:var(--ink);margin:0 0 10px}
body.fiche #p-prevt .vt-validation .obs small{display:block;color:var(--ink-3);font-size:11.5px;line-height:15px;margin-bottom:2px}
body.fiche #p-prevt .vt-validation .vt-attente{display:flex;align-items:center;height:32px;padding:0 11px;border-radius:8px;background:var(--fill);color:var(--ink-2);font-size:13px;font-weight:500}
body.fiche #p-prevt .kv-lec{padding:0 16px 8px}
body.fiche #p-prevt .kv-g+.kv-g{margin-top:5px}
body.fiche #p-prevt .kv-l{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 12px;padding:5px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px}
body.fiche #p-prevt .kv-g+.kv-g>.kv-l:first-child{border-top-color:rgba(0,0,0,.12)}
body.fiche #p-prevt .kv-l>span{color:var(--ink-3);white-space:nowrap}
body.fiche #p-prevt .kv-l>b{font-weight:550;color:var(--ink);text-align:right}
:root[data-theme="sombre"] body.fiche #p-prevt .ck.att{box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.22)}
:root[data-theme="sombre"] body.fiche #p-prevt .kv-g+.kv-g>.kv-l:first-child{border-top-color:rgba(255,255,255,.14)}
/* lot Fidélité 2 : titres des blocs des Aujourd'hui en bleu gras (coque v5 ; maquettes Aujourdhui-D1, Aujourdhui-Administratif) ;
   « Relancer » et « Déposer » de l'administratif en bouton gris (maquette) */
.ma-file .qh h3,.adm2 .equipe>h3,.adm2 .semaine>h3,.gx .card.semaine>h3,.gx .card.bk>h3{font-size:13px;line-height:19px;font-weight:800;color:var(--titre-bloc);letter-spacing:0}
.gx .pt .trp .btn{background:var(--fill);color:var(--ink);font-weight:500;border:0;box-shadow:none}
@media (hover:hover) and (pointer:fine){.gx .pt .trp .btn:hover{background:var(--fill-fort)}}
/* M13 (bloc 2, lot c bis) : l'étape de Dossiers sous la dernière phase de la frise, après la signature, voyants à côté */
.jr .st small.etape-dossiers{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:2px}
.jr .st small.etape-dossiers .statut{color:var(--ink-2);font-weight:600}
.jr .st small.etape-dossiers .voyants{gap:10px;font-size:11.5px;color:var(--ink-3);flex-wrap:nowrap}
.jr .st small.etape-dossiers .voyants>span{gap:5px}
.jr .st small.etape-dossiers .voyant{width:8px;height:8px}

/* ---------- Tiers (lot Tiers, 13/10/2026 ; maquettes maquettes/tiers/Tiers, Tiers-Fiche, Tiers-Ajout, factures/Tiers-Ace ; coque v5,
   palette D1). Structure, ordre et dimensions des maquettes ; couleurs de la palette D1 (jetons). Skills : retour au toucher (0,97),
   survols réservés à la souris, la feuille de création entre sans partir de rien (0,96 et fondu, 240 ms), fondu seul en mouvement
   réduit ; aucune animation sur la liste (écran ouvert souvent). ---------- */
body.page-tiers main.page{padding:0 24px 14px;max-width:none;display:flex;flex-direction:column;gap:10px;min-height:100vh;box-sizing:border-box}
.tiers-haut{height:50px;flex:none;display:flex;align-items:center;gap:12px;margin:0 -24px;padding:0 24px;background:var(--canvas);box-shadow:0 1px 0 var(--line)}
.tiers-haut h1{margin:0;font-size:13.5px;line-height:19px;font-weight:600;color:var(--ink);letter-spacing:-.006em}
.tiers-haut .sp,.tiers-outils .sp{flex:1}
.page-tiers .btn{height:32px;min-height:32px;padding:0 14px;border-radius:8px;font-size:13.5px;font-weight:500;border:0;display:inline-flex;align-items:center;gap:6px;cursor:pointer;
  transition:transform 160ms cubic-bezier(.23,1,.32,1),background-color 160ms ease}
.page-tiers .btn:active{transform:scale(.97)}
.page-tiers .btn.g{background:var(--fill);color:var(--ink)}
.page-tiers .btn svg{width:16px;height:16px}
.tiers-outils{display:flex;align-items:center;gap:12px;margin-top:2px}
.seg-tiers{display:flex;gap:2px;padding:3px;border-radius:10px;background:var(--surface);box-shadow:0 0 0 1px var(--line)}
.seg-tiers a{height:28px;padding:0 11px;border-radius:7px;display:flex;align-items:center;gap:6px;color:var(--ink-2);font-size:13px;font-weight:500;text-decoration:none;white-space:nowrap}
.seg-tiers a i{font-style:normal;font-size:11px;color:var(--ink-3);font-weight:500}
.seg-tiers a.on{background:var(--accent-soft);color:var(--accent-text);font-weight:600;box-shadow:inset 0 0 0 1.5px var(--accent)}
.seg-tiers a.on i{color:var(--accent-text)}
@media (hover:hover) and (pointer:fine){.seg-tiers a:not(.on):hover{background:var(--fill)}}
.tiers-outils .fd{width:260px;height:34px;border-radius:10px;background:var(--surface);box-shadow:0 0 0 1px var(--line);display:flex;align-items:center;gap:7px;padding:0 10px;color:var(--ink-3)}
.tiers-outils .fd svg{width:14px;height:14px}
.tiers-outils .fd input{flex:1;border:0;outline:0;background:none;font:inherit;font-size:13px;color:var(--ink);padding:0;min-width:0}
.tiers-corps{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px;align-items:stretch}
.tiers-cote>.carte:last-child{flex:1}
.page-tiers .carte{background:var(--surface);border-radius:14px;box-shadow:var(--ombre-carte);border:0;min-width:0;margin:0}
.page-tiers .carte h2{margin:0;padding:12px 16px 8px;font-size:13px;line-height:18px;font-weight:800;color:var(--titre-bloc);display:flex;align-items:center;gap:8px}
.page-tiers .carte h2 em{margin-left:auto;font-style:normal;font-weight:500;color:var(--ink-3);font-size:12px}
.tiers-liste .tl-hd{display:flex;align-items:center;padding:12px 16px 8px}
.tiers-liste .tl-hd h2{padding:0}
.tiers-liste .tl-hd span{margin-left:auto;font-size:12px;color:var(--ink-3)}
.tiers-liste table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;border:0;box-shadow:none;background:none}
.tiers-liste th{font-size:11.5px;line-height:15px;font-weight:500;color:var(--ink-3);text-align:left;padding:0 10px 7px 0;white-space:nowrap;background:none;border:0;letter-spacing:.01em;text-transform:none}
.tiers-liste td{font-size:12.5px;line-height:17px;padding:7px 10px 7px 0;border-top:1px solid var(--line);vertical-align:middle;white-space:nowrap;color:var(--ink);background:none}
.tiers-liste :is(td,th):first-child{padding-left:16px}.tiers-liste :is(td,th):last-child{padding-right:16px}
.tiers-liste .nb{text-align:right}
.tiers-liste tbody tr{cursor:pointer}
.tiers-liste tr:focus-visible td{outline:none;background:var(--accent-soft)}
@media (hover:hover) and (pointer:fine){.tiers-liste tbody tr:hover td{background:var(--fill)}}
.tiers-liste .tn{display:flex;align-items:center;gap:10px}
.tiers-liste .tn b{display:block;font-weight:600}.tiers-liste .tn b a{color:inherit;text-decoration:none}
.tiers-liste .tn small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.page-tiers .ini{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:#fff;font-size:11px;font-weight:650;letter-spacing:.02em;flex:none;background:#5d6a7e}
.page-tiers .ini[data-type="fournisseur"]{background:#2470ad}.page-tiers .ini[data-type="poseur"]{background:#6a58c9}.page-tiers .ini[data-type="technicien"]{background:#127670}
.page-tiers .ini[data-type="regie"]{background:#8f6322}.page-tiers .ini:is([data-type="delegataire"],[data-type="partenaire"]){background:#287a47}
.page-tiers .tag{display:inline-flex;height:22px;align-items:center;padding:0 8px;border-radius:6px;font-size:11.5px;font-weight:500;background:var(--fill);color:var(--ink-2);border:0}
.etat-tiers{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 7px 0 5px;border-radius:6px;font-size:11.5px;font-weight:500;white-space:nowrap}
.etat-tiers.vert{background:var(--success-soft);color:var(--success-sur-fond)}.etat-tiers.orange{background:var(--warning-soft);color:var(--warning-sur-fond)}
.etat-tiers.rouge{background:var(--danger-soft);color:var(--danger-sur-fond)}.etat-tiers.vide{background:var(--fill);color:var(--ink-3);padding:0 8px}
.page-tiers .pt{width:14px;height:14px;border-radius:50%;display:inline-grid;place-items:center;font-style:normal;flex:none}
.page-tiers .pt svg{width:8px;height:8px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.page-tiers .pt.vert{background:var(--success-soft);color:var(--success)}.page-tiers .pt.orange{background:var(--warning-soft);color:var(--warning)}.page-tiers .pt.rouge{background:var(--danger-soft);color:var(--danger)}
.tiers-cote{display:flex;flex-direction:column;gap:12px;min-width:0}
.tiers-surv{padding-bottom:6px}
.tiers-surv .sv,.ta-g .sv{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:2px 10px;padding:8px 16px;border-top:1px solid var(--line)}
.tiers-surv h2+.sv{border-top:0;padding-top:2px}
.page-tiers .sv>.pt{width:18px;height:18px;margin-top:1px}.page-tiers .sv>.pt svg{width:10px;height:10px;stroke-width:2.6}
.page-tiers .sv b{display:block;font-size:12.5px;line-height:17px;font-weight:600}
.page-tiers .sv small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.page-tiers .sv .btn{margin-top:5px;height:26px;min-height:26px;padding:0 10px;font-size:12.5px;background:var(--accent-soft);color:var(--accent-text);text-decoration:none}
.page-tiers .sv .dd{font-size:11.5px;line-height:17px;color:var(--ink-3);white-space:nowrap}
.page-tiers .msg{padding:9px 14px;border-radius:10px;font-size:13px}.page-tiers .msg.ok{background:var(--success-soft);color:var(--success-sur-fond)}.page-tiers .msg.err{background:var(--danger-soft);color:var(--danger-sur-fond)}
/* fiche */
body.page-tiers .fiche-tete .tb .crumb b.crumb-nom{font-family:var(--corps);font-weight:600;color:var(--ink);font-size:13px}
.page-tiers .menu-fiche{position:relative}
.page-tiers .menu-fiche .menu-autres{position:absolute;right:0;top:36px;min-width:200px;padding:6px;border-radius:12px;background:var(--surface);box-shadow:var(--ombre-pop);display:flex;flex-direction:column;z-index:20}
.page-tiers .menu-fiche .menu-autres .lien{text-align:left;padding:8px 10px;border-radius:8px;background:none;border:0;font:inherit;font-size:13px;color:var(--ink);cursor:pointer}
@media (hover:hover) and (pointer:fine){.page-tiers .menu-fiche .menu-autres .lien:hover{background:var(--fill)}}
.tiers-tete{display:flex;align-items:center;gap:14px;padding:12px 16px}
.tiers-tete .ini{width:44px;height:44px;border-radius:11px;font-size:15px}
.tiers-tete .tt{min-width:0}
.tiers-tete h1{margin:0;display:flex;align-items:center;gap:10px;font-size:20px;line-height:26px;font-weight:650;letter-spacing:-.015em;color:var(--ink)}
.tiers-tete p{margin:0;font-size:12.5px;line-height:17px;color:var(--ink-3)}
.tiers-tete .sp{flex:1}
.tiers-tete .actif{color:var(--success);font-size:12px;font-weight:600}
.tiers-tete .ctl{font-size:11.5px;color:var(--ink-3);margin-right:4px}
.tiers-tete form{margin:0}
.tiers-siret{display:flex;align-items:flex-end;gap:10px;padding:12px 16px}
.tiers-siret label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--ink-3)}
.tiers-siret input{height:34px;border-radius:9px;border:0;box-shadow:inset 0 0 0 1.5px var(--accent);padding:0 10px;font:inherit;font-size:14px;width:240px}
.tiers-grille{flex:1;min-height:0;display:grid;grid-template-columns:330px minmax(0,1fr) 370px;gap:12px;align-items:stretch}
.tiers-grille.deleg{grid-template-columns:300px minmax(0,1fr) 392px}
.tiers-grille>.tcol{display:flex;flex-direction:column;gap:12px;min-width:0}
.tiers-grille>.tcol>.carte:last-child{flex:1}
.tiers-carte{padding-bottom:6px}
.tiers-carte .li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 12px;margin:0 16px;padding:6px 0;border-top:1px solid var(--line)}
.tiers-carte h2+.li{border-top:0}
.tiers-carte .li>span{font-size:11.5px;line-height:15px;color:var(--ink-3);white-space:nowrap;letter-spacing:.01em}
.tiers-carte .li>b{font-size:12.5px;line-height:15px;font-weight:500;text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
.tiers-carte .li>b small{display:block;font-size:11px;font-weight:400;color:var(--ink-3)}
.tiers-carte .li>b.rib{display:flex;justify-content:flex-end;align-items:center;gap:5px}.tiers-carte .li>b.rib svg{width:12px;height:12px;stroke:var(--ink-3)}
.tiers-carte .manque,.tiers-carte .alerte-ctt{display:flex;align-items:center;gap:8px;margin:2px 16px 8px;font-size:12.5px;font-weight:600;color:var(--warning-sur-fond)}
.tiers-carte .rib-attente{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:6px 16px 8px;padding:8px 10px;border-radius:9px;background:var(--warning-soft);font-size:12.5px}
.tiers-carte .rib-attente .btn{height:28px;min-height:28px;margin-left:auto}
.tiers-conf .cf{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:1px 10px;align-items:start;margin:0 16px;padding:8px 0;border-top:1px solid var(--line)}
.tiers-conf h2+.cf{border-top:0;padding-top:2px}
.tiers-conf .cf>.pt{width:18px;height:18px;margin-top:1px}.tiers-conf .cf>.pt svg{width:10px;height:10px;stroke-width:2.6}
.tiers-conf .cf b{font-size:12.5px;line-height:17px;font-weight:600;color:var(--ink)}.tiers-conf .cf b a{color:inherit;text-decoration:none}
.tiers-conf .cf small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.tiers-conf .cf small.wn{color:var(--warning-sur-fond);font-weight:500}
.tiers-conf .cf.expiree small.wn{color:var(--danger-sur-fond)}
.tiers-conf .cf .dd{font-size:11.5px;line-height:17px;color:var(--ink-3);white-space:nowrap}
.tiers-conf .cf .doc{display:flex;align-items:center;gap:8px;margin-top:6px;padding:7px 9px;border-radius:9px;background:var(--fill);text-decoration:none;color:var(--ink)}
.tiers-conf .cf .doc svg{width:14px;height:14px;stroke:var(--danger);flex:none}
.tiers-conf .cf .doc b{font-size:12px;line-height:16px;font-weight:400}
.tiers-conf .cf .lien-doc{display:inline-block;margin-top:3px;font-size:11.5px;color:var(--accent-text)}
.tiers-conf .cf :is(form.dem,form.depot){grid-column:2/4;margin:6px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.tiers-conf .cf form.dem .btn{background:var(--accent-soft);color:var(--accent-text);height:26px;min-height:26px;font-size:12.5px;padding:0 10px}
.tiers-conf .cf form.depot{font-size:11.5px;color:var(--ink-3)}.tiers-conf .cf form.depot input[type=file]{font-size:11.5px;max-width:200px}
.tiers-conf .cf form.depot label{display:flex;align-items:center;gap:6px}.tiers-conf .cf form.depot input[type=date]{height:26px;border-radius:7px;border:1px solid var(--line-strong);padding:0 6px;font:inherit;font-size:11.5px}
.tiers-conf .cf form.depot .btn{height:26px;min-height:26px;font-size:12.5px;padding:0 10px}
.tiers-conf .vide{margin:0 16px 10px;color:var(--ink-3);font-size:12.5px}
.frise-ech{margin:8px 16px 12px;padding:10px 12px 8px;border-radius:10px;background:var(--fill)}
.frise-ech h3{margin:0 0 8px;font-size:11.5px;line-height:15px;font-weight:600;color:var(--ink-3)}
.frise-ech .axe{position:relative;height:42px;margin:0 30px}
.frise-ech .axe::before{content:"";position:absolute;left:0;right:0;top:20px;height:2px;border-radius:2px;background:var(--line-strong)}
.frise-ech .pt-ech{position:absolute;top:16px;width:10px;height:10px;margin-left:-5px}
.frise-ech .pt-ech i{position:absolute;inset:0;border-radius:50%;background:var(--surface);box-shadow:inset 0 0 0 2px var(--ink-3)}
.frise-ech .pt-ech.urg i{box-shadow:inset 0 0 0 2px var(--warning)}
.frise-ech .pt-ech em{position:absolute;top:13px;left:50%;transform:translateX(-50%);font-size:10.5px;line-height:13px;font-weight:500;color:var(--ink-2);white-space:nowrap;font-style:normal}
.frise-ech .pt-ech.haut em{top:-15px}.frise-ech .pt-ech.urg em{color:var(--warning-sur-fond);font-weight:600}
.tiers-conf h3.arch{margin:10px 16px 2px;font-size:12px;font-weight:600;color:var(--ink-2)}
.tiers-dossiers .kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 16px 10px}
.tiers-dossiers .kpis div{padding:8px 10px;border-radius:10px;background:var(--fill)}
.tiers-dossiers .kpis small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.tiers-dossiers .kpis b{display:block;font-size:15px;line-height:20px;font-weight:650;font-variant-numeric:tabular-nums}
.tiers-dossiers .tdos{margin:0 16px;padding:8px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px}
.tiers-dossiers .tdos a.mono{font-weight:600;color:var(--ink);text-decoration:none}.tiers-dossiers .tdos .gris{color:var(--ink-3);margin-left:6px;font-size:11.5px}
.tiers-dossiers .chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.tiers-dossiers .chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 7px;border-radius:6px;box-shadow:inset 0 0 0 1px var(--line);font-size:11.5px;color:var(--ink-2);text-decoration:none}
.tiers-dossiers .chip svg{width:10px;height:10px;stroke:var(--success);fill:none;stroke-width:2.6}
/* « Ajouter un tiers » : la feuille centrée au-dessus de la liste, qui assombrit la fenêtre */
dialog.dlg-tiers{width:min(1060px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 32px));padding:0;border:0;border-radius:18px;background:var(--canvas);color:var(--ink);
  box-shadow:0 30px 80px rgba(0,0,0,.28),0 0 0 .5px rgba(0,0,0,.08);overflow:auto;transform-origin:center;transition:transform 240ms cubic-bezier(.23,1,.32,1),opacity 200ms ease-out}
dialog.dlg-tiers::backdrop{background:rgba(20,24,32,.32);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
@starting-style{dialog.dlg-tiers[open]{opacity:0;transform:scale(.96)}}
dialog.dlg-tiers header{display:flex;align-items:center;gap:12px;padding:14px 18px 12px}
dialog.dlg-tiers header h2{margin:0;font-size:16px;line-height:22px;font-weight:650;letter-spacing:-.01em}
dialog.dlg-tiers header h2 small{color:var(--ink-3);font-size:12.5px;font-weight:400;margin-left:8px}
dialog.dlg-tiers header .x{margin-left:auto;width:28px;height:28px;border-radius:50%;border:0;background:none;color:var(--ink-2);display:grid;place-items:center;cursor:pointer}
dialog.dlg-tiers header .x svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}
.ta-corps{padding:0 18px 18px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:12px}
.ta-corps .carte{background:var(--surface);border-radius:14px;box-shadow:var(--ombre-carte);display:flex;flex-direction:column;padding-bottom:6px}
.ta-siret{display:flex;flex-direction:column;padding:14px 16px 12px;gap:8px}
.ta-siret>span{font-size:12.5px;font-weight:600;color:var(--ink-2)}
.champ-siret{height:38px;border-radius:10px;box-shadow:inset 0 0 0 1.5px var(--accent);display:flex;align-items:center;gap:8px;padding:0 12px;background:var(--surface)}
.champ-siret svg{width:15px;height:15px;color:var(--ink-3)}
.champ-siret input{flex:1;border:0;outline:0;background:none;font:inherit;font-size:15px;font-weight:500;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--ink);min-width:0}
.champ-siret em{font-style:normal;font-size:12px;font-weight:500}.champ-siret em.oui{color:var(--success)}.champ-siret em.non{color:var(--danger-sur-fond)}
.ta-tt{display:flex;align-items:center;padding:6px 16px 6px}
.ta-tt h3{margin:0;font-size:12.5px;font-weight:600;color:var(--ink-2)}
.ta-tt span{margin-left:auto;font-size:11.5px;color:var(--ink-3)}
.ta-grille{padding:0 16px 12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
.ta-grille div{padding:7px 0;border-top:1px solid var(--line)}
.ta-grille small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3);letter-spacing:.01em}
.ta-grille b{display:block;font-size:12.5px;line-height:17px;font-weight:500}
.ta-grille b small{display:inline;margin-left:6px}
.ta-raison{display:flex;flex-direction:column;gap:5px;padding:0 16px 14px;font-size:11.5px;color:var(--ink-3)}
.ta-raison input{height:34px;border-radius:9px;border:1px solid var(--line-strong);padding:0 10px;font:inherit;font-size:13.5px;color:var(--ink)}
.ta-d{padding:12px 16px 14px!important;gap:12px}
.ta-d h3{margin:0;font-size:12.5px;font-weight:600;color:var(--ink-2)}
.ta-d>label{display:flex;flex-direction:column;gap:5px}
.ta-d>label small,.ta-tva legend{font-size:11.5px;line-height:15px;color:var(--ink-3);padding:0}
.ta-d select{height:34px;border-radius:9px;border:0;box-shadow:0 0 0 1px var(--line);background:var(--surface);font:inherit;font-size:13.5px;padding:0 10px;color:var(--ink)}
.ta-tva{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.ta-tva .opt{display:flex;align-items:flex-start;gap:9px;padding:7px 10px;border-radius:9px;box-shadow:inset 0 0 0 1px var(--line);font-size:12.5px;line-height:17px;cursor:pointer;
  transition:background-color 150ms ease,box-shadow 150ms ease,transform 140ms cubic-bezier(.23,1,.32,1)}
.ta-tva .opt:active{transform:scale(.98)}
.ta-tva .opt input{margin:2px 0 0;accent-color:var(--accent)}
.ta-tva .opt:has(input:checked){box-shadow:inset 0 0 0 1.5px var(--accent);background:var(--accent-soft)}
.ta-tva .opt b{font-weight:500;display:block}.ta-tva .opt small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.ta-tva .opt:focus-within{outline:2px solid var(--focus);outline-offset:2px}
@media (hover:hover) and (pointer:fine){.ta-tva .opt:not(:has(input:checked)):hover{background:var(--fill)}}
.ta-d .sp{flex:1}
.ta-pied{display:flex;gap:6px}.ta-pied .btn{flex:1;justify-content:center;height:34px;border-radius:9px}
.page-tiers .btn:not(.g){background:var(--accent);color:var(--on-accent)}
@media (prefers-reduced-motion:reduce){dialog.dlg-tiers{transition:opacity 200ms ease}@starting-style{dialog.dlg-tiers[open]{transform:none}}.page-tiers .btn:active,.ta-tva .opt:active{transform:none}}
@media (max-width:1100px){.tiers-corps,.tiers-grille,.tiers-grille.deleg,.ta-corps{grid-template-columns:minmax(0,1fr)}.tiers-liste{overflow-x:auto}}
/* lot Tiers : « Délégataire CEE » et « Poseur du dossier » en tête de l'onglet Devis (administrateur) */
form.dv-tiers{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:0 0 10px;padding:10px 14px;border-radius:12px;background:var(--surface);box-shadow:var(--ombre-carte)}
form.dv-tiers label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--ink-3)}
form.dv-tiers select{height:32px;min-width:220px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);font:inherit;font-size:13px;color:var(--ink);padding:0 8px}
form.dv-tiers .alerte-tiers{flex-basis:100%;margin:0;font-size:12.5px;font-weight:600;color:var(--warning-sur-fond)}
.ma-file .c-orange{background:var(--warning-soft);color:var(--warning-sur-fond)}
.tiers-carte .doc-ctt{margin:4px 16px 8px;font-size:12px}.tiers-carte .doc-ctt a{color:var(--accent-text)}
.tiers-carte form.depot-ctt{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:2px 16px 10px;font-size:11.5px}
.tiers-carte form.depot-ctt input[type=file]{font-size:11.5px;max-width:200px}.tiers-carte form.depot-ctt .btn{height:26px;min-height:26px;font-size:12.5px;padding:0 10px}
/* lot Tiers, planches du 14/10 : les cartes sans marge propre (le titre porte la sienne), titres de section sans capitales, champs
   masqués vraiment masqués, options de TVA en ligne, hauteur des lignes de la liste (47 px, maquette) */
.page-tiers .carte{padding:0}
.page-tiers :is(h3,.frise-ech h3,.ta-tt h3,.ta-d h3,h3.arch){text-transform:none;letter-spacing:0}
.page-tiers [hidden]{display:none!important}
.ta-tva .opt{flex-direction:row}
.tiers-liste .tn b{line-height:17px}.tiers-liste .tn small{line-height:15px}
.tiers-liste td{height:46px;box-sizing:border-box}
.page-tiers .pt.orange{font-size:10px;font-weight:700;font-style:normal;line-height:1}
.page-tiers .tiers-tete{padding:12px 16px}.page-tiers .tiers-siret{padding:12px 16px}
.tiers-conf .cf form.dem{grid-column:3;grid-row:1;margin:0;justify-self:end}
.tiers-conf .cf:has(form.dem) .dd{display:none}

/* ---------- onglet Pièces (lot Pièces, 14/10/2026 ; maquettes fiche-onglets/Fiche-Pieces, -Liste, -MPR, gen_pieces2.py) : trois volets,
   destinations, pièces, aperçu. Un seul sens par couleur : vert validée, orange à obtenir, rouge refusée, cobalt à vérifier, encre à signer,
   gris à venir. Retour au toucher (0,97 à 0,98), survols réservés à la souris, aucune animation de liste. ---------- */
.pz{display:flex;flex-direction:column;gap:10px;min-height:0}
.pz .pn{display:grid;gap:12px;grid-template-columns:236px minmax(0,1fr) 372px;align-items:stretch;min-height:620px}
.pz .card{background:var(--surface);border-radius:14px;box-shadow:var(--ombre-carte);display:flex;flex-direction:column;min-height:0;min-width:0}
.pz .card h3{margin:0;padding:12px 16px 8px;font-size:13px;font-weight:800;color:var(--titre-bloc);display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0}
.pz .card h3 .r{margin-left:auto;font-size:12px;font-weight:400;color:var(--ink-3)}
.pz .col{display:flex;flex-direction:column;gap:12px;min-height:0;min-width:0}
.pz .col>.card{flex:1}
.pz .col>.rq{flex:none}
.pz [hidden]{display:none!important}
.pbar{display:flex;align-items:center;gap:8px;flex:none}
.pz .seg{display:flex;gap:1px;padding:3px;border-radius:10px;background:var(--surface);box-shadow:var(--ombre-carte)}
.pz .seg button,.pz .seg label{height:28px;padding:0 11px;border:0;border-radius:7px;background:transparent;color:var(--ink-2);font:inherit;font-size:12.5px;font-weight:500;display:flex;align-items:center;gap:6px;white-space:nowrap;cursor:pointer;
  transition:background-color 150ms ease,transform 140ms cubic-bezier(.23,1,.32,1)}
.pz .seg button:active,.pz .seg label:active{transform:scale(.97)}
.pz .seg button i{font-style:normal;font-size:11px;font-weight:600;color:var(--ink-3);font-variant-numeric:tabular-nums}
.pz .seg button[aria-pressed="true"],.pz .seg label:has(input:checked){background:var(--accent-soft);color:var(--accent-text);font-weight:600}
.pz .seg button[aria-pressed="true"] i{color:var(--accent-text)}
.pz .seg input{position:absolute;opacity:0;pointer-events:none}
.pz .mnu{height:34px;padding:0 10px 0 12px;border-radius:10px;background:var(--surface);box-shadow:var(--ombre-carte);color:var(--ink);font-size:12.5px;font-weight:500;display:flex;align-items:center;gap:6px;white-space:nowrap}
.pz .mnu small{color:var(--ink-3);font-size:12px;font-weight:400}
.pz .mnu select{border:0;background:none;font:inherit;font-size:12.5px;font-weight:500;color:var(--ink);padding:0;height:auto;box-shadow:none}
.pz .srch{height:34px;width:236px;padding:0 11px;border-radius:10px;background:var(--surface);box-shadow:var(--ombre-carte);display:flex;align-items:center;gap:7px;color:var(--ink-3);font-size:12.5px}
.pz .srch svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6}
.pz .srch input{flex:1;border:0;outline:0;background:none;font:inherit;font-size:12.5px;color:var(--ink);min-width:0;padding:0;height:auto;box-shadow:none}
.pbar .sp{flex:1}
.pz .btn{height:34px;min-height:34px;border-radius:10px;padding:0 14px;font-size:13px;font-weight:500;border:0;display:inline-flex;align-items:center;gap:6px;cursor:pointer;text-decoration:none;
  transition:transform 160ms cubic-bezier(.23,1,.32,1),background-color 160ms ease;background:var(--fill);color:var(--ink)}
.pz .btn:active{transform:scale(.97)}
.pz .btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pz .btn.soft{background:var(--accent-soft);color:var(--accent-text)}
.pz .btn.acc{background:var(--accent);color:var(--on-accent)}
.pz .btn.dis,.pz .btn:disabled{background:var(--fill);color:var(--ink-3);cursor:not-allowed}
/* destinations */
.pz .dl{padding:0 6px 6px;display:flex;flex-direction:column;gap:1px}
.pz .de{display:grid;grid-template-columns:26px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:0 10px;align-items:center;padding:5px 8px 6px;border:0;border-radius:9px;background:transparent;text-align:left;width:100%;color:var(--ink);font:inherit;cursor:pointer;
  transition:background-color 150ms ease,transform 140ms cubic-bezier(.23,1,.32,1)}
.pz .de:active{transform:scale(.98)}
.pz .de .ic{grid-row:1/3;width:26px;height:26px;border-radius:7px;display:grid;place-items:center;color:#fff;background:#5d6a7e}
.pz .de .ic svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.pz .de .ic.c-vt{background:#6a58c9}.pz .de .ic.c-mpr{background:#2f63d8}.pz .de .ic.c-cee{background:#2a7fc4}.pz .de .ic.c-chantier{background:#b07a2e}
.pz .de b{font-size:13px;line-height:17px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pz .de .n{font-size:12px;line-height:17px;font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums}
.pz .de small{grid-column:2/4;font-size:11.5px;line-height:15px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pz .de small.mq{color:var(--warning-sur-fond);font-weight:500}.pz .de small.ok{color:var(--success-sur-fond);font-weight:500}
.pz .de .bar{grid-column:2/4;height:3px;border-radius:2px;background:var(--fill);margin-top:4px;overflow:hidden}
.pz .de .bar i{display:block;height:100%;border-radius:2px;background:var(--success)}.pz .de .bar i.mq{background:var(--warning)}
.pz .de.off .ic{opacity:.45;filter:saturate(.3)}.pz .de.off b{color:var(--ink-2);font-weight:500}
.pz .de[aria-current="true"]{background:var(--accent-soft)}.pz .de[aria-current="true"] b{color:var(--accent-text)}
.pz .dl .sep2{height:1px;background:var(--line);margin:4px 8px}
.pz .dfoot{margin-top:auto;padding:8px 10px 10px;border-top:1px solid var(--line)}.pz .dfoot .btn{width:100%;justify-content:center}
@media (hover:hover) and (pointer:fine){.pz .de:not([aria-current="true"]):hover{background:var(--fill)}}
/* pièces */
.pz .lh{display:flex;align-items:center;gap:8px;padding:12px 16px 8px}
.pz .lh b{font-size:13px;font-weight:800;color:var(--titre-bloc)}
.pz .lh .r{margin-left:auto;font-size:12px;color:var(--ink-3)}
.pz .grp{display:flex;align-items:center;gap:8px;padding:6px 16px 3px;font-size:11.5px;line-height:15px;font-weight:600;color:var(--ink-3);position:sticky;top:0;background:var(--surface);z-index:1}
.pz .grp i{font-style:normal;font-weight:500;font-variant-numeric:tabular-nums}
.pz .prs{padding:0 8px 4px}
.pz .scr{flex:1;min-height:0;overflow:auto;scrollbar-width:thin}
.pz .pr{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:0 10px;padding:4px 8px;border-radius:9px;position:relative;cursor:pointer}
.pz .pr+.pr::before{content:"";position:absolute;top:0;left:42px;right:8px;height:1px;background:var(--line)}
.pz .pr.on{background:var(--accent-soft)}.pz .pr.on::before,.pz .pr.on+.pr::before{display:none}
.pz .pr:focus-visible{outline:2px solid var(--focus);outline-offset:1px}
.pz .gl{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;flex:none;font-style:normal}
.pz .gl svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.pz .gl.mq{box-shadow:inset 0 0 0 1.6px var(--warning)}
.pz .gl.rn{background:var(--warning-soft);color:var(--warning)}
.pz .gl.rf{background:var(--danger-soft);color:var(--danger)}
.pz .gl.vf{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.pz .gl.vf::after{content:"";width:6px;height:6px;border-radius:50%;background:#fff}
.pz .gl.sg{background:var(--fill);color:var(--ink)}
.pz .gl.ok{background:var(--success-soft);color:var(--success)}
.pz .gl.vn{box-shadow:inset 0 0 0 1.5px var(--line-strong)}.pz .gl.fa{box-shadow:inset 0 0 0 1.5px var(--line-strong);opacity:.7}
.pz .pr .t{min-width:0}
.pz .pr .t b{display:block;font-size:13px;line-height:18px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pz .pr .t small{display:block;font-size:11.5px;line-height:16px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pz .pr .t small em{font-style:normal;font-weight:600}
.pz em.mq{color:var(--warning-sur-fond)}.pz em.rf{color:var(--danger-sur-fond)}.pz em.vf{color:var(--accent-text)}.pz em.sg{color:var(--ink)}.pz em.ok{color:var(--ink-3);font-weight:500}
.pz .pr .rt{display:flex;align-items:center;gap:6px}
.pz .dt{height:18px;padding:0 6px;border-radius:5px;background:var(--fill);color:var(--ink-2);font-size:10.5px;font-weight:600;display:inline-flex;align-items:center;white-space:nowrap}
.pz .dt.mpr{background:var(--accent-soft);color:var(--accent-text)}.pz .dt.cee{background:var(--info-soft);color:#0b5f8a}.pz .dt.vt{background:rgba(106,88,201,.12);color:#4f3fa8}.pz .dt.chantier{background:var(--warning-soft);color:var(--warning-sur-fond)}
.pz .tg{display:flex;gap:3px;margin-right:2px}
.pz .ib{width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:var(--ink-2);display:grid;place-items:center;text-decoration:none;
  transition:background-color 150ms ease,transform 140ms cubic-bezier(.23,1,.32,1)}
.pz .ib svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pz .ib:active{transform:scale(.95)}.pz .ib.ph{visibility:hidden}
.pz .act{height:26px;padding:0 10px;border:0;border-radius:7px;background:var(--fill);color:var(--ink);font:inherit;font-size:12px;font-weight:500;white-space:nowrap;display:inline-flex;align-items:center;gap:5px;cursor:pointer;
  transition:transform 140ms cubic-bezier(.23,1,.32,1),background-color 150ms ease}
.pz .act:active{transform:scale(.97)}
.pz .act.soft{background:var(--surface);color:var(--accent-text);box-shadow:0 0 0 1px var(--accent-soft) inset}
.pz .pr time{font-size:11.5px;color:var(--ink-3);white-space:nowrap;font-variant-numeric:tabular-nums;min-width:34px;text-align:right}
.pz .pr.l1{grid-template-columns:22px minmax(0,1fr) auto;padding:2px 8px;min-height:29px}
.pz .pr.l1 .gl{width:20px;height:20px}.pz .pr.l1 .gl svg{width:11px;height:11px}
.pz .pr.l1 .t{display:flex;align-items:baseline;gap:8px}.pz .pr.l1 .t b{flex:0 1 auto;min-width:0}.pz .pr.l1 .t small{flex:none}
.pz .pr.l1 .ib{width:26px;height:26px}
.pz .pr.vn .t b,.pz .pr.fa .t b{font-weight:500;color:var(--ink-2)}
.pz .vide{margin:4px 16px;color:var(--ink-3);font-size:12.5px}
/* demander au client */
.pz .rq .row2{display:flex;align-items:center;gap:6px;padding:0 16px 12px;flex-wrap:wrap}
.pz .chip{height:26px;padding:0 9px 0 6px;border-radius:7px;background:var(--fill);font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:6px;color:var(--ink);white-space:nowrap;cursor:pointer}
.pz .chip input{position:absolute;opacity:0;pointer-events:none}
.pz .chip i{width:15px;height:15px;border-radius:4px;background:var(--accent);display:grid;place-items:center;color:#fff}
.pz .chip:has(input:not(:checked)) i{background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line-strong)}.pz .chip:has(input:not(:checked)) i svg{visibility:hidden}
.pz .chip i svg{width:10px;height:10px;fill:none;stroke:currentColor;stroke-width:2.6}
.pz .rq .go{display:flex;align-items:center;gap:8px;margin-top:auto;padding:10px 16px 12px;border-top:1px solid var(--line)}
.pz .rq .go .seg{box-shadow:none;background:var(--fill);margin-right:auto}
.pz .rq .go .seg label{height:26px;padding:0 9px;font-size:12px}
.pz .rq .pz-dest{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:0 16px 10px}
.pz .rq .pz-dest .seg{box-shadow:none;background:var(--fill)}
.pz .rq .pz-dest .seg label{height:26px;padding:0 9px;font-size:12px}
.pz .rq .pz-autre{display:flex;gap:6px}.pz .rq .pz-autre[hidden]{display:none}
.pz .rq .pz-autre input{height:28px;width:150px;padding:0 8px;border:1px solid var(--line);border-radius:7px;font:inherit;font-size:12.5px}
.pz .rq .seg label:has(input:disabled){color:var(--ink-3);cursor:not-allowed;text-decoration:line-through}
.pz .rq .go .seg label:has(input:checked),.pz .rq .pz-dest .seg label:has(input:checked){background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.1)}
.pz .rq .hist{margin:0;padding:0 16px 10px;font-size:12px;line-height:16px;color:var(--ink-3)}
/* aperçu */
.pz .ap .hdx{display:flex;align-items:center;gap:6px;padding:12px 12px 8px 16px}
.pz .ap .hdx .tt{flex:1;min-width:0}
.pz .ap .hdx .tt small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.pz .ap .hdx .tt b{display:flex;align-items:center;gap:8px;font-size:15px;line-height:20px;font-weight:650;letter-spacing:-.01em;white-space:nowrap}
.pz .ap .tag{height:20px;padding:0 7px;font-size:11px;border-radius:6px;display:inline-flex;align-items:center;font-weight:600;background:var(--fill);color:var(--ink-2)}
.pz .ap .tag.vf{background:var(--accent-soft);color:var(--accent-text)}.pz .ap .tag.ok{background:var(--success-soft);color:var(--success-sur-fond)}.pz .ap .tag.rf{background:var(--danger-soft);color:var(--danger-sur-fond)}
.pz .ap .hdx .ib{background:var(--fill);color:var(--ink)}
.pz .sheet{position:relative;margin:0 16px;flex:1;min-height:260px;border-radius:10px;background:var(--fill);overflow:hidden}
.pz .sheet iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent}
.pz .cap2{position:absolute;left:8px;bottom:8px;max-width:calc(100% - 84px);height:22px;padding:0 8px;border-radius:6px;background:rgba(20,20,22,.55);color:#fff;font-size:11px;font-weight:600;display:flex;align-items:center;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.pz .cap2:empty{display:none}
.pz .ap .kf{display:grid;grid-template-columns:1fr 1fr;padding:6px 16px 0}
.pz .ap .k{padding:8px 0;border-top:1px solid var(--line)}.pz .ap .k.e{padding-left:12px;border-left:1px solid var(--line)}
.pz .ap .k small{display:block;color:var(--ink-3);font-size:11.5px;line-height:15px}.pz .ap .k b{display:block;font-size:13px;line-height:18px;font-weight:600}
.pz .ap .k.lues{grid-column:1/-1}.pz .ap .k.lues[hidden]{display:none}.pz .ap .k.lues dl{margin:4px 0 0;display:grid;gap:3px}
.pz .ap .k.lues dl>div{display:grid;grid-template-columns:132px minmax(0,1fr);gap:8px;font-size:12.5px;line-height:17px}.pz .ap .k.lues dt{color:var(--ink-3)}
.pz .ap .k.lues dd{margin:0;font-weight:600;overflow-wrap:anywhere}.pz .ap .k.lues .ecart dd{color:var(--danger-sur-fond)}.pz .ap .k.lues dd em{font-style:normal;font-weight:500}
.pz .mt{padding:8px 16px 0}.pz .mt small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3);margin-bottom:5px}
.pz .mt .ps{display:flex;flex-wrap:wrap;gap:4px}
.pz .mt label{height:24px;padding:0 8px;border-radius:12px;background:var(--fill);color:var(--ink);font-size:11.5px;font-weight:500;display:inline-flex;align-items:center;cursor:pointer;
  transition:transform 140ms cubic-bezier(.23,1,.32,1),background-color 150ms ease}
.pz .mt label input{position:absolute;opacity:0;pointer-events:none}
.pz .mt label:has(input:checked){background:var(--danger-soft);color:var(--danger-sur-fond)}
.pz .mt .ap-precision{margin-top:6px;height:30px;border-radius:8px;border:1px solid var(--line-strong);padding:0 8px;font:inherit;font-size:12.5px;width:100%}
.pz .ap .acts2{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;padding:12px 16px 14px}.pz .ap .acts2 .btn{justify-content:center}
@media (hover:hover) and (pointer:fine){.pz .seg button:not([aria-pressed="true"]):hover{background:var(--fill);color:var(--ink)}.pz .pr:not(.on):hover{background:var(--fill)}
  .pz .ib:hover{background:var(--fill);color:var(--ink)}.pz .act:hover{background:var(--accent-soft);color:var(--accent-text)}.pz .mt label:not(:has(input:checked)):hover{background:var(--danger-soft);color:var(--danger-sur-fond)}}
@media (prefers-reduced-motion:reduce){.pz .seg button:active,.pz .de:active,.pz .ib:active,.pz .act:active,.pz .btn:active{transform:none}}
@media (max-width:1100px){.pz .pn{grid-template-columns:minmax(0,1fr)}}
/* lot Pièces : la page du client pour déposer ses documents (depot.php), sur le modèle de la page du mandat (body.tech) */
.depot .dp-liste{list-style:none;margin:16px 0;padding:0;display:flex;flex-direction:column;gap:8px}
.depot .dp-ligne{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--surface);box-shadow:var(--ombre-carte)}
.depot .dp-t{flex:1;min-width:0;display:flex;flex-direction:column}
.depot .dp-t b{font-size:15px;font-weight:600}
.depot .dp-t small{font-size:13px;color:var(--warning-sur-fond);font-weight:500}
.depot .dp-ligne.recu .dp-t small{color:var(--success-sur-fond)}
.depot .dp-f{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.depot .dp-f small{font-size:12px;color:var(--ink-3)}
.depot .dp-pied{margin-top:20px}
/* lot Pièces : « E-mails à rattacher » (emails.php) */
.emails-a-rattacher .em-ligne{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line);flex-wrap:wrap}
.emails-a-rattacher .em-ligne:first-child{border-top:0}
.emails-a-rattacher .em-t{flex:1;min-width:220px;display:flex;flex-direction:column;gap:2px}
.emails-a-rattacher .em-t small{color:var(--ink-3);font-size:12px}
.emails-a-rattacher .em-f{display:flex;gap:6px;align-items:center}
.emails-a-rattacher .em-f input{height:34px;width:170px}
.pz .pg{position:absolute;right:8px;bottom:8px;height:22px;padding:0 8px;border-radius:6px;background:rgba(20,20,22,.55);color:#fff;font-size:11px;font-weight:600;display:flex;align-items:center;
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
@media (prefers-reduced-transparency:reduce){.pz .cap2,.pz .pg{background:rgba(20,20,22,.85);-webkit-backdrop-filter:none;backdrop-filter:none}}
/* lot Pièces, planches du 14/10 : les champs de l'onglet ne prennent pas le style des formulaires (label en colonne, bordure, hauteur) ;
   le complément d'un titre de carte en gris (maquette : « par le lien de dépôt ») ; « À traiter » en titre de liste (12 px, gris) ;
   le volet du milieu : la liste à sa hauteur, « Demander au client » prend le reste ; les trois volets à la hauteur de l'écran */
.pz label.srch,.pz label.mnu,.pz label.chip,.pz .seg label,.pz .mt label{flex-direction:row;margin:0}
.pz label.srch,.pz label.mnu{gap:7px}
.pz .srch input{min-height:0;border:0;padding:0;box-shadow:none}
.pz .mnu select{-webkit-appearance:none;appearance:none;min-height:0;border:0;padding:0;background:none;box-shadow:none;cursor:pointer}
.pz .mnu svg{width:13px;height:13px;color:var(--ink-3);fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
body.fiche .pz .card>h3 .r{margin-left:auto;font-size:12px;font-weight:400;color:var(--ink-3);cursor:default}
.pz .lh b{font-size:12px;font-weight:600;color:var(--ink-2)}
.pz .col>.pz-vue[data-vue="at"]{flex:none}
.pz .col>.rq{flex:1;display:flex;flex-direction:column}
.pz .pn{min-height:507px;height:calc(100vh - 493px)}
.pz .ap .hdx .tt b span.ap-nom{overflow:hidden;text-overflow:ellipsis;min-width:0}
.pz .sheet{min-height:0}
/* les volets jusqu'au bas de l'écran, 15 px de marge (maquette dans la coque v5 : de 378 à 985 px sur un écran de 1 000) ; le menu à la
   largeur de sa valeur */
.pz .pn{height:calc(100vh - 393px)}
.pz .mnu select{field-sizing:content}
/* le volet Destinations à la hauteur de son contenu (maquette : « Télécharger tout » juste sous la liste) */
.pz .pn>.dests{align-self:start}
/* ===== lot Dossier d'aides (maquettes fiche-onglets/Fiche-Aides, -Octroi, -CEE) : les aides à gauche, les étapes de l'aide choisie au
   milieu, la conformité à droite ; un sens par couleur, comme Pièces et Devis : vert fait, orange à faire maintenant, rouge bloquant,
   gris à venir ===== */
.pz.da .pn{grid-template-columns:288px minmax(0,1fr) 356px;height:auto;min-height:calc(100vh - 349px)}
.pz.da .pn.pn1{grid-template-columns:minmax(0,1fr);height:auto}
.pz .de .ic.c-edf,.da .ic.c-edf{background:#5e5ce6}.pz .de .ic.c-locale,.da .ic.c-locale{background:#8e8e93}
.da .ic.c-mpr{background:#2f63d8}.da .ic.c-cee{background:#2a7fc4}
.pz.da .card h3 .r{margin-left:auto;font-weight:500;color:var(--ink-3)}
.pz.da .de{grid-template-columns:26px minmax(0,1fr) auto}
.pz.da .de .n{font-size:12.5px;color:var(--ink)}
.pz.da .de small.vf{color:var(--accent-text);font-weight:500}
.pz.da .de:disabled{cursor:default}
/* volet des aides */
.da .ga{display:flex;flex-direction:column}
.da .sum{margin:0 16px 8px;padding:10px 12px 9px;border-radius:10px;background:var(--fill);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 10px;font-variant-numeric:tabular-nums}
.da .sum span{font-size:12px;line-height:17px;color:var(--ink-2)}
.da .sum b{font-size:12px;line-height:17px;font-weight:500;text-align:right;white-space:nowrap;color:var(--ink)}
.da .sum .big{font-size:14px;line-height:20px;font-weight:650;color:var(--ink);letter-spacing:-.01em}
.da .sum .ft{grid-column:1/3;margin-top:5px;padding-top:6px;border-top:1px solid var(--line);font-size:11.5px;line-height:15px;color:var(--ink-3);white-space:normal}
.da .kv{margin-top:auto;padding:10px 16px 12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:7px}
.da .kv div span{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.da .kv div b{display:block;font-size:12.5px;line-height:17px;font-weight:500;color:var(--ink)}
.da .kv .lien{all:unset;cursor:pointer;font:inherit;color:inherit}
@media (hover:hover) and (pointer:fine){.da .kv .lien:hover{color:var(--accent-text)}}
.da .kv .lien:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-radius:4px}
/* volet des étapes */
.da .ah{display:flex;align-items:flex-start;gap:12px;padding:12px 16px 10px;border-bottom:1px solid var(--line)}
.da .ah .ic{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;flex:none;color:#fff}
.da .ah .ic svg,.da .ai .ic svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.da .ah .tt{flex:1;min-width:0}
.da .ah .tt b{display:block;font-size:15px;line-height:20px;font-weight:650;letter-spacing:-.01em;color:var(--ink)}
.da .ah .tt small{display:block;font-size:12px;line-height:16px;color:var(--ink-3)}
.da .ah .mt{text-align:right;font-variant-numeric:tabular-nums}
.da .ah .mt b{display:block;font-size:15px;line-height:20px;font-weight:650;letter-spacing:-.01em;color:var(--ink)}
.da .ah .mt small{display:block;font-size:11.5px;line-height:16px;color:var(--ink-3);white-space:nowrap}
.da .stp{padding:8px 16px 4px;display:flex;flex-direction:column;overflow:hidden}
.da .sp{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:0 12px;align-items:start;position:relative;padding-bottom:6px}
.da .stp.ry .sp{padding-bottom:12px}
.da .sp .t1{display:flex;align-items:baseline;gap:8px;min-width:0}
.da .sp .t1 b{flex:none;font-size:12.5px;line-height:20px;font-weight:600;color:var(--ink)}
.da .sp .t1 small{min-width:0;font-size:11.5px;line-height:20px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.da .sp.vn .t1 b,.da .sp.if .t1 b{font-weight:500;color:var(--ink-2)}
.da .sp .t1+time{line-height:20px}
.da .sp::before{content:"";position:absolute;left:9.5px;top:19px;bottom:-1px;width:1px;background:var(--line)}
.da .sp:last-child::before{display:none}
.da .sp .d{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:10.5px;font-weight:650;color:var(--ink-3);box-shadow:inset 0 0 0 1.5px var(--line-strong);background:var(--surface);position:relative;z-index:1;font-variant-numeric:tabular-nums}
.da .sp .d svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.da .sp.ok .d{background:var(--success-soft);color:var(--success);box-shadow:none}
.da .sp.now .d{box-shadow:inset 0 0 0 1.7px var(--warning);color:var(--warning-sur-fond)}
.da .sp.if .d{box-shadow:none;outline:1.5px dashed var(--line-strong);outline-offset:-1.5px}
.da .sp .t b{display:block;font-size:12.5px;line-height:18px;font-weight:600;color:var(--ink)}
.da .sp .t small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.da .sp.now .t>b{color:var(--warning-sur-fond)}
.da .sp time{font-size:11.5px;line-height:18px;color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
/* l'étape en cours : un encart sous le titre, avec ses gestes */
.da .now .box{grid-column:2/4;margin:5px 0 4px;padding:9px 10px 10px;border-radius:10px;background:rgba(201,106,0,.07);display:flex;flex-direction:column;gap:7px}
.da .now .box.gris{background:var(--fill);padding:7px 10px}
.da .box .ln{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 10px;font-size:12px;line-height:16px}
.da .box .ln span{color:var(--ink-3);white-space:nowrap}.da .box .ln b{font-weight:500;color:var(--ink)}
.da .box .ln b.mq{color:var(--warning-sur-fond);font-weight:600}
.da .box .bt{display:flex;gap:6px;flex-wrap:wrap}
.da .box form{margin:0;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.da .box .btn{height:28px;min-height:28px;border-radius:8px;padding:0 11px;font-size:13px;font-weight:500;border:0;display:inline-flex;align-items:center;gap:6px;cursor:pointer;text-decoration:none;background:var(--fill);color:var(--ink);white-space:nowrap;
  transition:transform 160ms cubic-bezier(.23,1,.32,1),background-color 160ms ease}
.da .box .bt>.btn,.da .box .bt>form>.btn{box-shadow:none}
.da .box .btn:active{transform:scale(.97)}
.da .box .btn.acc{background:var(--accent);color:var(--on-accent)}
.da .box .btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.da .box .va-d{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-3)}
.da .box input,.da .box select{height:28px;border-radius:7px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:inherit;font-size:12.5px;padding:0 8px}
.da .chips{display:flex;flex-wrap:wrap;gap:4px}
.da .chips span{height:22px;padding:0 8px 0 6px;border-radius:6px;background:var(--surface);font-size:11.5px;color:var(--ink-2);display:inline-flex;align-items:center;gap:4px;box-shadow:0 0 0 1px var(--line)}
.da .chips span.mq{color:var(--warning-sur-fond)}
.da .chips svg{width:11px;height:11px;fill:none;stroke:var(--success);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.da .chx{display:flex;gap:14px;flex-wrap:wrap}
.da .chx label{display:flex;flex-direction:row;align-items:center;gap:6px;margin:0;font-size:12px;line-height:16px;color:var(--ink-2)}
.da .chx .mnu{height:28px;padding:0 8px 0 10px;border-radius:8px;box-shadow:0 0 0 1px var(--line);background:var(--surface);display:inline-flex;align-items:center;gap:4px;font-size:12px}
.da .chx .mnu select{border:0;background:none;height:auto;padding:0;box-shadow:none;font:inherit;font-size:12px;font-weight:500;color:var(--ink);appearance:none;-webkit-appearance:none;field-sizing:content;cursor:pointer}
.da .chx .mnu svg{width:12px;height:12px;fill:none;stroke:var(--ink-3);stroke-width:1.6}
@media (prefers-reduced-motion:reduce){.da .box .btn:active{transform:none}}
/* conformité (la carte des contrôles de l'onglet Devis) */
.da .cf .dvctl{padding:0 8px 4px;overflow:auto;scrollbar-width:thin}
.da .dvck{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:0 10px;align-items:start;padding:5px 8px;border-top:1px solid var(--line)}
.da .dvck:first-child{border-top:0}
.da .dvck i{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-style:normal}
.da .dvck i svg{width:10px;height:10px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.da .dvck i.ok{background:var(--success-soft);color:var(--success)}
.da .dvck i.ko{background:var(--danger-soft);color:var(--danger)}
.da .dvck i.nv{box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.da .dvck i.wn{background:var(--warning-soft);color:var(--warning-sur-fond);font-size:11px;font-weight:700}
.da .dvck .t b{display:block;font-size:12.5px;line-height:18px;font-weight:500;color:var(--ink)}
.da .dvck .t small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.da .dvck .t small.mq{color:var(--warning-sur-fond);font-weight:500}.da .dvck .t small.ko{color:var(--danger-sur-fond);font-weight:500}
.da .dvck form{margin:0}
.da .dvck .act{height:24px;padding:0 10px;border:0;border-radius:7px;background:var(--surface);color:var(--accent-text);box-shadow:inset 0 0 0 1px var(--accent-soft);font:inherit;font-size:12px;font-weight:500;white-space:nowrap;cursor:pointer}
@media (hover:hover) and (pointer:fine){.da .dvck .act:hover{background:var(--accent-soft)}}
.da .va-faute{display:flex;gap:12px;border:0;padding:0;margin:0}
/* Aperçu : la carte « Dossier d'aides » (maquette tour2/Fiche-D1-P1-geist) */
.da-apercu .ar{padding:2px 16px 10px;display:flex;flex-direction:column}
.da-apercu .ai{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:0 12px;align-items:center;padding:8px 0}
.da-apercu .ai+.ai{border-top:1px solid var(--line)}
.da-apercu .ic{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;color:#fff}
.da-apercu .ic svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.da-apercu .ic.c-mpr{background:#2f63d8}.da-apercu .ic.c-cee{background:#2a7fc4}.da-apercu .ic.c-edf{background:#5e5ce6}
.da-apercu .t{min-width:0}.da-apercu .t b{display:block;font-size:13px;line-height:18px;font-weight:600;color:var(--ink)}
.da-apercu .t small{display:block;font-size:12px;line-height:16px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.da-apercu em{font-style:normal;font-size:12.5px;font-weight:600;white-space:nowrap}
.da-apercu em.mq{color:var(--warning-sur-fond)}.da-apercu em.ok{color:var(--success-sur-fond)}
/* « À régler avant la signature » (maquette tour2/Fiche-D1-P1-geist) : compte en rouge, icônes rouge et orange, bouton « soft » */
.da-regler h3 .tag{background:rgba(229,55,44,.12);color:var(--red,#e5372c)}
.da-apercu .ic.c-piece{background:#ff453a}.da-apercu .ic.c-mandat{background:#ff9f0a}.da-apercu .ic.c-surface{background:#5e5ce6}
.da-regler .lienv{border:0;background:none;padding:0;font:inherit;font-size:12.5px;color:var(--ink-2);white-space:nowrap;cursor:pointer}
.da-regler .ai .btn{height:26px;padding:0 10px;font-size:12px}
.da-regler .btn.soft{background:var(--accent-soft);color:var(--accent-text);border-color:transparent;box-shadow:none}
/* lot Dossier d'aides : l'Aujourd'hui de l'administratif (maquette gestion/Aujourdhui-Administratif) : « prêt », « voir les N autres »,
   « Dossiers bloqués » */
.chp.cd{background:var(--success-soft);color:var(--success-sur-fond)}
.gx .pt .grp a{margin-left:auto;font-size:12px;font-weight:500;color:var(--accent-text);text-decoration:none}
.gx .card.bk h3{display:flex;align-items:center;gap:8px}
.gx .card.bk h3 .r{margin-left:auto;font-size:12px;font-weight:500;color:var(--accent-text);text-decoration:none}
.bk .kl{padding:6px 16px 6px;display:flex;flex-direction:column}
.bk .kl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start;padding:6px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px;color:var(--ink);cursor:pointer}
.bk .kl>div:first-child{border-top:0}
.bk .kl small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.bk .kl em{font-style:normal;font-size:12px;font-weight:600;color:var(--ink-2);white-space:nowrap;font-variant-numeric:tabular-nums}
.bk .kl em.late{color:var(--danger)}

/* ===== lot Chantier et Planning : onglet Chantier (maquettes chantier/Fiche-Chantier et -Livraison) : « Avant la pose » à gauche, « Date de
   pose », « Matériel » et « Poseur » au milieu, « Après la pose » à droite ; vert fait, rouge manquant, orange à faire maintenant, gris à
   venir ===== */
.pz.ch .pn{grid-template-columns:268px minmax(0,1fr) 336px;height:auto;min-height:calc(100vh - 349px);align-items:start}
.pz.ch .col>.card{flex:none}
.pz.ch .col:first-child>.card,.pz.ch .col:last-child>.card{min-height:100%}
.pz.ch .card h3{display:flex;align-items:center;gap:8px}
.pz.ch .card h3 .r{margin-left:auto;font-weight:500;color:var(--ink-3)}
.pz.ch .card h3 .r.w{color:var(--warning-sur-fond)}
.ch .dvctl{padding:0 8px 8px}
.ch .dvck{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:0 10px;align-items:start;padding:4px 8px;min-height:27px;border-top:1px solid var(--line)}
.ch .dvck:first-child{border-top:0}
.ch .dvck i{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-style:normal;margin-top:1px}
.ch .dvck i svg{width:10px;height:10px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.ch .dvck i.ok{background:var(--success-soft);color:var(--success)}
.ch .dvck i.ko{background:var(--danger-soft);color:var(--danger)}
.ch .dvck i.nt{background:var(--fill);color:var(--ink-2)}
.ch .dvck .t{display:block;min-width:0}
.ch .dvck .t b{display:block;font-size:12.5px;line-height:17px;font-weight:500;color:var(--ink)}
.ch .dvck .t small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3);margin-top:1px}
.ch .dvck .t small.ko{color:var(--danger-sur-fond);font-weight:500}
.ch .dvck form{margin:0}
.ch .cnote{margin:10px 16px 12px;font-size:11.5px;line-height:16px;color:var(--ink-3)}
/* à vérifier (orange de la charte) : « Netatmo non noté posé : à vérifier avant la facture finale. » */
.ch .cnote.w{color:var(--warning-sur-fond);font-weight:550}
.ch .chd{margin:0 16px 10px;padding:12px 14px;border-radius:12px;background:var(--accent-soft)}
.ch .chd.w{background:var(--warning-soft)}
.ch .chd small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-2)}
.ch .chd b{display:block;font-size:20px;line-height:26px;font-weight:650;letter-spacing:-.02em;color:var(--accent-text);font-variant-numeric:tabular-nums}
.ch .chd.w b{color:var(--warning-sur-fond)}
.ch .chd em{font-style:normal;font-size:12px;line-height:17px;color:var(--ink-2)}
.ch .kv2{margin:0 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0}
.ch .kv2>span,.ch .kv2>b{padding:6px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px}
.ch .kv2>span:nth-child(-n+2),.ch .kv2>b:nth-child(-n+2){border-top:0}
.ch .kv2>span{color:var(--ink-2)}
.ch .kv2>b{font-weight:600;color:var(--ink);text-align:right;padding-left:12px;font-variant-numeric:tabular-nums}
.ch .kv2>b.w{color:var(--warning-sur-fond)}
.ch .opt,.ch button.opt{margin:8px 16px 0;display:flex;align-items:center;gap:10px;font:inherit;font-size:12.5px;line-height:17px;color:var(--ink);border:0;background:none;padding:0;cursor:pointer;text-align:left}
.ch div.opt{cursor:default}
.ch .opt .tg{width:30px;height:18px;border-radius:9px;background:var(--fill-fort,var(--fill));position:relative;flex:none;transition:background-color 200ms var(--eo)}
.ch .opt .tg::after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform 220ms var(--eo)}
.ch .opt .tg.on{background:var(--success)}
.ch .opt .tg.on::after{transform:translateX(12px)}
.ch .opt small{color:var(--ink-3)}
.ch .cfoot{margin-top:auto;padding:12px 16px 14px;display:flex;gap:6px}
.ch .cfoot>.btn,.ch .cfoot>form{flex:1}
.ch .cfoot>form .btn{width:100%}
.ch .cfoot .btn{justify-content:center}
.ch .cfoot .btn.acc{background:var(--accent);color:var(--on-accent)}
.ch .btn.dis,.ch .btn:disabled{background:var(--fill);color:var(--ink-3);cursor:not-allowed}
.ch .tl{padding:0 16px 12px;display:flex;flex-direction:column}
.ch .tl .e{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:0 10px;align-items:start;position:relative;padding-bottom:9px}
.ch .tl .e::before{content:"";position:absolute;left:8.5px;top:20px;bottom:0;width:1px;background:var(--line)}
.ch .tl .e:last-child::before{display:none}
.ch .tl .d{width:18px;height:18px;border-radius:50%;display:grid;place-items:center}
.ch .tl .d.ok{background:var(--success)}
.ch .tl .d.mq{background:var(--danger)}
.ch .tl .d.now{box-shadow:inset 0 0 0 1.6px var(--warning)}
.ch .tl .d.vn{box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.ch .tl .t b{display:block;font-size:12.5px;line-height:17px;font-weight:550;color:var(--ink)}
.ch .tl .e.vn .t b{font-weight:500;color:var(--ink-2)}
.ch .tl .e.now .t b{color:var(--warning-sur-fond)}
.ch .tl .t small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.ch .tl time{font-size:11.5px;line-height:17px;color:var(--ink-3);font-variant-numeric:tabular-nums}
.ch .vc-geste{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 2px}
.ch .vc-geste input,.ch .vc-geste select{height:28px;border-radius:7px;border:0;background:var(--fill);padding:0 8px;font:inherit;font-size:12px;color:var(--ink);min-width:0}
.ch .vc-geste input[type=file]{padding:4px 6px;max-width:100%}
.ch .btn.soft{background:var(--accent-soft);color:var(--accent-text);height:28px;font-size:12px}
.ch .vc-envoi{margin:0 16px 12px;padding:10px 12px;border-radius:10px;background:var(--fill)}
.ch .vc-envoi small{display:block;font-size:11.5px;color:var(--ink-3)}
.ch .vc-envoi b{font-size:13px;color:var(--accent-text)}
.vc-annul{margin-bottom:12px}
.vc-annul .dvctl{padding:0 8px 8px}
.dlg-ch{width:min(460px,calc(100vw - 32px))}
.dlg-ch .dlg-b{padding:4px 18px 8px;display:flex;flex-direction:column;gap:10px}
.dlg-ch .dlg-b label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--ink-2)}
.dlg-ch footer{display:flex;justify-content:flex-end;gap:8px;padding:10px 18px 16px}
@media (max-width:1100px){.pz.ch .pn{grid-template-columns:minmax(0,1fr)}}

/* ===== lot Chantier et Planning : écran Planning (maquette chantier/Planning) ===== */
.page-planning .pl-haut{display:flex;align-items:center;gap:8px;margin:0 0 12px}
.page-planning .pl-haut h1{margin:0;font-size:24px;line-height:30px;font-weight:700;letter-spacing:-.02em}
.page-planning .pl-haut .pl-sous{margin-left:6px;color:var(--ink-2);font-size:14px}
.page-planning .pl-haut .sp{flex:1}
.page-planning .pl-haut .btn{height:34px;padding:0 14px;border-radius:9px;background:var(--fill);color:var(--ink);font-weight:500;box-shadow:none;border:0}
@media (hover:hover) and (pointer:fine){.page-planning .pl-haut .btn:hover{filter:brightness(.97)}}
.plh{display:flex;align-items:center;gap:8px;margin:0 0 12px}
.plh .sgp{display:inline-flex;gap:2px;padding:2px;border-radius:9px;background:var(--fill)}
.plh .sgp a{height:26px;padding:0 11px;border-radius:7px;display:inline-flex;align-items:center;font-size:12.5px;font-weight:500;color:var(--ink);text-decoration:none}
.plh .sgp a[aria-pressed="true"]{background:var(--surface);box-shadow:0 1px 3px rgba(0,0,0,.1);font-weight:600}
.plh .ly{height:26px;padding:0 10px;border-radius:13px;border:0;font:inherit;font-size:12.5px;font-weight:600;display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.plh .ly i{width:8px;height:8px;border-radius:2px}
.plh .ly[aria-pressed="false"]{opacity:.45}
.plh .ly.vt{background:var(--accent-soft);color:var(--accent-text)}.plh .ly.vt i{background:var(--accent)}
.plh .ly.po{background:var(--success-soft);color:var(--success-sur-fond)}.plh .ly.po i{background:var(--success)}
.plh .lg{margin-left:auto;display:flex;gap:14px;font-size:11.5px;color:var(--ink-2)}
.plh .lg span{display:inline-flex;align-items:center;gap:6px}
.plh .lg i{width:16px;height:10px;border-radius:3px;background:var(--surface)}
.plh .lg i.pr{box-shadow:inset 0 0 0 1.5px var(--accent);background:repeating-linear-gradient(135deg,transparent 0 3px,var(--accent-soft) 3px 5px)}
.plh .lg i.cf{background:var(--accent)}
.plh .lg i.wa{box-shadow:inset 0 0 0 1.5px var(--warning);background:var(--warning-soft)}
.pgrid{display:grid;background:var(--surface);border-radius:14px;box-shadow:var(--ombre-carte);overflow:hidden;min-height:calc(100vh - 200px)}
.pgrid>div{border-top:1px solid var(--line);border-left:1px solid var(--line);padding:8px;min-width:0;display:flex;flex-direction:column;gap:6px}
.pgrid>.hd{border-top:0;padding:10px 12px 8px;font-size:12px;font-weight:600;color:var(--ink-2);display:block}
.pgrid>.hd b{display:block;font-size:17px;line-height:21px;color:var(--ink);font-weight:650;font-variant-numeric:tabular-nums}
.pgrid>.hd.td b{color:var(--accent-text)}
.pgrid>.hd:first-child,.pgrid>.who{border-left:0}
.pgrid>.who{padding:10px 14px;justify-content:center}
.pgrid .who b{font-size:13px;line-height:17px;font-weight:600}
.pgrid .who small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.pgrid .who .cap{margin-top:4px;font-size:11px;color:var(--ink-2)}
.pgrid>.off{background:repeating-linear-gradient(135deg,transparent 0 6px,rgba(0,0,0,.025) 6px 12px)}
.pgrid>.cell.vise{background:var(--accent-soft)}
.pev{display:block;border-radius:8px;padding:6px 8px;font-size:11.5px;line-height:15px;min-width:0;text-decoration:none}
.pev b{display:block;font-size:12px;line-height:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pev span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pev em{display:block;font-style:normal;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pev.vt.cf{background:var(--accent);color:var(--on-accent)}
.pev.vt.pr{background:repeating-linear-gradient(135deg,var(--surface) 0 4px,var(--accent-soft) 4px 7px);box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--accent-text)}
.pev.po.cf{background:var(--success);color:var(--on-accent)}
.pev.po.wa{background:var(--warning-soft);box-shadow:inset 0 0 0 1.5px var(--warning);color:var(--warning-sur-fond)}
.pev.bl{background:var(--fill);color:var(--ink-2)}
.pev[draggable="true"]{cursor:grab}
.pev.porte{opacity:.5}
.pgrid.sans-vt .pev.vt,.pgrid.sans-pose .pev.po{display:none}
.pfoot{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:12px;color:var(--ink-2)}
.pfoot b{color:var(--ink)}
dialog.dlg{border:0;border-radius:16px;padding:0;background:var(--canvas);color:var(--ink);width:min(520px,calc(100vw - 32px))}
dialog.dlg::backdrop{background:rgba(20,24,32,.32)}
dialog.dlg .dlg-corps{padding:18px;display:flex;flex-direction:column;gap:10px}
dialog.dlg h2{margin:0;font-size:16px}
dialog.dlg p{margin:0;color:var(--ink-2);font-size:13px}
dialog.dlg .lien-agenda{height:34px;border-radius:8px;border:0;background:var(--fill);padding:0 10px;font:inherit;font-size:12.5px;color:var(--ink)}
dialog.dlg .dlg-actions{display:flex;gap:8px;justify-content:flex-end}
@media (max-width:800px){.pgrid{overflow-x:auto}.plh{flex-wrap:wrap}.plh .lg{margin-left:0}}

/* ===== lot Après la pose : l'onglet SAV (maquettes apres-pose/Fiche-SAV et SAV-Ouvrir ; leur feuille, jetons du CRM) : « Garanties » et
   « Tickets » à gauche, le ticket au milieu, son historique à droite ; la fenêtre « Ouvrir un SAV » ===== */
.pz.sv .sv3{display:grid;grid-template-columns:330px minmax(0,1fr) 330px;gap:12px;align-items:start}
.pz.sv .svg-c{display:flex;flex-direction:column;gap:12px}
.pz.sv .card{display:flex;flex-direction:column}
.pz.sv .card h3{display:flex;align-items:center;gap:8px}
.pz.sv .card h3 .r{margin-left:auto;font-weight:500;color:var(--ink-3)}
.pz.sv .card h3 .r.a{color:var(--accent-text)}
.pz.sv .card h3 .r.f{color:var(--success-sur-fond)}
.pz.sv .tks{display:flex;flex-direction:column}
.pz.sv .tk{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:center;padding:10px 16px;border-top:1px solid var(--line);color:inherit;text-decoration:none}
.pz.sv .tk.sel{background:var(--accent-soft)}
.pz.sv .tk b{font-weight:600;font-size:13.5px;line-height:18px;color:var(--ink)}
.pz.sv .tk small{grid-column:1;font-size:12px;line-height:16px;color:var(--ink-2)}
.pz.sv .tk .tg2{grid-row:1/3;grid-column:2;height:22px;padding:0 8px;border-radius:6px;font-size:11.5px;font-weight:600;display:inline-flex;align-items:center}
.pz.sv .tg2.o{background:var(--warning-soft);color:var(--warning-sur-fond)}
.pz.sv .tg2.f{background:var(--success-soft);color:var(--success-sur-fond)}
@media (hover:hover) and (pointer:fine){.pz.sv .tk:not(.sel):hover{background:var(--fill)}}
.pz.sv .ph3{display:flex;flex-wrap:wrap;gap:8px;padding:4px 16px 12px}
.pz.sv .ph3 a{width:84px;height:64px;border-radius:10px;background:linear-gradient(135deg,#cfd6e0,#9aa6b6);display:grid;place-items:center;color:#fff;overflow:hidden}
.pz.sv .ph3 img{width:100%;height:100%;object-fit:cover}
.pz.sv .ph3 svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
.pz.sv .desc{margin:0;padding:8px 16px 10px;font-size:13.5px;line-height:19px;color:var(--ink)}
.pz.sv .kv2>b.gar{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}
.pz.sv .kv2>b.gar svg{width:14px;height:14px;fill:none;stroke:var(--success);stroke-width:1.8;stroke-linejoin:round}
.pz.sv .cfoot>.btn,.pz.sv .cfoot>form{flex:1}
.pz.sv .cfoot svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pz.sv .sv-gestes{padding:0 16px 14px}
.pz.sv .sv-lien{margin:0 16px 10px}
.pz.sv .sv-vide{min-height:220px}
dialog.dlg-sav{width:600px;max-width:calc(100% - 32px);box-sizing:border-box;border:0;border-radius:18px;background:var(--surface);color:var(--ink);box-shadow:0 0 0 .5px rgba(0,0,0,.12),0 30px 70px -20px rgba(15,23,42,.5);padding:20px 22px 18px}
dialog.dlg-sav::backdrop{background:rgba(15,23,42,.38)}
@starting-style{dialog.dlg-sav[open]{opacity:0;transform:scale(.96)}}
dialog.dlg-sav[open]{transition:opacity 200ms var(--eo,cubic-bezier(.23,1,.32,1)),transform 200ms var(--eo,cubic-bezier(.23,1,.32,1))}
dialog.dlg-sav form{display:flex;flex-direction:column;gap:14px}
dialog.dlg-sav h2{margin:0;font-size:19px;line-height:24px;font-weight:700;letter-spacing:-.015em}
dialog.dlg-sav .ctx{margin:-8px 0 0;font-size:13px;line-height:18px;color:var(--ink-2)}
dialog.dlg-sav .row2{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
dialog.dlg-sav .row4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
dialog.dlg-sav label,dialog.dlg-sav .lb{display:flex;flex-direction:column;gap:6px;font-size:12.5px;font-weight:600;color:var(--ink-2)}
dialog.dlg-sav select,dialog.dlg-sav textarea,dialog.dlg-sav input[type=date],dialog.dlg-sav input[type=datetime-local],dialog.dlg-sav input[name=titre]{min-height:38px;box-sizing:border-box;border-radius:9px;border:0;background:var(--fill);box-shadow:inset 0 0 0 1px var(--line);padding:0 11px;font:inherit;font-size:14px;font-weight:500;color:var(--ink)}
dialog.dlg-sav textarea{min-height:64px;padding:9px 11px;line-height:19px}
dialog.dlg-sav .chips{display:flex;flex-wrap:wrap;gap:6px}
dialog.dlg-sav .chips label,dialog.dlg-sav .seg label{flex-direction:row;gap:0;position:relative}
dialog.dlg-sav .chips input,dialog.dlg-sav .seg input{position:absolute;opacity:0;width:1px;height:1px}
dialog.dlg-sav .chips span{height:32px;padding:0 12px;border-radius:8px;background:var(--fill);color:var(--ink);font-size:13px;font-weight:500;display:inline-flex;align-items:center;cursor:pointer}
dialog.dlg-sav .chips input:checked+span{background:var(--accent);color:var(--on-accent);font-weight:600}
dialog.dlg-sav .seg{display:inline-flex;padding:2px;border-radius:9px;background:var(--fill);gap:2px}
dialog.dlg-sav .seg span{height:32px;padding:0 12px;border-radius:7px;font-size:13px;font-weight:500;color:var(--ink-2);display:inline-flex;align-items:center;cursor:pointer}
dialog.dlg-sav .seg input:checked+span{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.12)}
dialog.dlg-sav input:focus-visible+span{outline:2px solid var(--focus,var(--accent));outline-offset:2px}
dialog.dlg-sav .phs{display:flex;gap:8px;align-items:center}
dialog.dlg-sav .phs .add{width:64px;height:52px;border-radius:9px;background:var(--fill);color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line);display:grid;place-items:center;cursor:pointer;position:relative}
dialog.dlg-sav .phs .add input{position:absolute;inset:0;opacity:0;cursor:pointer}
dialog.dlg-sav .phs svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
dialog.dlg-sav .hint{margin:0;font-size:12.5px;line-height:17px;color:var(--ink-2)}
dialog.dlg-sav .hint.w{color:var(--warning-sur-fond);font-weight:550}
dialog.dlg-sav .bt{display:flex;justify-content:flex-end;gap:8px;padding-top:2px}
dialog.dlg-sav .bt .btn{height:36px;padding:0 16px;border-radius:9px;font-size:14px}
dialog.dlg-sav .bt .btn.acc{background:var(--accent);color:var(--on-accent);font-weight:600}
dialog.dlg-sav .bt .btn:not(.acc){background:var(--fill);color:var(--ink);border-color:transparent;font-weight:500}
dialog.dlg-sav .phs .ph{width:64px;height:52px;border-radius:9px;overflow:hidden;background:var(--fill);box-shadow:inset 0 0 0 1px var(--line)}
dialog.dlg-sav .phs .ph img{width:100%;height:100%;object-fit:cover;display:block}
@media (prefers-reduced-motion:reduce){dialog.dlg-sav[open]{transition:opacity 150ms ease}@starting-style{dialog.dlg-sav[open]{transform:none}}}
/* « Ne pas appeler » : la marque de la fiche (rouge : bloque), la case du menu « Autres actions » */
.fiche-tete .tag.npa,.id h1 .tag.npa{color:var(--danger-sur-fond)}
.menu .coche-npa{display:inline-flex;align-items:center;gap:6px}
.menu .coche-npa svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}
.tag.npa{background:var(--danger-soft);color:var(--danger-sur-fond);font-weight:600}
/* la carte « Prime de parrainage » (dossier du filleul, administrateur) */
.card.prime h3{display:flex;align-items:center;gap:8px}
.card.prime h3 .r{margin-left:auto;font-weight:500;font-size:12px;color:var(--accent-text);text-decoration:none}
.card.prime .kv2{margin:0 16px;display:grid;grid-template-columns:minmax(0,1fr) auto}
.card.prime .kv2>span,.card.prime .kv2>b{padding:6px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px}
.card.prime .kv2>span:nth-child(-n+2),.card.prime .kv2>b:nth-child(-n+2){border-top:0}
.card.prime .kv2>span{color:var(--ink-2)}
.card.prime .kv2>b{font-weight:600;text-align:right;padding-left:12px}
.card.prime .prime-g{display:flex;flex-direction:column;gap:6px;padding:8px 16px 14px}
.card.prime .prime-g form{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0}
.card.prime .prime-g input,.card.prime .prime-g select{height:28px;border-radius:7px;border:0;background:var(--fill);padding:0 8px;font:inherit;font-size:12px;color:var(--ink);min-width:0}
.card.prime .prime-g input[name=montant]{width:84px}
.card.prime .btn.soft{background:var(--accent-soft);color:var(--accent-text);height:28px;font-size:12px}
/* le Planning : la couche SAV (une teinte de la gamme des types, « autre » : elle ne dit pas un état) */
.plh .ly.sav{background:rgba(93,106,126,.12);color:#46505f}.plh .ly.sav i{background:#5d6a7e}
.pev.sav{background:#5d6a7e;color:#fff}
.pgrid.sans-sav .pev.sav{display:none}
[data-theme="sombre"] .plh .ly.sav{color:#c3cad6}
/* lot Après la pose : la marque « Ne pas appeler » dans les listes, et « Rappels à autoriser » (Aujourd'hui de l'administrateur) */
.liste-pipeline .tag.npa,.ligne-file .tag.npa,.appel-suivant .tag.npa{margin-left:6px;font-size:11px;padding:1px 7px;border-radius:6px;vertical-align:1px}
.rappels-autoriser h3{display:flex;align-items:center;gap:8px}
.rappels-autoriser h3 .r{margin-left:auto;font-weight:500;color:var(--ink-3)}
.rappels-autoriser .ra{display:flex;flex-direction:column;padding:4px 16px 10px}
.rappels-autoriser .ra-l{display:flex;align-items:center;gap:10px;padding:7px 0;border-top:1px solid var(--line)}
.rappels-autoriser .ra-l:first-child{border-top:0}
.rappels-autoriser .ra-l a{flex:1;min-width:0;color:inherit;text-decoration:none}
.rappels-autoriser .ra-l b{display:block;font-size:12.5px;line-height:17px;font-weight:600}
.rappels-autoriser .ra-l small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.rappels-autoriser .ra-l form{margin:0}
/* lot Après la pose : Administration, « Données personnelles » (maquette apres-pose/Admin-Donnees, sans Bloctel) : le menu de
   l'Administration à gauche, les effacements prévus et « Ne pas appeler » à droite */
.adm-tete{display:flex;align-items:baseline;gap:14px;margin:0 0 14px}
.adm-tete h1{margin:0;font-size:22px;line-height:28px;font-weight:700;letter-spacing:-.02em}
.adm-tete .sous{font-size:13.5px;color:var(--ink-2)}
/* suites du lot Ringover, point 1 : la bascule du mode sombre en haut à droite, comme les maquettes d'Administration */
.adm-tete .sp{flex:1}.adm-tete .sw{align-self:center}
.adm{display:grid;grid-template-columns:230px minmax(0,1fr);gap:12px;align-items:start}
.adm-nav{display:flex;flex-direction:column;padding:10px 8px}
.adm-nav h6{margin:10px 10px 6px;font-size:11.5px;font-weight:600;color:var(--ink-3);text-transform:none;letter-spacing:0}
.adm-nav h6:first-child{margin-top:4px}
.adm-nav a{height:34px;padding:0 10px;border-radius:9px;display:flex;align-items:center;font-size:13.5px;color:var(--ink);text-decoration:none}
.adm-nav a[aria-current="true"]{background:var(--accent-soft);color:var(--accent-text);font-weight:600}
@media (hover:hover) and (pointer:fine){.adm-nav a:not([aria-current]):hover{background:var(--fill)}}
.dp{display:flex;flex-direction:column;gap:12px}
/* les cartes de la page (maquette Admin-Donnees) : la règle générale des h3 du CRM (capitales espacées) ne vaut pas ici ; « Voir la
   fiche » est le bouton gris de la maquette (planche 16-admin-donnees, 14/10) */
.adm>.card,.dp .card{background:var(--surface);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);margin:0;min-width:0;overflow:hidden}
.dp .card h3{margin:0;padding:14px 16px 8px;font-size:13px;font-weight:800;color:var(--titre-bloc);display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0}
.dtr .btn{height:30px;min-height:30px;border-radius:9px;padding:0 12px;font-size:13px;font-weight:500;border:0;background:var(--fill);color:var(--ink);text-decoration:none;display:inline-flex;align-items:center}
.dp .card h3 .r{margin-left:auto;font-weight:500;color:var(--ink-3);font-size:12.5px}
.dth,.dtr{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.2fr) 130px 120px 110px;gap:12px;align-items:center;padding:0 16px}
.dth{min-height:32px;font-size:12px;font-weight:600;color:var(--ink-3);border-top:1px solid var(--line)}
.dtr{min-height:52px;border-top:1px solid var(--line);font-size:13px}
.dtr b{display:block;font-weight:600}
.dtr small{display:block;font-size:12px;color:var(--ink-2)}
.dtr .rt{justify-self:end}
.dfoot{padding:10px 16px 12px;border-top:1px solid var(--line);font-size:12.5px;line-height:17px;color:var(--ink-2)}
.np{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.np div{padding:12px 16px}
.np div+div{border-left:1px solid var(--line)}
.np b{display:block;font-size:22px;line-height:28px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.np small{font-size:12.5px;color:var(--ink-2)}

/* ---------- lot Ringover : « Appels sans dossier » (maquette gestion/Admin-Appels) ---------- */
.adm-nav a .rk{margin-left:auto;font-size:11.5px;font-weight:600;color:var(--danger);font-style:normal}
.ap .aph,.ap .apr{display:grid;grid-template-columns:118px 74px minmax(0,1fr) 92px minmax(0,1.6fr) 176px;gap:12px;align-items:center;padding:0 16px}
.ap .aph{height:30px;font-size:11.5px;font-weight:600;color:var(--ink-3);border-bottom:1px solid var(--line)}
.ap .aph .rt{text-align:right}
.ap .apr{min-height:52px;border-top:1px solid var(--line);font-size:12.5px;line-height:17px}
.ap .aph+.apr{border-top:0}
.ap .apr.sel{background:var(--accent-soft)}
.ap .apr b{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap .apr small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap .apr .mono{font-variant-numeric:tabular-nums;white-space:nowrap;font-family:inherit}
.ap .dir{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--ink-2)}
.ap .dir i{width:7px;height:7px;border-radius:50%;background:var(--success)}
.ap .dir.o i{background:var(--accent)}
.plr{display:flex;align-items:center;gap:8px;min-width:0}
.plr button{width:26px;height:26px;border-radius:50%;border:0;background:var(--accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:none;padding:0;cursor:pointer;transition:transform 140ms var(--eo,cubic-bezier(.23,1,.32,1))}
.plr button:active{transform:scale(.97)}
.plr button svg{width:12px;height:12px}
.plr .wv{flex:1;height:4px;min-width:40px;border-radius:2px;background:var(--fill);position:relative;cursor:pointer;--p:0%}
.plr.lu .wv{background:linear-gradient(90deg,var(--accent) 0 var(--p),var(--fill) var(--p))}
.plr time{font-size:11.5px;color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}
.ap .ra2{display:flex;gap:6px;justify-content:flex-end}
.ap .ra2 .btn{height:30px;min-height:30px;border-radius:9px;padding:0 12px;font-size:13px;font-weight:500;border:0;background:var(--fill);color:var(--ink);display:inline-flex;align-items:center;text-decoration:none}
.ap .ra2 a.btn{padding:0 9px}
.ap .ra2 svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6}
.ap .att{margin:0 16px 12px;padding:12px 14px;border-radius:12px;background:var(--accent-soft);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center}
.ap .att[hidden]{display:none}
.ap .att .sug b{display:block;font-size:13px;font-weight:600}
.ap .att .sug small{font-size:11.5px;color:var(--ink-2)}
.ap .att .btn.acc{height:32px;border-radius:9px;padding:0 14px;border:0;background:var(--accent);color:var(--on-accent);font-weight:600;display:inline-flex;align-items:center;gap:6px}
.ap .att .btn.acc svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}
.ap .att .fd2{grid-column:1/3;height:32px;border-radius:9px;background:var(--surface);display:flex;flex-direction:row;align-items:center;gap:8px;padding:0 10px;font-size:13px;color:var(--ink)}
.ap .att .fd2 svg{width:14px;height:14px;fill:none;stroke:var(--ink-3);stroke-width:1.6;flex:none}
.ap .att .fd2 input{flex:1;min-width:0;width:auto;border:0;background:none;font:inherit;font-size:13px;color:var(--ink);padding:0;height:30px;min-height:0;margin:0;outline:none;box-shadow:none;-webkit-appearance:none;appearance:none}
.ap .att .fd2 input::placeholder{color:var(--ink)}
.ap .att .res{grid-column:1/3;display:flex;flex-direction:column;gap:4px}
.ap .att .res:empty{display:none}
.ap .att .res form{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:9px;background:var(--surface)}
.ap .att .res span{flex:1;min-width:0}
.ap .att .res b{display:block;font-size:13px;font-weight:600}
.ap .att .res small{font-size:11.5px;color:var(--ink-2)}
.ap .att .res .btn{height:28px;border-radius:8px;padding:0 10px;border:0;background:var(--fill);color:var(--ink);font-size:12.5px}
.ap .pfoot2{display:flex;align-items:center;gap:10px;padding:10px 16px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-2)}
.ap .pfoot2 b{color:var(--ink)}
@media (hover:hover) and (pointer:fine){.plr button:hover{background:var(--accent-hover,var(--accent))}.ap .ra2 .btn:hover{background:var(--line)}}

/* ---------- lot Ringover : le détail d'un appel enregistré dans l'Historique (maquette Fiche-Historique : Par, Vers, Durée, lecteur,
   Télécharger) ; le lot Historique du bloc 3 le reprendra tel quel ---------- */
.ev-appel .appel-ro{margin:8px 0 2px;max-width:440px;border-radius:12px;box-shadow:0 0 0 1px var(--line);padding:6px 0 10px;background:var(--surface)}
.appel-ro .kv{padding:0 16px;display:grid;grid-template-columns:76px minmax(0,1fr)}
.appel-ro .kv span,.appel-ro .kv b{padding:5px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px}
.appel-ro .kv span{color:var(--ink-2);white-space:nowrap;padding-right:14px}
.appel-ro .kv b{font-weight:500;color:var(--ink);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.appel-ro .kv span:nth-child(1),.appel-ro .kv b:nth-child(2){border-top:0}
.ev .c .appel-ro div{color:var(--ink)}
.hpl{margin:10px 16px 0;display:flex;align-items:center;gap:10px;height:40px;padding:0 12px 0 6px;border-radius:10px;box-shadow:inset 0 0 0 1px var(--line)}
.hpl button{width:28px;height:28px;border:0;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;flex:none;padding:0;cursor:pointer;transition:transform 140ms var(--eo,cubic-bezier(.23,1,.32,1))}
.hpl button:active{transform:scale(.95)}
.hpl button svg{width:12px;height:12px;margin-left:1px}
.hpl .wv{flex:1;height:22px;display:flex;align-items:center;gap:2px;cursor:pointer}
.hpl .wv i{flex:1;border-radius:1px;background:rgba(0,0,0,.16)}
.hpl .wv i.on{background:var(--accent)}
:root[data-theme="dark"] .hpl .wv i:not(.on){background:rgba(255,255,255,.22)}
.hpl time{font-size:11.5px;color:var(--ink-3);font-variant-numeric:tabular-nums}
.appel-ro .dfoot2{padding:10px 16px 0;display:grid;grid-template-columns:minmax(0,1fr);gap:6px}
.appel-ro .dfoot2 .btn{justify-content:center;display:inline-flex;align-items:center;gap:6px;height:32px;border-radius:9px;border:0;background:var(--fill);color:var(--ink);text-decoration:none;font-size:13px;font-weight:500}
.appel-ro .dfoot2 svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6}

/* lot Téléphone persistant : le choix « Ringover » ou « Mobile » à côté du numéro (hors maquette, réglage telephone_options) ; petit
   segment discret, la valeur choisie en accent doux (charte : jamais un fond cobalt plein pour un choix) */
.choix-moyen{display:inline-flex;align-items:center;gap:2px;margin-left:8px;padding:2px;border-radius:8px;background:var(--fill);vertical-align:middle}
.choix-moyen button{border:0;background:transparent;color:var(--ink-2);font:inherit;font-size:11.5px;font-weight:600;line-height:18px;padding:1px 8px;border-radius:6px;cursor:pointer;transition:transform 160ms var(--eo)}
.choix-moyen button[aria-checked="true"]{background:var(--surface);color:var(--accent-text);box-shadow:0 0 0 1px var(--filet)}
.choix-moyen button:active{transform:scale(.97)}
.choix-moyen button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}

/* ===== lot Onglet Dimensionnement (maquettes fiche-onglets/Fiche-Dim, -Avant, -Deperditions, -Machines ; gen_dim.py et le vocabulaire de
   gen_vt.py) : bandeau des trois vues, trois colonnes de cartes. Couleurs de caméra thermique par poste (passe design du 01/10) ;
   vert conforme, orange sans marge ou indicatif, rouge hors plage. Retour au toucher (0,97), survols réservés à la souris. ===== */
.dmz{display:flex;flex-direction:column;gap:10px;min-height:0;--th-murs:#e03131;--th-plancher:#f76707;--th-men:#f59f00;--th-air:#fcc419;--th-pt:#c2255c;--th-toit:#7048e8;--dm-ease:cubic-bezier(.23,1,.32,1)}
.dmz [hidden]{display:none!important}
.dmz svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}
.dmz .stp{display:flex;align-items:center;gap:1px;padding:3px;border-radius:10px;background:var(--surface);box-shadow:var(--ombre-carte);flex:none}
.dmz .ri{height:28px;flex:0 1 auto;justify-content:center;display:flex;align-items:center;gap:5px;padding:0 14px;border-radius:7px;border:0;background:transparent;color:var(--ink-2);font:inherit;font-size:12.5px;font-weight:500;white-space:nowrap;cursor:pointer;
  transition:background-color 150ms ease,transform 140ms var(--dm-ease)}
.dmz .ri:active{transform:scale(.97)}
.dmz .ri .n.sy{width:15px;height:16px;display:grid;place-items:center;color:var(--ink-3);flex:none}
.dmz .ri .n.sy svg{width:15px;height:15px;stroke-width:1.7}
.dmz .ri .q{font-weight:500;color:var(--ink-3);font-size:12px}
.dmz .ri[aria-current="true"]{background:var(--accent-soft);color:var(--accent-text);font-weight:600}
.dmz .ri[aria-current="true"] .n.sy,.dmz .ri[aria-current="true"] .q{color:var(--accent-text)}
.dmz .ri:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
@media (hover:hover) and (pointer:fine){.dmz .ri:not([aria-current="true"]):hover{background:var(--fill);color:var(--ink)}}
.dmz .stp .sep{width:1px;height:16px;background:var(--line);margin:0 2px;flex:none}
.dmz .stp .fil{margin-left:auto;display:flex;align-items:center;gap:6px;padding:0 10px;font-size:12px;color:var(--ink-3);white-space:nowrap}
.dmz .stp .fil b{color:var(--ink-2);font-weight:600}
.dmz .tag{height:22px;padding:0 8px;border-radius:6px;font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;background:var(--fill);color:var(--ink-2)}
.dmz .stp .fil .tag{height:20px;font-size:11px}
.dmz .tag.ind{background:var(--warning-soft);color:var(--warning)}
.dmz .tag.def{background:var(--success-soft);color:var(--success)}
.dmz .pn{display:grid;gap:12px;min-width:0;flex:1;min-height:0;align-items:stretch}
.dmz .col{display:flex;flex-direction:column;gap:12px;min-height:0;min-width:0}
.dmz .col>.card:last-child{flex:1 1 auto}
.dmz .card{background:var(--surface);border-radius:14px;box-shadow:var(--ombre-carte);min-width:0;display:flex;flex-direction:column}
.dmz .card h3{margin:0;padding:12px 16px 8px;font-size:12px;font-weight:600;color:var(--ink-2);display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0}
.dmz .card h3 .r{margin-left:auto;font-weight:500;color:var(--accent-text);font-size:12px}
.dmz .card h3 .r.g{color:var(--ink-3);font-weight:400}
.dmz .card h3 .lienr{border:0;background:none;padding:0;font:inherit;font-size:12px;font-weight:500;color:var(--accent-text);cursor:pointer;text-decoration:none;white-space:nowrap}
.dmz .card h3 .lienr:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}
@media (hover:hover) and (pointer:fine){.dmz .card h3 .lienr:hover{text-decoration:underline;text-underline-offset:2px}}
/* le calcul */
.dmz .big{display:flex;align-items:baseline;gap:8px;padding:0 16px 8px}
.dmz .big b{flex:none;white-space:nowrap;font-size:30px;line-height:34px;font-weight:650;letter-spacing:-.025em;color:var(--ink);font-variant-numeric:tabular-nums}
.dmz .big b em{font-style:normal;font-size:16px;font-weight:600;letter-spacing:-.01em;margin-left:2px}
.dmz .big>span{white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:12.5px;color:var(--ink-3)}
.dmz .big .dlt{margin-left:auto;flex:none;font-size:11.5px;color:var(--ink-3);text-align:right;line-height:15px}
.dmz .big .dlt b{font-size:12px;line-height:15px;font-weight:600;letter-spacing:0;color:var(--ink-2)}
.dmz .hb{display:flex;gap:2px;height:12px;margin:2px 16px 8px;border-radius:4px;overflow:hidden}
.dmz .hb i{display:block;height:100%}
.dmz .hl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;padding:0 16px 8px;font-size:11.5px;line-height:16px}
.dmz .hl div{display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:6px;align-items:center;padding:3px 0;border-top:1px solid var(--line)}
.dmz .hl i{width:9px;height:9px;border-radius:2.5px}
.dmz .hl span{color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dmz .hl b{font-weight:600;text-align:right;color:var(--ink);font-variant-numeric:tabular-nums}
.dmz .th-murs{background:var(--th-murs)}.dmz .th-plancher{background:var(--th-plancher)}.dmz .th-men{background:var(--th-men)}.dmz .th-air{background:var(--th-air)}.dmz .th-pt{background:var(--th-pt)}.dmz .th-toit{background:var(--th-toit)}
.dmz .kf{display:grid;grid-template-columns:1fr 1fr;padding:0 16px 8px}
.dmz .k{padding:4px 0;border-top:1px solid var(--line);min-width:0}
.dmz .kf>.k.l{padding-left:0;padding-right:12px;border-left:0}
.dmz .kf>.k.e{padding-left:12px;padding-right:0;border-left:1px solid var(--line)}
.dmz .k small{display:block;color:var(--ink-3);font-size:11.5px;line-height:15px}
.dmz .k b{display:flex;align-items:center;gap:4px;font-size:13.5px;line-height:19px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink);font-variant-numeric:tabular-nums}
.dmz .k b em{font-style:normal;font-weight:400;color:var(--ink-3);font-size:11.5px;margin-left:0}
/* machine */
.dmz .mh{display:flex;align-items:center;gap:11px;padding:0 16px 10px}
.dmz .mh .ic{width:34px;height:34px;border-radius:9px;background:var(--accent-soft);color:var(--accent-text);display:grid;place-items:center;flex:none}
.dmz .mh .ic svg{width:18px;height:18px;stroke-width:1.6}
.dmz .mh .t{flex:1;min-width:0}
.dmz .mh .t b{display:block;font-size:15px;line-height:20px;font-weight:650;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
.dmz .mh .t small{display:block;font-size:12px;line-height:16px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dmz .gg{margin:0 16px 10px;padding:10px 12px 8px;border-radius:10px;background:var(--fill)}
.dmz .gg .gv{display:flex;align-items:baseline;gap:8px;margin-bottom:9px}
.dmz .gg .gv b{white-space:nowrap;font-size:24px;line-height:28px;font-weight:650;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
.dmz .gg .gv span{font-size:12px;color:var(--ink-2);white-space:nowrap}
.dmz .gg .gv .ok{margin-left:auto;font-size:11.5px;font-weight:600;color:var(--success);display:flex;align-items:center;gap:5px;white-space:nowrap}
.dmz .gg .gv .ok.ko{color:var(--danger)}
.dmz .gg .gv .ok i{width:15px;height:15px;border-radius:50%;background:var(--success);color:#fff;display:grid;place-items:center}
.dmz .gg .gv .ok i svg{width:9px;height:9px;stroke-width:2.6}
.dmz .trk{position:relative;height:8px;border-radius:4px;background:rgba(0,0,0,.08)}
.dmz .trk .bd{position:absolute;top:0;bottom:0;background:rgba(31,138,59,.30)}
.dmz .trk .bd.sm{background:repeating-linear-gradient(135deg,rgba(31,138,59,.22) 0 3px,rgba(31,138,59,.08) 3px 6px)}
.dmz .trk .c100{position:absolute;top:-3px;bottom:-3px;width:1.5px;background:rgba(0,0,0,.28)}
.dmz .trk .mk{position:absolute;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--surface);box-shadow:0 0 0 3px var(--accent),0 1px 3px rgba(0,0,0,.25)}
.dmz .tks{position:relative;height:14px;margin-top:5px;font-size:10.5px;line-height:14px;color:var(--ink-3)}
.dmz .tks span{position:absolute;transform:translateX(-50%);white-space:nowrap}
.dmz .pw3{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.06fr) minmax(0,1.03fr) minmax(0,.99fr);margin:0 16px;border-top:1px solid var(--line)}
.dmz .pw3.c3{grid-template-columns:minmax(0,1.06fr) minmax(0,1.03fr) minmax(0,.99fr)}
.dmz .pw3 div{padding:5px 0 4px 8px;border-left:1px solid var(--line);min-width:0}
.dmz .pw3 div:first-child{padding-left:0;border-left:0}
.dmz .pw3 small{display:block;font-size:10.5px;line-height:14px;color:var(--ink-3);white-space:nowrap}
.dmz .pw3 b{display:block;font-size:13.5px;line-height:19px;font-weight:600;white-space:nowrap;color:var(--ink);font-variant-numeric:tabular-nums}
.dmz .pw3 span{display:block;font-size:11px;line-height:14px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:14px}
.dmz .pw3:not(.c3) div:nth-child(2) b,.dmz .pw3.c3 div:nth-child(1) b{color:var(--accent-text)}
.dmz .pws{margin:2px 16px 10px;font-size:11px;line-height:14px;color:var(--ink-3)}
/* documents */
.dmz .dc{padding:0 8px 6px}
.dmz .dc .it{display:flex;align-items:center;gap:10px;padding:2px 8px;border-radius:9px;position:relative}
.dmz .dc .it+.it::before{content:"";position:absolute;top:0;left:44px;right:8px;height:1px;background:var(--line)}
.dmz .dc .ic{background:var(--accent-soft);color:var(--accent-text);width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex:none}
.dmz .dc .ic svg{width:14px;height:14px;stroke-width:1.7}
.dmz .dc .t{flex:1;min-width:0;padding:4px 0}
.dmz .dc .t b{display:block;font-weight:550;font-size:12.5px;line-height:17px;color:var(--ink)}
.dmz .dc .t small{display:block;color:var(--ink-3);font-size:11.5px;line-height:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dmz .dc .tag.br{height:18px;padding:0 6px;font-size:10.5px;background:var(--warning-soft);color:var(--warning);margin-left:6px;vertical-align:1px}
.dmz .dc .tag.ok2{height:18px;padding:0 6px;font-size:10.5px;background:var(--success-soft);color:var(--success);margin-left:6px;vertical-align:1px}
.dmz .eye{width:28px;height:28px;border-radius:8px;border:0;background:var(--fill);color:var(--ink);display:grid;place-items:center;flex:none;transition:transform 140ms var(--dm-ease),background-color 150ms ease}
.dmz .eye:active{transform:scale(.96)}
.dmz .eye svg{width:15px;height:15px;stroke-width:1.6}
.dmz .eye.off{opacity:.4}
.dmz .eye:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
@media (hover:hover) and (pointer:fine){.dmz a.eye:hover{background:var(--accent-soft);color:var(--accent-text)}}
.dmz .dim-remise{display:block;margin:0 8px 4px 44px}
/* correctif essai de Mike : « Valider et éditer » sous la liste des documents */
.dmz .dim-valider{display:flex;margin:8px 8px 4px}
.dmz .dim-valider .btn{flex:1;justify-content:center;gap:6px}
.dmz .dim-valider .btn svg{width:14px;height:14px;stroke-width:1.9}
/* écart avec la Pré-VT */
.dmz .cp{padding:0 16px 6px;font-size:12.5px;line-height:17px}
.dmz .cp div{display:grid;grid-template-columns:80px minmax(0,1fr) minmax(0,1.15fr);gap:8px;padding:5px 0;border-top:1px solid var(--line);align-items:baseline}
.dmz .cp div.h{border-top:0;padding:0 0 3px;font-size:11px;line-height:14px;color:var(--ink-3)}
.dmz .cp div.h span:nth-child(n+2){text-align:right}
.dmz .cp span{color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dmz .cp span:nth-child(2){text-align:right;color:var(--ink-3)}
.dmz .cp b{text-align:right;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
.dmz .vd3{margin:2px 16px 12px;padding:8px 10px;border-radius:9px;background:var(--success-soft);display:grid;grid-template-columns:18px minmax(0,1fr);gap:1px 9px;align-items:center}
.dmz .vd3 i{grid-row:1/3;width:18px;height:18px;border-radius:50%;background:var(--success);color:#fff;display:grid;place-items:center}
.dmz .vd3 i svg{width:11px;height:11px;stroke-width:2.4}
.dmz .vd3 b{font-size:12px;line-height:17px;font-weight:600;color:var(--success)}
.dmz .vd3 small{font-size:11.5px;line-height:15px;color:var(--ink-2)}
.dmz .vd3.ch{background:var(--warning-soft)}.dmz .vd3.ch i{background:var(--warning)}.dmz .vd3.ch b{color:var(--warning)}
/* listes « libellé, valeur » */
.dmz .fl{padding:0 16px 8px;font-size:12.5px;line-height:17px}
.dmz .fl .f{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px;padding:5px 0;border-top:1px solid var(--line)}
.dmz .fl .f:first-child{border-top:0}
.dmz .fl .f span{color:var(--ink-3)}
.dmz .fl .f b{font-weight:600;text-align:right;color:var(--ink);font-variant-numeric:tabular-nums}
.dmz .fl .f b em{font-style:normal;font-weight:400;color:var(--ink-3)}
.dmz .lock{display:flex;align-items:center;gap:7px;margin:0 16px 12px;padding:7px 10px;border-radius:8px;background:var(--fill);font-size:12px;line-height:16px;color:var(--ink-2)}
.dmz .lock span{width:14px;height:14px;color:var(--ink-3);flex:none;display:grid}
.dmz .lock svg{width:14px;height:14px;stroke-width:1.6}
.dmz .nt{margin:0 16px 12px;font-size:11.5px;line-height:16px;color:var(--ink-3)}
.dmz .fm{margin:0 16px 8px;padding:9px 11px;border-radius:9px;background:var(--fill);font-size:12px;line-height:17px;color:var(--ink-2)}
.dmz .fm b{color:var(--ink);font-weight:600}
/* calculs du dossier, suite du classement */
.dmz .hc{padding:0 8px 8px}
.dmz .hc .it{display:flex;align-items:center;gap:10px;padding:5px 8px;border-radius:9px}
.dmz .hc .it .n2{width:28px;height:28px;border-radius:8px;background:var(--fill);color:var(--ink-2);display:grid;place-items:center;font-size:11.5px;font-weight:700;flex:none}
.dmz .hc .it.on .n2{background:var(--accent-soft);color:var(--accent-text)}
.dmz .hc .t{flex:1;min-width:0}
.dmz .hc .t b{display:block;font-size:12.5px;line-height:17px;font-weight:550;color:var(--ink)}
.dmz .hc .t small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.dmz .hc .v{font-size:11.5px;font-weight:600;color:var(--ink-3);white-space:nowrap}
/* déperditions */
.dmz .hs{display:flex;gap:2px;height:26px;margin:0 16px 8px;border-radius:7px;overflow:hidden}
.dmz .hs i{display:flex;align-items:center;gap:6px;min-width:0;padding:0 8px;font-style:normal;font-size:11.5px;line-height:14px;color:#fff;white-space:nowrap;overflow:hidden}
.dmz .hs i span{font-weight:500;opacity:.92;overflow:hidden;text-overflow:ellipsis}
.dmz .hs i b{font-weight:700}
.dmz .hs i.th-men,.dmz .hs i.th-air{color:#3b2300}
.dmz .dp{padding:0 16px 4px;font-size:12.5px;line-height:17px}
.dmz .dp .r{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1.5fr) 58px 34px 48px 54px 62px;gap:8px;align-items:center;padding:4px 0;border-top:1px solid var(--line);font-variant-numeric:tabular-nums}
.dmz .dp .r.h{border-top:0;padding:0 0 4px;font-size:11px;line-height:14px;color:var(--ink-3)}
.dmz .dp .r>*:nth-child(n+3){text-align:right}
.dmz .dp .r b{font-weight:600;color:var(--ink)}
.dmz .dp .r .pt{display:flex;align-items:center;justify-content:flex-end;gap:6px}
.dmz .dp .r .pt i{display:block;height:6px;border-radius:3px}
.dmz .dp .r .sw{display:inline-block;width:8px;height:8px;border-radius:2.5px;margin-right:7px;vertical-align:0}
.dmz .dp .r span{color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dmz .dp .r span.cmp{display:block}
.dmz .dp .r span.cmp small{display:block;font-size:11px;line-height:14px;color:var(--ink-3)}
.dmz .dp .r span:first-child{color:var(--ink);font-weight:550}
.dmz .dp .r.sub span:first-child{padding-left:12px;font-weight:450;color:var(--ink-2)}
.dmz .dp .r.sub{border-top:1px dashed var(--line)}
.dmz .dp .r.t{border-top:1px solid var(--line-strong);padding-top:8px}
.dmz .dp .r.t span:first-child{padding-left:15px}
.dmz .dp .r.t span:first-child,.dmz .dp .r.t b{font-weight:700;color:var(--ink)}
.dmz .cm3{margin:0 16px 10px;padding:9px 11px 7px;border-radius:9px;background:var(--fill);font-size:12px;line-height:16px}
.dmz .cm3 div{display:grid;grid-template-columns:72px minmax(0,1fr) 52px;gap:9px;align-items:center;padding:2px 0}
.dmz .cm3 span{color:var(--ink-2)}
.dmz .cm3 i{display:block;height:8px;border-radius:4px;background:rgba(0,0,0,.06)}
.dmz .cm3 i b{display:block;height:100%;border-radius:4px;background:rgba(0,0,0,.28)}
.dmz .cm3 .on i b{background:linear-gradient(90deg,var(--th-plancher),var(--th-murs))}
.dmz .cm3 .g i b{background:rgba(0,0,0,.16)}
.dmz .cm3 em{font-style:normal;font-weight:600;text-align:right;white-space:nowrap;color:var(--ink);font-variant-numeric:tabular-nums}
.dmz .cm3 .on em,.dmz .cm3 .on span{color:var(--ink);font-weight:650}
/* machines */
.dmz .mf{display:flex;align-items:center;gap:6px;padding:0 16px 5px;flex-wrap:wrap}
.dmz .mf .menu{position:relative;height:28px;padding:0 8px 0 10px;border-radius:7px;border:0;background:var(--fill);display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--ink-2);white-space:nowrap;cursor:pointer}
.dmz .mf .menu b{color:var(--ink);font-weight:600}
.dmz .mf .menu svg{width:12px;height:12px;color:var(--ink-3)}
.dmz .mf .menu select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font:inherit}
.dmz .mf .menu:has(select:focus-visible){outline:2px solid var(--focus);outline-offset:1px}
.dmz .mf .row2{flex-basis:100%;display:flex;align-items:center;padding-top:2px}
.dmz .mf .cnt{font-size:12px;color:var(--ink-3);white-space:nowrap}
.dmz .mf .cnt b{color:var(--ink);font-weight:600}
.dmz .mf .lk2{border:0;background:none;padding:0 0 0 10px;color:var(--accent-text);font:inherit;font-weight:500;font-size:12px;white-space:nowrap;cursor:pointer}
.dmz .ck2{display:inline-flex;align-items:center;gap:6px;margin-left:12px;font-size:12px;color:var(--ink-2);white-space:nowrap;cursor:pointer}
.dmz .ck2 input{width:14px;height:14px;margin:0;accent-color:var(--accent)}
.dmz .ck2.rap{margin:-6px 16px 12px}
.dmz .mc{padding:0 8px 6px;font-size:12.5px;line-height:17px}
.dmz .mc .r{display:grid;grid-template-columns:22px minmax(0,1fr) 66px 156px 36px 62px 84px;gap:10px;align-items:center;padding:4px 8px;border-radius:8px;min-height:32px;font-variant-numeric:tabular-nums}
.dmz .mc .r+.r{box-shadow:0 -1px 0 var(--line)}
.dmz .mc .r.h{padding-top:0;padding-bottom:4px;font-size:11px;line-height:14px;color:var(--ink-3);box-shadow:none;min-height:0}
.dmz .mc .r>*:nth-child(3),.dmz .mc .r>*:nth-child(5){text-align:right}
.dmz .mc .r .rg{color:var(--ink-3);font-weight:600;text-align:right}
.dmz .mc .r .nm{min-width:0}
.dmz .mc .r .nm b{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
.dmz .mc .r b.kw{font-weight:600;color:var(--ink)}
.dmz .mc .r .cv{display:grid;grid-template-columns:minmax(0,1fr) 50px;gap:8px;align-items:center}
.dmz .mc .r .cv .bt{position:relative;height:6px;border-radius:3px;background:rgba(0,0,0,.07)}
.dmz .mc .r .cv .bt .bd{position:absolute;top:0;bottom:0;background:rgba(31,138,59,.18)}
.dmz .mc .r .cv .bt .v{position:absolute;left:0;top:0;bottom:0;border-radius:3px;background:var(--accent)}
.dmz .mc .r .cv .bt .v.ok{background:var(--success)}
.dmz .mc .r .cv .bt .v.sm{background:var(--warning)}
.dmz .mc .r .cv b{font-weight:600;text-align:right;white-space:nowrap;color:var(--ink)}
.dmz .mc .r .cv b.ok{color:var(--success)}
.dmz .mc .r .cv b.sm{color:var(--warning)}
.dmz .mc .r .fb{font-size:11.5px;color:var(--ink-2)}
.dmz .mc .r span{color:var(--ink-2)}
.dmz .mc .r .ac2{justify-self:end}
.dmz .mc .r .ac2 .btn{height:24px;min-height:24px;font-size:11.5px;padding:0 9px;border:0;border-radius:8px;background:var(--surface);box-shadow:var(--ombre-carte);color:var(--accent-text);font-weight:600;cursor:pointer;transition:transform 140ms var(--dm-ease)}
.dmz .mc .r .ac2 .btn:active{transform:scale(.97)}
.dmz .mc .r .ac2 .btn:disabled{opacity:.5;cursor:default}
.dmz .mc .r .ac2 .on2{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:7px;background:var(--accent);color:var(--on-accent);font-size:11.5px;font-weight:600}
.dmz .mc .r .ac2 .on2 svg{width:11px;height:11px;stroke-width:2.6}
.dmz .mc .r.on{background:var(--accent-soft)}
.dmz .mc .r.on .nm b{color:var(--accent-text)}
.dmz .mc .r.on+.r{box-shadow:none}
.dmz .mc .sep2{display:flex;align-items:center;gap:8px;padding:4px 8px 3px;font-size:11px;line-height:14px;color:var(--warning);font-weight:500}
.dmz .mc .sep2.ho{color:var(--danger)}
.dmz .mc .sep2::after{content:"";flex:1;height:1px;background:var(--line)}
.dmz .mc.mi .r{grid-template-columns:16px minmax(0,1fr) 120px;min-height:28px;padding:3px 8px}
.dmz .ex2{padding:0 16px 8px;font-size:12.5px;line-height:17px}
.dmz .ex2 .r{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:6px 0;border-top:1px solid var(--line);align-items:baseline}
.dmz .ex2 .fnb{display:flex;gap:2px;height:12px;border-radius:4px;overflow:hidden;margin:2px 0 6px}
.dmz .ex2 .fnb i,.dmz .ex2 .fnlg i{display:block}
.dmz .ex2 .sx{background:rgba(229,55,44,.62)}
.dmz .ex2 .sh{background:rgba(0,0,0,.14)}
.dmz .ex2 .sc{background:var(--success)}
.dmz .ex2 .fnlg{display:flex;gap:14px;padding-bottom:6px;font-size:11.5px;line-height:15px;color:var(--ink-2);white-space:nowrap}
.dmz .ex2 .fnlg span{display:flex;align-items:center;gap:5px}
.dmz .ex2 .fnlg i{width:8px;height:8px;border-radius:2.5px}
.dmz .ex2 .fnlg b{color:var(--ink);font-weight:600}
.dmz .ex2 .fnlg+.r{border-top:0}
.dmz .ex2 .r span{color:var(--ink-2)}
.dmz .ex2 .r span small{display:block;font-size:11px;line-height:14px;color:var(--ink-3)}
.dmz .ex2 .r b{font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.dmz .ex2 .r.t{border-top:1px solid var(--line-strong)}
.dmz .ex2 .r.t span,.dmz .ex2 .r.t b{color:var(--ink);font-weight:700}
.dmz .alerte,.dmz .dim-manque{margin:0}
/* Pré-VT : « Rapport Pré-VT » dans l'en-tête de « Chiffrage estimé » (maquette Fiche-PreVT) */
.vt-carte .rpf{margin:0 0 0 auto;display:inline}
.vt-carte .rpb{height:24px;padding:0 9px 0 7px;border:0;border-radius:7px;background:var(--accent-soft);color:var(--accent-text);font:inherit;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:5px;cursor:pointer;transition:transform 140ms cubic-bezier(.23,1,.32,1)}
.vt-carte .rpb:active{transform:scale(.97)}
.vt-carte .rpb svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:800px){.dmz .pn{grid-template-columns:minmax(0,1fr)!important}.dmz .stp{flex-wrap:wrap}.dmz .stp .fil{margin-left:0;white-space:normal}}
/* lot Onglet Dimensionnement : les menus et les cases de la vue Machines ne prennent pas le style des libellés de formulaire du CRM */
.dmz label.menu,.dmz label.ck2{flex-direction:row;gap:6px;align-items:center}
.dmz label.menu{display:inline-flex}.dmz label.ck2{display:inline-flex}
.dmz label.ck2 input{width:14px;height:14px;min-height:0;padding:0;box-shadow:none}

/* ---------- lot Onglets avant les étapes (Mike, 19/10, 18 h 20) : les états d'avant, dans les cartes des maquettes ---------- */
/* VT : les cinq vues du relevé, fermées jusqu'à la visite ; une valeur « après la VT » se lit en discret */
body.fiche #p-vt .vt-bandeau.avant button[disabled]{color:var(--ink-3);cursor:default}
body.fiche #p-vt tr.avant td b,body.fiche #p-vt .vt-ecarts tr.avant td:last-child{color:var(--ink-3);font-weight:500}
body.fiche #p-vt .vt-depot{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:8px;padding-bottom:12px}
body.fiche #p-vt .vt-depot select,body.fiche #p-vt .vt-depot input[type=file]{font-size:13px;max-width:100%}
/* Devis avant le devis : contrôles à venir (rond vide), valeurs « au devis » en discret */
body.fiche #p-devis .dv-ctrl li.nv .pt{box-shadow:inset 0 0 0 1.5px var(--line)}
body.fiche #p-devis .dv-avant .dv-apercu-vide .dv-corps{padding:12px 16px}
body.fiche #p-devis .dv-preteur{margin-top:0}
/* la vue des mandats, en cartes */
body.fiche #p-mandats .mandats-vue .pn-mandats{display:flex;flex-direction:column;gap:12px}
body.fiche #p-mandats .card .pad{padding:4px 16px 14px}
/* Pièces : la bulle « Demander » (Mike, 19/10, 23 h 48), collée sous le bouton de la ligne ; entrée ease-out 160 ms depuis l'échelle .96 */
body.fiche .pz .pz-bulle{position:fixed;z-index:30;min-width:236px;padding:8px;border-radius:12px;background:var(--surface);
  box-shadow:0 0 0 1px var(--line),0 12px 32px rgba(20,32,51,.18);transform-origin:top right;animation:pz-bulle 160ms cubic-bezier(.23,1,.32,1);cursor:default}
@keyframes pz-bulle{from{opacity:0;transform:scale(.96)}}
body.fiche .pz .pz-modes{display:flex;gap:4px}
body.fiche .pz .pz-modes button{flex:1;height:32px;border:0;border-radius:8px;background:var(--fill);color:var(--ink);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:transform 140ms cubic-bezier(.23,1,.32,1),background-color 140ms ease}
body.fiche .pz .pz-modes button:active:not(:disabled){transform:scale(.97)}
body.fiche .pz .pz-modes button:disabled{opacity:.45;cursor:default}
@media (hover:hover) and (pointer:fine){body.fiche .pz .pz-modes button:not(:disabled):hover{background:var(--accent-soft);color:var(--accent-text)}}
body.fiche .pz .pz-res{margin:6px 2px 0;font-size:12.5px;line-height:17px;color:var(--ink-2);white-space:normal}
body.fiche .pz .pz-res:empty{display:none}
body.fiche .pz .pz-res.ok,body.fiche .pz .pz-statut.ok{color:var(--vert,#1a7f45)}
body.fiche .pz .pz-res.err,body.fiche .pz .pz-statut.err{color:var(--danger,#c0261b);font-weight:600}
body.fiche .pz .pz-statut{margin:6px 16px 0;font-size:12.5px;color:var(--ink-2)}
@media (prefers-reduced-motion:reduce){body.fiche .pz .pz-bulle{animation:pz-fondu 120ms ease-out}@keyframes pz-fondu{from{opacity:0}}}
/* ---------- Règle générale (Mike, 19/10, 23 h 48) : la hauteur d'une carte ou d'une section suit son contenu, jamais figée ni étirée pour
   égaler sa voisine, dans tous les onglets de la fiche. Les grilles alignent en haut ; plus de hauteur d'écran imposée aux volets ; la
   dernière carte d'une colonne ne s'allonge plus. Seuls gardent une hauteur les cadres d'image et d'aperçu (carte de la parcelle, aperçu
   d'une pièce), qui n'ont pas de contenu à suivre. ---------- */
body.fiche .panneau .gr,body.fiche .panneau .gr.trois,body.fiche .panneau .dv-grille,body.fiche .panneau .pz .pn,body.fiche #p-client .gr.cl{align-items:start}
body.fiche #p-apercu.on,body.fiche #p-client.on{flex:none}
/* les colonnes de la fiche ne prennent plus le cadre des colonnes du kanban (crm.css, .col : fond, bordure, 420 px au moins) */
body.fiche .panneau .col{background:none;border:0;border-radius:0;min-height:0}
body.fiche #p-apercu .gr,body.fiche #p-client .gr.cl{flex:none;grid-template-rows:none}
body.fiche .panneau .col>.card,body.fiche .panneau .col>.card:last-child,body.fiche .panneau .col>.rq,body.fiche #p-client .card.par,body.fiche #p-client .kf{flex:none}
body.fiche .panneau .pz .pn,body.fiche .panneau .pz.da .pn,body.fiche .panneau .pz.ch .pn{height:auto;min-height:0}
body.fiche .panneau .pz .scr{flex:none;overflow:visible}
body.fiche .panneau .pz .sheet{flex:none;height:420px;min-height:0}
body.fiche #p-client .pv{flex:none;height:220px}
body.fiche .panneau .dmz .col>.card:last-child{flex:none}
body.fiche .panneau .tiers-cote>.carte:last-child{flex:none}
body.fiche .panneau .pz.sv .sv-vide{min-height:0}
body.fiche #p-apercu .gr,body.fiche #p-client .gr.cl,body.fiche #p-devis .dv-grille{align-items:start}
body.fiche #p-apercu .col>.card,body.fiche #p-apercu .col>.card:last-child,body.fiche #p-client .card.par,body.fiche #p-client .kf{flex:none}

/* VT : le bouton rond « Voir » des documents de la visite (maquette Fiche-VT) */
body.fiche #p-vt .vt-carte .piece{display:flex;align-items:center;gap:10px}
body.fiche #p-vt .vt-carte .piece>div{flex:1;min-width:0}
body.fiche #p-vt .vt-voir{flex:none;width:30px;height:30px;border-radius:50%;background:var(--fill);color:var(--ink-2);display:grid;place-items:center;transition:transform 140ms cubic-bezier(.23,1,.32,1)}
body.fiche #p-vt .vt-voir:active{transform:scale(.97)}
body.fiche #p-vt .vt-voir svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}

/* ---- plancher 12 px (outils/plancher-12px.py) : début ---- */
:is(#p-vt,#p-aides,#p-devis,#p-mandats) :is(small,h3,.libelle,.surtitre,.badge,.chrono small,.tableau th,.tab th,.col-t em,.kcarte .l1 span,.kcarte .tag,.type-fil .fil-choisi,.top .marque b,.num,.liste-pipeline .phase,.note-dim-doc .doc-entete .l2,.note-dim-doc .doc-pied,.plus-fils,.ban-sug em,.vt-complement-feuille .cpl h4,.vt-complement-feuille .cpl label em,.appel-suivant kbd,.pastille-file,.rail .find kbd,.rail .moi .avatar,.rail .moi summary small,dialog.palette kbd,.fiche-tete .map small,.fiche-tete .src,.fiche-tete .src .tag.meta,.fiche-tete .pl small,.fiche-tete .pl em,.jr .mini,.jr .st small,.jr .na .cd,.jr .na .alertes-appel span,.jr .na .clock small,body.fiche .card>h3 .tag,#p-apercu .k small,#p-apercu .k b em,#p-apercu .k .tag,#p-apercu .fi .rac small,#p-apercu .pc .miss .tag,#p-apercu .ev .t small,body.fiche .onglets button i,#p-client .k small,#p-client .k b em,#p-client .k .sub,#p-client .k .tag,#p-client .vt,#p-client .mo time,body.fiche .panneau .champ>span,body.fiche .panneau .tab.kv td small,body.fiche .vt-chiffrage .ch-vis .k small,body.fiche .vt-chiffrage .ch-vis .k b em,body.fiche .vt-chiffrage .ch-vis .rac small,body.fiche .vt-chiffrage .vt-lignes td small,body.fiche .vt-chiffrage .modif-chiffrage label,body.fiche .panneau .vt-chiffres-grille th,body.fiche .panneau .vt-chiffres-grille td small,body.fiche #p-devis .dv-lignes small,body.fiche #p-devis .dv-net small,.h2c .cols small,.h2c .kb,.ma-file .sg button span,.ma-file .groupe-file,.ma-file .row .tm small,.tp .av,.kp small,.gx .pt .trp small,.chp,table.liste-pipeline .ps .phase,table.liste-pipeline .who2 .av,.vue-phases .who2 .av,.kanban .kh em,.kanban .kc .n small,.kanban .kc .ft .av,table.liste-dossiers .who2 .av,.fiche-tete .src .nrp-alerte,body.fiche #p-prevt .bloc-t .cpt,body.fiche #p-prevt .vt-validation .obs small,.jr .st small.etape-dossiers .voyants,.seg-tiers a i,.tiers-liste th,.tiers-liste .tn small,.page-tiers .ini,.page-tiers .tag,.etat-tiers,.page-tiers .sv small,.page-tiers .sv .dd,.tiers-tete .ctl,.tiers-siret label,.tiers-carte .li>span,.tiers-carte .li>b small,.tiers-conf .cf small,.tiers-conf .cf .dd,.tiers-conf .cf .lien-doc,.tiers-conf .cf form.depot,.tiers-conf .cf form.depot input[type=file],.tiers-conf .cf form.depot input[type=date],.frise-ech h3,.frise-ech .pt-ech em,.tiers-dossiers .kpis small,.tiers-dossiers .tdos .gris,.tiers-dossiers .chip,.ta-tt span,.ta-grille small,.ta-raison,.ta-d>label small,.ta-tva legend,.ta-tva .opt small,form.dv-tiers label,.tiers-carte form.depot-ctt,.tiers-carte form.depot-ctt input[type=file],.page-tiers .pt.orange,.pz .seg button i,.pz .de small,.pz .grp,.pz .pr .t small,.pz .dt,.pz .pr time,.pz .ap .hdx .tt small,.pz .ap .tag,.pz .cap2,.pz .ap .k small,.pz .mt small,.pz .mt label,.pz .pg,.da .sum .ft,.da .kv div span,.da .ah .mt small,.da .sp .t1 small,.da .sp .d,.da .sp .t small,.da .sp time,.da .chips span,.da .dvck i.wn,.da .dvck .t small,.bk .kl small,.ch .dvck .t small,.ch .cnote,.ch .chd small,.ch .tl .t small,.ch .tl time,.ch .vc-envoi small,.plh .lg,.pgrid .who small,.pgrid .who .cap,.pev,.pz.sv .tk .tg2,.liste-pipeline .tag.npa,.ligne-file .tag.npa,.appel-suivant .tag.npa,.rappels-autoriser .ra-l small,.adm-nav h6,.adm-nav a .rk,.ap .aph,.ap .apr small,.plr time,.ap .att .sug small,.ap .att .res small,.hpl time,.choix-moyen button,.dmz .tag,.dmz .stp .fil .tag,.dmz .big .dlt,.dmz .hl,.dmz .k small,.dmz .k b em,.dmz .gg .gv .ok,.dmz .tks,.dmz .pw3 small,.dmz .pw3 span,.dmz .pws,.dmz .dc .t small,.dmz .dc .tag.br,.dmz .dc .tag.ok2,.dmz .cp div.h,.dmz .vd3 small,.dmz .nt,.dmz .hc .it .n2,.dmz .hc .t small,.dmz .hc .v,.dmz .hs i,.dmz .dp .r.h,.dmz .dp .r span.cmp small,.dmz .mc .r.h,.dmz .mc .r .fb,.dmz .mc .r .ac2 .btn,.dmz .mc .r .ac2 .on2,.dmz .mc .sep2,.dmz .ex2 .fnlg,.dmz .ex2 .r span small){font-size:12px!important}
/* ---- plancher 12 px : fin ---- */

/* ===== Onglet Historique (lot Console ; maquettes fiche-onglets/Fiche-Historique, -Journal, -Lead, 02/10) : la liste par jour à gauche, le détail
   de la ligne ouverte à droite. Une seule couleur par sens : gris pour le canal, vert pour une issue acquise, orange pour ce qui reste à faire,
   rouge pour ce qui n'est pas parti. ===== */
.hs{display:flex;flex-direction:column;gap:12px}
.hs .pn{grid-template-columns:minmax(0,1fr) 372px;min-height:0;height:auto;align-items:start}
.hs .pn[hidden]{display:none}
.hs .pbar .srch{width:260px}
.hs .lst{display:flex;flex-direction:column;min-height:0}
.hs .lst .scr{padding:2px 8px 8px;max-height:calc(100vh - 330px);overflow:auto;scrollbar-width:thin}
.hs .vide{margin:10px 16px;color:var(--ink-3);font-size:13px}
.hs .dy{display:flex;align-items:baseline;gap:8px;padding:9px 8px 3px;font-size:11.5px;line-height:15px;font-weight:600;color:var(--ink-2);position:sticky;top:0;background:var(--surface);z-index:1}
.hs .dy[hidden],.hs .hev[hidden]{display:none}
.hs .dy i{font-style:normal;font-weight:500;color:var(--ink-3)}
.hs .hev{width:100%;border:0;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background-color 150ms ease;display:grid;
  grid-template-columns:26px 176px minmax(0,1fr) auto 40px;align-items:center;gap:0 12px;padding:4px 8px;min-height:34px;border-radius:9px;position:relative}
.hs .hev+.hev::before{content:"";position:absolute;top:0;left:46px;right:8px;height:1px;background:var(--line)}
.hs .hev.on{background:var(--accent-soft)}
.hs .hev.on::before,.hs .hev.on+.hev::before{display:none}
.hs .hev:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.hs .hev .hw{min-width:0}
.hs .hev .hw b{display:block;font-size:12.5px;line-height:17px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hs .hev .hw small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hs .hev .hsm{min-width:0;font-size:12.5px;line-height:17px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hs .hev .hsm .vo{color:var(--ink-3);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--ink) 25%,transparent)}
.hs .hev .hsm .vn2{color:var(--ink);font-weight:600}
.hs .hev .hsm .ar{display:inline-block;width:11px;height:11px;vertical-align:-1px;margin:0 4px;color:var(--ink-3)}
.hs .hev .hsm .ar svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.6}
.hs .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hs .hev time{font-size:11.5px;line-height:17px;color:var(--ink-3);font-variant-numeric:tabular-nums;text-align:right}
.hs .hev.on .hw b{color:var(--accent-text)}
@media (hover:hover) and (pointer:fine){.hs .hev:not(.on):hover{background:var(--fill)}}
.hs .cn{width:26px;height:26px;border-radius:50%;background:var(--fill);color:var(--ink-2);display:grid;place-items:center;flex:none}
.hs .cn.cl{background:color-mix(in srgb,#158a83 14%,transparent);color:#127670}
.hs .cn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.hs .is{height:20px;padding:0 7px;border-radius:6px;background:var(--fill);color:var(--ink-2);font-size:11px;font-weight:600;display:inline-flex;align-items:center;white-space:nowrap}
.hs .is.ok{background:var(--success-soft);color:var(--success)}
.hs .is.td{background:var(--warning-soft);color:var(--warning)}
.hs .is.rf{background:var(--danger-soft);color:var(--danger)}
.hs .cmp{display:flex;align-items:center;gap:8px;margin:0 16px 4px;padding:0 5px 0 12px;height:36px;border-radius:10px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-strong,var(--line));color:var(--ink-3);font-size:12.5px}
.hs .cmp svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;flex:none}
.hs .cmp input{flex:1;min-width:0;border:0;outline:0;background:none;font:inherit;font-size:12.5px;color:var(--ink);padding:0;height:auto;box-shadow:none}
.hs .cmp .act{height:26px;padding:0 10px;border:0;border-radius:7px;background:var(--accent-soft);color:var(--accent-text);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer}
.hs .cmp .act:active{transform:scale(.97)}
.hs .dtl{position:sticky;top:12px}
.hs .dtl .hdx{display:flex;align-items:center;gap:10px;padding:14px 12px 10px 16px}
.hs .dtl .hdx .cn{width:34px;height:34px}
.hs .dtl .hdx .cn svg{width:16px;height:16px}
.hs .dtl .hdx .tt{flex:1;min-width:0}
.hs .dtl .hdx .tt small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.hs .dtl .hdx .tt b{display:block;font-size:15px;line-height:20px;font-weight:650;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hs .dtl .kv{padding:0 16px;display:grid;grid-template-columns:76px minmax(0,1fr)}
.hs .dtl .kv span,.hs .dtl .kv b{padding:7px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px}
.hs .dtl .kv span{color:var(--ink-2)}
.hs .dtl .kv b{font-weight:500;color:var(--ink);overflow-wrap:anywhere}
.hs .dtl .kv b.td{color:var(--warning);font-weight:600}
.hs .dtl .kv b.rf{color:var(--danger);font-weight:600}
.hs .nt{margin:10px 16px 0;padding:10px 12px;border-radius:10px;background:var(--fill);font-size:12.5px;line-height:18px;color:var(--ink);overflow-wrap:anywhere}
.hs .nt small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3);margin-bottom:3px}
.hs .dtl h3{padding-top:14px}
.hs .hsub{padding:0 16px;display:flex;flex-direction:column}
.hs .hsub>div{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 0;border-top:1px solid var(--line);font-size:12.5px}
.hs .hsub>div:first-child{border-top:0}
.hs .hsub i svg{width:14px;height:14px;fill:none;stroke:var(--ink-3);stroke-width:1.5}
.hs .hsub b{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hs .hsub time{font-size:11.5px;color:var(--ink-3)}
.hs .ctn{margin:10px 16px 0;border-radius:10px;box-shadow:inset 0 0 0 1px var(--line)}
.hs .ctn summary{padding:9px 12px;font-size:12.5px;font-weight:600;color:var(--accent-text);cursor:pointer;list-style:none}
.hs .ctn summary::-webkit-details-marker{display:none}
.hs .ctn .obj{padding:0 12px 8px;font-size:12.5px;color:var(--ink)}
.hs .ctn .obj small{display:block;font-size:11.5px;color:var(--ink-3)}
.hs .ctn iframe.mail{display:block;width:100%;height:360px;border:0;border-top:1px solid var(--line);background:#fff;border-radius:0 0 10px 10px}
.hs .ctn pre.txt{margin:0;padding:10px 12px;border-top:1px solid var(--line);white-space:pre-wrap;font:12.5px/18px inherit;color:var(--ink)}
.hs .vls{padding:0 16px;display:flex;flex-direction:column}
.hs .vls>div{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:8px;align-items:start;padding:7px 0}
.hs .vls i{width:10px;height:10px;border-radius:50%;margin-top:4px;box-shadow:inset 0 0 0 1.5px var(--ink-3)}
.hs .vls .on i{background:var(--accent);box-shadow:none}
.hs .vls b{display:block;font-size:12.5px;font-weight:600}
.hs .vls small{display:block;font-size:11.5px;color:var(--ink-3)}
.hs .vls time{font-size:11.5px;color:var(--ink-3)}
.hs .dfoot2{padding:12px 16px 14px;display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:6px}
.hs .dfoot2 .btn{justify-content:center}
.hs .dfoot2 svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6}
.hs .raw{margin:6px 16px 0;padding:10px 12px;border-radius:10px;background:var(--fill);font:11.5px/16px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--ink-2);white-space:pre-wrap;overflow:auto;max-height:260px}
.hs .p2l{grid-template-columns:minmax(0,1fr) 372px}
.hs .ld .kv2{padding:0 16px;display:grid;grid-template-columns:1fr 1fr;column-gap:28px}
.hs .ld .kv2>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px}
.hs .ld .kv2>div[hidden]{display:none}
.hs .ld .kv2 span{color:var(--ink-2)}
.hs .ld .kv2 b{font-weight:500;color:var(--ink);text-align:right;overflow-wrap:anywhere}
.hs .ld .msg-lead{margin:4px 16px 0;padding:10px 0;border-top:1px solid var(--line);display:flex;gap:16px;font-size:12.5px}
.hs .ld .msg-lead span{color:var(--ink-2);flex:none}
.hs .ld .msg-lead b{font-weight:500}
@media (max-width:1100px){.hs .pn,.hs .p2l{grid-template-columns:minmax(0,1fr)}.hs .ld .kv2{grid-template-columns:1fr}.hs .dtl{position:static}}
@media (prefers-reduced-motion:reduce){.hs .cmp .act:active{transform:none}}
/* lot Console (maquette Fiche-VT-Jour) : carte La visite, « Réalisée par » en boutons segmentés, la ligne « Technicien » en liste, le lien du
   bureau en adresse courte (Copier, Renvoyer, Révoquer), la demande de visite à transmettre au technicien */
.mobile-tech .vt-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:2px;border-radius:8px;background:var(--fill);margin:0 16px 10px}
.mobile-tech .vt-modes.n4{grid-template-columns:repeat(4,auto)}
.mobile-tech .vt-modes button{height:26px;border:0;border-radius:6px;background:transparent;font-size:12px;font-weight:500;color:var(--ink-2);white-space:nowrap;padding:0 5px}
.mobile-tech .vt-modes button[aria-pressed="true"]{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.mobile-tech .vt-modes button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.mobile-tech .vt-tech-f{display:flex;justify-content:flex-end;margin:0}
.mobile-tech .vt-liste{height:28px;padding:0 8px 0 10px;border-radius:7px;border:0;background:var(--fill);font-weight:600;color:var(--ink);font-size:12.5px;max-width:100%}
.mobile-tech .lnk{margin:2px 16px 12px;padding:9px 11px;border-radius:9px;background:var(--fill);font-size:12.5px;line-height:17px;min-width:0}
.mobile-tech .lnk .u{display:flex;align-items:center;gap:7px;font-weight:600;color:var(--accent-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}
.mobile-tech .lnk .u svg{width:14px;height:14px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.mobile-tech .lnk small{display:block;color:var(--ink-3);font-size:11.5px;line-height:15px;margin-top:2px}
.mobile-tech .lnk .ac{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
.mobile-tech .lnk .ac form{margin:0}
.mobile-tech .lnk .ac .btn{height:26px;font-size:12px;padding:0 10px;border:0;background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(20,32,51,.12)}
.mobile-tech .lnk .ac .btn.no{color:var(--danger)}
.mobile-tech .vt-lien-f{flex-wrap:wrap}
.mobile-tech .vt-demande{margin:4px 16px 12px;padding:9px 11px;border-radius:9px;background:var(--fill);font-size:12.5px;line-height:17px}
.mobile-tech .vt-demande-t{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
.mobile-tech .vt-demande-t .btn{height:26px;font-size:12px;padding:0 10px;background:var(--surface);color:var(--ink)}
.mobile-tech .vt-demande pre{margin:0;white-space:pre-wrap;word-break:break-word;font:inherit;color:var(--ink)}
.mobile-tech .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;padding:0;border:0}
.mobile-tech .vt-modes button:disabled{opacity:.45;cursor:default}
.mobile-tech .vt-liste:disabled{opacity:1;color:var(--ink);cursor:default}
/* lot Console (B8) : une case vide de l'en-tête dit l'étape qui la donnera (« à la qualification », « après la VT ») ; ce texte, plus large qu'une
   valeur, va à la ligne dans sa case pour que l'en-tête garde sa place à 1366 px */
.fiche-tete .pl.vide b{display:block;white-space:normal;max-width:6.6em;font-size:12px;line-height:14px}
/* lot Console (B9 ; Mike, 20/10/2026, 0 h 10) : sur Aujourd'hui, Pipeline et Administration, la hauteur suit le contenu (seules les colonnes du
   kanban gardent la leur). Mesure du 20/10 (tests/specs/99-hauteurs-captures.spec.js) : seul l'écran Tiers étirait ses cartes à la hauteur
   de la fenêtre (« Tiers » 880 px pour 200 px de contenu, « À surveiller » 880 px pour 425 px) */
.tiers-corps{flex:none;align-items:start}
.tiers-cote>.carte:last-child{flex:none}
/* lot Console (maquette Fiche-Historique) : l'Historique est une colonne (flex) ; la règle des grilles alignées en haut (19/10) y rétrécissait la
   barre et la liste à leur contenu. En largeur, elles prennent toute la place ; en hauteur, rien ne change (la hauteur suit le contenu) */
body.fiche .panneau .gr.hs{align-items:stretch}
.hs .dtl .kv b.ok{color:var(--success);font-weight:600}

/* ===== correctif du 22/10 (rapport de l'avant production 3 bis) ===== */
/* h : onglet Dimensionnement. « .gr » (align-items:start, ligne 2210) s'applique aussi à « .dmz » : sa grille prenait la largeur de son contenu
   (1128 px au lieu de 1176 à 1440). Les trois colonnes vont jusqu'au bord droit comme les autres onglets ; le bandeau des vues garde sa largeur */
body.fiche .panneau .dmz>.pn{align-self:stretch}
/* i : rangée des onglets de la fiche, à 1366 le onzième onglet (« Historique », étape Signé) dépassait de 31 px : espacement resserré sous 1400 px */
@media (max-width:1400px){body.fiche .onglets{gap:4px}}
/* correctif essai de Mike : l'œil du Rapport Pré-VT est un bouton dans un formulaire (même route que l'onglet Pré-VT) */
.pz .pr .rt form.rpf{display:inline-flex;margin:0}
.vt-carte .rpb[aria-busy="true"],.pz .ib[aria-busy="true"]{opacity:.55;cursor:progress}

/* ===== lot Fournisseurs et achats (bloc 3 ; maquettes achats/Commandes, Fiche-Chantier-Commandes, Signature-Devis-Fournisseur) ===== */
/* écran « Commandes » (menu Gestion) : filtres par état (pastilles avec leur nombre) et par fournisseur, liste groupée, détail à droite */
.page-commandes .vw2,.page-commandes .vw3{display:flex;gap:6px;flex-wrap:wrap}
.page-commandes .vw2 a{height:30px;padding:0 12px;border-radius:15px;background:var(--surface);box-shadow:0 0 0 1px var(--line);font-size:12.5px;font-weight:500;color:var(--ink);display:inline-flex;align-items:center;gap:6px;text-decoration:none;transition:transform 160ms var(--eo),background-color 160ms ease}
.page-commandes .vw2 a b{font-weight:600;color:var(--ink-3);font-variant-numeric:tabular-nums}
.page-commandes .vw2 a[aria-pressed="true"]{background:var(--accent-soft);color:var(--accent-text);box-shadow:inset 0 0 0 1.5px var(--accent)}
.page-commandes .vw2 a[aria-pressed="true"] b{color:var(--accent-text)}
.page-commandes .vw3{margin-top:-4px}
.page-commandes .vw3 a{height:26px;padding:0 10px;border-radius:13px;border:1px solid var(--line);background:transparent;font-size:12px;font-weight:500;color:var(--ink-2);display:inline-flex;align-items:center;white-space:nowrap;text-decoration:none;transition:transform 160ms var(--eo)}
.page-commandes .vw3 a[aria-pressed="true"]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text)}
.page-commandes .press:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.page-commandes .vw2 a:hover,.page-commandes .vw3 a:hover{background:var(--fill)}}
.cmd-gx{flex:1;min-height:0}
.gx .cmd{min-height:0}
.gx .cmd .thp,.gx .cmd .trp{display:grid;grid-template-columns:100px minmax(0,1.15fr) minmax(0,1.3fr) minmax(0,1.35fr) 90px 84px;gap:12px;align-items:center;padding:0 16px}
.gx .cmd .thp{height:30px;font-size:11.5px;font-weight:600;color:var(--ink-3);border-bottom:1px solid var(--line)}
.gx .cmd .rt{text-align:right}
.gx .cmd .trp{min-height:56px;padding-top:8px;padding-bottom:8px;color:var(--ink);text-decoration:none}
.gx .cmd .trp>span:nth-child(2) b,.gx .cmd .trp>span:nth-child(3) b,.gx .cmd .trp>span:nth-child(4) b{white-space:normal}
.gx .cmd .trp.sel{background:var(--accent-soft)}
.gx .cmd .trp .m{font-weight:650;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.gx .cmd .tag,.va-mat .art .tag{height:20px;padding:0 8px;border-radius:10px;font-size:11px;font-weight:600;display:inline-flex;align-items:center;line-height:1}
.gx .cmd .vide{padding:12px 16px;color:var(--ink-3);font-size:12.5px}
.cmd-det{display:flex;flex-direction:column}
.cmd-det h3{display:flex;align-items:center;gap:8px}
.cmd-det h3 .r{margin-left:auto;font-weight:500;color:var(--accent-text)}
.cmd-det .kv2{margin:0 16px 8px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:0}
.cmd-det .kv2>span,.cmd-det .kv2>b{padding:6px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px}
.cmd-det .kv2>span:nth-child(-n+2),.cmd-det .kv2>b:nth-child(-n+2){border-top:0}
.cmd-det .kv2>span{color:var(--ink-2)}
.cmd-det .kv2>b{font-weight:600;color:var(--ink);text-align:right;padding-left:12px}
.cmd-det .ln3{margin:0 16px;display:grid;grid-template-columns:minmax(0,1fr) 44px 100px;gap:0}
.cmd-det .ln3>*{padding:7px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px}
.cmd-det .ln3>.h{border-top:0;padding-top:2px;font-size:11.5px;font-weight:600;color:var(--ink-3)}
.cmd-det .ln3 b{display:block;font-weight:600;color:var(--ink)}
.cmd-det .ln3 small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.cmd-det .ln3 .q,.cmd-det .ln3 .m{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.cmd-det .ln3 .m{font-weight:600}
.cmd-det .cmd-prix-f{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.cmd-det .cmd-prix{width:88px;height:26px;border-radius:7px;border:0;background:var(--fill);padding:0 8px;font:inherit;font-size:12px;text-align:right;color:var(--ink)}
.cmd-det .tt3{margin:4px 16px 0;display:grid;grid-template-columns:1fr auto;gap:2px 12px;font-size:12.5px;line-height:18px}
.cmd-det .tt3 span{color:var(--ink-2)}
.cmd-det .tt3 b{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
.cmd-det .tt3 .g{font-size:14px;font-weight:650;color:var(--ink)}
.cmd-det .kl{margin-top:8px;padding:6px 16px 2px;display:flex;flex-direction:column}
.cmd-det .kl>div{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:8px;align-items:start;padding:6px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px;color:var(--ink)}
.cmd-det .kl>div:first-child{border-top:0}
.cmd-det .kl i{width:16px;height:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-top:1px}
.cmd-det .kl i svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.cmd-det .kl i.ok{background:var(--success-soft);color:var(--success)}
.cmd-det .kl i.mq{background:var(--warning-soft);color:var(--warning-sur-fond)}
.cmd-det .kl i.nt{background:var(--fill);color:var(--ink-3)}
.cmd-det .kl small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.cmd-det .kl em{font-style:normal;font-size:12px;font-weight:600;color:var(--ink-2);white-space:nowrap;font-variant-numeric:tabular-nums}
.cmd-det .cf2{padding:12px 16px 14px;display:flex;flex-direction:column;gap:6px}
.cmd-det .cf2 form{margin:0}
.cmd-det .cf2 .btn{width:100%;height:32px;justify-content:center;border-radius:8px;border:0;font-size:13px;font-weight:500;display:inline-flex;align-items:center;gap:6px;background:var(--fill);color:var(--ink);text-decoration:none;cursor:pointer;transition:transform 160ms var(--eo)}
.cmd-det .cf2 .btn.acc{background:var(--accent);color:var(--on-accent)}
.cmd-det .cf2 .btn:active{transform:scale(.97)}
.cmd-det .cf2 svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cmd-det .cn2{margin:0 16px 12px;font-size:11.5px;line-height:16px;color:var(--ink-3)}
.cmd-det .cmd-alerte{margin:8px 16px 0;padding:10px 12px;border-radius:10px;background:var(--warning-soft);color:var(--warning-sur-fond);font-size:12.5px;line-height:17px;font-weight:550}
.cmd-det .cmd-alerte.vu{background:var(--fill);color:var(--ink-2);font-weight:500}
.cmd-det .cmd-gestes{padding:0 16px 14px;display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--line);padding-top:12px}
.cmd-det .cmd-ligne{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.cmd-det .cmd-gestes input,.cmd-det .cmd-gestes select{height:28px;border-radius:7px;border:0;background:var(--fill);padding:0 8px;font:inherit;font-size:12px;color:var(--ink);min-width:0}
.cmd-det .cmd-gestes input[type=file]{padding:4px 6px;max-width:100%}
.cmd-det .cmd-gestes .btn{height:28px;padding:0 12px;border-radius:7px;border:0;background:var(--fill);color:var(--ink);font-size:12px;font-weight:500;cursor:pointer}
.cmd-det .cmd-facture summary{font-size:12.5px;font-weight:600;color:var(--ink);cursor:pointer;padding:2px 0}
.cmd-det .cmd-ff{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.cmd-det .cmd-ff label{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--ink-2)}
.cmd-det .cmd-fl{display:grid;grid-template-columns:minmax(0,1fr) 72px 44px 80px;gap:6px;align-items:center;font-size:12px;color:var(--ink)}
.cmd-det .cmd-fl input{text-align:right}

/* onglet Chantier, carte « Matériel » : un article par ligne, sa commande et son état ; le menu « Commander » sort du bouton */
.va-mat{display:flex;flex-direction:column;position:relative}
.va-mat .art{margin:0 16px;display:flex;flex-direction:column}
.va-mat .art>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:8px 0;border-top:1px solid var(--line)}
.va-mat .art>div:first-child{border-top:0;padding-top:2px}
.va-mat .art b{font-size:12.5px;line-height:17px;font-weight:600;color:var(--ink)}
.va-mat .art small{grid-column:1;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.va-mat .art .tag{grid-row:1/3;grid-column:2;align-self:center}
.va-mat .va-liv{margin-top:6px}
.mn4{position:absolute;left:16px;bottom:58px;width:290px;padding:6px;border-radius:12px;background:var(--surface);box-shadow:0 0 0 .5px rgba(0,0,0,.12),0 18px 40px -12px rgba(0,0,0,.28);transform-origin:bottom left;z-index:3;
  transition:opacity 180ms var(--eo),transform 180ms var(--eo)}
.mn4[hidden]{display:block;opacity:0;transform:scale(.96);pointer-events:none;visibility:hidden}
.mn4 button{width:100%;display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border:0;border-radius:8px;background:transparent;text-align:left;font:inherit;font-size:12.5px;line-height:17px;color:var(--ink);cursor:pointer}
.mn4 button:focus-visible{outline:2px solid var(--focus,var(--accent));outline-offset:-2px}
@media (hover:hover) and (pointer:fine){.mn4 button:hover{background:var(--fill)}}
.mn4 button svg{margin-top:1px;width:16px;height:16px;flex:none;color:var(--accent);fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ch .cfoot .btn svg,.jr .na .btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.dlg-ach .va-art{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.dlg-ach .va-art legend{font-size:12.5px;color:var(--ink-2);margin-bottom:4px;padding:0}
.dlg-ach .va-art label.coche{flex-direction:row;align-items:center;gap:8px;color:var(--ink)}
.dlg-ach footer .btn.acc{background:var(--accent);color:var(--on-accent)}
/* onglet Devis : « Netatmo » et « Accessoires », achetés au fournisseur ou fournis par le poseur */
.va-choix .seg button:disabled{cursor:default;opacity:1}
.va-choix .seg button:disabled:not(.on){color:var(--ink-3)}

/* « Signer le devis du fournisseur » : le devis à gauche, le bloc « Bon pour accord » à glisser ; le panneau à droite */
.dlg-sf{width:min(1080px,calc(100vw - 32px));height:min(900px,calc(100vh - 32px));padding:0;border:0;border-radius:16px;background:var(--surface);color:var(--ink);box-shadow:var(--ombre-pop,0 24px 60px -20px rgba(0,0,0,.4));overflow:hidden}
.dlg-sf::backdrop{background:rgba(15,23,42,.35)}
.dlg-sf .sf{height:100%;display:grid;grid-template-columns:minmax(0,1fr) 320px}
.dlg-sf .sf-g{background:var(--surface-doux,var(--fill));overflow:auto;display:flex;justify-content:center;align-items:flex-start;padding:24px}
.dlg-sf .sf-feuille{position:relative;width:520px;max-width:100%;background:#fff;box-shadow:0 0 0 1px var(--line),0 6px 20px -10px rgba(0,0,0,.25);touch-action:none}
.dlg-sf .sf-feuille>img{display:block;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}
.dlg-sf .sf-bloc{position:absolute;aspect-ratio:240/133;padding:2.4% 2.6%;border:1.5px dashed var(--accent);border-radius:6px;background:rgba(239,245,255,.92);color:#16202e;font-size:11px;line-height:14px;cursor:grab;display:flex;flex-direction:column;align-items:flex-start;user-select:none;touch-action:none}
.dlg-sf .sf-bloc.tient{cursor:grabbing;box-shadow:0 8px 22px -10px rgba(30,94,230,.6)}
.dlg-sf .sf-bloc:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.dlg-sf .sf-bloc b{font-weight:700;font-size:11.5px}
.dlg-sf .sf-bloc img{margin-top:auto;max-width:72%;max-height:46%;object-fit:contain}
.dlg-sf .sf-bloc i{margin-top:auto;width:46%;height:38%;border:2px solid #2b4fd8;border-radius:6px;opacity:.55;transform:rotate(-4deg)}
.dlg-sf .sf-d{position:relative;display:flex;flex-direction:column;gap:12px;padding:24px 18px 18px;border-left:1px solid var(--line)}
.dlg-sf .sf-d h2{margin:0;font-size:17px;line-height:22px;font-weight:700;letter-spacing:-.01em}
.dlg-sf .sf-recu{margin:0;font-size:12.5px;line-height:17px;color:var(--ink-2)}
.dlg-sf .kv2{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0}
.dlg-sf .kv2>span,.dlg-sf .kv2>b{padding:7px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px}
.dlg-sf .kv2>span:nth-child(-n+2),.dlg-sf .kv2>b:nth-child(-n+2){border-top:0}
.dlg-sf .kv2>span{color:var(--ink-2)}
.dlg-sf .kv2>b{font-weight:600;text-align:right;padding-left:12px}
.dlg-sf .kv2>b.w{color:var(--warning-sur-fond)}
.dlg-sf .sf-pg button{height:22px;min-width:22px;padding:0 4px;border:0;background:var(--fill);border-radius:6px;margin:0 4px;font:inherit;cursor:pointer}
.dlg-sf .sf-note{margin:0;font-size:12.5px;line-height:17px;color:var(--ink-2)}
.dlg-sf .sp{flex:1}
.dlg-sf .btn{height:34px;border-radius:9px;border:0;font:inherit;font-size:13px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--fill);color:var(--ink);cursor:pointer;transition:transform 160ms var(--eo)}
.dlg-sf .btn.acc{background:var(--accent);color:var(--on-accent)}
.dlg-sf .btn:active{transform:scale(.97)}
.dlg-sf .btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.dlg-sf .x{position:absolute;top:10px;right:10px;width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:var(--ink-2);font-size:20px;cursor:pointer}
@media (prefers-reduced-motion:reduce){.mn4{transition:opacity 150ms ease}.mn4[hidden]{transform:none}.dlg-sf .btn:active,.cmd-det .cf2 .btn:active,.page-commandes .press:active{transform:none}}
@media (max-width:900px){.dlg-sf .sf{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto}.dlg-sf .sf-d{border-left:0;border-top:1px solid var(--line)}}

/* ===== lot Prélèvements SEPA (bloc 3 ; maquettes gestion/Prelevements et gestion/Admin-Prelevement) ===== */
/* écran « Prélèvements » (menu Gestion) : les états en pastilles, la table groupée par date, la remise à la banque, l'échéancier du dossier */
.page-prelevements .vw2{display:flex;gap:6px;flex-wrap:wrap}
.page-prelevements .vw2 a{height:30px;padding:0 12px;border-radius:15px;background:var(--surface);box-shadow:0 0 0 1px var(--line);font-size:12.5px;font-weight:500;color:var(--ink);display:inline-flex;align-items:center;gap:6px;text-decoration:none;transition:transform 160ms var(--eo),background-color 160ms ease}
.page-prelevements .vw2 a b{font-weight:600;color:var(--ink-3);font-variant-numeric:tabular-nums}
.page-prelevements .vw2 a.rk b{color:var(--danger)}
.page-prelevements .vw2 a[aria-pressed="true"]{background:var(--accent-soft);color:var(--accent-text);box-shadow:inset 0 0 0 1.5px var(--accent)}
.page-prelevements .vw2 a[aria-pressed="true"] b{color:var(--accent-text)}
.page-prelevements .press:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.page-prelevements .vw2 a:hover{background:var(--fill)}}
.page-prelevements .ph0 p{margin:0 0 4px;color:var(--ink-2);font-size:13.5px}
.prl-gx{flex:1;min-height:0}
.prl-sel{margin:0;display:flex;flex-direction:column;min-height:0}
.gx .prl .thp,.gx .prl .trp{display:grid;grid-template-columns:22px minmax(0,1.5fr) minmax(0,1.3fr) 84px 118px 70px 112px;gap:12px;align-items:center;padding:0 16px}
.gx .prl.prl-sans-case .thp,.gx .prl.prl-sans-case .trp{grid-template-columns:minmax(0,1.5fr) minmax(0,1.3fr) 84px 118px 70px 112px}
.gx .prl.prl-sans-case .thp>span:first-child,.gx .prl.prl-sans-case .trp>span:first-child{display:none}
.gx .prl .thp{height:30px;font-size:11.5px;font-weight:600;color:var(--ink-3);border-bottom:1px solid var(--line)}
.gx .prl .rt{text-align:right}
.gx .prl .grp{padding:12px 16px 6px}
.gx .prl .grp b{margin-left:auto;font-weight:650;font-variant-numeric:tabular-nums}
.gx .prl .trp{min-height:52px;cursor:default}
.gx .prl .trp.sel{background:var(--accent-soft)}
.gx .prl .trp b a{color:inherit;text-decoration:none}
.gx .prl .trp .m{font-weight:650;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;display:flex;align-items:center;justify-content:flex-end;gap:10px}
.gx .prl .trp .mono{font-variant-numeric:tabular-nums;white-space:nowrap}
.gx .prl .trp input[type=checkbox],.gx .prl .thp input[type=checkbox]{width:15px;height:15px;margin:0;accent-color:var(--accent)}
.gx .prl .sq{display:inline-block;padding:2px 7px;border-radius:6px;background:var(--fill);font-size:11px;font-weight:600;color:var(--ink-2)}
.gx .prl .prl-ligne{margin:4px 0 0;display:flex;justify-content:flex-end}
.gx .prl .prl-ligne .btn{height:24px;padding:0 10px;border-radius:7px;border:0;background:var(--fill);color:var(--ink);font-size:11.5px;font-weight:500;cursor:pointer}
.gx .prl .prl-rejet{white-space:normal;text-align:right}
.gx .prl .vide{padding:12px 16px;color:var(--ink-3);font-size:12.5px;margin:0}
.gx .prl .pfoot2{margin-top:auto;display:flex;align-items:center;gap:10px;padding:10px 16px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-2)}
.gx .prl .pfoot2 b{color:var(--ink)}
.gx .prl-rp .trp{grid-template-columns:minmax(0,1.2fr) 110px minmax(0,1fr) auto;min-height:52px;padding-top:6px;padding-bottom:6px}
.gx .prl-rp .vide{padding:12px 16px;color:var(--ink-3);font-size:12.5px;margin:0}
.gx .prl-rp .ra2{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.gx .prl-rp .ra2 form{margin:0}
.gx .prl-rp .prl-alerte{grid-column:1/-1;margin:0 0 8px}
.page-prelevements .tag{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:10px;font-size:11px;font-weight:600}
.page-prelevements .tag.w{background:var(--warning-soft);color:var(--warning-sur-fond)}
.page-prelevements .tag.n{background:var(--fill);color:var(--ink-2)}
.page-prelevements .tag.g{background:var(--success-soft);color:var(--success)}
.page-prelevements .btn.petit,.page-prelevements details.prl-geste>summary{height:28px;padding:0 12px;border-radius:7px;border:0;background:var(--fill);color:var(--ink);font-size:12px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;list-style:none;transition:transform 160ms var(--eo)}
.page-prelevements details.prl-geste>summary::-webkit-details-marker{display:none}
.page-prelevements details.prl-geste[open]>summary{background:var(--accent-soft);color:var(--accent-text)}
.prl-f{display:flex;flex-direction:column;gap:6px;margin:6px 0 0;min-width:220px}
.prl-f select,.prl-f input{height:28px;border-radius:7px;border:0;background:var(--fill);padding:0 8px;font:inherit;font-size:12px;color:var(--ink);min-width:0}
.prl-f p{margin:0;font-size:12px;line-height:16px;color:var(--ink-2)}
.gx .prl-rp details.prl-geste{position:relative}
.gx .prl-rp details.prl-geste[open]>.prl-f{position:absolute;right:0;z-index:5;background:var(--surface);box-shadow:0 0 0 1px var(--line),0 8px 24px rgba(10,25,70,.14);border-radius:10px;padding:10px;min-width:260px}
.page-prelevements .rem{padding:2px 16px 4px}
.page-prelevements .rem .tot{display:flex;align-items:baseline;gap:8px}
.page-prelevements .rem .tot b{font-size:26px;line-height:32px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.page-prelevements .rem .tot span{font-size:12.5px;color:var(--ink-2)}
.page-prelevements .rem p{margin:2px 0 0;font-size:12px;line-height:17px;color:var(--ink-2)}
.page-prelevements .rem p b{color:var(--ink);font-weight:600}
.page-prelevements .kl{padding:6px 16px 2px;display:flex;flex-direction:column}
.page-prelevements .kl>div{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:8px;align-items:start;padding:6px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:17px;color:var(--ink)}
.page-prelevements .kl>div:first-child{border-top:0}
.page-prelevements .kl i{width:16px;height:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-top:1px}
.page-prelevements .kl i svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.page-prelevements .kl i.ok{background:var(--success-soft);color:var(--success)}
.page-prelevements .kl i.mq{background:var(--warning-soft);color:var(--warning-sur-fond)}
.page-prelevements .kl i.nt{background:var(--fill);color:var(--ink-3)}
.page-prelevements .kl small{display:block;font-size:11.5px;line-height:15px;color:var(--ink-3)}
.page-prelevements .kl em{font-style:normal;font-size:12px;font-weight:600;color:var(--ink-2);white-space:nowrap;font-variant-numeric:tabular-nums}
.page-prelevements .kl em.go{color:var(--accent-text)}
.page-prelevements .cf2{padding:12px 16px 14px;display:flex;gap:6px;flex-wrap:wrap}
.page-prelevements .cf2 .btn,.page-prelevements .cf2 details.prl-geste>summary{flex:1;justify-content:center;height:32px;border-radius:8px;border:0;font-size:13px;font-weight:500;display:inline-flex;align-items:center;gap:6px;background:var(--fill);color:var(--ink);cursor:pointer}
.page-prelevements .cf2 .btn.acc{background:var(--accent);color:var(--on-accent)}
.page-prelevements .cf2 .btn:disabled{opacity:.5;cursor:default}
.page-prelevements .cf2 details.prl-geste{flex:1;min-width:140px}
.page-prelevements .cf2 .btn.petit{height:28px;flex:none}
.page-prelevements .cf2 svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.page-prelevements .cn2{margin:0 16px 12px;font-size:11.5px;line-height:16px;color:var(--ink-3)}
.page-prelevements .gx .card h3 .r{margin-left:auto;font-weight:500;color:var(--accent-text);text-decoration:none;white-space:nowrap}
.page-prelevements .gx .card h3{display:flex;align-items:center;gap:8px}
.page-prelevements .cmd-alerte{margin:8px 16px 0;padding:10px 12px;border-radius:10px;background:var(--warning-soft);color:var(--warning-sur-fond);font-size:12.5px;line-height:17px;font-weight:550}
/* Administration > Chiffrage : cartes « Prélèvement SEPA » (créancier, version du fichier, délai de remise) et « Délais des échéances » */
.rc-cr{display:flex;gap:12px;align-items:baseline;margin:0 0 6px}
.rc-cr span{font-size:13px;color:var(--ink-2);font-weight:500}
.rc-cr b{font-weight:600}
.rc-version{border:0;padding:0;margin:0 0 6px}
.rc-version legend{font-size:13px;color:var(--ink-2);font-weight:500;padding:0 0 4px}
.rc-choix{display:inline-flex;gap:2px;padding:2px;border-radius:9px;background:var(--fill)}
.rc-choix label{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:7px;font-size:12.5px;color:var(--ink);cursor:pointer}
.rc-choix label:has(input:checked){background:var(--surface);box-shadow:0 1px 3px rgba(0,0,0,.1);font-weight:600}
.rc-unite{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-2)}
.rc-delais{width:100%;margin:4px 0 8px}
.rc-delais th{text-transform:none;letter-spacing:0;font-size:12px;color:var(--ink-3)}
.rc-delais td{vertical-align:middle}
.rc-delais td.note{color:var(--ink-3)}

/* carte « Prélèvement SEPA » : les lignes de la maquette Admin-Prelevement (libellé à gauche, champ à droite, note dessous ; un champ vide à remplir en orange) */
#dv_sepa .rc-champs{display:flex;flex-direction:column}
#dv_sepa .rc-champs>label,#dv_sepa .rc-champs>.rc-cr,#dv_sepa .rc-champs>.rc-version{display:grid;grid-template-columns:150px minmax(0,1fr);gap:4px 14px;align-items:start;padding:9px 0;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-2);margin:0}
#dv_sepa .rc-champs>:first-child{border-top:0}
#dv_sepa .rc-champs>label>input:not([type=radio]),#dv_sepa .rc-champs>label>select{grid-column:2;height:30px;border-radius:8px;border:0;background:var(--fill);padding:0 10px;font:inherit;font-size:13px;color:var(--ink);width:100%;box-sizing:border-box}
#dv_sepa .rc-champs>label>small,#dv_sepa .rc-champs>.rc-version>small{grid-column:2;font-size:11.5px;line-height:15px;color:var(--ink-3)}
#dv_sepa .rc-champs>label>input.rc-vide{box-shadow:inset 0 0 0 1.5px var(--warning);background:var(--warning-soft)}
#dv_sepa .rc-champs>label>.rc-unite{grid-column:2}
#dv_sepa .rc-champs>.rc-version>.rc-choix{grid-column:2;justify-self:start}
#dv_sepa .rc-cr b{font-size:13px;color:var(--ink)}

#dv_sepa .rc-version .rc-choix{display:inline-flex;gap:2px;padding:2px;border-radius:9px;background:var(--fill)}
#dv_sepa .rc-version .rc-choix label{display:inline-flex;align-items:center;height:26px;padding:0 12px;border-radius:7px;font-size:12.5px;color:var(--ink-2);cursor:pointer}
#dv_sepa .rc-version .rc-choix label:has(input:checked){background:var(--card);color:var(--ink);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.12)}
#dv_sepa .rc-version .rc-choix input{position:absolute;opacity:0;width:0;height:0}
#dv_sepa .rc-champs>label>input[type=number]{width:70px}
#dv_sepa .rc-champs .rc-unite input{width:64px;height:30px;border-radius:8px;border:0;background:var(--fill);padding:0 10px;font:inherit;font-size:13px;color:var(--ink);text-align:center}
#dv_sepa .rc-champs>label>input.rc-vide~small{color:var(--warning-sur-fond)}

/* ---- Plan financier (lot Plan financier, bloc 4 ; app/vue-plan.php) : l'apparence du CRM, la structure des maquettes Fiche-Finance ---- */
.pf-tuiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;padding:0 16px 16px}
.pf-tuile{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:14px;background:var(--fill);min-width:0}
.pf-tuile span{font-size:12px;color:var(--ink-3)}
.pf-tuile b{font-size:22px;line-height:28px;color:var(--ink);font-variant-numeric:tabular-nums}
.pf-tuile small{font-size:12px;color:var(--ink-2)}
.pf-tab{width:100%;border-collapse:collapse}
.pf-tab th,.pf-tab td{padding:6px 8px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.pf-tab .nb{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.pf-tab small{color:var(--ink-3);font-weight:400}
.pf-groupe th{font-size:12px;color:var(--ink-3);text-transform:none;background:transparent;border-bottom:1px solid var(--line)}
.pf-total th,.pf-total td,.pf-marge-l th,.pf-marge-l td{font-weight:600}
.pf-avenir{color:var(--ink-3)}
.pf-flux.sortie .nb:nth-of-type(1){color:var(--ink)}
.pf-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.pf-liste li small,.pf-tiers-l small{color:var(--ink-3)}
.pf-tiers-l{padding:8px 0;border-bottom:1px solid var(--line)}
.pf-form .ligne{align-items:flex-end;gap:10px;flex-wrap:wrap}
.pf-en-ligne{display:inline-block;margin-right:6px}
.pf-depot{display:inline-flex;gap:8px;align-items:center}
@media (max-width:640px){.pf-tuiles{grid-template-columns:1fr 1fr}.pf-tuile b{font-size:18px}}
.ma-file .c-bleu{background:var(--accent-soft);color:var(--accent-text)}
/* bloc 6, lot 2 : la carte « Radiateurs à 55 °C » (maquette Fiche-Dim), onglets VT et Dimensionnement */
.rad55 .rd{padding:0 16px 4px;font-size:12.5px;line-height:17px}
.rad55 .rd .r{display:grid;grid-template-columns:minmax(0,1fr) 50px 52px 92px;gap:8px;align-items:center;padding:2.5px 0;border-top:1px solid var(--ligne)}
.rad55 .rd .r.h{border-top:0;padding:0 0 3px;font-size:11px;line-height:14px;color:var(--ink-3)}
.rad55 .rd .r.h span:last-child{text-align:right;white-space:nowrap}
.rad55 .rd .r span{text-align:right;color:var(--ink-2)}
.rad55 .rd .r span:first-child{text-align:left;color:var(--ink);font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rad55 .rd .r span:first-child small{display:block;font-weight:400;color:var(--ink-3);font-size:11px;line-height:14px}
.rad55 .rd .r.h span:first-child{color:var(--ink-3);font-weight:400}
.rad55 .rd .r b{text-align:right;font-weight:600}
.rad55 .rd .r b small{display:block;font-size:11px;line-height:14px;font-weight:400;color:var(--ink-3)}
.rad55 .rd .r.t span:first-child,.rad55 .rd .r.t b{font-weight:700}
.rad55 .rd .r .vr{justify-self:end;height:20px;padding:0 8px;border-radius:10px;font-size:11px;line-height:20px;font-weight:600;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;text-align:left}
.rad55 .rd .r .vr::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.rad55 .rd .r .vr.ok{background:var(--success-soft,rgba(31,138,59,.11));color:var(--success-sur-fond,#1f8a3b)}
.rad55 .rd .r .vr.ju{background:var(--warning-soft);color:var(--warning-sur-fond)}
.rad55 .rd .r .vr.ko{background:var(--danger-soft,rgba(229,55,44,.10));color:var(--danger-sur-fond)}
.rad55 .rd .r.kor span:first-child{color:var(--danger-sur-fond)}
.rad55 .rx{margin:4px 16px 10px;padding:7px 10px 8px;border-radius:9px;background:var(--danger-soft,rgba(229,55,44,.07))}
.rad55 .rx p{margin:0;font-size:12.5px;line-height:17px;color:var(--ink)}
.rad55 .rx p b{font-weight:650;color:var(--danger-sur-fond)}
.rad55 .rx p em{font-style:normal;color:var(--ink-2)}
.rad55 .rx .btn{margin-top:6px;height:28px;font-size:12px;background:var(--carte);box-shadow:var(--ombre);color:var(--accent-text);font-weight:600}
.rad55 .rx .btn svg{width:13px;height:13px}
/* bloc 6, lot 3 : l'onglet « Rénovation d'ampleur » (aucune maquette ; famille de l'onglet Dossier d'aides) : deux colonnes de cartes, une colonne sous 1100 px ;
   chaque .pn n'est qu'une carte (pas la grille à trois colonnes du Dossier d'aides) ; champs en grille, lignes de liste en rangée */
.pz.da.am{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.pz.da.am .pn{display:block;min-height:0;height:auto}
.pz.da.am .card{padding-bottom:12px}
.pz.da.am h4{margin:14px 16px 6px;font-size:12.5px;font-weight:600;color:var(--ink-2)}
.am-f{margin:0 16px 8px}
.am-f.ajout{padding-top:8px;border-top:1px dashed var(--line)}
.am-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;margin:8px 0 10px}
.am-g label,.am-l label{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:11px;line-height:14px;color:var(--ink-3)}
.am-g label input,.am-g label select,.am-l label input,.am-l label select{width:100%;min-width:0;height:32px;font-size:13px}
.am-g label.coche,.am-l label.coche{flex-direction:row;align-items:center;gap:6px;grid-column:span 3;font-size:12.5px;color:var(--ink)}
.am-g label.coche input{width:auto;height:auto}
.am-l{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 10px;align-items:end;padding:8px 0;border-top:1px solid var(--line)}
.am-l label.large{grid-column:span 2}
.am-l .am-ttc{align-self:center;font-size:12px;color:var(--ink-2);font-variant-numeric:tabular-nums}
.am-l .btn{height:32px}
@media (max-width:1100px){.pz.da.am{grid-template-columns:minmax(0,1fr)}}
@media (max-width:600px){.am-g{grid-template-columns:repeat(2,minmax(0,1fr))}.am-g label.coche{grid-column:span 2}.am-l{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* reprise du 29/10 (point C) : les cartes de l'onglet en lecture, le crayon en haut à droite de la carte ; ouvert, il montre les formulaires à la place de la lecture */
.pz.da.am .card{position:relative}
.pz.da.am .card>h3{padding-right:44px}
.am-ed>summary{position:absolute;top:10px;right:12px;display:grid;place-items:center;width:28px;height:28px;border-radius:8px;list-style:none;cursor:pointer;color:var(--ink-3)}
.am-ed>summary::-webkit-details-marker{display:none}
.am-ed>summary:hover,.am-ed[open]>summary{background:var(--surface-2,rgba(0,0,0,.05));color:var(--ink)}
.am-ed>summary svg{width:16px;height:16px}
.am-ed[open]+.am-lec{display:none}
.am-lst{margin:0 16px 8px;padding:0;list-style:none;font-size:12.5px;line-height:18px}
.am-lst li{padding:4px 0;border-top:1px solid var(--line)}
.am-lec .kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 16px;margin:0;padding:10px 16px 12px}
.am-lec .note{margin:0 16px 8px}
/* bloc 6, lot 6 (reste de H2a) : Client et logement, les champs vides repliés sous « Afficher les N champs vides » ; jamais en modification */
#p-client form.qualification:not(.vides-ouverts) .lecture-carte .k.kvide{display:none}
form.qualification .voir-vides{margin:2px 16px 12px;font-size:12.5px}
form.qualification.vides-ouverts .voir-vides,form.qualification.en-edition .voir-vides{display:none}
/* lot 6 : la barre des filtres de Dossiers passe à la ligne plutôt que de déborder (« Type de travaux », lot 3) */
.barre-filtres.outils.ds-filtres{flex-wrap:wrap;row-gap:8px}
/* bloc 6, lot 6 : les trois demandes à l'Anah (Cerfa remplis), en boutons sur une ligne */
.am-dem-b{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px}
.am-dem-b .btn{display:flex;flex-direction:column;align-items:flex-start;height:auto;padding:8px 12px;line-height:17px}
.am-dem-b .btn small{font-size:11px;color:var(--ink-3)}
