/* NOALA — composition praticien et administration, identité A+B.
   Chargée par index.html (lot 1) et par admin.html (lot 7). Toutes les règles commencent par
   le marqueur : sans lui, rien ne s'applique. Contrat : docs/brand/NOALA_DESIGN_SYSTEM.md.
   Spec : docs/superpowers/specs/2026-09-29-cabinet-lot1-navigation-tableau-de-bord-design.md */
html[data-theme="light"][data-noala-ui="synthese"] body {
  background: var(--bg);
  color: var(--ink);
}

/* ── Coque : en-tête ─────────────────────────────────────────────── */
html[data-noala-ui="synthese"] .noala-app { display: block; min-height: 100vh; background: var(--bg); }
html[data-noala-ui="synthese"] .noala-main { margin-left: 0; width: auto; min-width: 0; }
/* `width: 100%` : `.noala-main` est une colonne flex, et des marges auto sur
   l axe transverse annulent l étirement ; sans largeur, le contenu prendrait la
   largeur de son contenu minimal (une table de 600 px déborderait à 375). */
html[data-noala-ui="synthese"] .noala-content { width: 100%; max-width: 1320px; margin: 0 auto; padding: 8px 32px 56px; }
html[data-noala-ui="synthese"] .noala-cab-barre {
  display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px;
  max-width: 1520px; margin: 0 auto; padding: 18px 32px 10px; min-height: 84px;
}
html[data-noala-ui="synthese"] .noala-cab-marque {
  display: flex; align-items: center; gap: 8px; border: 0; background: none; padding: 4px; cursor: pointer;
  font-family: var(--font-sans); font-weight: 600; font-size: 24px; letter-spacing: -.6px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-marque .noala-logo-svg { width: 36px; height: 36px; }
html[data-noala-ui="synthese"] .noala-cab-nav { display: flex; align-items: center; gap: 2px; margin-left: 8px; flex: none; }
html[data-noala-ui="synthese"] .noala-cab-lien {
  display: flex; align-items: center; gap: 7px; min-height: 42px; padding: 0 12px;
  border: 0; border-radius: 30px; background: none; cursor: pointer; white-space: nowrap;
  font-family: var(--font-sans); font-size: 13.5px; color: var(--text);
}
html[data-noala-ui="synthese"] .noala-cab-lien:hover { background: var(--surface-2); color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-lien[aria-current="page"],
html[data-noala-ui="synthese"] .noala-cab-lien[data-actif="true"] { background: var(--ink); color: var(--cta-fg); }
html[data-noala-ui="synthese"] .noala-cab-ico { display: inline-grid; place-items: center; width: 18px; height: 18px; flex: none; }
html[data-noala-ui="synthese"] .noala-cab-ico svg { width: 18px; height: 18px; }
html[data-noala-ui="synthese"] .noala-cab-chevron { width: 14px; height: 14px; }
html[data-noala-ui="synthese"] .noala-cab-pastille {
  min-width: 20px; height: 20px; padding: 0 6px; border-radius: 10px;
  background: var(--accent-text); color: var(--cta-fg); font-size: 11px; font-weight: 600;
  display: inline-grid; place-items: center; position: relative;
}
html[data-noala-ui="synthese"] .noala-cab-lien[aria-current="page"] .noala-cab-pastille { background: var(--surface); color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-menu { position: relative; }
html[data-noala-ui="synthese"] .noala-cab-liste {
  position: absolute; top: calc(100% + 8px); left: 0; z-index: 60; min-width: 240px;
  display: flex; flex-direction: column; gap: 2px; padding: 8px;
  background: var(--surface); border: 1px solid var(--border); border-radius: 18px;
  box-shadow: 0 18px 40px var(--border);
}
html[data-noala-ui="synthese"] .noala-cab-liste--droite { left: auto; right: 0; }
html[data-noala-ui="synthese"] .noala-cab-item {
  display: flex; align-items: center; gap: 10px; width: 100%; min-height: 44px; padding: 0 12px;
  border: 0; border-radius: 12px; background: none; cursor: pointer; text-align: left;
  font-family: var(--font-sans); font-size: 14px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-item:hover,
html[data-noala-ui="synthese"] .noala-cab-item[aria-current="page"] { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-item .noala-cab-pastille { margin-left: auto; }
html[data-noala-ui="synthese"] .noala-cab-qui { margin: 4px 12px 8px; font-size: 13px; color: var(--text-2); }
html[data-noala-ui="synthese"] .noala-cab-outils { display: flex; align-items: center; gap: 8px; margin-left: auto; flex: 1; min-width: min-content; justify-content: flex-end; }
/* La recherche garde `.noala-topbar-search`, dont app.css fixe la marge (avec
   !important) et la masque sous 760 px. Trois classes ici pour reprendre la main. */
html[data-noala-ui="synthese"] .noala-search-wrap.noala-topbar-search.noala-cab-recherche { display: flex; margin: 0 !important; }
html[data-noala-ui="synthese"] .noala-cab-recherche { flex: 0 1 240px; min-width: 200px; max-width: 280px; }
html[data-noala-ui="synthese"] .noala-cab-recherche .noala-search-input-wrap { flex: 1; min-width: 0; border-radius: 30px; background: var(--surface); }
/* L'anneau de focus se pose sur la capsule, pas sur le champ qu'elle contient
   (revue du 2026-09-29) : deux anneaux emboîtés, dont un rogné, sinon. */
html[data-noala-ui="synthese"] .noala-cab-recherche .noala-search-input:focus-visible,
html[data-noala-ui="synthese"] .noala-cab-tiroir-outils .noala-search-input:focus-visible { outline: none; }
html[data-noala-ui="synthese"] .noala-cab-recherche .noala-search-input-wrap:focus-within,
html[data-noala-ui="synthese"] .noala-cab-tiroir-outils .noala-search-input-wrap:focus-within {
  outline: 3px solid var(--accent-text); outline-offset: 2px; border-radius: 30px;
}
/* Deux attributs sur `html` : app.css pose `white-space: normal` sur tout
   `.noala-cta` sous le marqueur, avec une spécificité plus haute. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cta.noala-cab-nouveau { min-height: 42px; white-space: nowrap; flex: none; }
html[data-noala-ui="synthese"] .noala-cab-compte {
  display: flex; align-items: center; gap: 6px; border: 0; background: none; padding: 2px; border-radius: 30px; cursor: pointer; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-avatar {
  width: 42px; height: 42px; border-radius: 50%; background: var(--surface-2);
  display: grid; place-items: center; font-size: 13px; font-weight: 600; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-burger {
  display: none; width: 44px; height: 44px; border-radius: 50%; flex: none;
  border: 1px solid var(--border); background: var(--surface); color: var(--ink); cursor: pointer; place-items: center;
}
html[data-noala-ui="synthese"] .noala-content > .noala-breadcrumb {
  margin: 0 0 14px; font-size: 13px; font-weight: 500; color: var(--text-2);
}
html[data-noala-ui="synthese"] .noala-cab-masque {
  position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;
}

/* ── Coque : tiroir ─────────────────────────────────────────────── */
html[data-noala-ui="synthese"] .noala-cab-fermer {
  align-self: flex-end; flex: none; width: 44px; height: 44px; border-radius: 50%;
  display: grid; place-items: center; cursor: pointer;
  border: 1px solid var(--border); background: var(--surface); color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-fermer svg { width: 20px; height: 20px; }
/* app.css n'affiche le voile que sous 700 px ; le tiroir s'ouvre dès 1120. */
html[data-noala-ui="synthese"] .noala-sidebar-backdrop {
  display: block; position: fixed; inset: 0; z-index: 70; background: var(--modal-scrim);
}
html[data-noala-ui="synthese"] .noala-cab-tiroir {
  position: fixed; top: 0; right: 0; bottom: 0; z-index: 80; width: min(340px, 100vw);
  overflow-y: auto; padding: 20px 16px 32px; background: var(--bg);
  border-left: 1px solid var(--border); box-shadow: -18px 0 40px var(--border);
  display: flex; flex-direction: column; gap: 2px;
}
html[data-noala-ui="synthese"] .noala-cab-tiroir-titre {
  margin: 16px 12px 6px; font-size: 12px; font-weight: 500; color: var(--text-2);
}
html[data-noala-ui="synthese"] .noala-cab-tiroir-outils { display: none; flex-direction: column; gap: 12px; }
html[data-noala-ui="synthese"] .noala-cab-tiroir-outils .noala-search-wrap.noala-topbar-search {
  display: flex; margin: 0 !important; max-width: none !important; flex: none; width: 100%;
}
html[data-noala-ui="synthese"] .noala-cab-tiroir-outils .noala-search-input-wrap { flex: 1; border-radius: 30px; background: var(--surface); }

/* Entre 1280 et 1439 px, la navigation garde ses icônes (aperçu approuvé,
   revue du 2026-09-29) : la place se prend sur la recherche et le retrait des
   liens. Le placeholder reste entier, mesuré par cabinet_lot1. */
@media (min-width: 1280px) and (max-width: 1439px) {
  html[data-noala-ui="synthese"] .noala-cab-recherche { flex: 0 1 200px; min-width: 180px; }
  html[data-noala-ui="synthese"] .noala-cab-lien { padding: 0 9px; gap: 6px; }
  html[data-noala-ui="synthese"] .noala-cab-barre { gap: 12px; }
  /* « NOALA » en capitales est plus large que « Noala » (2026-10-07) : la marque
     se resserre ici pour rendre sa place au placeholder de la recherche. */
  html[data-noala-ui="synthese"] .noala-cab-marque { font-size: 21px; gap: 6px; }
  html[data-noala-ui="synthese"] .noala-cab-marque .noala-logo-svg { width: 32px; height: 32px; }
}
/* Entre 1121 et 1279 px, la navigation garde ses libellés et perd ses icônes :
   la place manque pour les deux à côté de la recherche. */
@media (max-width: 1279px) {
  html[data-noala-ui="synthese"] .noala-cab-nav > .noala-cab-lien .noala-cab-ico,
  html[data-noala-ui="synthese"] .noala-cab-nav > .noala-cab-menu > .noala-cab-lien .noala-cab-ico { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-barre { gap: 12px; }
}
/* Entre 1121 et 1199 px, le mot « NOALA » cède sa place ; la marque reste, et
   le bouton garde son nom accessible. Sinon la recherche recouvrirait la nav. */
@media (min-width: 1121px) and (max-width: 1199px) {
  html[data-noala-ui="synthese"] .noala-cab-marque > span { display: none; }
}
@media (max-width: 1120px) {
  html[data-noala-ui="synthese"] .noala-cab-nav { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-burger { display: grid; }
  html[data-noala-ui="synthese"] .noala-cab-recherche { flex-basis: 280px; }
  html[data-noala-ui="synthese"] .noala-content,
  html[data-noala-ui="synthese"] .noala-cab-barre { padding-left: 24px; padding-right: 24px; }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-barre { padding: 12px 16px 6px; min-height: 68px; }
  html[data-noala-ui="synthese"] .noala-cab-outils > .noala-search-wrap.noala-cab-recherche,
  html[data-noala-ui="synthese"] .noala-cab-outils > .noala-cab-nouveau { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-tiroir-outils { display: flex; }
  html[data-noala-ui="synthese"] .noala-content { padding: 4px 16px 40px; }
}

/* ── Tableau de bord : bloc d'accueil ─────────────────────────────── */
/* ⚠️ Sur la menthe, `--text-2` rend 4,36:1, sous le seuil AA : les petits textes
   du bloc (date, libellés des chiffres) prennent `--text` (7,9:1). */
html[data-noala-ui="synthese"] .noala-cab-accueil {
  display: grid; grid-template-columns: 1fr 1.02fr;
  grid-template-areas: "intro action" "chiffres action";
  column-gap: 36px; row-gap: 22px; padding: 32px; margin-bottom: 36px;
  background: var(--surface-2); border-radius: 32px;
}
html[data-noala-ui="synthese"] .noala-cab-intro { grid-area: intro; position: relative; isolation: isolate; min-height: 196px; }
html[data-noala-ui="synthese"] .noala-cab-surtitre { margin: 0 0 14px; font-size: 13px; color: var(--text); }
html[data-noala-ui="synthese"] .noala-cab-accueil .noala-greeting {
  margin: 0 0 12px; font-family: var(--font-sans); font-size: 48px; line-height: 1.08;
  font-weight: 400; letter-spacing: -2px; color: var(--ink);
}
/* Le nom passe à la ligne, comme la maquette ; le texte du titre ne change pas. */
html[data-noala-ui="synthese"] .noala-cab-salut-nom { display: block; }
html[data-noala-ui="synthese"] .noala-cab-intro-sous { margin: 0; font-size: 14px; color: var(--text); max-width: 40ch; }
html[data-noala-ui="synthese"] .noala-cab-arche { position: absolute; right: -8px; bottom: -26px; width: 210px; opacity: .7; z-index: -1; pointer-events: none; }
html[data-noala-ui="synthese"] .noala-cab-arche svg { display: block; width: 100%; }

html[data-noala-ui="synthese"] .noala-cab-chiffres {
  grid-area: chiffres; align-self: end; display: flex; gap: 0; margin: 0;
  padding-top: 16px; border-top: 1px solid var(--border);
}
html[data-noala-ui="synthese"] .noala-cab-chiffre {
  flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; padding: 4px 16px 4px 0;
  background: none; border: 0; box-shadow: none; border-radius: 0; cursor: pointer; min-height: 0;
}
html[data-noala-ui="synthese"] .noala-cab-chiffre:hover { box-shadow: none; }
html[data-noala-ui="synthese"] .noala-cab-chiffre:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-chiffre + .noala-cab-chiffre { padding-left: 16px; border-left: 1px solid var(--border); }
html[data-noala-ui="synthese"] .noala-cab-chiffre .noala-stat-card-value {
  order: 1; font-size: 28px; font-weight: 400; letter-spacing: -.8px; line-height: 1.1; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-chiffre .noala-stat-card-label {
  order: 2; margin: 0; font-size: 12px; font-weight: 400; color: var(--text); text-transform: none; letter-spacing: 0;
}
html[data-noala-ui="synthese"] .noala-cab-chiffre .noala-stat-card-sub { order: 3; margin: 0; font-size: 12px; color: var(--text); }
html[data-noala-ui="synthese"] .noala-cab-chiffre:hover .noala-stat-card-value { color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-chiffres-periode { flex: none; align-self: flex-end; padding-bottom: 4px; font-size: 12px; white-space: nowrap; }

/* ── Tableau de bord : carte encre « En ce moment » ───────────────── */
html[data-noala-ui="synthese"] .noala-cab-action {
  grid-area: action; align-self: start; min-width: 0; padding: 28px; border-radius: 24px;
  background: var(--ink); color: var(--cta-fg);
}
html[data-noala-ui="synthese"] .noala-cab-action-legende { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 13px; color: var(--cab-sur-encre); }
html[data-noala-ui="synthese"] .noala-cab-action-legende .noala-ic { width: 16px; height: 16px; }
html[data-noala-ui="synthese"] .noala-cab-action-compte {
  margin-left: auto; padding: 3px 10px; border: 1px solid var(--cab-blanc-35); border-radius: 20px; font-size: 11px;
}
html[data-noala-ui="synthese"] .noala-cab-action h2 {
  margin: 20px 0 0; font-size: 28px; line-height: 1.25; font-weight: 500; letter-spacing: -.6px; color: var(--cta-fg);
}
html[data-noala-ui="synthese"] .noala-cab-action-detail { margin: 10px 0 0; font-size: 13.5px; color: var(--cab-sur-encre); overflow-wrap: break-word; hyphens: manual; }
html[data-noala-ui="synthese"] .noala-cab-action-principale {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%;
  margin-top: 22px; min-height: 52px; padding: 14px 20px; border: 0; border-radius: 15px; cursor: pointer;
  background: var(--surface-2); color: var(--ink); font-family: var(--font-sans); font-size: 15px; font-weight: 500; text-align: left;
}
html[data-noala-ui="synthese"] .noala-cab-action-principale:hover { background: var(--surface); }
html[data-noala-ui="synthese"] .noala-cab-action-principale .noala-ic { width: 18px; height: 18px; flex: none; }
html[data-noala-ui="synthese"] .noala-cab-action-secondaire {
  display: flex; align-items: center; gap: 14px; width: 100%; margin-top: 20px; padding: 16px 0 0;
  border: 0; border-top: 1px solid var(--cab-blanc-18); background: none; color: var(--cta-fg);
  cursor: pointer; text-align: left; font-family: var(--font-sans);
}
html[data-noala-ui="synthese"] .noala-cab-action-sec-texte { flex: 1; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-action-secondaire strong { display: block; font-weight: 500; font-size: 14px; }
html[data-noala-ui="synthese"] .noala-cab-action-secondaire small { display: block; font-size: 12.5px; color: var(--cab-sur-encre); }
html[data-noala-ui="synthese"] .noala-cab-action-secondaire > .noala-ic { width: 18px; height: 18px; flex: none; }
html[data-noala-ui="synthese"] .noala-cab-rond {
  width: 40px; height: 40px; flex: none; display: grid; place-items: center;
  border: 1px solid var(--cab-blanc-35); border-radius: 50%;
}
html[data-noala-ui="synthese"] .noala-cab-rond .noala-ic { width: 18px; height: 18px; }
html[data-noala-ui="synthese"] .noala-cab-action :focus-visible { outline: 3px solid var(--surface); outline-offset: 4px; }
html[data-noala-ui="synthese"] .noala-cab-action-skel { margin-top: 20px; opacity: .5; }
html[data-noala-ui="synthese"] .noala-cab-skel-court { width: 70%; }

@media (max-width: 900px) {
  html[data-noala-ui="synthese"] .noala-cab-accueil { grid-template-columns: 1fr; grid-template-areas: "intro" "action" "chiffres"; padding: 26px; }
  html[data-noala-ui="synthese"] .noala-cab-intro { min-height: 0; }
  html[data-noala-ui="synthese"] .noala-cab-arche { width: 160px; bottom: auto; top: -8px; }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-accueil { padding: 20px 16px; border-radius: 26px; row-gap: 18px; margin-bottom: 24px; }
  html[data-noala-ui="synthese"] .noala-cab-accueil .noala-greeting { font-size: 34px; letter-spacing: -1.3px; }
  html[data-noala-ui="synthese"] .noala-cab-arche { width: 120px; right: -22px; opacity: .45; }
  html[data-noala-ui="synthese"] .noala-cab-action { padding: 22px 18px; border-radius: 20px; }
  html[data-noala-ui="synthese"] .noala-cab-action h2 { font-size: 23px; margin-top: 14px; }
  html[data-noala-ui="synthese"] .noala-cab-chiffres { flex-direction: column; padding-top: 0; border-top: 0; }
  html[data-noala-ui="synthese"] .noala-cab-chiffre,
  html[data-noala-ui="synthese"] .noala-cab-chiffre + .noala-cab-chiffre {
    flex-direction: row; justify-content: space-between; align-items: baseline; flex-wrap: wrap;
    padding: 10px 0; border-left: 0; border-top: 1px solid var(--border);
  }
  html[data-noala-ui="synthese"] .noala-cab-chiffre .noala-stat-card-value { order: 2; font-size: 22px; }
  html[data-noala-ui="synthese"] .noala-cab-chiffre .noala-stat-card-label { order: 1; }
  html[data-noala-ui="synthese"] .noala-cab-chiffre .noala-stat-card-sub { order: 3; flex-basis: 100%; }
  html[data-noala-ui="synthese"] .noala-cab-chiffres-periode { align-self: flex-start; padding: 6px 0 0; }
}

/* ── Tableau de bord : panneaux ───────────────────────────────────── */
/* Interventions : liste ouverte à gauche, sans carte. Derniers bilans :
   carte blanche bordée, rayon 24, à droite. */
html[data-noala-ui="synthese"] .noala-dash-panels { grid-template-columns: 1.5fr 1fr; gap: 28px; margin-top: 28px; align-items: start; }
html[data-noala-ui="synthese"] .noala-cab-interventions { background: none; border: 0; box-shadow: none; border-radius: 0; padding: 10px 4px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-bilans { background: var(--surface); border: 1px solid var(--border); border-radius: 24px; box-shadow: none; padding: 22px 20px 14px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-entete { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 0 6px 12px; border: 0; }
html[data-noala-ui="synthese"] .noala-cab-bilans .noala-cab-entete { align-items: center; }
html[data-noala-ui="synthese"] .noala-cab-entete .noala-panel-title { font-size: 24px; font-weight: 500; letter-spacing: -.5px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-bilans .noala-cab-entete .noala-panel-title { font-size: 18px; letter-spacing: -.3px; }
html[data-noala-ui="synthese"] .noala-cab-bilans .noala-panel-ic { color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-bilans .noala-panel-ic svg { width: 20px; height: 20px; }
html[data-noala-ui="synthese"] .noala-cab-entete .noala-panel-sub { margin: 4px 0 0; font-size: 13px; color: var(--text-2); }
html[data-noala-ui="synthese"] .noala-cab-lien-texte {
  display: inline-flex; align-items: center; gap: 6px; width: auto; height: auto; min-height: 0; padding: 0;
  border: 0; border-radius: 0; background: none; cursor: pointer; vertical-align: baseline;
  font-family: var(--font-sans); font-size: 13px; font-weight: 500; line-height: inherit; color: var(--accent-text);
}
html[data-noala-ui="synthese"] .noala-cab-lien-texte:hover { text-decoration: underline; background: none; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-lien-texte:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; border-radius: 4px; }
html[data-noala-ui="synthese"] .noala-cab-lien-texte svg { width: 16px; height: 16px; flex: none; }
html[data-noala-ui="synthese"] .noala-cab-entete > .noala-panel-more { margin-top: 4px; }

html[data-noala-ui="synthese"] .noala-cab-interventions .noala-panel-row { gap: 16px; padding: 12px 10px; border: 0; border-radius: 16px; }
html[data-noala-ui="synthese"] .noala-cab-interventions li + li .noala-panel-row { border-top: 1px solid var(--border); border-radius: 0; }
html[data-noala-ui="synthese"] .noala-cab-interventions .noala-panel-row:hover { background: var(--surface); border-radius: 16px; box-shadow: 0 0 0 1px var(--border); }
html[data-noala-ui="synthese"] .noala-cab-interventions .noala-panel-row:focus-visible { outline: 2px solid var(--ink); outline-offset: -2px; border-radius: 16px; }
html[data-noala-ui="synthese"] .noala-cab-interventions .noala-panel-name { font-size: 15px; font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-interventions .noala-panel-meta { font-size: 13px; color: var(--text-2); }
html[data-noala-ui="synthese"] .noala-cab-interventions .noala-panel-side { align-self: center; }
/* J±N au-dessus, état du dossier en dessous, calés à droite (aperçu approuvé,
   revue du 2026-09-29) : la colonne de droite reste étroite, l'intervention
   garde la largeur. */
html[data-noala-ui="synthese"] .noala-cab-interventions .noala-panel-state {
  font-size: 12px; margin: 0; display: flex; flex-direction: column; align-items: flex-end; gap: 2px; text-align: right;
}
html[data-noala-ui="synthese"] .noala-cab-interventions .noala-panel-dossier { white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-interventions .noala-jn { font-size: 13px; font-weight: 600; color: var(--ink); }

/* Tuile de date en arche (reprise de la tuile de rendez-vous du portail).
   Garde `.noala-panel-avatar`, `data-phase` et `data-dossier` : menthe avant et
   le jour même, blanc bordé après, alerte quand un élément manque. Encres AA
   mesurées par dashboard_lot17. ⚠️ Sur la menthe, les petits textes prennent
   `--text` (`--text-2` y rend 4,36:1, sous le seuil AA). */
html[data-noala-ui="synthese"] .noala-cab-date {
  width: 54px; height: auto; flex: none; display: flex; flex-direction: column; align-items: center;
  padding: 8px 0 7px; margin: 0; border-radius: 27px 27px 12px 12px; line-height: 1.15;
  background: var(--surface-2); color: var(--ink); font-size: inherit; font-weight: 400; letter-spacing: 0;
}
html[data-noala-ui="synthese"] .noala-cab-date small { font-size: 10.5px; color: var(--text); }
html[data-noala-ui="synthese"] .noala-cab-date-jour { font-size: 22px; font-weight: 400; letter-spacing: -.5px; }
html[data-noala-ui="synthese"] .noala-cab-date[data-phase="apres"] { background: var(--surface); border: 1px solid var(--border); }
html[data-noala-ui="synthese"] .noala-cab-date[data-phase="apres"] small { color: var(--text-2); }
html[data-noala-ui="synthese"] .noala-cab-date[data-dossier="manquant"] { background: var(--alert-soft); color: var(--alert-text); border: 0; }
html[data-noala-ui="synthese"] .noala-cab-date[data-dossier="manquant"] small { color: var(--alert-text); }

/* Derniers bilans : rangées séparées par un filet, dans la carte blanche. */
html[data-noala-ui="synthese"] .noala-cab-bilans .noala-bilan-row { padding: 10px 8px; border: 0; border-radius: 14px; }
html[data-noala-ui="synthese"] .noala-cab-bilans .noala-bilan-row + .noala-bilan-row { border-top: 1px solid var(--border); border-radius: 0; }
html[data-noala-ui="synthese"] .noala-cab-bilans .noala-bilan-row:hover { border-radius: 14px; }
html[data-noala-ui="synthese"] .noala-cab-bilans .noala-flux-patient { font-size: 15px; font-weight: 500; color: var(--ink); }
/* Le « quand » reste dans la colonne de droite à toute largeur (revue du
   2026-09-29) : app.css le passe sous le corps sous 768 px, une troisième ligne. */
html[data-noala-ui="synthese"] .noala-cab-bilans .noala-bilan-row { grid-template-columns: auto minmax(0, 1fr) auto; }
html[data-noala-ui="synthese"] .noala-cab-bilans .noala-flux-quand { grid-column: 3; white-space: nowrap; }

html[data-noala-ui="synthese"] .noala-cab-erreur { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; color: var(--alert-text); }
html[data-noala-ui="synthese"] .noala-cab-interventions .noala-panel-empty { padding: 14px 10px; }
html[data-noala-ui="synthese"] .noala-cab-bilans .noala-panel-empty { padding: 12px 8px; }

@media (max-width: 900px) { html[data-noala-ui="synthese"] .noala-dash-panels { grid-template-columns: 1fr; } }
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-interventions .noala-cab-entete { flex-direction: column; gap: 8px; }
  html[data-noala-ui="synthese"] .noala-cab-entete .noala-panel-title { font-size: 20px; }
  html[data-noala-ui="synthese"] .noala-cab-interventions .noala-panel-row { gap: 12px; padding: 12px 4px; }
  html[data-noala-ui="synthese"] .noala-cab-date { width: 48px; }
  /* Sur téléphone, l'intervention passe sur deux lignes au plus plutôt que de
     se couper au premier mot : le J±N et l'état tiennent la droite. */
  html[data-noala-ui="synthese"] .noala-cab-interventions .noala-panel-meta {
    white-space: normal; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2;
  }
  html[data-noala-ui="synthese"] .noala-cab-bilans { padding: 18px 12px 10px; border-radius: 20px; }
}

/* ── Tiroir de jalon : états distincts sous l'identité ────────────── */
/* ⚠️ Sous le marqueur, `--surface-2` et `--accent-soft` valent tous deux
   #E1F1E9 : le neutre de frise.css (surface-2) se confondait avec « rempli »
   (accent-soft), ce que garde gravite_peinte. Le neutre (et l'expiré, qui le
   suit) devient cerclé sur blanc ; « à remplir » et « rempli » gardent leur
   fond. `[data-done="1"]` reste DERNIER, comme frise.css l'exige : une ligne
   « rempli · sans score » peut porter `data-state="open"`. frise.css n'est pas
   touchée. */
html[data-noala-ui="synthese"] .noala-jalon-qsrow-state { background: var(--surface); box-shadow: inset 0 0 0 1px var(--border); }
html[data-noala-ui="synthese"] .noala-jalon-qsrow-state[data-state="open"],
html[data-noala-ui="synthese"] .noala-jalon-qsrow-state[data-state="complete"] { background: var(--warn-soft); box-shadow: none; }
html[data-noala-ui="synthese"] .noala-jalon-qsrow-state[data-done="1"] { background: var(--accent-soft); box-shadow: none; }

/* ── Compte à configurer : le même bloc, trois étapes dans la carte encre ── */
html[data-noala-ui="synthese"] .noala-onboarding.noala-cab-accueil { grid-template-areas: "intro action"; align-items: start; }
html[data-noala-ui="synthese"] .noala-onboarding.noala-cab-accueil .noala-cab-intro { max-width: none; }
html[data-noala-ui="synthese"] .noala-onboarding.noala-cab-accueil .noala-onboarding-lead { font-size: 14px; line-height: 1.5; }
html[data-noala-ui="synthese"] .noala-cab-action.noala-onboarding-steps { display: block; }
html[data-noala-ui="synthese"] .noala-cab-etapes { list-style: none; margin: 18px 0 0; padding: 0; display: flex; flex-direction: column; }
html[data-noala-ui="synthese"] .noala-cab-etapes .noala-onboarding-step {
  display: flex; flex-direction: row; align-items: center; gap: 14px; padding: 14px 0; background: none; border: 0; box-shadow: none;
  border-top: 1px solid var(--cab-blanc-18); color: var(--cta-fg);
}
html[data-noala-ui="synthese"] .noala-cab-etapes .noala-onboarding-step:first-child { border-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-etapes .noala-onboarding-step-num {
  width: 32px; height: 32px; flex: none; display: grid; place-items: center; border-radius: 50%;
  border: 1px solid var(--cab-blanc-35); background: none; color: var(--cta-fg); font-size: 13px; font-family: var(--font-sans); font-weight: 500;
}
html[data-noala-ui="synthese"] .noala-cab-etape-texte { flex: 1; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-etape-texte strong { display: block; font-weight: 500; font-size: 15px; }
html[data-noala-ui="synthese"] .noala-cab-etape-texte small { display: block; margin-top: 2px; font-size: 12.5px; color: var(--cab-sur-encre); }
html[data-noala-ui="synthese"] .noala-cab-lien-clair {
  flex: none; min-height: 40px; padding: 0 14px; border: 0; border-radius: 12px; cursor: pointer;
  background: var(--surface-2); color: var(--ink); font-family: var(--font-sans); font-size: 13px; font-weight: 500;
}
html[data-noala-ui="synthese"] .noala-cab-lien-clair:hover { background: var(--surface); }
html[data-noala-ui="synthese"] .noala-cab-lien-clair:disabled { background: var(--cab-blanc-20); color: var(--cta-fg); cursor: not-allowed; }
@media (max-width: 900px) { html[data-noala-ui="synthese"] .noala-onboarding.noala-cab-accueil { grid-template-areas: "intro" "action"; } }
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-etapes .noala-onboarding-step { flex-wrap: wrap; align-items: flex-start; }
  html[data-noala-ui="synthese"] .noala-cab-etape-texte { flex: 1 1 calc(100% - 46px); }
  html[data-noala-ui="synthese"] .noala-cab-lien-clair { margin-left: 46px; }
}

/* ── Réglages : la valeur d'une rangée clé-valeur reste une valeur ──
   Le socle de l'identité borde tout `.noala-input` (2026-09-29, revue du lot 1) :
   sur la grille clé-valeur des Réglages, chaque valeur devenait un champ encadré,
   et le lot 12 avait tranché l'inverse (fond transparent, bord au survol, valeur
   alignée à droite). On garde la hauteur de contrôle du socle, pas son cadre. */
html[data-noala-ui="synthese"] .noala-kv .noala-kv-v.noala-input {
  background: transparent; border-color: transparent; box-shadow: none;
  padding: 4px 8px; font-size: 14.5px; font-weight: 600; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-kv .noala-kv-v.noala-input:hover:not(:disabled) { border-color: var(--border); }
html[data-noala-ui="synthese"] .noala-kv .noala-kv-v.noala-input:focus { background: var(--surface-2); border-color: var(--accent); }
html[data-noala-ui="synthese"] .noala-kv .noala-kv-v.noala-input:disabled { color: var(--text-2); font-weight: 500; }
html[data-noala-ui="synthese"] .noala-kv--haut .noala-kv-v.noala-input { font-size: 13px; font-weight: 400; }

/* ── Tables et pastilles : pas de coupure au milieu d'un mot ──
   Le socle pose `overflow-wrap: anywhere` sur les cartes et les plis (2026-09-29,
   revue du lot 1). `anywhere` abaisse la largeur minimale d'un contenu : dans une
   table, les colonnes se serraient jusqu'à couper « ORIGINE », « Relaxation » ou
   « Général » en deux lignes. `break-word` ne coupe qu'un mot qui déborde. */
html[data-theme="light"][data-noala-ui="synthese"] [data-noala-density="professional"] :is(.noala-card, .noala-acc, .noala-modal-card) { overflow-wrap: break-word; }

/* ── Onglet actif : blanc sur encre ──
   Revue du 2026-09-29 : blanc sur #2AAE9B rend 2,75:1, sous le seuil AA. Les
   pilules des Réglages et la bascule Reçu/Envoyé d'Activité passent à l'encre
   (11,97:1), comme le lien actif de la navigation. Les sous-onglets
   `--secondary` (souligné, encre `--accent-text`) ne sont pas concernés. La barre à trois vues de la
   fiche patient passe elle aussi à l’encre au lot 2 (« Fiche patient : en-tête »). */
html[data-theme="light"][data-noala-ui="synthese"] .noala-tabs--pills > .noala-tab.active,
html[data-theme="light"][data-noala-ui="synthese"] .noala-tabs:not(.noala-tabs--secondary) > .noala-tab.active {
  background: var(--ink); border-color: var(--ink); color: var(--cta-fg);
}

/* ── Fiche patient : en-tête (lot 2, 2026-09-29) ─────────────────────
   Aperçu validé : propositions-cabinet/frise2.html?entete=riche (fiche.css :
   `.identite`, `.episode`, `.rond-clair`, `.suivi*`, `.dossier*`, `.vues*`).
   Les classes historiques (`.noala-patient-header`, `-title`, `-meta`,
   `-episode`, `.noala-frise-ephead*`, `.noala-frise-epnav`, `.noala-patient-rail`,
   `.noala-actionbar*`) restent sur l'élément du même rôle : app.css et
   frise.css les peignent encore, d'où les reprises ci-dessous.
   ⚠️ Sur la menthe, `--text-2` rend 4,36:1, sous le seuil AA : les petits
   textes du bandeau prennent `--text`. */
html[data-noala-ui="synthese"] .noala-patient-header.noala-cab-identite {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 440px); gap: 32px; align-items: stretch;
  margin: 0; padding: 30px 32px; border: 0; border-radius: 32px; box-shadow: none; animation: none;
  background: var(--surface-2); color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-identite-texte { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; }
html[data-noala-ui="synthese"] .noala-cab-identite .noala-patient-title {
  display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin: 0;
  font-family: var(--font-sans); font-size: 42px; line-height: 1.1; font-weight: 400; letter-spacing: -1.6px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-identite .noala-patient-name-btn {
  display: inline; padding: 0; border: 0; border-radius: 8px; background: none; cursor: pointer; text-align: left;
  font: inherit; letter-spacing: inherit; color: inherit; overflow-wrap: break-word;
}
html[data-noala-ui="synthese"] .noala-cab-identite .noala-patient-name-btn:hover { color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-identite .noala-patient-name-btn:focus-visible { outline: 3px solid var(--ink); outline-offset: 4px; }
html[data-noala-ui="synthese"] .noala-cab-mineur {
  font-family: var(--font-sans); font-size: 12px; font-weight: 600; letter-spacing: 0; line-height: 1.4;
  background: var(--alert-soft); color: var(--alert-text);
}
html[data-noala-ui="synthese"] .noala-cab-identite .noala-patient-meta {
  margin: 6px 0 0; font-size: 14px; line-height: 1.55; letter-spacing: 0; color: var(--text);
}
/* Lot R3a (2026-10-28) : le représentant légal d'un mineur n'a ni adresse ni mobile,
   aucun message ne part. Fond opaque : `--alert-text` y rend 5,2:1, sur la menthe du
   bandeau comme ailleurs. */
html[data-noala-ui="synthese"] .noala-cab-injoignable {
  display: flex; align-items: flex-start; flex-wrap: wrap; gap: 6px 10px; margin: 14px 0 0; padding: 10px 14px;
  border-radius: 14px; background: var(--surface-alert); color: var(--alert-text); font-size: 14px; line-height: 1.5;
}
html[data-noala-ui="synthese"] .noala-cab-injoignable .noala-ic { flex: none; width: 18px; height: 18px; margin-top: 2px; }
html[data-noala-ui="synthese"] .noala-cab-injoignable span { flex: 1 1 220px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-injoignable-geste {
  padding: 0; border: 0; background: none; cursor: pointer; font: inherit; font-weight: 600; color: inherit; text-decoration: underline;
}
html[data-noala-ui="synthese"] .noala-cab-injoignable-geste:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
/* La ligne de l'épisode : un bouton, rond clair, titre et date, crayon. */
html[data-noala-ui="synthese"] .noala-cab-identite .noala-patient-episode.noala-cab-episode {
  display: flex; align-items: center; flex-wrap: nowrap; gap: 14px; margin-top: 22px; max-width: 100%;
  padding: 6px 12px 6px 0; border: 0; border-radius: 14px; background: none;
  cursor: pointer; text-align: left; font-family: var(--font-sans); color: var(--ink); text-decoration: none;
}
html[data-noala-ui="synthese"] .noala-cab-identite .noala-cab-episode:hover { background: var(--cab-blanc-45); color: var(--ink); text-decoration: none; }
html[data-noala-ui="synthese"] .noala-cab-identite .noala-cab-episode:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-rond-clair {
  width: 42px; height: 42px; flex: none; display: grid; place-items: center; border-radius: 50%;
  border: 1px solid var(--cab-encre-20); background: var(--cab-blanc-40); color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-rond-clair .noala-ic { width: 16px; height: 16px; }
html[data-noala-ui="synthese"] .noala-cab-episode-texte { min-width: 0; display: flex; flex-direction: column; }
html[data-noala-ui="synthese"] .noala-cab-episode-texte strong { font-weight: 500; font-size: 15px; line-height: 1.55; }
html[data-noala-ui="synthese"] .noala-cab-episode-texte small { font-size: 13px; line-height: 1.55; color: var(--text); }
html[data-noala-ui="synthese"] .noala-cab-episode-crayon { width: 16px; height: 16px; flex: none; margin-left: 4px; }
/* Le sélecteur d'épisode, sous la ligne de l'épisode (plusieurs épisodes). */
html[data-noala-ui="synthese"] .noala-cab-identite .noala-frise-epnav {
  display: flex; align-items: center; gap: 8px; margin-top: 12px; font-size: 13px; color: var(--text);
}
html[data-noala-ui="synthese"] .noala-cab-identite .noala-frise-epnav button {
  width: 36px; height: 36px; display: grid; place-items: center; padding: 0; cursor: pointer;
  border: 1px solid var(--cab-encre-20); border-radius: 50%; background: var(--cab-blanc-40); color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-identite .noala-frise-epnav button:hover { background: var(--surface); border-color: var(--cab-encre-35); color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-identite .noala-frise-epnav .noala-ic { width: 16px; height: 16px; }

/* La carte encre « Où en est le suivi ». Porte `.noala-frise-ephead` (le rôle de
   l'ancien en-tête de la carte Parcours) : ses règles d'app.css sont reprises. */
html[data-noala-ui="synthese"] .noala-frise-ephead.noala-cab-suivi {
  display: flex; flex-direction: column; align-items: stretch; gap: 0; flex-wrap: nowrap; margin: 0; min-width: 0;
  padding: 24px 26px; border-radius: 24px; background: var(--ink); color: var(--cta-fg);
}
html[data-noala-ui="synthese"] .noala-cab-suivi-legende { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 13px; line-height: 1.55; color: var(--cab-sur-encre); }
html[data-noala-ui="synthese"] .noala-cab-suivi-legende .noala-ic { width: 14px; height: 14px; }
html[data-noala-ui="synthese"] .noala-cab-suivi .noala-frise-progress { display: block; margin: 0; }
html[data-noala-ui="synthese"] .noala-cab-suivi .noala-frise-progress-txt { font-size: inherit; color: inherit; }
html[data-noala-ui="synthese"] .noala-cab-suivi-chiffres {
  margin: 14px 0 0; font-size: 24px; line-height: 1.55; letter-spacing: -.5px; font-weight: 500; color: var(--cta-fg);
}
html[data-noala-ui="synthese"] .noala-cab-suivi-chiffres b { font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-suivi-prochaine { margin: 6px 0 0; font-size: 13.5px; line-height: 1.55; color: var(--cab-sur-encre); overflow-wrap: break-word; }
html[data-noala-ui="synthese"] .noala-cab-suivi-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: auto; padding-top: 20px; }
html[data-noala-ui="synthese"] .noala-cab-suivi .noala-cab-suivi-principale:is(.noala-frise-ephead-add, .noala-cab-suivi-rouvrir, .noala-cab-suivi-nouveau) {
  flex: 1 1 auto; display: flex; align-items: center; justify-content: space-between; gap: 12px;
  width: auto; height: auto; min-height: 48px; margin: 0; padding: 0 18px; border: 0; border-radius: 15px;
  background: var(--surface-2); color: var(--ink); cursor: pointer;
  font-family: var(--font-sans); font-size: 14px; font-weight: 500;
}
html[data-noala-ui="synthese"] .noala-cab-suivi .noala-cab-suivi-principale:is(.noala-frise-ephead-add, .noala-cab-suivi-rouvrir, .noala-cab-suivi-nouveau):hover { background: var(--surface); border: 0; }
html[data-noala-ui="synthese"] .noala-cab-suivi-principale .noala-ic { width: 16px; height: 16px; flex: none; }
html[data-noala-ui="synthese"] .noala-cab-suivi-secondaire {
  min-height: 48px; padding: 0 16px; border: 1px solid var(--cab-blanc-35); border-radius: 15px;
  background: none; color: var(--cta-fg); cursor: pointer; font-family: var(--font-sans); font-size: 14px; font-weight: 500;
}
html[data-noala-ui="synthese"] .noala-cab-suivi-secondaire:hover { border-color: var(--surface); background: var(--sidebar-surface); }
html[data-noala-ui="synthese"] .noala-cab-suivi :focus-visible { outline: 3px solid var(--surface); outline-offset: 3px; }

/* Les six portes du dossier (la sixième, « Espace NOALA », lot R3b, 2026-10-29) :
   rangée sobre à filets (`.dossier`). Reprend le
   rail d'app.css (pastille grise, boutons en pilule). */
html[data-noala-ui="synthese"] .noala-patient-rail.noala-cab-portes {
  display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0; flex-wrap: nowrap;
  max-width: none; width: 100%; margin: 20px 0 0; padding: 0; border-radius: 0; background: none;
  border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);
}
html[data-noala-ui="synthese"] .noala-cab-portes button {
  display: flex; align-items: center; gap: 10px; min-width: 0; min-height: 52px; padding: 16px 14px; line-height: 1.55;
  border: 0; border-radius: 0; background: none; box-shadow: none; cursor: pointer; text-align: left; white-space: nowrap;
  font-family: var(--font-sans); font-size: 14px; font-weight: 500; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-portes button + button { border-left: 1px solid var(--border); }
html[data-noala-ui="synthese"] .noala-cab-portes button:hover { background: var(--surface-2); color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-portes button[aria-current="true"] { background: var(--surface-2); box-shadow: none; font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-portes button:focus-visible { outline: 3px solid var(--ink); outline-offset: -3px; }
html[data-noala-ui="synthese"] .noala-cab-porte-ic { width: 16px; height: 16px; flex: none; color: var(--text-2); }
html[data-noala-ui="synthese"] .noala-cab-porte-fl { width: 16px; height: 16px; flex: none; margin-left: auto; color: var(--text-2); }

/* Les trois vues : pastille blanche bordée, vue active en encre (11,97:1).
   Trois colonnes égales à la plus large (`1fr` dans une grille à sa largeur de
   contenu) : trois vues équivalentes pèsent pareil (suivi_chrome_trois_vues). */
html[data-noala-ui="synthese"] .noala-actionbar-zone.noala-cab-vues-zone { margin: 26px 0 16px; padding: 0; border: 0; }
html[data-noala-ui="synthese"] .noala-actionbar.noala-cab-vues {
  display: inline-grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; width: max-content; max-width: 100%;
  padding: 5px; background: var(--surface); border: 1px solid var(--border); border-radius: 30px;
}
html[data-noala-ui="synthese"] .noala-cab-vues button {
  display: flex; align-items: center; justify-content: center; gap: 8px; min-width: 0; min-height: 40px; padding: 0 18px;
  border: 0; border-radius: 30px; background: none; color: var(--text); cursor: pointer;
  font-family: var(--font-sans); font-size: 14px; font-weight: 400;
}
html[data-noala-ui="synthese"] .noala-cab-vues button:hover { background: var(--surface-2); border: 0; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-vues button[aria-pressed="true"],
html[data-noala-ui="synthese"] .noala-cab-vues button[aria-pressed="true"]:hover { background: var(--ink); color: var(--cta-fg); }
html[data-noala-ui="synthese"] .noala-cab-vues button:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }

@media (max-width: 1000px) {
  html[data-noala-ui="synthese"] .noala-patient-header.noala-cab-identite { grid-template-columns: minmax(0, 1fr); padding: 26px; }
  html[data-noala-ui="synthese"] .noala-patient-rail.noala-cab-portes { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  html[data-noala-ui="synthese"] .noala-cab-portes button:nth-child(4) { border-left: 0; }
  html[data-noala-ui="synthese"] .noala-cab-portes button:nth-child(n+4) { border-top: 1px solid var(--border); }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-patient-header.noala-cab-identite { padding: 20px 16px; border-radius: 26px; }
  html[data-noala-ui="synthese"] .noala-cab-identite .noala-patient-title { font-size: 32px; }
  html[data-noala-ui="synthese"] .noala-patient-rail.noala-cab-portes { grid-template-columns: minmax(0, 1fr); }
  html[data-noala-ui="synthese"] .noala-cab-portes button,
  html[data-noala-ui="synthese"] .noala-cab-portes button + button { border-left: 0; border-top: 1px solid var(--border); }
  html[data-noala-ui="synthese"] .noala-cab-portes button:first-child { border-top: 0; }
  html[data-noala-ui="synthese"] .noala-actionbar.noala-cab-vues { display: grid; width: 100%; }
  html[data-noala-ui="synthese"] .noala-cab-vues button { padding: 0 8px; }
}

/* ── Fiche patient : « Les prochaines étapes », en arches (lot 2, 2026-09-29) ──
   Aperçu validé : propositions-cabinet/frise2.html?idee=arches (frise2.css :
   `.g`, `.ph`, `.ph-nom`, `.g-*`, `.rd*`, `.g-auj`, `.replie-lien`, `.m-*`).
   Règle : la phase et les stations partagent UNE grille, donc un bord d'arche est
   un bord de colonne ; tout texte d'une colonne commence à `--pad` de son bord
   (nom de phase, date, rond, J±N, nom, pastille). cabinet_lot2 le MESURE.
   Les lignes sont fixes, dans la grille comme dans chaque colonne : une station
   ne peut pas décaler sa voisine. */
html[data-noala-ui="synthese"] .noala-cab-prochaines { margin: 0; }
html[data-noala-ui="synthese"] .noala-cab-prochaines-entete {
  display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin: 0 4px 18px;
}
html[data-noala-ui="synthese"] .noala-cab-prochaines-entete h2 {
  margin: 0; font-family: var(--font-sans); font-size: 22px; font-weight: 500; letter-spacing: -.4px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-voir-tout {
  flex: none; margin: 0; padding: 4px 0; border: 0; background: none; cursor: pointer;
  font-family: var(--font-sans); font-size: 14px; font-weight: 500; color: var(--accent-text);
}
html[data-noala-ui="synthese"] .noala-cab-voir-tout:hover { color: var(--ink); }
html[data-noala-ui="synthese"] :is(.noala-cab-voir-tout, .noala-cab-replie, .noala-cab-m-st, .noala-cab-m-replie):focus-visible {
  outline: 3px solid var(--ink); outline-offset: 2px; border-radius: 8px;
}
html[data-noala-ui="synthese"] .noala-cab-g {
  --pad: 18px; display: grid; grid-template-rows: 40px 22px 44px 24px 40px 30px; column-gap: 0; position: relative;
}
html[data-noala-ui="synthese"] .noala-cab-g > * { min-width: 0; }
/* L'arche : un fond à haut arrondi, exactement sur les colonnes de sa phase. */
html[data-noala-ui="synthese"] .noala-cab-g-arche { grid-row: 1 / -1; z-index: 0; margin: 0 4px; border-radius: 26px 26px 10px 10px; }
html[data-noala-ui="synthese"] .noala-cab-g-arche[data-phase="avant"] { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-g-arche[data-phase="jourj"] { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-g-arche[data-phase="apres"] { background: var(--surface); box-shadow: inset 0 0 0 1px var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-g-arche[data-replie="true"] { background: var(--cab-replie); box-shadow: none; }
html[data-noala-ui="synthese"] .noala-cab-g-arche[data-cours="true"] { box-shadow: inset 0 0 0 1.5px var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ph-nom {
  grid-row: 1; z-index: 1; align-self: center; margin: 0; padding: 0 var(--pad);
  font-family: var(--font-sans); font-size: 12.5px; font-weight: 600; color: var(--ink);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
html[data-noala-ui="synthese"] .noala-cab-ph-nom-txt { font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-ph-n { margin-left: 6px; font-weight: 400; color: var(--cab-doux); }
/* Une colonne : lignes 2 à 6 de la grille, avec les mêmes hauteurs. */
html[data-noala-ui="synthese"] .noala-cab-g-col { grid-row: 2 / -1; z-index: 1; position: relative; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-g-st { display: grid; grid-template-rows: 22px 44px 24px 40px 30px; height: 100%; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-g-st > * { min-width: 0; padding: 0 var(--pad); }
html[data-noala-ui="synthese"] .noala-cab-g-date { align-self: end; font-size: 12px; line-height: 1.4; color: var(--cab-doux); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html[data-noala-ui="synthese"] .noala-cab-g-rond { display: flex; align-items: center; position: relative; }
/* Le pointillé part du rond et file jusqu'au bord de la colonne ; la station
   suivante reprend à `--pad`. Il s'arrête sur la dernière station. */
html[data-noala-ui="synthese"] .noala-cab-g-rond::after {
  content: ""; position: absolute; left: calc(var(--pad) + 30px); right: 0; top: 50%; border-top: 1.5px dashed var(--cab-etape-tiret);
}
html[data-noala-ui="synthese"] .noala-cab-g-rond[data-fin="true"]::after { display: none; }
html[data-noala-ui="synthese"] .noala-cab-g-tl { align-self: end; font-size: 16px; line-height: 1.4; font-weight: 600; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html[data-noala-ui="synthese"] .noala-cab-g-st > .noala-cab-g-nom {
  padding-top: 3px; font-size: 12.5px; line-height: 1.35; color: var(--text);
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
html[data-noala-ui="synthese"] .noala-cab-g-etat { align-self: start; }
/* Le rond : même boîte pour tous, l'intervention comprise (anneau intérieur). */
html[data-noala-ui="synthese"] :is(.noala-cab-st, .noala-cab-m-rond, .noala-cab-gl-pt) {
  display: block; flex: none; box-sizing: border-box; width: 24px; height: 24px; padding: 0; border-radius: 50%;
  border: 1.5px solid var(--cab-etape-bord); background: var(--surface); position: relative; z-index: 2;
}
html[data-noala-ui="synthese"] .noala-cab-st { cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-st:hover { box-shadow: 0 0 0 3px var(--border); }
html[data-noala-ui="synthese"] .noala-cab-st:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
html[data-noala-ui="synthese"] :is(.noala-cab-st, .noala-cab-m-rond, .noala-cab-gl-pt)[data-etat="fait"] { background: var(--cab-etape-faite); border-color: var(--cab-etape-faite-bord); }
html[data-noala-ui="synthese"] :is(.noala-cab-st, .noala-cab-m-rond, .noala-cab-gl-pt)[data-etat="expire"] { background: var(--cab-attention-fond); border-color: var(--cab-attention-bord-2); }
html[data-noala-ui="synthese"] :is(.noala-cab-st, .noala-cab-m-rond, .noala-cab-gl-pt)[data-etat="todo"] { border: 2px solid var(--accent-text); }
html[data-noala-ui="synthese"] :is(.noala-cab-st, .noala-cab-m-rond, .noala-cab-gl-pt)[data-etat="annule"] { background: var(--cab-neutre-fond); border-style: dashed; }
html[data-noala-ui="synthese"] :is(.noala-cab-st, .noala-cab-m-rond, .noala-cab-gl-pt)[data-etat="jourj"] {
  border: 2px solid var(--ink); background: var(--ink); box-shadow: inset 0 0 0 3px var(--surface);
}
/* La pastille d'état. Encres AA sur leur propre fond. */
html[data-noala-ui="synthese"] .noala-cab-pe {
  display: inline-block; font-style: normal; font-size: 11px; line-height: 1.5; padding: 2px 9px; border-radius: 20px; white-space: nowrap;
  background: var(--surface); box-shadow: inset 0 0 0 1px var(--cab-ligne); color: var(--text);
}
html[data-noala-ui="synthese"] .noala-cab-pe[data-etat="fait"] { background: var(--surface-2); box-shadow: none; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-pe[data-etat="expire"] { background: var(--cab-attention-fond); box-shadow: none; color: var(--cab-attention); }
html[data-noala-ui="synthese"] .noala-cab-pe[data-etat="todo"] { box-shadow: inset 0 0 0 1px var(--accent-text); color: var(--accent-text); font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-pe[data-etat="annule"] { background: var(--cab-neutre-fond); box-shadow: none; color: var(--text); }
html[data-noala-ui="synthese"] .noala-cab-pe[data-etat="jourj"] { background: var(--ink); box-shadow: none; color: var(--cta-fg); }
/* Phase repliée : son texte commence sur la ligne des dates, comme les stations. */
html[data-noala-ui="synthese"] .noala-cab-replie {
  display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 22px;
  width: 100%; height: 100%; margin: 0; padding: 4px var(--pad) 0; border: 0; background: none; cursor: pointer;
  text-align: left; font-family: var(--font-sans); font-size: 12.5px; color: var(--text);
}
html[data-noala-ui="synthese"] .noala-cab-replie-txt { font-size: 12px; line-height: 1.4; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-replie-voir { font-weight: 500; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-replie:hover .noala-cab-replie-voir { color: var(--ink); }
/* Le repère du jour : sur le pointillé qui suit la dernière étape passée, à
   droite de sa colonne ; il ne touche aucun texte (ligne des ronds seulement). */
html[data-noala-ui="synthese"] .noala-cab-auj {
  grid-row: 3; z-index: 3; position: relative; pointer-events: none;
  display: flex; align-items: center; justify-content: flex-end; padding-right: 10%;
}
html[data-noala-ui="synthese"] .noala-cab-auj i {
  font-style: normal; font-size: 11px; line-height: 1.5; font-weight: 600; color: var(--cta-fg); white-space: nowrap;
  background: var(--accent-text); border-radius: 20px; padding: 3px 9px; box-shadow: 0 0 0 4px var(--cab-menthe-2);
}
html[data-noala-ui="synthese"] .noala-cab-auj[data-phase="jourj"] i { box-shadow: 0 0 0 4px var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-auj[data-phase="apres"] i { box-shadow: 0 0 0 4px var(--surface); }
/* Téléphone : la liste groupée par phase, masquée ailleurs. */
html[data-noala-ui="synthese"] .noala-cab-m { display: none; }
html[data-noala-ui="synthese"] .noala-cab-m-ph { margin-top: 10px; padding: 14px 12px 8px; border-radius: 22px 22px 10px 10px; }
html[data-noala-ui="synthese"] .noala-cab-m-ph[data-phase="avant"] { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-m-ph[data-phase="jourj"] { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-m-ph[data-phase="apres"] { background: var(--surface); box-shadow: inset 0 0 0 1px var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-m-ph[data-replie="true"] { background: var(--cab-replie); box-shadow: none; }
html[data-noala-ui="synthese"] .noala-cab-m-ph[data-cours="true"] { box-shadow: inset 0 0 0 1.5px var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-m-ph-nom { margin: 0 4px 6px; font-size: 12.5px; font-weight: 600; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-m-st {
  display: flex; align-items: center; gap: 12px; width: 100%; min-height: 48px; padding: 10px 4px; border: 0; background: none;
  cursor: pointer; text-align: left; font-family: var(--font-sans); color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-m-ph > div:not(:first-of-type) .noala-cab-m-st { border-top: 1px solid var(--cab-encre-08); }
html[data-noala-ui="synthese"] .noala-cab-m-txt { flex: 1; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-m-txt b { display: block; font-weight: 500; font-size: 14px; line-height: 1.45; overflow-wrap: break-word; }
html[data-noala-ui="synthese"] .noala-cab-m-txt small { display: block; font-size: 12px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-m-auj {
  display: flex; align-items: center; gap: 8px; margin: 4px; font-size: 11.5px; font-weight: 600; color: var(--accent-text);
}
html[data-noala-ui="synthese"] .noala-cab-m-auj::after { content: ""; flex: 1; border-top: 2px solid var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-m-replie {
  min-height: 44px; padding: 4px 4px 8px; border: 0; background: none; cursor: pointer; text-align: left;
  font-family: var(--font-sans); font-size: 14px; font-weight: 500; color: var(--accent-text);
}
@media (max-width: 1000px) {
  /* La grille garde des colonnes lisibles et défile dans sa carte. */
  html[data-noala-ui="synthese"] .noala-cab-g-defile { overflow-x: auto; }
  html[data-noala-ui="synthese"] .noala-cab-g { min-width: calc(var(--n) * 176px); }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-prochaines-entete { flex-direction: column; align-items: flex-start; gap: 6px; }
  html[data-noala-ui="synthese"] .noala-cab-g-defile { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-m { display: block; }
}

/* ── Fiche patient : « Tout le parcours », liste et détail (lot 2, 2026-09-29) ──
   Aperçu validé : propositions-cabinet/frise2.html?idee=arches&complet=1
   (frise2.css `.f2-tout*`, `.gl*`, `.fb-detail`, `.det-titre` ; fiche.css `.te-*`).
   UNE grille pour la liste : la colonne de phase couvre exactement ses lignes,
   posées par `grid-row` depuis `parcoursGroupesPlaces`. Les enveloppes de boucle
   sont en `display: contents` : leurs enfants sont les cases de la grille.
   Sous 1000 px, la liste passe en une colonne et le détail suit sa rangée
   (`order: var(--o)`). */
html[data-noala-ui="synthese"] .noala-cab-tout { margin: 0; }
html[data-noala-ui="synthese"] .noala-cab-tout-corps {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 400px); gap: 24px; align-items: start;
}
html[data-noala-ui="synthese"] .noala-cab-gl { display: grid; grid-template-columns: 150px minmax(0, 1fr); min-width: 0; }
html[data-noala-ui="synthese"] :is(.noala-cab-gl-groupe, .noala-cab-gl-ligne) { display: contents; }
/* La colonne de phase : une arche couchée (haut gauche arrondi), fonds des arches. */
html[data-noala-ui="synthese"] .noala-cab-gl-ph {
  grid-column: 1; display: flex; flex-direction: column; gap: 2px; margin-top: 8px; padding: 14px 16px;
  border-radius: 22px 0 0 10px; min-width: 0;
}
html[data-noala-ui="synthese"] .noala-cab-gl-ph[data-phase="avant"] { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-gl-ph[data-phase="jourj"] { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-gl-ph[data-phase="apres"] { background: var(--surface); box-shadow: inset 0 0 0 1px var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-gl-ph b { font-size: 13px; line-height: 1.4; font-weight: 600; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-gl-ph span { font-size: 12px; line-height: 1.4; color: var(--cab-doux); }
/* Une rangée : rond, J±N et date, nom et puces, pastille d'état. */
html[data-noala-ui="synthese"] .noala-cab-gl-rangee {
  grid-column: 2; display: grid; grid-template-columns: 34px 70px minmax(0, 1fr) auto; align-items: start; gap: 0 12px;
  width: 100%; min-width: 0; min-height: 44px; margin: 0; padding: 14px 12px; border: 0; border-top: 1px solid var(--cab-ligne);
  background: none; text-align: left; font-family: var(--font-sans); font-size: 14px; color: var(--ink); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-gl-rangee:hover { background: var(--cab-encre-04); }
html[data-noala-ui="synthese"] .noala-cab-gl-rangee[aria-current="true"] { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-gl-rangee:focus-visible { outline: 3px solid var(--ink); outline-offset: -3px; border-radius: 10px; }
html[data-noala-ui="synthese"] :is(.noala-cab-gl-rangee, .noala-cab-gl-auj)[data-premier="true"] { margin-top: 8px; border-top-color: transparent; }
html[data-noala-ui="synthese"] .noala-cab-gl-rond { display: flex; justify-content: center; padding-top: 2px; }
html[data-noala-ui="synthese"] .noala-cab-gl-tl { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-gl-tl b { display: block; font-size: 15px; line-height: 1.4; font-weight: 600; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-gl-tl small { display: block; font-size: 12px; line-height: 1.4; color: var(--cab-doux); white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-gl-corps { min-width: 0; }
/* Un nom absent laisse sa ligne vide : les puces restent sur leur ligne. */
html[data-noala-ui="synthese"] .noala-cab-gl-corps > b { display: block; min-height: 1.45em; line-height: 1.45; font-weight: 500; overflow-wrap: break-word; }
html[data-noala-ui="synthese"] .noala-cab-gl-puces { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-puce {
  display: inline-flex; gap: 6px; max-width: 100%; padding: 2px 10px; border-radius: 20px;
  background: var(--surface); box-shadow: inset 0 0 0 1px var(--cab-ligne); font-size: 12px; line-height: 1.5; color: var(--text);
}
html[data-noala-ui="synthese"] .noala-cab-puce > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-puce strong { flex: none; font-weight: 600; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-puce:is([data-nature="ressource"], [data-nature="doc"]) { background: var(--cab-puce-doc); box-shadow: none; }
html[data-noala-ui="synthese"] .noala-cab-puce-plus { align-self: center; font-size: 12px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-gl-etat { padding-top: 2px; }
html[data-noala-ui="synthese"] .noala-cab-gl-auj {
  grid-column: 2; display: flex; align-items: center; gap: 10px; margin: 0; padding: 8px 12px;
  font-size: 12px; line-height: 1.4; font-weight: 600; color: var(--accent-text);
}
html[data-noala-ui="synthese"] .noala-cab-gl-auj::after { content: ""; flex: 1; border-top: 2px solid var(--accent-text); }
/* Le détail : la carte collante de l'aperçu (`.fb-detail`), le contenu de
   l'ancien tiroir restylé. Les règles de frise.css (pastille, bandeau d'envoi,
   items) sont reprises ici sous le marqueur, sans toucher la feuille partagée. */
html[data-noala-ui="synthese"] .noala-cab-detail {
  position: sticky; top: 20px; min-width: 0; padding: 26px; border: 1px solid var(--cab-ligne); border-radius: 24px; background: var(--surface);
}
html[data-noala-ui="synthese"] .noala-cab-detail-vide { margin: 0; font-size: 14px; color: var(--text); }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-head { display: block; padding: 0; border: 0; }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-cab-det-sur {
  display: block; margin: 0; padding: 0; border-radius: 0; background: none;
  font-size: 13px; line-height: 1.4; font-weight: 500; letter-spacing: normal; color: var(--accent-text);
}
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-head-txt { display: block; }
html[data-noala-ui="synthese"] .noala-cab-det-titre {
  margin: 6px 0 0; font-family: var(--font-sans); font-size: 30px; line-height: 1.15; font-weight: 400; letter-spacing: -1px; color: var(--ink);
  overflow-wrap: break-word;
}
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-detail-meta { display: block; margin-top: 8px; font-size: 13px; line-height: 1.45; color: var(--text); }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-envoi {
  margin: 18px 0 0; padding: 0; gap: 8px 10px; border-radius: 0; background: none;
}
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-envoi-act { flex-basis: 100%; margin-left: 0; gap: 10px; }
/* L'origine d'un envoi : une mention sobre, en encre pleine (AA sur le blanc du détail). */
html[data-noala-ui="synthese"] .noala-cab-hors-proto {
  padding: 1px 8px; border: 1px solid var(--cab-ligne); border-radius: 20px; font-size: 12px; line-height: 1.5; color: var(--text);
}
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-act {
  min-height: 44px; padding: 0 16px; border: 1px solid var(--cab-ligne); border-radius: 15px; background: var(--surface);
  font-size: 14px; font-weight: 500; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-act:hover { border-color: var(--ink); color: var(--ink); background: var(--surface); }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-act.is-primary { border-color: var(--ink); background: var(--ink); color: var(--cta-fg); }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-act.is-primary:hover { border-color: var(--cta-bg-hover); background: var(--cta-bg-hover); color: var(--cta-fg); }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-act.is-danger { color: var(--text); }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-act.is-danger:hover { border-color: var(--cab-danger); color: var(--cab-danger); }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-act:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-items {
  margin-top: 18px; padding: 4px 16px; gap: 0; border: 1px solid var(--cab-ligne); border-radius: 20px; background: var(--surface);
}
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-items:not(:has(li)) { display: none; }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-item { padding: 12px 0; border-radius: 0; background: none; }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-item + .noala-jalon-item { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-item-lab { font-size: 14px; color: var(--ink); }
/* Le nom du questionnaire garde sa ligne entière ; objectif, score et
   « Historique → » passent dessous quand la carte est étroite. */
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-qsrow { flex-wrap: wrap; row-gap: 6px; }
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-qsrow > .noala-jalon-item-lab { flex: 1 1 100%; }
@media (max-width: 999.98px) {
  /* Une colonne : le nom de phase au-dessus de ses rangées, le détail juste
     après la rangée choisie. */
  html[data-noala-ui="synthese"] .noala-cab-tout-corps { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  html[data-noala-ui="synthese"] .noala-cab-gl { display: contents; }
  html[data-noala-ui="synthese"] :is(.noala-cab-gl-ph, .noala-cab-gl-rangee, .noala-cab-gl-auj, .noala-cab-detail) { order: var(--o); }
  html[data-noala-ui="synthese"] .noala-cab-gl-ph { flex-direction: row; align-items: baseline; gap: 8px; margin-top: 12px; padding: 12px 14px; border-radius: 22px 22px 10px 10px; }
  html[data-noala-ui="synthese"] :is(.noala-cab-gl-rangee, .noala-cab-gl-auj)[data-premier="true"] { margin-top: 0; }
  html[data-noala-ui="synthese"] .noala-cab-detail { position: static; margin: 4px 0 10px; padding: 20px; }
  html[data-noala-ui="synthese"] .noala-cab-detail[data-vide="true"] { display: none; }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-gl-rangee { grid-template-columns: 26px 54px minmax(0, 1fr); gap: 0 10px; padding: 12px 6px; }
  html[data-noala-ui="synthese"] .noala-cab-gl-etat { grid-column: 3; padding-top: 6px; }
  html[data-noala-ui="synthese"] .noala-cab-detail { padding: 18px 16px; border-radius: 20px; }
  html[data-noala-ui="synthese"] .noala-cab-det-titre { font-size: 24px; }
}

/* ── Fiche patient : revue des captures du lot 2 (2026-09-30) ──────────────── */
/* Une date d'une autre année (« 20 sept. 2027 ») tient dans sa colonne : la
   colonne s'élargit, et sur téléphone la date passe à la ligne. */
@media (min-width: 640.02px) {
  html[data-noala-ui="synthese"] .noala-cab-gl-rangee { grid-template-columns: 34px 88px minmax(0, 1fr) auto; }
}
html[data-noala-ui="synthese"] .noala-cab-gl-tl small { white-space: normal; }
/* Un épisode clos, annulé ou archivé le dit à côté de son titre, sobrement. */
html[data-noala-ui="synthese"] .noala-cab-ep-ferme {
  display: inline-block; margin-left: 8px; padding: 0 9px; border: 1px solid var(--cab-ferme-bord); border-radius: 20px;
  vertical-align: 1px; font-size: 12px; line-height: 1.6; font-weight: 500; color: var(--ink); background: var(--surface);
}
/* Dans le détail, « Voir le détail → » et « Historique → » sont toujours
   visibles : frise.css les montre au survol seulement, ce qui laissait un vide
   et une action invisible. */
html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-item-go { opacity: 1; }
@media (max-width: 767.98px) {
  /* Le détail sur téléphone : une ligne par contenu, l'étiquette à sa taille. */
  html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-item,
  html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-item.is-multi { flex-direction: row; flex-wrap: wrap; align-items: flex-start; gap: 8px 12px; }
  html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-item > .noala-jalon-item-lab { flex: 1 1 0; min-width: 0; }
  /* Les rangées gardent toute la ligne à côté de l'icône : le bouton passe dessous. */
  html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-item > .noala-jalon-item-rows { flex: 1 1 calc(100% - 44px); min-width: 0; }
  html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-pill { flex: none; align-self: center; }
  html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-item > .noala-jalon-item-go { flex: none; margin-left: 44px; }
}
@media (max-width: 640px) {
  /* Pas de carte dans la carte : la liste des contenus perd son cadre. */
  html[data-noala-ui="synthese"] .noala-cab-detail { padding: 18px 14px; }
  html[data-noala-ui="synthese"] .noala-cab-detail .noala-jalon-items { padding: 0; border: 0; border-top: 1px solid var(--cab-ligne); border-radius: 0; }
}
/* Sous 1000 px, la fenêtre prend la mise en page en liste groupée par phase :
   plus rien n'est coupé à droite. La grille garde ses mesures au-delà. */
@media (max-width: 999.98px) {
  html[data-noala-ui="synthese"] .noala-cab-g-defile { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-m { display: block; }
}
/* Entre 641 et 1000 px, les six portes en deux rangées pleines de trois, sans case
   vide (cinq portes jusqu'au lot R3b : trois puis deux). */
@media (min-width: 640.02px) and (max-width: 1000px) {
  html[data-noala-ui="synthese"] .noala-patient-rail.noala-cab-portes { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  html[data-noala-ui="synthese"] .noala-cab-portes button { grid-column: span 2; }
}
@media (max-width: 640px) {
  /* Les deux actions de la carte encre prennent chacune toute la largeur. */
  html[data-noala-ui="synthese"] .noala-cab-suivi-secondaire { flex: 1 1 100%; }
}

/* ── Fiche patient : la vue Scores, un tableau par étape (lot 3a, 2026-09-30) ──
   Aperçu validé : propositions-cabinet/scores.html?idee=tableau (scores.css :
   `.sc-*`, `.st-*`, `.sl-*`). Spec : docs/superpowers/specs/2026-09-30-cabinet-
   lot3-scores-design.md. Règle d'alignement : un bord d'arche est un bord de
   colonne ; chaque ligne est une sous-grille, donc chaque case est centrée sous
   son en-tête. cabinet_lot3_scores le MESURE. Sous 1000 px, une liste. */
html[data-noala-ui="synthese"] .noala-score-detail-modal.noala-cab-sc-vue { max-width: none; margin: 0; }
/* La carte blanche de la vue : Scores ET Documents (2026-09-30), pour que la page
   garde la même forme d'une vue à l'autre. cabinet_lot3_documents compare les deux. */
html[data-noala-ui="synthese"] :is(.noala-cab-sc, .noala-cab-doc) {
  display: block; min-width: 0; margin: 0; padding: 28px 31px 30px;
  border: 1px solid var(--cab-ligne); border-radius: 24px; background: var(--surface); color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-sc-charge { color: var(--text); font-size: 14px; }
html[data-noala-ui="synthese"] .noala-cab-sc-tete { display: flex; align-items: baseline; flex-wrap: wrap; gap: 14px; margin-bottom: 20px; }
html[data-noala-ui="synthese"] .noala-cab-sc-tete h2 { margin: 0; font-family: var(--font-sans); font-size: 22px; font-weight: 500; letter-spacing: -.4px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-sc-tete p { margin: 0; font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-texte { margin: 0; font-size: 13.5px; line-height: 1.5; color: var(--text); }
html[data-noala-ui="synthese"] .noala-cab-sc-sr {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* Pastille de score : la couleur vient de l'objectif de l'étape ou du barème
   publié ; entourée quand elle vient de l'objectif du praticien. Encres AA. */
html[data-noala-ui="synthese"] .noala-cab-sc-pill {
  display: inline-flex; align-items: center; justify-content: center; gap: 3px; box-sizing: border-box;
  min-width: 44px; min-height: 26px; padding: 1px 9px; border-radius: 20px; font-style: normal;
  font-family: var(--font-sans); font-size: 13px; line-height: 1.25; font-weight: 600; font-variant-numeric: tabular-nums;
  text-align: center; white-space: nowrap; background: var(--cab-neutre-fond); color: var(--cab-texte); box-shadow: inset 0 0 0 1px var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-sc-pill[data-level="good"] { background: var(--cab-bon-fond); color: var(--cab-bon); box-shadow: inset 0 0 0 1px var(--cab-bon-bord); }
html[data-noala-ui="synthese"] .noala-cab-sc-pill[data-level="warn"] { background: var(--cab-attention-fond); color: var(--cab-attention); box-shadow: inset 0 0 0 1px var(--cab-attention-bord); }
html[data-noala-ui="synthese"] .noala-cab-sc-pill[data-level="alert"] { background: var(--cab-alerte-fond); color: var(--cab-alerte); box-shadow: inset 0 0 0 1px var(--cab-alerte-bord); }
html[data-noala-ui="synthese"] .noala-cab-sc-pill[data-obj="true"] { box-shadow: inset 0 0 0 1.5px var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-sc-pill small { font-size: 10.5px; font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-sc-duo { display: inline-flex; gap: 4px; }
html[data-noala-ui="synthese"] .noala-cab-sc-etat {
  display: inline-flex; align-items: center; min-height: 26px; padding: 1px 10px; border-radius: 20px;
  background: var(--surface); box-shadow: inset 0 0 0 1px var(--cab-ligne); font-size: 12px; font-weight: 500; color: var(--text); white-space: nowrap;
}
html[data-noala-ui="synthese"] .noala-cab-sc-etat:is([data-etat="non_rempli"], [data-etat="erreur"]) { background: var(--cab-attention-fond); box-shadow: none; color: var(--cab-attention); }
html[data-noala-ui="synthese"] .noala-cab-sc-etat[data-etat="annule"] { background: var(--cab-neutre-fond); box-shadow: none; }
html[data-noala-ui="synthese"] .noala-cab-sc-rond { display: inline-block; flex: none; width: 12px; height: 12px; border-radius: 50%; box-sizing: border-box; }
/* Revue du lot 3a : le pointillé « à venir » passe à 3,9:1 sur le blanc (#7FA39A rendait 2,8:1).
   Un envoi en retard (en attente, à gauche du repère du jour) se dessine en pointillé ambre. */
html[data-noala-ui="synthese"] .noala-cab-sc-rond[data-etat="avenir"] { background: var(--surface); border: 1.5px dashed var(--cab-rond-avenir); }
html[data-noala-ui="synthese"] .noala-cab-sc-rond[data-etat="attente"] { background: var(--surface); border: 2px dotted var(--cab-attention-rond); }
html[data-noala-ui="synthese"] .noala-cab-sc-rond[data-etat="nc"] { background: var(--cab-attention-fond); border: 1.5px solid var(--cab-attention-rond); }
html[data-noala-ui="synthese"] .noala-cab-sc-annule { font-size: 11px; font-weight: 500; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-plus { align-self: center; font-size: 11px; font-weight: 600; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-hors { font-size: 10.5px; font-weight: 500; line-height: 1.2; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-coche {
  display: inline-grid; place-items: center; flex: none; width: 22px; height: 22px; border-radius: 50%;
  background: var(--surface); box-shadow: inset 0 0 0 1px var(--cab-ligne); font-style: normal; font-size: 11px; font-weight: 600; color: var(--accent-text);
}

/* Le tableau : une grille, les arches derrière, une sous-grille par ligne. */
html[data-noala-ui="synthese"] .noala-cab-sc-defile { overflow-x: auto; margin: 0 -14px; padding: 0 14px 4px; }
html[data-noala-ui="synthese"] .noala-cab-sc-grille { display: grid; position: relative; }
html[data-noala-ui="synthese"] .noala-cab-sc-grille > * { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-sc-arche { grid-row: 1 / -1; z-index: 0; margin: 0 3px; border-radius: 26px 26px 10px 10px; }
html[data-noala-ui="synthese"] .noala-cab-sc-arche[data-phase="avant"] { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-sc-arche[data-phase="jourj"] { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-sc-arche[data-phase="apres"] { background: var(--surface); box-shadow: inset 0 0 0 1px var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-sc-ph {
  grid-row: 1; z-index: 1; align-self: end; margin: 0; padding: 0 15px 2px;
  font-size: 12.5px; font-weight: 600; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
html[data-noala-ui="synthese"] .noala-cab-sc-coin {
  grid-column: 1; grid-row: 1 / 4; z-index: 3; position: sticky; left: 0; align-self: stretch;
  display: flex; align-items: flex-end; margin: 0; padding: 0 10px 6px 0; font-size: 12px; color: var(--cab-doux); background: var(--surface);
}
html[data-noala-ui="synthese"] .noala-cab-sc-entete {
  grid-row: 2 / 4; z-index: 1; display: grid; grid-template-rows: 26px 30px; justify-items: center; text-align: center;
}
/* Une colonne hors protocole : sa mention sous la date (la date garde sa ligne). */
html[data-noala-ui="synthese"] .noala-cab-sc-entete:has(.noala-cab-sc-hors) { grid-template-rows: 26px auto auto; }
html[data-noala-ui="synthese"] .noala-cab-sc-entete .noala-cab-sc-hors { padding: 0 2px; }
html[data-noala-ui="synthese"] .noala-cab-sc-tl { align-self: end; font-size: 13.5px; font-weight: 600; color: var(--ink); white-space: nowrap; }
/* Une date d'une autre année (« 14 mars 2027 ») passe sur deux lignes : elle tient dans sa colonne. */
html[data-noala-ui="synthese"] .noala-cab-sc-date { align-self: start; max-width: 100%; padding: 1px 4px 0; font-size: 11px; line-height: 1.2; color: var(--cab-doux); overflow-wrap: normal; }
html[data-noala-ui="synthese"] .noala-cab-sc-ligne {
  grid-column: 1 / -1; z-index: 1; position: relative;
  display: grid; grid-template-columns: subgrid; align-items: center;
  margin: 0; padding: 0; border: 0; background: none; cursor: pointer; text-align: left;
  font-family: var(--font-sans); color: var(--ink);
}
/* Le fond de la ligne déborde de 12 px à gauche : le nom reste au retrait de la carte. */
/* Le voile de la ligne vit dans `--sc-voile` : le fond de la ligne (::before) et
   celui du nom collé le relisent. L'anneau (::after) passe au-dessus du nom. */
html[data-noala-ui="synthese"] .noala-cab-sc-ligne { --sc-voile: transparent; }
html[data-noala-ui="synthese"] .noala-cab-sc-ligne::before,
html[data-noala-ui="synthese"] .noala-cab-sc-ligne::after {
  content: ""; position: absolute; top: 2px; bottom: 2px; left: -12px; right: 0; border-radius: 12px; pointer-events: none;
}
html[data-noala-ui="synthese"] .noala-cab-sc-ligne::before { z-index: -1; background: var(--sc-voile); }
html[data-noala-ui="synthese"] .noala-cab-sc-ligne::after { z-index: 3; }
html[data-noala-ui="synthese"] .noala-cab-sc-ligne:hover { --sc-voile: var(--cab-vert-06); }
html[data-noala-ui="synthese"] .noala-cab-sc-ligne[aria-expanded="true"] { --sc-voile: var(--cab-vert-10); }
html[data-noala-ui="synthese"] .noala-cab-sc-ligne[aria-expanded="true"]::after { box-shadow: inset 0 0 0 1.5px var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-sc-ligne:focus-visible { outline: 0; --sc-voile: var(--cab-vert-08); }
html[data-noala-ui="synthese"] .noala-cab-sc-ligne:focus-visible::after { box-shadow: inset 0 0 0 3px var(--accent-text); }
/* Revue du lot 3a : la colonne des noms reste collée à gauche quand le tableau
   défile (1000 à 1200 px). Fond opaque (le blanc de la carte, plus le voile de la
   ligne) : les cases passent dessous. Bord droit adouci une fois défilé. */
html[data-noala-ui="synthese"] .noala-cab-sc-nom {
  grid-column: 1; align-self: stretch; position: sticky; left: 0; z-index: 2;
  display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: 0 10px 0 0;
  background: linear-gradient(var(--sc-voile), var(--sc-voile)) 0 2px / 100% calc(100% - 4px) no-repeat, var(--surface);
}
html[data-noala-ui="synthese"] .noala-cab-sc-coin-bas { grid-column: 1; position: sticky; left: 0; z-index: 3; align-self: stretch; background: var(--surface); }
/* Une fois défilé : le blanc s'étend sur la marge de 14 px à gauche (les cases
   n'y passent plus), et le bord droit s'adoucit. */
html[data-noala-ui="synthese"] .noala-cab-sc-defile[data-defile="oui"] :is(.noala-cab-sc-nom, .noala-cab-sc-coin, .noala-cab-sc-coin-bas) {
  box-shadow: -14px 0 0 0 var(--surface), 8px 0 10px -8px var(--cab-encre-28);
}
html[data-noala-ui="synthese"] .noala-cab-sc-nom b { display: flex; align-items: center; gap: 6px; font-size: 14px; line-height: 1.3; font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-sc-nom b > span:first-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-sc-nom small { font-size: 11.5px; line-height: 1.35; color: var(--cab-doux); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html[data-noala-ui="synthese"] :is(.noala-cab-sc-nom, .noala-cab-sc-rangee-nom, .noala-cab-sc-titre) .noala-tag { flex: none; font-size: 10.5px; }
html[data-noala-ui="synthese"] .noala-cab-sc-cel { display: flex; align-items: center; justify-content: center; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-sc-cel .noala-cab-sc-pill { min-width: 40px; min-height: 24px; padding: 1px 6px; font-size: 12.5px; }
html[data-noala-ui="synthese"] .noala-cab-sc-cel .noala-cab-sc-duo .noala-cab-sc-pill { min-width: 27px; padding: 1px 4px; }
/* Le repère du jour : un trait sur le bord gauche de la première étape à venir. */
html[data-noala-ui="synthese"] .noala-cab-sc-auj {
  z-index: 1; pointer-events: none; justify-self: start; width: 0; margin-left: -1px; border-left: 2px solid var(--accent-text);
}
html[data-noala-ui="synthese"] .noala-cab-sc-auj-lib {
  z-index: 2; justify-self: end; align-self: center; padding-right: 8px;
  font-size: 11px; font-weight: 600; color: var(--accent-text); white-space: nowrap;
}
html[data-noala-ui="synthese"] .noala-cab-sc-legende {
  display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 14px 0 0; font-size: 12px; color: var(--cab-doux);
}
html[data-noala-ui="synthese"] .noala-cab-sc-legende > span { display: inline-flex; align-items: center; gap: 7px; }
html[data-noala-ui="synthese"] .noala-cab-sc-legende .noala-cab-sc-pill { min-width: 34px; min-height: 22px; font-size: 11.5px; }
html[data-noala-ui="synthese"] .noala-cab-sc-lettres { color: var(--cab-doux); }
/* Sans `subgrid`, chaque ligne reprend le gabarit des colonnes de l'en-tête. */
@supports not (grid-template-columns: subgrid) {
  html[data-noala-ui="synthese"] .noala-cab-sc-ligne { grid-template-columns: var(--sc-cols); }
}

/* La liste (sous 1000 px), masquée au-delà. */
html[data-noala-ui="synthese"] .noala-cab-sc-liste { display: none; flex-direction: column; }
html[data-noala-ui="synthese"] .noala-cab-sc-liste-tete { display: flex; justify-content: space-between; margin: 0; padding: 0 12px 8px; font-size: 12px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-rangee {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; width: 100%; min-height: 48px;
  margin: 0; padding: 10px 12px; border: 0; border-top: 1px solid var(--cab-ligne); background: none; border-radius: 0;
  text-align: left; font-family: var(--font-sans); color: var(--ink); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-sc-rangee:hover { background: var(--cab-menthe-2); border-radius: 14px; }
html[data-noala-ui="synthese"] .noala-cab-sc-rangee:focus-visible { outline: 3px solid var(--ink); outline-offset: -3px; border-radius: 14px; }
html[data-noala-ui="synthese"] .noala-cab-sc-rangee-nom { display: flex; flex-direction: column; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-sc-rangee-nom b { display: flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 500; line-height: 1.4; }
html[data-noala-ui="synthese"] .noala-cab-sc-rangee-nom small { font-size: 12px; color: var(--cab-doux); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html[data-noala-ui="synthese"] .noala-cab-sc-rangee-val { justify-self: end; display: flex; }

/* Le détail : sous le tableau, séparé par un filet. */
html[data-noala-ui="synthese"] .noala-score-main.noala-cab-sc-det { container-type: inline-size; min-width: 0; margin-top: 28px; padding: 28px 0 0; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-sc-retour {
  display: none; margin: 0 0 16px; padding: 8px 14px; border: 0; border-radius: 20px; background: var(--cab-menthe-2); cursor: pointer;
  font-family: var(--font-sans); font-size: 13.5px; font-weight: 500; color: var(--accent-text);
}
html[data-noala-ui="synthese"] .noala-cab-sc-retour:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-sc-det-tete { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 18px; }
html[data-noala-ui="synthese"] .noala-cab-sc-det-titre { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-sc-sur { margin: 0; font-size: 13px; font-weight: 500; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-sc-titre {
  margin: 4px 0 0; font-family: var(--font-sans); font-size: 30px; line-height: 1.15; font-weight: 400; letter-spacing: -1px; color: var(--ink);
  overflow-wrap: break-word;
}
html[data-noala-ui="synthese"] .noala-cab-sc-titre small { font-size: .62em; letter-spacing: -.3px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-titre .noala-tag { margin-left: 8px; vertical-align: 4px; }
html[data-noala-ui="synthese"] .noala-cab-sc-titre:focus { outline: 0; }
html[data-noala-ui="synthese"] .noala-cab-sc-titre:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 4px; }
html[data-noala-ui="synthese"] .noala-cab-sc-principale {
  flex: none; display: flex; align-items: center; min-height: 46px; margin: 0; padding: 0 20px; border: 0; border-radius: 15px;
  background: var(--ink); color: var(--cta-fg); font-family: var(--font-sans); font-size: 14px; font-weight: 500; cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-sc-principale:hover { background: var(--cta-bg-hover); }
html[data-noala-ui="synthese"] .noala-cab-sc-principale:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-sc-haut { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
@container (min-width: 740px) {
  html[data-noala-ui="synthese"] .noala-cab-sc-haut { grid-template-columns: minmax(0, 340px) minmax(0, 1fr); }
}
html[data-noala-ui="synthese"] .noala-cab-sc-bloc { min-width: 0; padding: 20px; border: 1px solid var(--cab-ligne); border-radius: 20px; background: var(--surface); }
html[data-noala-ui="synthese"] :is(.noala-cab-sc-bloc, .noala-cab-sc-points) h4 { margin: 0; font-family: var(--font-sans); font-size: 14px; font-weight: 600; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-sc-gros { display: flex; align-items: baseline; gap: 6px; margin: 0; line-height: 1; }
html[data-noala-ui="synthese"] .noala-cab-sc-det .noala-cab-sc-gros .noala-score-big {
  font-size: 52px; font-weight: 400; letter-spacing: -2px; line-height: 1; color: var(--ink); font-variant-numeric: tabular-nums;
}
html[data-noala-ui="synthese"] .noala-cab-sc-gros b { font-size: 34px; font-weight: 400; letter-spacing: -1px; font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-sc-max { font-size: 16px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-lecture { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin: 12px 0 0; }
html[data-noala-ui="synthese"] .noala-cab-sc-det .noala-score-source { margin: 0; font-size: 12.5px; color: var(--cab-doux); white-space: normal; }
html[data-noala-ui="synthese"] .noala-cab-sc-det .noala-score-source::before { content: none; }
html[data-noala-ui="synthese"] .noala-cab-sc-neutre { font-size: 12.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] :is(.noala-cab-sc-quand, .noala-cab-sc-source) { margin: 6px 0 0; font-size: 12.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-etat-titre { margin: 0 0 6px; font-size: 22px; font-weight: 400; letter-spacing: -.4px; color: var(--ink); }
html[data-noala-ui="synthese"] :is(.noala-cab-sc-faits, .noala-cab-sc-cadre) { display: flex; flex-direction: column; margin: 16px 0 0; }
html[data-noala-ui="synthese"] :is(.noala-cab-sc-faits, .noala-cab-sc-cadre) > div {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: baseline; gap: 12px; padding: 9px 0; border-top: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] :is(.noala-cab-sc-faits, .noala-cab-sc-cadre) dt { font-size: 13px; color: var(--text); }
html[data-noala-ui="synthese"] :is(.noala-cab-sc-faits, .noala-cab-sc-cadre) dd { margin: 0; font-size: 13.5px; font-weight: 600; text-align: right; font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-sc-sous { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; margin-top: 12px; }
html[data-noala-ui="synthese"] .noala-cab-sc-sous-carte {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 6px 12px;
  padding: 12px 14px; border: 1px solid var(--cab-ligne); border-radius: 18px 18px 12px 12px;
}
html[data-noala-ui="synthese"] .noala-cab-sc-sous-carte > * { grid-column: 1 / -1; margin: 0; }
html[data-noala-ui="synthese"] .noala-cab-sc-sous-carte > .noala-cab-sc-sous-nom { grid-column: 1; grid-row: 1; font-size: 14px; font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-sc-sous-carte > .noala-cab-sc-gros { grid-column: 2; grid-row: 1; justify-self: end; }
html[data-noala-ui="synthese"] .noala-cab-sc-sous-carte .noala-cab-sc-pill { white-space: normal; }
html[data-noala-ui="synthese"] .noala-cab-sc-sous-carte > .noala-cab-sc-source { margin: 0; }
html[data-noala-ui="synthese"] .noala-cab-sc-ecart { font-size: 12.5px; color: var(--text); }
html[data-noala-ui="synthese"] .noala-cab-sc-evol { display: flex; flex-direction: column; }
html[data-noala-ui="synthese"] .noala-cab-sc-bloc-tete { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; margin-bottom: 10px; }
html[data-noala-ui="synthese"] .noala-cab-sc-legendes { margin: 0; font-size: 12px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-det .noala-cab-sc-courbe { width: 100%; min-height: 0; }
/* Points cliniques : une table ouverte. */
html[data-noala-ui="synthese"] .noala-cab-sc-points { margin-top: 24px; }
html[data-noala-ui="synthese"] .noala-cab-sc-points h4 { margin-bottom: 6px; }
html[data-noala-ui="synthese"] .noala-cab-sc-table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
html[data-noala-ui="synthese"] .noala-cab-sc-table thead th { padding: 8px 10px; text-align: left; font-size: 12px; font-weight: 500; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-table tbody tr { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-sc-table tbody tr[data-etat="annule"] { color: var(--cab-doux); }
html[data-noala-ui="synthese"] :is(.noala-cab-sc-table tbody th, .noala-cab-sc-table td) { padding: 11px 10px; text-align: left; vertical-align: middle; font-weight: 400; }
html[data-noala-ui="synthese"] .noala-cab-sc-table tbody th b { font-size: 14px; font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-sc-table tbody th small { font-size: 11px; color: var(--cab-doux); }
/* « hors protocole » sous l'étape, d'un seul tenant. */
html[data-noala-ui="synthese"] .noala-cab-sc-table tbody th .noala-cab-sc-hors { display: block; white-space: nowrap; }
html[data-noala-ui="synthese"] :is(.noala-cab-sc-table thead th:first-child, .noala-cab-sc-table tbody th) { padding-left: 0; }
html[data-noala-ui="synthese"] .noala-cab-sc-table .noala-cab-sc-num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-sc-table .noala-cab-sc-num b { font-size: 15px; font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-sc-dt { font-size: 13px; color: var(--cab-doux); white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-sc-lec .noala-cab-sc-duo { flex-wrap: wrap; }
/* Une lecture longue (« Dépression — symptomatologie problématique ») passe à la ligne, jamais hors de la carte. */
html[data-noala-ui="synthese"] .noala-cab-sc-lec .noala-cab-sc-pill { max-width: 100%; white-space: normal; text-align: left; }
html[data-noala-ui="synthese"] .noala-cab-sc-src { font-size: 12.5px; color: var(--cab-doux); white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-sc-table .noala-cab-sc-act { text-align: right; white-space: nowrap; padding-right: 0; }
html[data-noala-ui="synthese"] .noala-cab-sc-sous-val { display: block; font-size: 12.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-sous-val b { margin-left: 4px; font-size: 14px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-sc-rien { color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-sc-lien {
  margin: 0 0 0 16px; padding: 4px 0; border: 0; border-radius: 4px; background: none; cursor: pointer;
  font-family: var(--font-sans); font-size: 12.5px; font-weight: 500; color: var(--accent-text);
}
html[data-noala-ui="synthese"] .noala-cab-sc-lien:hover { text-decoration: underline; }
html[data-noala-ui="synthese"] .noala-cab-sc-lien:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-sc-act > .noala-cab-sc-lien:first-of-type { margin-left: 0; }
/* Détail étroit : chaque point devient une rangée empilée. */
@container (max-width: 759px) {
  html[data-noala-ui="synthese"] .noala-cab-sc-table thead { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-sc-table tbody tr {
    display: grid; grid-template-columns: auto minmax(0, 1fr) auto; column-gap: 12px; row-gap: 6px; align-items: center; padding: 12px 0;
  }
  html[data-noala-ui="synthese"] :is(.noala-cab-sc-table tbody th, .noala-cab-sc-table td) { padding: 0; }
  html[data-noala-ui="synthese"] .noala-cab-sc-table tbody th { grid-column: 1; }
  html[data-noala-ui="synthese"] .noala-cab-sc-table .noala-cab-sc-dt { grid-column: 2; }
  html[data-noala-ui="synthese"] .noala-cab-sc-table .noala-cab-sc-num { grid-column: 3; grid-row: 1; }
  html[data-noala-ui="synthese"] .noala-cab-sc-table .noala-cab-sc-lec { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
  html[data-noala-ui="synthese"] .noala-cab-sc-table .noala-cab-sc-src { grid-column: 1 / -1; white-space: normal; }
  html[data-noala-ui="synthese"] .noala-cab-sc-table .noala-cab-sc-src:empty { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-sc-table .noala-cab-sc-act { grid-column: 1 / -1; text-align: left; white-space: normal; }
  html[data-noala-ui="synthese"] .noala-cab-sc-table .noala-cab-sc-num .noala-cab-sc-sous-val { display: inline; margin-left: 10px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-lien { margin: 0 16px 0 0; min-height: 44px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-det-tete { flex-direction: column; gap: 12px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-titre { font-size: 26px; }
}

/* État vide. */
html[data-noala-ui="synthese"] .noala-cab-sc-vide .noala-cab-sc-tete { margin-bottom: 14px; }
html[data-noala-ui="synthese"] .noala-cab-sc-vide-corps { display: flex; align-items: center; gap: 24px; padding: 8px 0 6px; }
html[data-noala-ui="synthese"] .noala-cab-sc-vide-arche { width: 92px; flex: none; }
html[data-noala-ui="synthese"] .noala-cab-sc-vide-titre { margin: 0 0 6px; font-size: 22px; font-weight: 400; letter-spacing: -.4px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-sc-vide-corps .noala-cab-sc-texte { max-width: 540px; }

@media (max-width: 999.98px) {
  html[data-noala-ui="synthese"] :is(.noala-cab-sc-defile, .noala-cab-sc-legende) { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-sc-liste { display: flex; }
  html[data-noala-ui="synthese"] .noala-cab-sc[data-vue="detail"] :is(.noala-cab-sc-tete, .noala-cab-sc-liste) { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-sc[data-vue="detail"] .noala-score-main.noala-cab-sc-det { margin-top: 0; padding-top: 0; border-top: 0; }
  html[data-noala-ui="synthese"] .noala-cab-sc-retour { display: inline-flex; }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] :is(.noala-cab-sc, .noala-cab-doc) { padding: 20px 15px 22px; border-radius: 22px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-tete { margin-bottom: 14px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-tete h2 { font-size: 20px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-liste-tete { padding: 0 10px 6px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-rangee { padding: 10px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-bloc { padding: 16px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-det .noala-cab-sc-gros .noala-score-big { font-size: 44px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-vide-corps { flex-direction: column; align-items: flex-start; gap: 14px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-vide-arche { width: 72px; }
  html[data-noala-ui="synthese"] .noala-cab-sc-vide-titre { font-size: 20px; }
}

/* ── Fiche patient : la vue Documents, liste à filets et aperçu (lot 3b révisé, 2026-09-30) ──
   Aperçu validé : propositions-cabinet/documents2.html?idee=filets (documents2.css :
   `.d2-*`, valeurs reprises telles quelles). Spec :
   docs/superpowers/specs/2026-09-30-cabinet-lot3-documents-design.md, section
   « Révision du 2026-09-30 », et 2026-09-30-cabinet-regles-fidelite.md.
   Révision du 2026-09-30 (décision de Pierre) : la vue est dans la MÊME carte blanche
   que Scores (règle partagée plus haut), donc le détail n'est plus une carte : une
   zone à plat, séparée de la liste par un filet vertical (règle 3, pas de carte dans
   une carte). Aucune pastille, une seule action encre par surface.
   Sous 1000 px, la liste seule puis le détail seul (`data-vue`). */
html[data-noala-ui="synthese"] .noala-cab-doc { position: relative; }
html[data-noala-ui="synthese"] .noala-cab-doc-i {
  width: 18px; height: 18px; flex: none; fill: none; stroke: currentColor;
}
html[data-noala-ui="synthese"] .noala-cab-doc-i--s { width: 16px; height: 16px; }

/* En-tête : surtitre gris, titre grand et léger, une ligne. */
html[data-noala-ui="synthese"] .noala-cab-doc-tete { display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 24px 32px; padding: 0 0 30px; }
html[data-noala-ui="synthese"] .noala-cab-doc-tete-txt { min-width: 0; max-width: 760px; }
html[data-noala-ui="synthese"] .noala-cab-doc-surtitre { margin: 0 0 14px; font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-doc-tete h2 { margin: 0; font-family: var(--font-sans); font-size: 40px; font-weight: 400; line-height: 1.18; letter-spacing: -1.4px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-doc-compte { margin: 14px 0 0; font-size: 15px; line-height: 1.8; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-doc-outils { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }

/* Boutons : une action encre, les secondaires menthe et teal, un lien discret. */
html[data-noala-ui="synthese"] .noala-cab-doc-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 40px; margin: 0; padding: 10px 16px;
  border: 0; border-radius: 15px; cursor: pointer; text-align: left;
  font-family: var(--font-sans); font-size: 14px; font-weight: 600; line-height: 1.4;
}
html[data-noala-ui="synthese"] .noala-cab-doc-btn--1 { background: var(--ink); color: var(--cta-fg); }
html[data-noala-ui="synthese"] .noala-cab-doc-btn--1:hover { background: var(--cta-bg-hover); }
html[data-noala-ui="synthese"] .noala-cab-doc-btn--2 { background: var(--surface-2); color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-doc-btn--2:hover { background: var(--cab-menthe-survol); }
html[data-noala-ui="synthese"] .noala-cab-doc-lien {
  flex: none; min-height: 32px; margin: 0; padding: 6px 2px; border: 0; border-radius: 6px; background: none; cursor: pointer;
  font-family: var(--font-sans); font-size: 13.5px; font-weight: 500; color: var(--accent-text);
}
html[data-noala-ui="synthese"] .noala-cab-doc-lien:hover { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-doc-lien--discret {
  font-weight: 400; color: var(--cab-doux); text-decoration: underline; text-decoration-color: var(--cab-doux-40); text-underline-offset: 3px;
}
html[data-noala-ui="synthese"] :is(.noala-cab-doc-btn, .noala-cab-doc-lien, .noala-cab-doc-mi, .noala-cab-doc-retour):focus-visible {
  outline: 3px solid var(--accent-text); outline-offset: 2px;
}

/* Menu d'import. */
html[data-noala-ui="synthese"] .noala-cab-doc-importer { position: relative; }
html[data-noala-ui="synthese"] .noala-cab-doc-menu {
  position: absolute; right: 0; top: calc(100% + 8px); z-index: 40; width: 300px; padding: 8px;
  background: var(--surface); border: 1px solid var(--cab-ligne); border-radius: 16px; box-shadow: 0 12px 36px var(--cab-encre-14);
}
html[data-noala-ui="synthese"] .noala-cab-doc-importer--gauche .noala-cab-doc-menu { left: 0; right: auto; }
html[data-noala-ui="synthese"] .noala-cab-doc-menu ul { list-style: none; margin: 0; padding: 0; }
html[data-noala-ui="synthese"] .noala-cab-doc-menu-titre { margin: 0; padding: 8px 12px 6px; font-size: 12px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-doc-mi {
  display: flex; align-items: center; gap: 12px; width: 100%; min-height: 40px; margin: 0; padding: 8px 12px;
  border: 0; border-radius: 10px; background: none; text-align: left; cursor: pointer;
  font-family: var(--font-sans); font-size: 14px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-doc-mi .noala-cab-doc-i { color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-doc-mi:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-doc-mi:focus-visible { background: var(--cab-menthe-2); outline-offset: -3px; }
html[data-noala-ui="synthese"] .noala-cab-doc-menu-sep { height: 1px; margin: 6px 4px; background: var(--cab-ligne); }

/* La vue : liste à gauche, la carte du détail à droite. */
html[data-noala-ui="synthese"] .noala-cab-doc-corps { position: relative; display: grid; grid-template-columns: minmax(0, 440px) minmax(0, 1fr); gap: 64px; align-items: start; }
/* Le filet vertical entre la liste et le détail : sur toute la hauteur du corps, au
   milieu de l'espace, pour que le détail reste collant. */
html[data-noala-ui="synthese"] .noala-cab-doc-corps::before {
  content: ""; position: absolute; top: 0; bottom: 0; left: calc(min(440px, 100%) + 32px); width: 1px; background: var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-doc-charge { margin: 0; font-size: 14px; color: var(--cab-doux); }

/* La liste à filets : titres de groupe gris, une rangée par filet, sans cadre. */
html[data-noala-ui="synthese"] .noala-cab-doc-liste { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-doc-gtitre { margin: 0; padding: 22px 8px 6px; font-family: var(--font-sans); font-size: 13px; font-weight: 500; line-height: 1.5; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-doc-groupe:first-child .noala-cab-doc-gtitre { padding-top: 0; }
html[data-noala-ui="synthese"] :is(.noala-cab-doc-filets, .noala-cab-doc-rangs) { list-style: none; margin: 0; padding: 0; }
/* Une rangée de la liste, ou une pièce jointe dans le détail d'un compte rendu :
   la même rangée à filets (un bouton, sans bordure propre). */
html[data-noala-ui="synthese"] :is(.noala-cab-doc-filets, .noala-cab-doc-rangs) > li { border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] :is(.noala-cab-doc-li, .noala-cab-doc-rang) {
  display: flex; align-items: center; gap: 16px; width: 100%; min-height: 66px; margin: 0; padding: 12px 8px;
  border: 0; border-radius: 0; background: none; text-align: left; cursor: pointer; font-family: var(--font-sans); color: var(--ink);
}
html[data-noala-ui="synthese"] :is(.noala-cab-doc-li, .noala-cab-doc-rang):hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-doc-li[aria-current="true"] { background: var(--surface-2); }
html[data-noala-ui="synthese"] :is(.noala-cab-doc-li, .noala-cab-doc-rang):focus-visible { outline: 3px solid var(--accent-text); outline-offset: -3px; }
html[data-noala-ui="synthese"] .noala-cab-doc-ric { width: 22px; height: 22px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-doc-li-txt { display: flex; flex: 1; flex-direction: column; gap: 2px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-doc-li-txt b { font-size: 15px; font-weight: 400; line-height: 1.45; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html[data-noala-ui="synthese"] .noala-cab-doc-li-txt small { font-size: 13px; line-height: 1.5; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-doc-li-etat { display: flex; flex: none; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-doc-fl { color: var(--ink); }

/* Le détail : une zone à plat dans la carte, collante en haut. */
html[data-noala-ui="synthese"] .noala-cab-doc-det-zone { min-width: 0; position: sticky; top: 16px; }
html[data-noala-ui="synthese"] .noala-cab-doc-det { padding: 0; }
html[data-noala-ui="synthese"] .noala-cab-doc-retour {
  display: none; align-items: center; gap: 6px; min-height: 40px; margin: 0 0 18px; padding: 8px 14px;
  border: 0; border-radius: 20px; background: var(--cab-menthe-2); cursor: pointer;
  font-family: var(--font-sans); font-size: 13.5px; font-weight: 500; color: var(--accent-text);
}
/* « ‹ Retour au compte rendu » : le détail d'une pièce jointe, à toutes les largeurs. */
html[data-noala-ui="synthese"] .noala-cab-doc-retourcr { display: inline-flex; align-items: center; gap: 6px; margin: -6px 0 12px -2px; }
html[data-noala-ui="synthese"] .noala-cab-doc-sur { margin: 0; font-size: 12px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-doc-titre {
  margin: 10px 0 18px; font-family: var(--font-sans); font-size: 27px; font-weight: 400; letter-spacing: -.6px; line-height: 1.35;
  color: var(--ink); overflow-wrap: anywhere;
}
html[data-noala-ui="synthese"] .noala-cab-doc-titre:focus { outline: 0; }
html[data-noala-ui="synthese"] .noala-cab-doc-titre:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-doc-meta { margin: 16px 0 20px; font-size: 13.5px; line-height: 1.7; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-doc-acts { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
html[data-noala-ui="synthese"] .noala-cab-doc-pousse { margin-left: auto; }

/* Le compte rendu : texte, note interne à plat, pièces jointes à filets. */
html[data-noala-ui="synthese"] .noala-cab-doc-texte { margin: 0; font-size: 15px; line-height: 1.8; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-doc-cr-texte { max-width: 62ch; font-size: 14.5px; color: var(--cab-texte); white-space: pre-wrap; }
html[data-noala-ui="synthese"] .noala-cab-doc-note { margin: 20px 0 4px; padding: 18px 22px; border-radius: 17px; background: var(--surface-2); font-size: 14px; line-height: 1.75; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-doc-note-tete { display: flex; align-items: center; gap: 8px; margin: 0 0 4px; font-size: 12.5px; font-weight: 500; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-doc-note-texte { margin: 0; white-space: pre-wrap; }
html[data-noala-ui="synthese"] .noala-cab-doc-soustitre { margin: 24px 0 2px; font-size: 13px; font-weight: 500; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-doc-rien { margin: 6px 0 22px; font-size: 13.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-doc-rangs { margin-bottom: 22px; border-top: 1px solid var(--cab-ligne); }

/* L'aperçu : une surface teintée à plat. */
html[data-noala-ui="synthese"] .noala-cab-doc-vue { margin: 0 0 22px; }
html[data-noala-ui="synthese"] .noala-cab-doc-cadre {
  position: relative; display: flex; align-items: center; justify-content: center; height: 360px; overflow: hidden; border-radius: 17px; background: var(--surface-2);
}
html[data-noala-ui="synthese"] .noala-cab-doc-cadre[data-fam="sable"] { background: var(--famille-faq-fond); }
html[data-noala-ui="synthese"] .noala-cab-doc-cadre[data-fam="bleu"] { background: var(--famille-video-fond); }
html[data-noala-ui="synthese"] .noala-cab-doc-cadre[data-fam="gris"] { background: var(--cab-cadre-gris); }
/* Le PDF se pose sur la surface teintée comme la feuille de l'aperçu, avec une marge. */
html[data-noala-ui="synthese"] .noala-cab-doc-pdf { display: block; width: calc(100% - 48px); height: calc(100% - 48px); border: 0; border-radius: 6px; background: var(--surface); box-shadow: 4px 8px 15px var(--border); }
html[data-noala-ui="synthese"] .noala-cab-doc-img { display: block; max-width: calc(100% - 48px); max-height: calc(100% - 48px); object-fit: contain; border-radius: 6px; box-shadow: 4px 8px 15px var(--border); }
html[data-noala-ui="synthese"] .noala-cab-doc-msg { display: flex; flex-direction: column; align-items: center; gap: 10px; max-width: 360px; padding: 20px; text-align: center; }
html[data-noala-ui="synthese"] .noala-cab-doc-msg p { margin: 0; font-size: 14px; line-height: 1.6; color: var(--ink); }

/* État vide : l'arche, une phrase, les deux gestes. */
html[data-noala-ui="synthese"] .noala-cab-doc-vide { display: flex; align-items: center; gap: 40px; padding: 12px 0 8px; }
html[data-noala-ui="synthese"] .noala-cab-doc-vide-arche { width: 170px; flex: none; }
html[data-noala-ui="synthese"] .noala-cab-doc-vide-titre { margin: 0; font-family: var(--font-sans); font-size: 27px; font-weight: 400; letter-spacing: -.6px; line-height: 1.35; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-doc-vide .noala-cab-doc-texte { max-width: 56ch; margin: 10px 0 22px; }

@media (max-width: 999.98px) {
  html[data-noala-ui="synthese"] .noala-cab-doc-corps { display: block; }
  html[data-noala-ui="synthese"] .noala-cab-doc-corps::before { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-doc-det-zone { position: static; }
  html[data-noala-ui="synthese"] .noala-cab-doc[data-vue="liste"] .noala-cab-doc-det-zone { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-doc[data-vue="detail"] .noala-cab-doc-liste { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-doc-retour { display: inline-flex; }
  /* Liste seule : aucune rangée n'est « ouverte », pas de fond de sélection (comme l'aperçu). */
  html[data-noala-ui="synthese"] .noala-cab-doc-li[aria-current="true"]:not(:hover) { background: none; }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-doc-tete { padding: 0 0 24px; gap: 20px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-tete h2 { font-size: 32px; letter-spacing: -1.1px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-compte { margin-top: 10px; font-size: 14px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-outils { width: 100%; flex-direction: column; align-items: stretch; }
  html[data-noala-ui="synthese"] .noala-cab-doc-outils .noala-cab-doc-btn { width: 100%; min-height: 48px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-tete .noala-cab-doc-importer { order: -1; }
  html[data-noala-ui="synthese"] .noala-cab-doc-importer .noala-cab-doc-menu { left: 0; right: 0; width: auto; }
  html[data-noala-ui="synthese"] .noala-cab-doc-li-txt b { white-space: normal; overflow-wrap: anywhere; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
  html[data-noala-ui="synthese"] .noala-cab-doc-titre { font-size: 23px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-cadre { height: 280px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-acts { flex-direction: column; align-items: stretch; }
  html[data-noala-ui="synthese"] .noala-cab-doc-acts .noala-cab-doc-btn { width: 100%; min-height: 48px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-acts .noala-cab-doc-pousse { margin: 0 auto; }
  html[data-noala-ui="synthese"] .noala-cab-doc-vide { flex-direction: column; align-items: flex-start; gap: 18px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-vide-arche { width: 120px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-vide-titre { font-size: 23px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-vide .noala-cab-doc-importer { width: 100%; }
}
/* Sur téléphone, un lien du détail (retour, supprimer, réessayer) se touche du doigt. */
@media (max-width: 699.98px) {
  html[data-noala-ui="synthese"] .noala-cab-doc-det :is(.noala-cab-doc-lien, .noala-cab-doc-retour) { min-height: 44px; min-width: 44px; }
}

/* ── Fiche patient : les fenêtres (lot 3c, 2026-09-30) ──────────────────────
   Aperçu validé : propositions-cabinet/fenetres2.html (fenetres2.css, `.f2-*`,
   valeurs reprises telles quelles). Spec :
   docs/superpowers/specs/2026-09-30-cabinet-lot3-fenetres-design.md et
   2026-09-30-cabinet-regles-fidelite.md (règle 6).
   Une carte blanche centrée de 620 px au plus, 16 px de marge sur téléphone ;
   titre léger, une ligne d'état en mots ; le contenu défile dans la carte ; un pied
   porte la seule action encre. Les rangées sont à filets, jamais des cartes.
   Le voile et la carte gardent `.noala-modal-overlay` et `.noala-modal-card` (contrat
   des tests et de `_openSecondary`) : les règles ci-dessous les recouvrent par
   `.noala-cab-fen`, sans rien changer à `app.css`. */
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-fen {
  align-items: center; justify-content: center; padding: 16px; overflow: hidden;
  background: var(--cab-encre-53); backdrop-filter: blur(7px); -webkit-backdrop-filter: blur(7px);
}
/* La reconnexion sur place (S2, décision du 2026-11-08 et relecture d'Audit) : le voile est
   opaque, aucune donnée de patient ne reste visible derrière la fenêtre, qu'elle vienne de
   30 minutes sans geste ou d'un 401. */
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-fen.noala-cab-fen-opaque {
  background: var(--bg); backdrop-filter: none; -webkit-backdrop-filter: none;
}
html[data-noala-ui="synthese"] .noala-cab-fen > .noala-modal-card.noala-cab-fen-carte {
  position: relative; display: flex; flex-direction: column;
  width: min(620px, 100%); min-width: 0; max-width: 620px; height: auto; min-height: 0; max-height: min(90dvh, 880px);
  margin: auto; padding: 0; overflow: hidden;
  border: 1px solid var(--cab-ligne); border-radius: 28px; background: var(--surface); color: var(--ink);
  box-shadow: 0 25px 80px var(--cab-encre-20);
  font-family: var(--font-sans); font-size: 14px; line-height: 1.55;
}
html[data-noala-ui="synthese"] .noala-cab-fen > .noala-cab-fen-carte > .noala-modal-close.noala-cab-fen-x {
  position: absolute; top: 12px; right: 12px; z-index: 2; display: grid; place-items: center;
  width: 44px; height: 44px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: none;
  color: var(--ink); font-family: var(--font-sans); font-size: 27px; font-weight: 400; line-height: 1; cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-fen > .noala-cab-fen-carte > .noala-cab-fen-x:hover { background: var(--surface-2); border: 0; }
html[data-noala-ui="synthese"] .noala-cab-fen :focus-visible { outline: 3px solid var(--accent-text); outline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-fen > .noala-cab-fen-carte > .noala-cab-fen-x:focus-visible { outline-offset: 0; }

/* En tête : surtitre gris (le patient), titre léger, une ligne d'état en mots. */
html[data-noala-ui="synthese"] .noala-cab-fen-tete { flex: none; padding: 42px 42px 0; }
html[data-noala-ui="synthese"] .noala-cab-fen-sur { margin: 0; padding-right: 40px; font-size: 12px; line-height: 1.55; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-fen-tete .noala-modal-title.noala-cab-fen-titre {
  margin: 15px 0 0; padding: 0 24px 0 0; font-family: var(--font-sans); font-size: 27px; line-height: 1.4;
  font-weight: 500; letter-spacing: -.6px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-fen-intro { margin: 10px 0 0; font-size: 14px; line-height: 1.8; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-fen-corps {
  flex: 1 1 auto; min-height: 0; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain;
  padding: 12px 42px 4px;
}
html[data-noala-ui="synthese"] .noala-cab-fen-corps:last-child { padding-bottom: 36px; }
html[data-noala-ui="synthese"] .noala-cab-fen-pied { flex: none; padding: 20px 42px 42px; }
html[data-noala-ui="synthese"] .noala-cab-fen-pied[data-filet="true"] { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cta.noala-cab-fen-cta {
  display: flex; align-items: center; justify-content: center; gap: 12px; width: 100%; min-height: 52px; height: auto;
  margin: 0; padding: 14px 20px; border: 0; border-radius: 15px; background: var(--ink); color: var(--cta-fg); box-shadow: none;
  font-family: var(--font-sans); font-size: 14px; font-weight: 500; line-height: 1.4; cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cta.noala-cab-fen-cta:hover { background: var(--cta-bg-hover); }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cta.noala-cab-fen-cta:disabled { opacity: .55; cursor: default; }

/* Messages : chargement, état vide, erreur (en mots, sans cadre). */
html[data-noala-ui="synthese"] .noala-cab-fen-note { margin: 0; padding: 4px 0 8px; font-size: 13.5px; line-height: 1.7; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-fen-vide { margin: 0; padding: 18px 8px; font-size: 14px; line-height: 1.7; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-fen-erreur { margin: 0 0 8px; padding: 12px 16px; border-radius: 14px; background: var(--cab-alerte-fond); color: var(--cab-alerte); font-size: 13.5px; line-height: 1.6; }

/* Liste à filets, rangées dépliables. */
html[data-noala-ui="synthese"] .noala-cab-fen-liste { margin: 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] :is(.noala-cab-fen-pli, .noala-cab-fen-rang) { border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] :is(.noala-cab-fen-pli > summary, .noala-cab-fen-rang) {
  display: flex; align-items: center; gap: 20px; min-height: 78px; padding: 17px 8px;
}
html[data-noala-ui="synthese"] .noala-cab-fen-pli > summary { list-style: none; cursor: pointer; border-radius: 12px; }
html[data-noala-ui="synthese"] .noala-cab-fen-pli > summary::-webkit-details-marker { display: none; }
html[data-noala-ui="synthese"] .noala-cab-fen-pli > summary:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-fen-pli > summary:focus-visible { outline-offset: -3px; }
html[data-noala-ui="synthese"] .noala-cab-fen-ic {
  width: 23px; height: 23px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.6; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-fen-txt { display: flex; flex: 1; flex-direction: column; gap: 2px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-fen-lib { font-size: 16px; line-height: 1.5; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-fen-sec { font-size: 13.5px; line-height: 1.5; color: var(--cab-doux); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-fen-plus { flex: none; width: 16px; text-align: center; font-size: 16px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-fen-plus::before { content: "+"; }
html[data-noala-ui="synthese"] .noala-cab-fen-pli[open] > summary .noala-cab-fen-plus::before { content: "\2212"; }
html[data-noala-ui="synthese"] .noala-cab-fen-pastille {
  flex: none; padding: 5px 12px; border-radius: 20px; background: var(--surface-2); color: var(--ink);
  font-size: 11.5px; line-height: 1.3; white-space: nowrap;
}
/* Contenu déplié : aligné sur le libellé (23 px d'icône + 20 px d'écart + 8 px). */
html[data-noala-ui="synthese"] .noala-cab-fen-pli-corps { padding: 0 8px 22px 51px; font-size: 14px; line-height: 1.8; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-fen-pli-corps > p { max-width: 62ch; margin: 0; }
html[data-noala-ui="synthese"] .noala-cab-fen-pli--arche .noala-cab-fen-pli-corps { padding-left: 76px; }
html[data-noala-ui="synthese"] .noala-cab-fen-sous { padding: 14px 0; }
html[data-noala-ui="synthese"] .noala-cab-fen-sous:first-child { padding-top: 4px; }
html[data-noala-ui="synthese"] .noala-cab-fen-sous + .noala-cab-fen-sous { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-fen-sous-t { display: block; margin: 0; font-size: 15px; font-weight: 500; line-height: 1.5; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-fen-sous-l { margin: 2px 0 0; font-size: 13.5px; line-height: 1.6; color: var(--cab-doux); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-fen-gestes { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 22px; margin-top: 10px; }
html[data-noala-ui="synthese"] .noala-cab-fen-fin { margin: 8px 0 0; }

/* Les gestes : une action secondaire menthe, des liens teal, un lien discret. */
html[data-noala-ui="synthese"] .noala-cab-fen-second {
  display: inline-flex; align-items: center; min-height: 44px; margin: 0; padding: 10px 16px; border: 0; border-radius: 15px;
  background: var(--surface-2); color: var(--accent-text); font-family: var(--font-sans); font-size: 14px; font-weight: 500; line-height: 1.4; cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-fen-second:hover { color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-fen-lien {
  display: inline-flex; align-items: center; min-height: 44px; margin: 0; padding: 0; border: 0; background: none;
  color: var(--accent-text); font-family: var(--font-sans); font-size: 14px; font-weight: 500; line-height: 1.4; cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-fen-lien:hover { text-decoration: underline; text-underline-offset: 4px; }
html[data-noala-ui="synthese"] .noala-cab-fen-discret {
  display: inline-flex; align-items: center; min-height: 44px; margin: 0; padding: 0; border: 0; background: none;
  color: var(--cab-doux); font-family: var(--font-sans); font-size: 13.5px; line-height: 1.4; cursor: pointer;
  text-decoration: underline; text-underline-offset: 3px;
}
html[data-noala-ui="synthese"] .noala-cab-fen-discret:hover { color: var(--ink); }
html[data-noala-ui="synthese"] :is(.noala-cab-fen-second, .noala-cab-fen-lien, .noala-cab-fen-discret):disabled { opacity: .55; cursor: default; }

/* Date en arche (maquette : rendez-vous). */
html[data-noala-ui="synthese"] .noala-cab-fen-arche {
  display: flex; flex: none; flex-direction: column; align-items: center; width: 48px; padding: 6px 0 5px;
  background: var(--surface-2); border-radius: 24px 24px 10px 10px; line-height: 1.15; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-fen-arche b { font-size: 20px; font-weight: 400; letter-spacing: -.5px; }
html[data-noala-ui="synthese"] .noala-cab-fen-arche small { font-size: 10.5px; color: var(--cab-doux); }

/* Éléments d'une check-list. */
html[data-noala-ui="synthese"] .noala-cab-fen-elt { display: flex; align-items: flex-start; gap: 12px; padding: 10px 0; }
html[data-noala-ui="synthese"] .noala-cab-fen-elt + .noala-cab-fen-elt { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-fen-elt:first-child { padding-top: 2px; }
html[data-noala-ui="synthese"] .noala-cab-fen-marque {
  display: grid; place-items: center; flex: none; width: 20px; height: 20px; margin-top: 2px;
  border: 1.5px solid var(--cab-doux); border-radius: 50%; color: var(--cta-fg);
}
html[data-noala-ui="synthese"] .noala-cab-fen-elt[data-fait="true"] .noala-cab-fen-marque { border-color: var(--accent-text); background: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-fen-marque svg { width: 12px; height: 12px; fill: none; stroke: currentColor; stroke-width: 2.4; }
html[data-noala-ui="synthese"] .noala-cab-fen-elt-txt { display: flex; flex-direction: column; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-fen-elt-txt b { font-size: 14.5px; font-weight: 400; line-height: 1.5; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-fen-elt-txt small { font-size: 13px; line-height: 1.5; color: var(--cab-doux); overflow-wrap: anywhere; }

/* Identité : bascule Profil / Export, définitions à filets. */
html[data-noala-ui="synthese"] .noala-cab-fen-bascule {
  display: flex; gap: 4px; width: max-content; max-width: 100%; margin-top: 18px; padding: 4px;
  background: var(--cab-bascule); border-radius: 30px;
}
html[data-noala-ui="synthese"] .noala-cab-fen-bascule button {
  min-height: 40px; margin: 0; padding: 0 18px; border: 0; border-radius: 30px; background: none;
  font-family: var(--font-sans); font-size: 14px; color: var(--cab-texte); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-fen-bascule button[aria-pressed="true"] { background: var(--ink); color: var(--cta-fg); }
html[data-noala-ui="synthese"] .noala-cab-fen-defs { margin: 0; }
html[data-noala-ui="synthese"] .noala-cab-fen-defs > div { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; padding: 14px 8px; border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-fen-defs dt { flex: none; font-size: 13.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-fen-defs dd { min-width: 0; margin: 0; font-size: 15px; color: var(--ink); text-align: right; overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-fen-bas { margin: 0; padding: 18px 8px 4px; font-size: 13.5px; line-height: 1.7; color: var(--cab-doux); }
html[data-noala-ui="synthese"] button.noala-cab-fen-rang {
  width: 100%; margin: 0; border: 0; border-bottom: 1px solid var(--cab-ligne); border-radius: 0; background: none;
  font-family: var(--font-sans); text-align: left; cursor: pointer;
}
html[data-noala-ui="synthese"] button.noala-cab-fen-rang:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-fen button.noala-cab-fen-rang:focus-visible { outline-offset: -3px; border-radius: 12px; }
html[data-noala-ui="synthese"] .noala-cab-fen-fleche { width: 18px; height: 18px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.6; color: var(--ink); }

/* Formulaires. */
html[data-noala-ui="synthese"] .noala-cab-fen-champs { display: grid; gap: 16px; padding-top: 6px; }
html[data-noala-ui="synthese"] .noala-cab-fen-duo { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
html[data-noala-ui="synthese"] .noala-cab-fen-champ { display: block; min-width: 0; margin: 0; }
html[data-noala-ui="synthese"] .noala-cab-fen-etiq { display: block; margin: 0 0 6px; font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-fen-etiq small { font-size: 12px; font-weight: 400; color: var(--cab-etiquette); }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-fen-in {
  display: block; width: 100%; min-height: 48px; height: auto; margin: 0; padding: 11px 14px;
  border: 1px solid var(--text-2); border-radius: 12px; background: var(--surface); color: var(--ink); box-shadow: none;
  font-family: var(--font-sans); font-size: 15px; line-height: 1.4;
}
html[data-noala-ui="synthese"] .noala-cab-fen textarea.noala-cab-fen-in { min-height: 88px; resize: vertical; line-height: 1.5; }
html[data-noala-ui="synthese"] .noala-cab-fen select.noala-cab-fen-in {
  appearance: none; padding-right: 40px;
  background-image: var(--cab-chevron-bas);
  background-repeat: no-repeat; background-position: right 14px center; background-size: 18px;
}
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-fen-in:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-fen-aide { margin: 6px 0 0; font-size: 12.5px; line-height: 1.5; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-fen-case { display: flex; align-items: center; gap: 12px; min-height: 48px; margin: 0; font-size: 14.5px; color: var(--ink); cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-fen-case input { flex: none; width: 20px; height: 20px; margin: 0; accent-color: var(--accent-text); }

/* Téléphone : même grammaire, pleine largeur à 16 px des bords. */
@media (max-width: 620px) {
  html[data-noala-ui="synthese"] .noala-cab-fen > .noala-modal-card.noala-cab-fen-carte { border-radius: 24px; max-height: calc(100dvh - 32px); }
  html[data-noala-ui="synthese"] .noala-cab-fen-tete { padding: 32px 24px 0; }
  html[data-noala-ui="synthese"] .noala-cab-fen-tete .noala-modal-title.noala-cab-fen-titre { font-size: 23px; }
  html[data-noala-ui="synthese"] .noala-cab-fen-intro { font-size: 13.5px; }
  html[data-noala-ui="synthese"] .noala-cab-fen-corps { padding: 10px 24px 4px; }
  html[data-noala-ui="synthese"] .noala-cab-fen-pied { padding: 16px 24px 24px; }
  html[data-noala-ui="synthese"] .noala-cab-fen-corps:last-child { padding-bottom: 20px; }
  html[data-noala-ui="synthese"] :is(.noala-cab-fen-pli > summary, .noala-cab-fen-rang) { gap: 14px; min-height: 72px; padding: 16px 4px; }
  html[data-noala-ui="synthese"] .noala-cab-fen-lib { font-size: 15px; }
  html[data-noala-ui="synthese"] .noala-cab-fen-sec { font-size: 13px; }
  /* La pastille passe sous la ligne secondaire : le libellé garde sa largeur. */
  html[data-noala-ui="synthese"] :is(.noala-cab-fen-pli > summary, .noala-cab-fen-rang):has(.noala-cab-fen-pastille) {
    display: grid; grid-template-columns: auto 1fr auto; column-gap: 14px; row-gap: 6px;
  }
  html[data-noala-ui="synthese"] :is(.noala-cab-fen-pli > summary, .noala-cab-fen-rang):has(.noala-cab-fen-pastille) > :first-child { grid-row: 1 / 3; align-self: center; }
  html[data-noala-ui="synthese"] :is(.noala-cab-fen-pli > summary, .noala-cab-fen-rang):has(.noala-cab-fen-pastille) .noala-cab-fen-txt { grid-column: 2; grid-row: 1; }
  html[data-noala-ui="synthese"] :is(.noala-cab-fen-pli > summary, .noala-cab-fen-rang):has(.noala-cab-fen-pastille) .noala-cab-fen-pastille { grid-column: 2; grid-row: 2; justify-self: start; }
  html[data-noala-ui="synthese"] :is(.noala-cab-fen-pli > summary, .noala-cab-fen-rang):has(.noala-cab-fen-pastille) .noala-cab-fen-plus { grid-column: 3; grid-row: 1 / 3; }
  html[data-noala-ui="synthese"] .noala-cab-fen-pli-corps { padding: 0 4px 20px 41px; }
  html[data-noala-ui="synthese"] .noala-cab-fen-pli--arche .noala-cab-fen-pli-corps { padding-left: 66px; }
  html[data-noala-ui="synthese"] .noala-cab-fen-duo { grid-template-columns: 1fr; }
  html[data-noala-ui="synthese"] .noala-cab-fen-defs > div { flex-direction: column; align-items: stretch; gap: 2px; padding: 12px 4px; }
  html[data-noala-ui="synthese"] .noala-cab-fen-defs dd { text-align: left; }
}
/* Sans pied (Identité, partie Export ; Check-lists sans modèle), le corps garde sa marge du bas. */
html[data-noala-ui="synthese"] .noala-cab-fen-carte:not(:has(> .noala-cab-fen-pied:not([style*="none"]))) > .noala-cab-fen-corps { padding-bottom: 36px; }
@media (max-width: 620px) {
  html[data-noala-ui="synthese"] .noala-cab-fen-carte:not(:has(> .noala-cab-fen-pied:not([style*="none"]))) > .noala-cab-fen-corps { padding-bottom: 20px; }
}
/* Détail d'un consentement et signature : sous-titres, surface menthe à plat, empreintes. */
html[data-noala-ui="synthese"] .noala-cab-fen-h3 { margin: 22px 0 6px; font-family: var(--font-sans); font-size: 15px; font-weight: 500; line-height: 1.5; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-fen-corps > div > .noala-cab-fen-h3:first-child,
html[data-noala-ui="synthese"] .noala-cab-fen-corps > div > div:first-child > .noala-cab-fen-h3:first-child { margin-top: 8px; }
html[data-noala-ui="synthese"] .noala-cab-fen-h3 small { font-size: 12.5px; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-fen-sig { display: flex; align-items: center; justify-content: center; min-height: 120px; padding: 18px; border-radius: 17px; background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-fen-sig img { display: block; max-width: 100%; max-height: 240px; }
html[data-noala-ui="synthese"] .noala-cab-fen-defs--col > div { flex-direction: column; align-items: stretch; gap: 2px; }
html[data-noala-ui="synthese"] .noala-cab-fen-defs--col dd { text-align: left; font-size: 13.5px; line-height: 1.6; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-fen-mono { font-family: 'Courier New', monospace; font-size: 12px; word-break: break-all; }
/* La rÃ©ponse Ã  un questionnaire et le compte rendu, dans l'overlay partagÃ© des modales :
   leur gabarit est enfant unique de la carte, il porte la colonne. */
html[data-noala-ui="synthese"] .noala-cab-fen-carte > .noala-cab-fen-contenu { display: flex; flex: 1 1 auto; flex-direction: column; min-height: 0; }
html[data-noala-ui="synthese"] .noala-cab-fen-score {
  display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 14px; margin: 8px 0 4px; padding: 18px 22px;
  border-radius: 17px; background: var(--surface-2);
}
html[data-noala-ui="synthese"] .noala-cab-fen-score .noala-score-big { font-size: 40px; line-height: 1.1; }
html[data-noala-ui="synthese"] .noala-cab-fen-score-max { font-size: 14px; color: var(--cab-doux); font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-fen-score-int { flex-basis: 100%; font-size: 14px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-fen-qr { margin: 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-fen-qr > li { display: flex; align-items: baseline; gap: 12px; padding: 12px 8px; border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-fen-qr-n { flex: none; min-width: 22px; font-size: 13px; color: var(--cab-doux); font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-fen-qr-txt { display: flex; flex: 1; flex-direction: column; gap: 2px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-fen-qr-q { font-size: 14px; line-height: 1.5; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-fen-qr-r { font-size: 13.5px; line-height: 1.5; color: var(--accent-text); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-fen-qr-pts { flex: none; font-size: 12.5px; color: var(--cab-doux); font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-fen-in--note { background: var(--surface-2); border-color: var(--cab-note-bord); }

/* ── Patients : liste ouverte, barre unique, listes de choix (lot 4a, 2026-09-30) ──
   Aperçu validé : propositions-cabinet/patients.html?idee=liste&filtres=barre.
   Rangée reprise du panneau « Interventions » du tableau de bord (tuile en arche,
   `.noala-cab-date`). Aucune carte par rangée, aucune pastille ; une seule action
   encre, « Voir N patients », dans la feuille du téléphone. */
html[data-noala-ui="synthese"] .noala-cab-pat { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-pat-tete { padding: 26px 0 30px; }
html[data-noala-ui="synthese"] .noala-cab-pat-surtitre { margin: 0 0 14px; font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-pat-titre {
  margin: 0; font-family: var(--font-sans); font-size: 42px; line-height: 1.15; font-weight: 400; letter-spacing: -1.5px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-pat-compte { margin: 12px 0 0; font-size: 15px; line-height: 1.7; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-pat-lien {
  border: 0; background: none; padding: 4px 0; font-family: var(--font-sans); font-size: 13.5px; font-weight: 500;
  color: var(--accent-text); cursor: pointer; border-radius: 4px;
}
html[data-noala-ui="synthese"] .noala-cab-pat-lien:hover { text-decoration: underline; }

/* Barre unique : quatre segments séparés par un filet, le segment actif en menthe. */
html[data-noala-ui="synthese"] .noala-cab-pat-outils { margin-bottom: 14px; }
html[data-noala-ui="synthese"] .noala-cab-pat-barre {
  position: relative; display: grid; column-gap: 2px;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1fr) minmax(200px, .95fr);
  min-height: 64px; padding: 4px; background: var(--surface); border: 1px solid var(--cab-ligne); border-radius: 16px;
}
html[data-noala-ui="synthese"] .noala-cab-pat-seg {
  position: relative; display: flex; flex-direction: column; justify-content: center; gap: 1px; min-width: 0;
  padding: 8px 44px 8px 16px; border-radius: 12px; cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-pat-seg ~ .noala-cab-pat-seg::before {
  content: ""; position: absolute; left: -1.5px; top: 14px; bottom: 14px; width: 1px; background: var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-pat-seg:hover,
html[data-noala-ui="synthese"] .noala-cab-pat-seg--ouvert { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-pat-seg--actif { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-pat-seg--actif:hover { background: var(--cab-segment-survol); }
html[data-noala-ui="synthese"] .noala-cab-pat-seg:is(:hover, .noala-cab-pat-seg--actif, .noala-cab-pat-seg--ouvert)::before,
html[data-noala-ui="synthese"] .noala-cab-pat-seg:is(:hover, .noala-cab-pat-seg--actif, .noala-cab-pat-seg--ouvert) + .noala-cab-pat-seg::before,
html[data-noala-ui="synthese"] .noala-cab-pat-seg:is(:hover, .noala-cab-pat-seg--actif, .noala-cab-pat-seg--ouvert) + template + .noala-cab-pat-seg::before { opacity: 0; }
html[data-noala-ui="synthese"] .noala-cab-pat-seg:has(:focus-visible) { outline: 3px solid var(--accent-text); outline-offset: -3px; }
/* Le segment qui ouvre une liste est un bouton qui couvre tout le segment. */
html[data-noala-ui="synthese"] .noala-cab-pat-seg:has(> .noala-cab-pat-declencheur) { padding: 0; }
html[data-noala-ui="synthese"] .noala-cab-pat-declencheur {
  display: flex; flex-direction: column; justify-content: center; gap: 1px; width: 100%; height: 100%; min-width: 0;
  margin: 0; padding: 8px 44px 8px 16px; border: 0; border-radius: 12px; background: none; cursor: pointer;
  font-family: var(--font-sans); color: inherit; text-align: left;
}
html[data-noala-ui="synthese"] .noala-cab-pat-declencheur:focus-visible { outline: none; }
html[data-noala-ui="synthese"] .noala-cab-pat-seg-lib { font-size: 12px; font-weight: 500; line-height: 1.4; color: var(--cab-doux); cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-pat-seg-ligne { position: relative; display: block; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-pat-seg-val {
  display: block; max-width: 100%; font-size: 14.5px; line-height: 1.5; color: var(--ink);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
html[data-noala-ui="synthese"] .noala-cab-pat-seg:is([data-seg="du"], [data-seg="au"]):not(.noala-cab-pat-seg--actif) .noala-cab-pat-seg-val { color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-pat-seg--actif .noala-cab-pat-seg-val { font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-pat-seg--actif .noala-cab-pat-seg-lib { color: var(--cab-texte); }
/* Le vrai champ de date reste dessous (clavier, lecteur d'écran, calendrier natif) ;
   au repos, la date s'écrit en mots. */
html[data-noala-ui="synthese"] .noala-cab-pat-seg-ctl {
  position: absolute; left: 0; top: -2px; width: 100%; height: calc(100% + 4px); margin: 0; padding: 0;
  border: 0; background: none; font-family: var(--font-sans); font-size: 14.5px; color: var(--ink);
  opacity: 0; cursor: pointer; appearance: none;
}
html[data-noala-ui="synthese"] .noala-cab-pat-seg-ctl:focus { outline: none; opacity: 1; }
html[data-noala-ui="synthese"] .noala-cab-pat-seg-ctl:focus + .noala-cab-pat-seg-val { visibility: hidden; }
html[data-noala-ui="synthese"] .noala-cab-pat-seg-ctl::-webkit-calendar-picker-indicator { display: none; }
html[data-noala-ui="synthese"] .noala-cab-pat-chev {
  position: absolute; right: 14px; top: 50%; transform: translateY(-50%); width: 16px; height: 16px; color: var(--accent-text); pointer-events: none;
}
html[data-noala-ui="synthese"] .noala-cab-pat-x {
  position: absolute; right: 8px; top: 50%; transform: translateY(-50%); z-index: 2; width: 30px; height: 30px;
  display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; background: none; color: var(--accent-text); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-pat-x:hover { background: var(--surface); }
html[data-noala-ui="synthese"] .noala-cab-pat-x svg { width: 17px; height: 17px; }

/* La liste de choix : une petite carte blanche du design system (rayon 16, filet
   clair, ombre douce de la maquette), une vraie marge avant chaque mot, le survol
   et l'option courante en menthe, une coche sur l'option courante. Elle sert au
   filtre Intervention et au tri. */
html[data-noala-ui="synthese"] .noala-cab-choix {
  position: absolute; top: calc(100% + 8px); left: 0; z-index: 30;
  min-width: 100%; width: max-content; max-width: min(420px, calc(100vw - 32px)); max-height: min(380px, 60vh); overflow-y: auto;
  margin: 0; padding: 8px; list-style: none; background: var(--surface); border: 1px solid var(--cab-ligne); border-radius: 16px;
  box-shadow: 0 18px 50px var(--cab-encre-16); cursor: default; text-align: left;
}
html[data-noala-ui="synthese"] .noala-cab-choix:focus { outline: none; }
html[data-noala-ui="synthese"] .noala-cab-choix--droite { left: auto; right: 0; min-width: 300px; }
html[data-noala-ui="synthese"] .noala-cab-choix-opt {
  display: flex; align-items: center; gap: 14px; min-height: 44px; padding: 10px 14px 10px 16px;
  border-radius: 12px; cursor: pointer; font-size: 14px; line-height: 1.4; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-choix-opt:hover,
html[data-noala-ui="synthese"] .noala-cab-choix-opt[data-actif] { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-choix-opt[aria-selected="true"] { background: var(--surface-2); font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-choix:focus-visible .noala-cab-choix-opt[data-actif] { box-shadow: inset 0 0 0 2px var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-choix-txt { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-choix-txt small { display: block; font-size: 12.5px; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-choix-coche { flex: none; width: 18px; height: 18px; margin-left: auto; color: var(--accent-text); visibility: hidden; }
html[data-noala-ui="synthese"] .noala-cab-choix-opt[aria-selected="true"] .noala-cab-choix-coche { visibility: visible; }
/* Dans la feuille : la carte se déplie sous le champ, dans le flux. */
html[data-noala-ui="synthese"] .noala-cab-choix--dans { position: static; width: auto; max-width: none; margin-top: 8px; box-shadow: 0 10px 30px var(--cab-encre-10); }

/* Sous 900 px : un bouton « Filtres et tri » qui ouvre une feuille. */
html[data-noala-ui="synthese"] .noala-cab-pat-mobile { display: none; }
html[data-noala-ui="synthese"] .noala-cab-pat-mobile-resume { min-width: 0; font-size: 13.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-pat-filtrer {
  display: inline-flex; align-items: center; gap: 8px; flex: none; min-height: 42px; padding: 0 16px;
  border: 0; border-radius: 15px; background: var(--surface-2); color: var(--accent-text); cursor: pointer; white-space: nowrap;
  font-family: var(--font-sans); font-size: 14px; font-weight: 600;
}
html[data-noala-ui="synthese"] .noala-cab-pat-filtrer:hover { background: var(--cab-menthe-survol); }
html[data-noala-ui="synthese"] .noala-cab-pat-ifiltre { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
html[data-noala-ui="synthese"] .noala-cab-pat-nb {
  min-width: 22px; height: 22px; padding: 0 6px; border-radius: 11px; background: var(--surface); color: var(--accent-text);
  font-size: 12px; font-weight: 600; display: inline-grid; place-items: center; font-variant-numeric: tabular-nums;
}
html[data-noala-ui="synthese"] .noala-cab-pat-feuille {
  position: fixed; border: 1px solid var(--cab-ligne); border-radius: 28px; padding: 32px 24px 22px;
  width: min(560px, calc(100% - 32px)); max-width: none; max-height: 90dvh; overflow-y: auto;
  background: var(--bg); color: var(--ink); box-shadow: 0 25px 80px var(--cab-encre-20);
}
html[data-noala-ui="synthese"] .noala-cab-pat-feuille::backdrop { background: #143b4a88; backdrop-filter: blur(7px); }
html[data-noala-ui="synthese"] .noala-cab-pat-feuille h2 {
  margin: 0 44px 20px 0; font-family: var(--font-sans); font-size: 24px; font-weight: 400; letter-spacing: -.5px; line-height: 1.3; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-pat-fermer {
  position: absolute; top: 12px; right: 12px; width: 44px; height: 44px; display: grid; place-items: center;
  padding: 0; border: 0; border-radius: 50%; background: none; color: var(--ink); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-pat-fermer:hover { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-pat-fermer svg { width: 20px; height: 20px; }
html[data-noala-ui="synthese"] .noala-cab-pat-bloc { min-width: 0; margin: 0 0 20px; padding: 0; border: 0; }
html[data-noala-ui="synthese"] .noala-cab-pat-bloc > legend,
html[data-noala-ui="synthese"] .noala-cab-pat-bloc-lib { padding: 0; margin: 0 0 10px; font-size: 13px; font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-pat-reps { display: flex; flex-direction: column; gap: 8px; }
html[data-noala-ui="synthese"] .noala-cab-pat-rep {
  display: flex; align-items: center; gap: 12px; padding: 12px 14px; background: var(--surface); border: 1px solid var(--cab-ligne); border-radius: 14px;
  cursor: pointer; font-size: 14px; line-height: 1.4; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-pat-rep small { display: block; font-size: 12.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-pat-rep--oui { background: var(--surface-2); border-color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-pat-rep:has(:focus-visible) { outline: 3px solid var(--accent-text); outline-offset: -3px; }
html[data-noala-ui="synthese"] .noala-cab-pat-rep input { width: 18px; height: 18px; margin: 0; flex: none; accent-color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-pat-rep input:focus-visible { outline: none; }
html[data-noala-ui="synthese"] .noala-cab-pat-champ {
  display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; height: 48px; margin: 0; padding: 0 14px;
  border: 1px solid var(--text-2); border-radius: 12px; background: var(--surface); cursor: pointer; text-align: left;
  font-family: var(--font-sans); font-size: 14.5px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-pat-champ svg { flex: none; width: 18px; height: 18px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-pat-champ-val { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-pat-champ:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 1px; }
html[data-noala-ui="synthese"] .noala-cab-pat-deux { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
html[data-noala-ui="synthese"] .noala-cab-pat-jour { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-pat-jour > label { font-size: 13px; font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-pat-date-champ {
  position: relative; display: block; height: 48px; border: 1px solid var(--text-2); border-radius: 12px; background: var(--surface); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-pat-date-champ > svg {
  position: absolute; left: 12px; top: 50%; transform: translateY(-50%); width: 19px; height: 19px; color: var(--accent-text); pointer-events: none;
}
html[data-noala-ui="synthese"] .noala-cab-pat-date-champ input {
  position: absolute; inset: 0; width: 100%; height: 100%; padding: 0 8px 0 38px; border: 0; border-radius: 11px; background: none;
  font-family: var(--font-sans); font-size: 14.5px; color: var(--ink); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-pat-date-champ input::-webkit-calendar-picker-indicator { display: none; }
html[data-noala-ui="synthese"] .noala-cab-pat-date-champ input:not(:focus) { color: transparent; }
html[data-noala-ui="synthese"] .noala-cab-pat-date-champ input:focus { outline: none; }
html[data-noala-ui="synthese"] .noala-cab-pat-date-champ:focus-within { outline: 3px solid var(--accent-text); outline-offset: 1px; }
html[data-noala-ui="synthese"] .noala-cab-pat-date-affiche {
  position: absolute; left: 38px; right: 8px; top: 50%; transform: translateY(-50%); font-size: 14.5px; color: var(--ink);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; pointer-events: none;
}
html[data-noala-ui="synthese"] .noala-cab-pat-date-champ--vide .noala-cab-pat-date-affiche { color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-pat-date-champ input:focus ~ .noala-cab-pat-date-affiche { visibility: hidden; }
html[data-noala-ui="synthese"] .noala-cab-pat-feuille-pied {
  position: sticky; bottom: -22px; display: flex; align-items: center; gap: 12px;
  margin: 0 -24px -22px; padding: 14px 24px 22px; background: var(--bg);
}
html[data-noala-ui="synthese"] .noala-cab-pat-voir { margin-left: auto; min-height: 52px; padding: 0 22px; }

/* La liste : tuile, patient, intervention ; un filet entre les rangées. */
html[data-noala-ui="synthese"] .noala-cab-pat-entete,
html[data-noala-ui="synthese"] .noala-cab-pat-rang {
  display: grid; grid-template-columns: 54px minmax(0, .8fr) minmax(0, 1.4fr); align-items: center; column-gap: 22px;
}
html[data-noala-ui="synthese"] .noala-cab-pat-entete {
  margin: 0 -10px; padding: 0 10px 8px; border-bottom: 1px solid var(--cab-ligne); font-size: 12px; font-weight: 500; color: var(--cab-doux);
}
html[data-noala-ui="synthese"] .noala-cab-pat-liste { display: flex; flex-direction: column; margin: 0 -10px; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-pat-liste > li + li { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-pat-suite { display: flex; justify-content: center; padding: 14px 0 4px; }
html[data-noala-ui="synthese"] .noala-cab-pat-rang {
  width: 100%; margin: 0; padding: 12px 10px; border: 0; border-radius: 16px; background: none; cursor: pointer;
  font-family: var(--font-sans); color: inherit; text-align: left;
}
html[data-noala-ui="synthese"] .noala-cab-pat-rang:hover { background: var(--surface); box-shadow: 0 0 0 1px var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-pat-rang:focus-visible { outline: 2px solid var(--ink); outline-offset: -2px; border-radius: 16px; }
html[data-noala-ui="synthese"] .noala-cab-pat-qui { min-width: 0; display: flex; align-items: baseline; flex-wrap: wrap; gap: 0 8px; }
html[data-noala-ui="synthese"] .noala-cab-pat-nom { font-size: 15px; font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-pat-age { font-size: 13px; color: var(--cab-doux); white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-pat-int { min-width: 0; font-size: 14px; line-height: 1.5; color: var(--cab-texte); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-pat-int--sans { color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-pat-date { align-self: center; }
html[data-noala-ui="synthese"] .noala-cab-pat-date-morceaux { display: flex; flex-direction: column; align-items: center; line-height: 1.15; }
html[data-noala-ui="synthese"] .noala-cab-date[data-phase="sans"] {
  min-height: 62px; justify-content: center; background: var(--surface); border: 1px solid var(--cab-ligne); color: var(--cab-doux);
}
html[data-noala-ui="synthese"] .noala-cab-date[data-phase="sans"] svg { width: 20px; height: 20px; }

/* États : chargement, aucun patient ou aucun résultat, échec. */
html[data-noala-ui="synthese"] .noala-cab-pat-skel {
  display: grid; grid-template-columns: 54px minmax(0, .8fr) minmax(0, 1.4fr); align-items: center; column-gap: 22px; padding: 12px 0;
}
html[data-noala-ui="synthese"] .noala-cab-pat-skel > i { display: block; height: 12px; margin: 0; border-radius: 6px; }
html[data-noala-ui="synthese"] .noala-cab-pat-skel > i:nth-child(2) { width: 48%; height: 14px; }
html[data-noala-ui="synthese"] .noala-cab-pat-skel > i:nth-child(3) { width: 62%; }
html[data-noala-ui="synthese"] .noala-cab-pat-skel > .noala-cab-pat-skel-tuile { width: 54px; height: 62px; border-radius: 27px 27px 12px 12px; }
html[data-noala-ui="synthese"] .noala-cab-pat-vide { display: flex; align-items: center; gap: 36px; padding: 18px 0 10px; }
html[data-noala-ui="synthese"] .noala-cab-pat-vide > svg { width: 150px; flex: none; }
html[data-noala-ui="synthese"] .noala-cab-pat-vide h2 {
  margin: 0; font-family: var(--font-sans); font-size: 24px; font-weight: 400; letter-spacing: -.5px; line-height: 1.35; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-pat-vide p { margin: 8px 0 0; max-width: 52ch; font-size: 15px; line-height: 1.7; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-pat-vide .noala-cab-pat-lien { margin-top: 10px; }
html[data-noala-ui="synthese"] .noala-cab-pat-erreur { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; padding: 20px 0 12px; font-size: 15px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-pat-rond {
  display: grid; place-items: center; flex: none; width: 40px; height: 40px; border-radius: 50%; background: var(--surface); box-shadow: inset 0 0 0 1px var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-pat-rond svg { width: 20px; height: 20px; }

/* Lot R7b (2026-10-30) : les patients désactivés. Un lien sous le compte bascule entre la
   liste et eux. Chaque rangée porte « Rouvrir », un lien à icône comme ceux d'Activité.
   Pas de tuile de date : un patient désactivé n'a plus de parcours ouvert. */
html[data-noala-ui="synthese"] .noala-cab-pat-bascule { margin: 6px 0 0; }
html[data-noala-ui="synthese"] .noala-cab-pat-desactives > .noala-cab-injoignable { margin: 0 0 16px; }
html[data-noala-ui="synthese"] .noala-cab-pat-desact {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 6px 22px; padding: 14px 10px;
}
html[data-noala-ui="synthese"] .noala-cab-pat-desact .noala-cab-act-lien { min-height: 40px; }
html[data-noala-ui="synthese"] .noala-cab-pat-desact .noala-cab-act-lien:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-pat-desact .noala-cab-act-lien:disabled { opacity: .5; cursor: default; }

/* La barre se replie dès 900 px : en dessous, ses valeurs n'auraient plus la place d'être lues. */
@media (max-width: 900px) {
  html[data-noala-ui="synthese"] .noala-cab-pat-barre { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-pat-mobile { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
}
@media (max-width: 700px) {
  html[data-noala-ui="synthese"] .noala-cab-pat-feuille {
    width: 100%; margin: auto 0 0; border-radius: 28px 28px 0 0; border-bottom: 0; max-height: 92dvh; padding: 28px 20px 20px;
  }
  html[data-noala-ui="synthese"] .noala-cab-pat-feuille-pied { margin: 0 -20px -20px; padding: 14px 20px 20px; bottom: -20px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-feuille h2 { font-size: 23px; }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-pat-tete { padding: 14px 0 22px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-titre { font-size: 32px; letter-spacing: -1.1px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-compte { font-size: 14.5px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-entete { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-pat-liste { margin: 0 -4px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-rang {
    grid-template-columns: 48px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 14px; row-gap: 2px; padding: 12px 4px;
  }
  html[data-noala-ui="synthese"] .noala-cab-pat-rang > .noala-cab-date { grid-row: 1 / span 2; align-self: center; width: 48px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-qui { grid-column: 2; grid-row: 1; align-self: end; }
  html[data-noala-ui="synthese"] .noala-cab-pat-int { grid-column: 2; grid-row: 2; align-self: start; font-size: 13.5px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-skel { grid-template-columns: 48px minmax(0, 1fr); row-gap: 8px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-skel > .noala-cab-pat-skel-tuile { grid-row: 1 / span 2; width: 48px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-skel > i:nth-child(3) { grid-column: 2; width: 70%; }
  html[data-noala-ui="synthese"] .noala-cab-pat-vide { flex-direction: column; align-items: flex-start; gap: 16px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-vide > svg { width: 110px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-vide h2 { font-size: 22px; }
  html[data-noala-ui="synthese"] .noala-cab-pat-desact { padding: 12px 4px; }
}

/* ── Activité : flux à filets groupé par jour (lot 4b, 2026-09-30) ──────────
   Aperçu validé : propositions-cabinet/activite.html?idee=flux, avec les
   intertitres par jour de ?idee=jours (décision de Pierre du 2026-09-30).
   La barre, les listes de choix, la feuille et les états sont ceux de l'écran
   Patients (`.noala-cab-pat-*`, `.noala-cab-choix*`, lot 4a) ; la fenêtre d'un
   envoi est celle de la fiche (`.noala-cab-fen*`, lot 3c). Seul ce qui est
   propre au flux vit ici. Aucune carte par rangée, aucune pastille : l'état se
   dit en mots. */
html[data-noala-ui="synthese"] .noala-cab-act { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-act-tete { padding: 26px 0 26px; }
html[data-noala-ui="synthese"] .noala-cab-act-surtitre { margin: 0 0 14px; font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-act-titre {
  margin: 0; font-family: var(--font-sans); font-size: 42px; line-height: 1.15; font-weight: 400; letter-spacing: -1.5px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-act-intro { margin: 12px 0 0; font-size: 15px; line-height: 1.7; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-act-lien {
  display: inline-flex; align-items: center; gap: 6px; border: 0; background: none; padding: 4px 0;
  font-family: var(--font-sans); font-size: 13.5px; font-weight: 500; color: var(--accent-text); cursor: pointer; border-radius: 4px;
}
html[data-noala-ui="synthese"] .noala-cab-act-lien:hover { text-decoration: underline; text-underline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-act-lien svg { width: 17px; height: 17px; }

/* Reçu / Envoyé : la bascule de la fiche (rail blanc, choix encre, 11,97:1). */
html[data-noala-ui="synthese"] .noala-cab-act-sens-ligne {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px 20px; margin-bottom: 16px;
}
html[data-noala-ui="synthese"] .noala-cab-act-sens {
  display: flex; gap: 6px; width: max-content; max-width: 100%; padding: 5px;
  background: var(--surface); border: 1px solid var(--cab-ligne); border-radius: 30px;
}
html[data-noala-ui="synthese"] .noala-cab-act-sens button {
  display: flex; align-items: center; gap: 8px; min-height: 40px; margin: 0; padding: 0 20px; border: 0; border-radius: 30px;
  background: none; font-family: var(--font-sans); font-size: 14px; color: var(--cab-texte); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-act-sens button:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-act-sens button[aria-selected="true"] { background: var(--ink); color: var(--cta-fg); }
html[data-noala-ui="synthese"] .noala-cab-act-sens button:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-act-sens small { font-size: 12.5px; font-variant-numeric: tabular-nums; color: inherit; }

/* La barre : quatre segments en Reçu, cinq en Envoyé (le Statut). */
html[data-noala-ui="synthese"] .noala-cab-pat-outils.noala-cab-act-outils { margin-bottom: 10px; }
html[data-noala-ui="synthese"] .noala-cab-pat-barre.noala-cab-act-barre {
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1.15fr) minmax(0, 1fr) minmax(0, 1fr);
}
html[data-noala-ui="synthese"] .noala-cab-pat-barre.noala-cab-act-barre[data-n="5"] {
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1.1fr) minmax(0, .95fr) minmax(0, .95fr) minmax(0, 1fr);
}
html[data-noala-ui="synthese"] :is(.noala-cab-act-barre, .noala-cab-cat-barre) .noala-cab-pat-seg[data-seg="q"] { cursor: text; }
html[data-noala-ui="synthese"] .noala-cab-act-cherche {
  display: block; width: 100%; margin: 0; padding: 0; border: 0; background: none;
  font-family: var(--font-sans); font-size: 14.5px; line-height: 1.5; color: var(--ink); outline: none; text-overflow: ellipsis;
}
html[data-noala-ui="synthese"] .noala-cab-act-cherche::placeholder { color: var(--cab-doux); opacity: 1; }
html[data-noala-ui="synthese"] .noala-cab-act-cherche::-webkit-search-cancel-button { display: none; }
html[data-noala-ui="synthese"] :is(.noala-cab-act-barre, .noala-cab-cat-barre) .noala-cab-pat-seg:has(.noala-cab-act-cherche:focus-visible) { outline: 3px solid var(--accent-text); outline-offset: -3px; }

/* Le flux : un intertitre par jour de Paris, un filet entre les rangées. */
html[data-noala-ui="synthese"] .noala-cab-act-jour-titre {
  display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; margin: 0 -10px; padding: 28px 10px 10px;
  border-bottom: 1px solid var(--cab-ligne); font-family: var(--font-sans); font-size: 17px; font-weight: 500; letter-spacing: -.2px; line-height: 1.4; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-act-jour-titre small { font-size: 13px; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-act-groupe:first-child .noala-cab-act-jour-titre { padding-top: 8px; }
html[data-noala-ui="synthese"] .noala-cab-act-liste { display: flex; flex-direction: column; margin: 0 -10px; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-act-liste > li + li { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-act-rang,
html[data-noala-ui="synthese"] .noala-cab-act-skel {
  display: grid; grid-template-columns: 10px 24px minmax(0, 210px) minmax(0, 1fr) 72px; align-items: center; column-gap: 16px;
}
html[data-noala-ui="synthese"] .noala-cab-act-rang {
  width: 100%; min-height: 66px; margin: 0; padding: 11px 10px; border: 0; border-radius: 16px; background: none; cursor: pointer;
  font-family: var(--font-sans); color: inherit; text-align: left;
}
html[data-noala-ui="synthese"] .noala-cab-act-rang:hover { background: var(--surface); box-shadow: 0 0 0 1px var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-act-rang:focus-visible { outline: 2px solid var(--ink); outline-offset: -2px; border-radius: 16px; }
html[data-noala-ui="synthese"] .noala-cab-act-point { width: 9px; height: 9px; border-radius: 50%; justify-self: center; }
html[data-noala-ui="synthese"] .noala-cab-act-rang--nonlu .noala-cab-act-point { background: var(--cab-point-nonlu); }
html[data-noala-ui="synthese"] .noala-cab-act-ic {
  width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.6; color: var(--ink); vertical-align: middle;
}
html[data-noala-ui="synthese"] .noala-cab-act-nom {
  min-width: 0; font-size: 15px; font-weight: 500; line-height: 1.45; color: var(--ink);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
html[data-noala-ui="synthese"] .noala-cab-act-quoi { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-act-quoi b { font-size: 14.5px; font-weight: 400; line-height: 1.5; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-act-rang--nonlu .noala-cab-act-quoi b { font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-act-quoi small { font-size: 13.5px; line-height: 1.5; color: var(--cab-doux); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-act-quand {
  font-size: 13.5px; color: var(--cab-doux); text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums;
}

/* Charger la suite : secondaire menthe, centré sous un filet. */
html[data-noala-ui="synthese"] .noala-cab-act-suite {
  display: flex; flex-direction: column; align-items: center; gap: 8px; margin: 0 -10px; padding: 26px 0 8px;
  border-top: 1px solid var(--cab-ligne); font-size: 13.5px; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-cab-act-suite .noala-cab-act-second { padding: 10px 18px; font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-act-suite .noala-cab-act-second:disabled { opacity: .7; cursor: progress; }

/* Chargement : la forme des rangées. */
html[data-noala-ui="synthese"] .noala-cab-act-skel { padding: 18px 0; border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-act-skel > i { display: block; height: 12px; margin: 0; border-radius: 6px; }
html[data-noala-ui="synthese"] .noala-cab-act-skel > i:nth-child(1) { grid-column: 2; width: 22px; height: 22px; }
html[data-noala-ui="synthese"] .noala-cab-act-skel > i:nth-child(2) { width: 70%; height: 14px; }
html[data-noala-ui="synthese"] .noala-cab-act-skel > i:nth-child(3) { width: 82%; }
html[data-noala-ui="synthese"] .noala-cab-act-skel > i:nth-child(4) { width: 48px; justify-self: end; }

/* La fenêtre d'un envoi : le nom du patient en lien teal, les questionnaires à
   filets, une action encre en pied, puis la relance en menthe, le lien, et
   l'annulation en lien discret à droite. */
html[data-noala-ui="synthese"] .noala-cab-act-qui {
  display: inline-flex; align-items: center; gap: 6px; margin: 0 0 12px; padding: 0; border: 0; background: none; border-radius: 4px;
  font-family: var(--font-sans); font-size: 13px; font-weight: 500; color: var(--accent-text); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-act-qui:hover { text-decoration: underline; text-underline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-act-qui svg { width: 15px; height: 15px; }
html[data-noala-ui="synthese"] .noala-cab-act-note {
  margin: 8px 0 4px; padding: 14px 18px; border-radius: 17px; background: var(--surface-2); font-size: 13.5px; line-height: 1.65; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-act-sous-titre { margin: 14px 0 2px; font-size: 13px; font-weight: 500; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-act-qs { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-act-qs li {
  display: flex; align-items: center; gap: 16px; padding: 13px 4px; border-bottom: 1px solid var(--cab-ligne);
  font-size: 15px; color: var(--ink); overflow-wrap: anywhere;
}
html[data-noala-ui="synthese"] .noala-cab-act-qs .noala-cab-fen-ic { width: 20px; height: 20px; }
html[data-noala-ui="synthese"] .noala-cab-fen-gestes.noala-cab-act-gestes { margin-top: 12px; gap: 10px 20px; }
html[data-noala-ui="synthese"] .noala-cab-act-gestes:not(:has(> button:not([style*="none"]))) { display: none; }
html[data-noala-ui="synthese"] .noala-cab-act-gestes .noala-cab-act-annuler { margin-left: auto; }

/* Téléphone : la rangée passe sur trois lignes (patient et heure, puis ce qui
   s'est passé, puis la ligne secondaire). */
@media (max-width: 1100px) {
  html[data-noala-ui="synthese"] .noala-cab-act-rang,
  html[data-noala-ui="synthese"] .noala-cab-act-skel { grid-template-columns: 10px 24px minmax(0, 170px) minmax(0, 1fr) 64px; column-gap: 14px; }
}
@media (max-width: 900px) {
  html[data-noala-ui="synthese"] .noala-cab-pat-barre.noala-cab-act-barre { display: none; }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-act-tete { padding: 14px 0 22px; }
  html[data-noala-ui="synthese"] .noala-cab-act-titre { font-size: 32px; letter-spacing: -1.1px; }
  html[data-noala-ui="synthese"] .noala-cab-act-intro { font-size: 14.5px; }
  html[data-noala-ui="synthese"] .noala-cab-act-sens { width: 100%; }
  html[data-noala-ui="synthese"] .noala-cab-act-sens button { flex: 1; justify-content: center; padding: 0 8px; }
  html[data-noala-ui="synthese"] .noala-cab-act-liste,
  html[data-noala-ui="synthese"] .noala-cab-act-suite { margin: 0 -4px; }
  html[data-noala-ui="synthese"] .noala-cab-act-jour-titre { margin: 0 -4px; padding: 22px 4px 10px; font-size: 16px; }
  html[data-noala-ui="synthese"] .noala-cab-act-rang {
    grid-template-columns: 8px 22px minmax(0, 1fr) auto; grid-template-rows: auto auto; column-gap: 12px; row-gap: 1px;
    padding: 12px 4px; align-items: start;
  }
  html[data-noala-ui="synthese"] .noala-cab-act-rang .noala-cab-act-point { grid-column: 1; grid-row: 1; align-self: center; }
  html[data-noala-ui="synthese"] .noala-cab-act-rang .noala-cab-act-ic { grid-column: 2; grid-row: 1 / span 2; align-self: start; margin-top: 2px; width: 20px; height: 20px; }
  html[data-noala-ui="synthese"] .noala-cab-act-rang .noala-cab-act-nom { grid-column: 3; grid-row: 1; }
  html[data-noala-ui="synthese"] .noala-cab-act-rang .noala-cab-act-quand { grid-column: 4; grid-row: 1; align-self: baseline; font-size: 13px; }
  html[data-noala-ui="synthese"] .noala-cab-act-rang .noala-cab-act-quoi { grid-column: 3 / span 2; grid-row: 2; }
  html[data-noala-ui="synthese"] .noala-cab-act-quoi b { font-size: 14px; }
  html[data-noala-ui="synthese"] .noala-cab-act-quoi small { font-size: 13px; }
  html[data-noala-ui="synthese"] .noala-cab-act-skel { grid-template-columns: 22px minmax(0, 1fr); row-gap: 8px; }
  html[data-noala-ui="synthese"] .noala-cab-act-skel > i:nth-child(1) { grid-column: 1; grid-row: 1 / span 2; }
  html[data-noala-ui="synthese"] .noala-cab-act-skel > i:nth-child(4) { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-act-gestes { flex-direction: column; align-items: stretch; }
  html[data-noala-ui="synthese"] .noala-cab-act-gestes > button { justify-content: center; }
  html[data-noala-ui="synthese"] .noala-cab-act-gestes .noala-cab-act-annuler { margin-left: 0; }
}

/* ── Statistiques : un bloc de résultats (lot 4c, 2026-10-05) ───────────────
   Aperçu validé : propositions-cabinet/statistiques.html?idee=bloc (idée A).
   L'en-tête, la barre, les listes de choix, la feuille et les états sont ceux
   de l'écran Patients (`.noala-cab-pat-*`, `.noala-cab-choix*`, lot 4a) ; la
   fenêtre d'export est celle de la fiche (`.noala-cab-fen*`, lot 3c). Seul ce
   qui est propre aux résultats vit ici. Une seule action encre par surface
   (« Afficher », puis celle de la fenêtre), aucune carte dans une carte, aucune
   pastille, des courbes neutres : aucune couleur ne dit une gravité.
   ⚠️ Sur la menthe, le gris #526E74 passe sous le seuil AA en petit corps : les
   petits textes du bloc sont en #244D58. */
html[data-noala-ui="synthese"] .noala-cab-stat { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-pat-outils.noala-cab-stat-outils { margin-bottom: 10px; }

/* La barre : Questionnaire, Protocole, Du, Au, Autres filtres, puis « Afficher ». */
html[data-noala-ui="synthese"] .noala-cab-pat-barre.noala-cab-stat-barre {
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1.35fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, .95fr) auto; align-items: stretch;
}
html[data-noala-ui="synthese"] .noala-cab-stat-barre .noala-cta.noala-cab-stat-afficher {
  align-self: center; min-height: 50px; margin: 0 4px 0 8px; padding: 0 22px; border-radius: 15px; white-space: nowrap;
  font-family: var(--font-sans); font-size: 14px; font-weight: 500;
}
html[data-noala-ui="synthese"] .noala-cab-stat :is(.noala-cab-stat-afficher, .noala-cab-stat-afficher-mobile):disabled { opacity: .7; cursor: progress; }
/* « Autres filtres » : une petite carte blanche sous la barre, à droite. */
html[data-noala-ui="synthese"] .noala-cab-stat-pop {
  position: absolute; top: calc(100% + 8px); right: 0; z-index: 30; width: min(520px, calc(100vw - 32px));
  padding: 22px 22px 14px; background: var(--surface); border: 1px solid var(--cab-ligne); border-radius: 16px;
  box-shadow: 0 18px 50px var(--cab-encre-16);
}
html[data-noala-ui="synthese"] .noala-cab-stat-pop:focus { outline: none; }
/* « Retirer les filtres » : un lien discret sous la barre (ordinateur ; la feuille a le sien). */
html[data-noala-ui="synthese"] .noala-cab-stat-retirer { margin: 6px 0 0; padding-left: 2px; }
html[data-noala-ui="synthese"] .noala-cab-stat-champs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; }
html[data-noala-ui="synthese"] .noala-cab-stat-champs > .noala-cab-pat-bloc { margin: 0; }
html[data-noala-ui="synthese"] .noala-cab-stat-champs > .noala-cab-pat-bloc[data-type="texte"] { grid-column: 1 / -1; }
html[data-noala-ui="synthese"] .noala-cab-stat-pop-pied { display: flex; align-items: center; gap: 16px; min-height: 40px; margin-top: 14px; }
html[data-noala-ui="synthese"] .noala-cab-stat-pop-fermer { margin-left: auto; }
html[data-noala-ui="synthese"] .noala-cab-stat-in {
  display: block; width: 100%; min-width: 0; height: 48px; margin: 0; padding: 0 14px; border: 1px solid var(--text-2); border-radius: 12px;
  background: var(--surface); font-family: var(--font-sans); font-size: 14.5px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-stat-in::placeholder { color: var(--cab-doux); opacity: 1; }
html[data-noala-ui="synthese"] .noala-cab-stat-in:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 1px; }
/* Téléphone : le résumé et « Filtres » sur une ligne, puis la seule action encre. */
html[data-noala-ui="synthese"] .noala-cab-stat-mobile-ligne { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
html[data-noala-ui="synthese"] .noala-cab-stat .noala-cta.noala-cab-stat-afficher-mobile {
  width: 100%; min-height: 52px; border-radius: 15px; font-family: var(--font-sans); font-size: 14px; font-weight: 500; justify-content: center;
}
html[data-noala-ui="synthese"] .noala-cab-stat-feuille .noala-cab-pat-feuille-pied { margin-top: 2px; }

/* Résultats : titre de section, sous-titre en mots, « Exporter » en menthe. */
html[data-noala-ui="synthese"] .noala-cab-stat-res-tete {
  display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 12px 20px; margin: 26px 0 14px;
}
html[data-noala-ui="synthese"] .noala-cab-stat-h2 {
  margin: 0; font-family: var(--font-sans); font-size: 24px; font-weight: 500; letter-spacing: -.5px; line-height: 1.3; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-stat-h2:focus { outline: none; }
html[data-noala-ui="synthese"] .noala-cab-stat-h2--petit { font-size: 22px; letter-spacing: -.4px; }
html[data-noala-ui="synthese"] .noala-cab-stat-res-sous { margin: 2px 0 0; font-size: 14px; line-height: 1.6; color: var(--cab-doux); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-fen-second.noala-cab-stat-exporter { gap: 8px; font-weight: 600; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-stat-exporter svg { width: 18px; height: 18px; }
html[data-noala-ui="synthese"] .noala-cab-stat-exporter:focus-visible,
html[data-noala-ui="synthese"] .noala-cab-stat-suite .noala-cab-fen-second:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-stat-perime { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; font-size: 14px; line-height: 1.5; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-stat-perime svg { flex: none; width: 18px; height: 18px; color: var(--accent-text); }

/* Le bloc menthe : les chiffres, une note, puis deux graphiques côte à côte. */
html[data-noala-ui="synthese"] .noala-cab-stat-bloc { padding: 30px 32px 28px; border-radius: 32px; background: var(--surface-2); }
/* Les chiffres sont en grille : une colonne par chiffre. Avec quatre chiffres sur
   une largeur moyenne, deux colonnes (plus bas) : chaque ligne s'aligne sur l'autre. */
html[data-noala-ui="synthese"] .noala-cab-stat-chiffres { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); row-gap: 14px; margin: 0; }
html[data-noala-ui="synthese"] .noala-cab-stat-chiffre { min-width: 0; display: flex; flex-direction: column-reverse; gap: 2px; padding: 2px 20px; }
html[data-noala-ui="synthese"] .noala-cab-stat-chiffre:first-of-type { padding-left: 0; }
html[data-noala-ui="synthese"] .noala-cab-stat-chiffre ~ .noala-cab-stat-chiffre { border-left: 1px solid var(--border); }
html[data-noala-ui="synthese"] .noala-cab-stat-chiffre dt { font-size: 13px; line-height: 1.5; color: var(--cab-texte); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-stat-chiffre dd {
  margin: 0; font-size: 30px; font-weight: 400; letter-spacing: -.8px; line-height: 1.15; color: var(--ink); font-variant-numeric: tabular-nums;
}
html[data-noala-ui="synthese"] .noala-cab-stat-chiffre dd small { margin-left: 6px; font-size: 14px; letter-spacing: 0; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-stat-note {
  display: flex; align-items: center; gap: 10px; margin: 16px 0 0; padding-top: 14px; border-top: 1px solid var(--border);
  font-size: 14px; line-height: 1.5; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-cab-stat-note svg { flex: none; width: 18px; height: 18px; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-stat-grille {
  display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); column-gap: 32px;
  margin-top: 22px; padding-top: 20px; border-top: 1px solid var(--border);
}
html[data-noala-ui="synthese"] .noala-cab-stat-grille > div { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-stat-grille > div ~ div { border-left: 1px solid var(--border); padding-left: 32px; }
html[data-noala-ui="synthese"] .noala-cab-stat-h3 {
  margin: 0; font-family: var(--font-sans); font-size: 16px; font-weight: 500; letter-spacing: -.2px; line-height: 1.4; color: var(--ink); overflow-wrap: anywhere;
}
html[data-noala-ui="synthese"] .noala-cab-stat-h3-sous { margin: 1px 0 0; font-size: 13px; line-height: 1.5; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-stat-graph { margin-top: 12px; }
html[data-noala-ui="synthese"] .noala-cab-stat-graph svg { display: block; width: 100%; height: auto; overflow: visible; }
html[data-noala-ui="synthese"] .noala-cab-stat-graph .ax { font: 400 11px Poppins, sans-serif; fill: var(--cab-axe); }
html[data-noala-ui="synthese"] .noala-cab-stat-graph .val { font: 600 11.5px Poppins, sans-serif; fill: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-stat-graph .grille { stroke: var(--cab-encre-14); stroke-width: 1; }
/* Par questionnaire : liste à filets, une barre neutre. */
html[data-noala-ui="synthese"] .noala-cab-stat-qs { margin: 8px 0 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-stat-qs li {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 12px; row-gap: 5px; padding: 10px 0;
}
html[data-noala-ui="synthese"] .noala-cab-stat-qs li + li { border-top: 1px solid var(--border); }
html[data-noala-ui="synthese"] .noala-cab-stat-qs-nom { min-width: 0; font-size: 14px; font-weight: 500; color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-stat-qs-n { font-size: 14px; font-weight: 600; color: var(--ink); text-align: right; font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-stat-qs-piste { grid-column: 1 / -1; height: 6px; border-radius: 3px; background: var(--cab-encre-08); overflow: hidden; }
html[data-noala-ui="synthese"] .noala-cab-stat-qs-piste i { display: block; height: 100%; border-radius: 3px; background: var(--cab-piste); }
html[data-noala-ui="synthese"] .noala-cab-stat-qs-moy { grid-column: 1 / -1; font-size: 13px; color: var(--cab-texte); }

/* Les patients de la cohorte : liste à filets, la rangée de l'écran Patients. */
html[data-noala-ui="synthese"] .noala-cab-stat-cohorte { margin-top: 34px; }
html[data-noala-ui="synthese"] .noala-cab-stat-cohorte-tete { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 4px 12px; margin-bottom: 12px; }
html[data-noala-ui="synthese"] .noala-cab-stat-cohorte-tete p { margin: 0; font-size: 14px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-stat-entete,
html[data-noala-ui="synthese"] .noala-cab-stat-rang,
html[data-noala-ui="synthese"] .noala-cab-stat-skel {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.45fr) 110px 150px; align-items: center; column-gap: 24px;
}
html[data-noala-ui="synthese"] .noala-cab-stat-entete {
  margin: 0 -10px; padding: 0 10px 8px; border-bottom: 1px solid var(--cab-ligne); font-size: 12px; font-weight: 500; color: var(--cab-doux);
}
html[data-noala-ui="synthese"] .noala-cab-stat-num { text-align: right; font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-stat-liste { display: flex; flex-direction: column; margin: 0 -10px; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-stat-liste > li + li { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-stat-rang {
  width: 100%; margin: 0; padding: 13px 10px; border: 0; border-radius: 16px; background: none; cursor: pointer;
  font-family: var(--font-sans); color: inherit; text-align: left;
}
html[data-noala-ui="synthese"] .noala-cab-stat-rang:hover { background: var(--surface); box-shadow: 0 0 0 1px var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-stat-rang:focus-visible { outline: 2px solid var(--ink); outline-offset: -2px; border-radius: 16px; }
html[data-noala-ui="synthese"] .noala-cab-stat-rang .noala-cab-stat-num { font-size: 14px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-stat-rep { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-stat-quand { font-size: 14px; color: var(--cab-texte); white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-stat-suite { display: flex; justify-content: center; margin-top: 18px; }
html[data-noala-ui="synthese"] .noala-cab-stat-suite .noala-cab-fen-second { font-weight: 600; }

/* Calcul en cours : la forme du bloc et des rangées. */
html[data-noala-ui="synthese"] .noala-cab-stat-attente { padding-top: 26px; }
html[data-noala-ui="synthese"] .noala-cab-stat-skel-bloc { display: block; height: 320px; margin: 0 0 34px; border-radius: 32px; }
html[data-noala-ui="synthese"] .noala-cab-stat-skel { padding: 16px 0; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-stat-skel > i { display: block; height: 13px; margin: 0; border-radius: 6px; }
html[data-noala-ui="synthese"] .noala-cab-stat-skel > i:nth-child(1) { width: 60%; }
html[data-noala-ui="synthese"] .noala-cab-stat-skel > i:nth-child(2) { width: 75%; }
html[data-noala-ui="synthese"] .noala-cab-stat-skel > i:nth-child(3) { width: 30%; justify-self: end; }
html[data-noala-ui="synthese"] .noala-cab-stat-skel > i:nth-child(4) { width: 50%; }

/* La fenêtre d'export : le choix en deux rangées, puis ses deux vues. */
html[data-noala-ui="synthese"] .noala-cab-stat-retour {
  display: inline-flex; align-items: center; gap: 4px; margin: 0; padding: 2px 4px 2px 0; border: 0; border-radius: 6px; background: none;
  font-family: var(--font-sans); font-size: 12.5px; font-weight: 500; color: var(--accent-text); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-stat-retour:hover { text-decoration: underline; text-underline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-stat-retour svg { width: 16px; height: 16px; }
html[data-noala-ui="synthese"] #statistiques-fen-t:focus { outline: none; }
html[data-noala-ui="synthese"] .noala-cab-fen-liste > li:has(> .noala-cab-stat-choisir) { border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-fen-rang.noala-cab-stat-choisir {
  width: 100%; margin: 0; border: 0; border-radius: 0; background: none; cursor: pointer; text-align: left;
  font-family: var(--font-sans); color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-stat-choisir:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-stat-choisir:focus-visible { outline-offset: -3px; border-radius: 12px; }
html[data-noala-ui="synthese"] .noala-cab-stat-fleche { flex: none; width: 18px; height: 18px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-stat-sec { padding: 16px 0 6px; }
html[data-noala-ui="synthese"] .noala-cab-stat-sec + .noala-cab-stat-sec,
html[data-noala-ui="synthese"] .noala-cab-stat-avert + .noala-cab-stat-sec { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-stat-sec > h3 { margin: 0 0 6px; font-family: var(--font-sans); font-size: 14px; font-weight: 600; line-height: 1.5; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-stat-coche {
  display: flex; align-items: flex-start; gap: 14px; margin: 0; padding: 10px 6px; border-radius: 12px; cursor: pointer;
  font-size: 14.5px; line-height: 1.45; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-stat-coche:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-stat-coche > span { min-width: 0; overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-stat-coche small { display: block; margin-top: 1px; font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-stat-coche input { flex: none; width: 19px; height: 19px; margin: 1px 0 0; accent-color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-stat-coche:has(:focus-visible) { outline: 3px solid var(--accent-text); outline-offset: -3px; }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-stat-coche input:focus-visible { outline: none; }
html[data-noala-ui="synthese"] .noala-cab-fen-pli.noala-cab-stat-pli > summary { gap: 14px; min-height: 0; padding: 12px 6px; }
html[data-noala-ui="synthese"] .noala-cab-stat-pli:last-child { border-bottom: 0; }
html[data-noala-ui="synthese"] .noala-cab-stat-pli .noala-cab-fen-lib { font-size: 14.5px; }
html[data-noala-ui="synthese"] .noala-cab-stat-pli-corps { max-height: 210px; overflow-y: auto; padding: 0 0 10px 10px; }
html[data-noala-ui="synthese"] .noala-cab-stat-pli-corps .noala-cab-stat-coche { padding: 7px 6px; font-size: 14px; }
html[data-noala-ui="synthese"] .noala-cab-stat-format { display: inline-flex; gap: 2px; padding: 3px; background: var(--surface); border: 1px solid var(--cab-ligne); border-radius: 15px; }
html[data-noala-ui="synthese"] .noala-cab-stat-format label {
  position: relative; display: inline-flex; align-items: center; height: 38px; margin: 0; padding: 0 18px; border-radius: 12px;
  font-size: 14px; color: var(--cab-texte); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-stat-format label:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-stat-format input { position: absolute; width: 1px; height: 1px; margin: 0; opacity: 0; }
html[data-noala-ui="synthese"] .noala-cab-stat-format label:has(input:checked) { background: var(--surface-2); color: var(--ink); font-weight: 600; box-shadow: inset 0 0 0 1px var(--cab-vert-bord); }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-stat-format label:has(:focus-visible) { outline: 3px solid var(--accent-text); outline-offset: 1px; }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-stat-format input:focus-visible { outline: none; }
/* La cohorte de recherche : un bloc clé-valeur menthe, à plat. */
html[data-noala-ui="synthese"] .noala-cab-stat-kv {
  display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px 20px; margin: 4px 0 6px; padding: 18px 20px; border-radius: 18px; background: var(--surface-2);
}
html[data-noala-ui="synthese"] .noala-cab-stat-kv dt { font-size: 13px; line-height: 1.6; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-stat-kv dd { margin: 0; font-size: 14px; line-height: 1.5; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-stat-kv dd b { font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-stat-contient { margin: 2px 0 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-stat-contient li { display: flex; gap: 12px; padding: 6px 0; font-size: 14px; line-height: 1.5; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-stat-contient svg { flex: none; width: 17px; height: 17px; margin-top: 2px; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-stat-avert { display: flex; gap: 12px; margin: 0; padding: 14px 0 12px; font-size: 14px; line-height: 1.65; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-stat-avert svg { flex: none; width: 20px; height: 20px; margin-top: 1px; }
html[data-noala-ui="synthese"] .noala-cab-stat-avert b { font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-stat-limite { margin: 0; padding: 4px 0 8px; font-size: 13.5px; line-height: 1.7; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-stat-reessayer {
  margin: 0 0 0 6px; padding: 0; border: 0; background: none; font: inherit; font-weight: 600; color: inherit; cursor: pointer;
  text-decoration: underline; text-underline-offset: 3px;
}

@media (max-width: 1180px) {
  html[data-noala-ui="synthese"] .noala-cab-pat-barre.noala-cab-stat-barre { grid-template-columns: repeat(4, minmax(0, 1fr)); row-gap: 4px; }
  html[data-noala-ui="synthese"] .noala-cab-stat-barre .noala-cab-pat-seg[data-seg="plus"] { grid-column: 1 / span 2; }
  html[data-noala-ui="synthese"] .noala-cab-stat-barre .noala-cab-pat-seg[data-seg="plus"]::before { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-stat-barre .noala-cta.noala-cab-stat-afficher { grid-column: 3 / -1; justify-self: end; margin: 4px 8px; }
}
@media (max-width: 1000px) {
  html[data-noala-ui="synthese"] .noala-cab-stat-grille { grid-template-columns: minmax(0, 1fr); }
  html[data-noala-ui="synthese"] .noala-cab-stat-grille > div ~ div {
    margin-top: 22px; padding: 20px 0 0; border-left: 0; border-top: 1px solid var(--border);
  }
  html[data-noala-ui="synthese"] .noala-cab-stat-entete,
  html[data-noala-ui="synthese"] .noala-cab-stat-rang,
  html[data-noala-ui="synthese"] .noala-cab-stat-skel { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) 90px 130px; column-gap: 16px; }
}
@media (max-width: 900px) {
  html[data-noala-ui="synthese"] .noala-cab-pat-mobile.noala-cab-stat-mobile { flex-direction: column; align-items: stretch; gap: 12px; }
  html[data-noala-ui="synthese"] .noala-cab-stat-retirer { display: none; }
}
/* Quatre chiffres (un questionnaire choisi) sur une largeur moyenne : deux par ligne. */
@media (min-width: 641px) and (max-width: 830px) {
  html[data-noala-ui="synthese"] .noala-cab-stat-chiffres:has(> .noala-cab-stat-chiffre:nth-of-type(4)) {
    grid-auto-flow: row; grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  html[data-noala-ui="synthese"] .noala-cab-stat-chiffres:has(> .noala-cab-stat-chiffre:nth-of-type(4)) > .noala-cab-stat-chiffre:nth-of-type(odd) {
    padding-left: 0; border-left: 0;
  }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-stat-bloc { padding: 20px 16px 18px; border-radius: 26px; }
  html[data-noala-ui="synthese"] .noala-cab-stat-chiffres { grid-auto-flow: row; grid-template-columns: minmax(0, 1fr); row-gap: 0; }
  html[data-noala-ui="synthese"] .noala-cab-stat-chiffre,
  html[data-noala-ui="synthese"] .noala-cab-stat-chiffre ~ .noala-cab-stat-chiffre {
    flex-direction: row-reverse; justify-content: space-between; align-items: baseline; gap: 12px; padding: 10px 0;
    border-left: 0; border-top: 1px solid var(--border);
  }
  html[data-noala-ui="synthese"] .noala-cab-stat-chiffre:first-of-type { border-top: 0; padding-top: 0; }
  html[data-noala-ui="synthese"] .noala-cab-stat-chiffre dd { font-size: 22px; white-space: nowrap; }
  html[data-noala-ui="synthese"] .noala-cab-stat-h2 { font-size: 21px; }
  html[data-noala-ui="synthese"] .noala-cab-stat-res-tete { margin-top: 20px; }
  html[data-noala-ui="synthese"] .noala-cab-stat-entete { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-stat-liste { margin: 0 -4px; }
  html[data-noala-ui="synthese"] .noala-cab-stat-rang { grid-template-columns: minmax(0, 1fr) auto; row-gap: 2px; padding: 12px 4px; }
  html[data-noala-ui="synthese"] .noala-cab-stat-rang .noala-cab-pat-qui { grid-column: 1; grid-row: 1; }
  html[data-noala-ui="synthese"] .noala-cab-stat-rang .noala-cab-pat-int { grid-column: 1 / -1; grid-row: 2; font-size: 13.5px; }
  html[data-noala-ui="synthese"] .noala-cab-stat-rang .noala-cab-stat-num { grid-column: 2; grid-row: 1; font-size: 13.5px; color: var(--cab-texte); }
  html[data-noala-ui="synthese"] .noala-cab-stat-rang .noala-cab-stat-rep { position: static; width: auto; height: auto; clip-path: none; }
  html[data-noala-ui="synthese"] .noala-cab-stat-rang .noala-cab-stat-quand { grid-column: 1 / -1; grid-row: 3; font-size: 13px; color: var(--cab-doux); white-space: normal; }
  html[data-noala-ui="synthese"] .noala-cab-stat-skel { grid-template-columns: minmax(0, 1fr) 60px; }
  html[data-noala-ui="synthese"] .noala-cab-stat-skel > i:nth-child(n+3) { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-stat-skel-bloc { height: 260px; border-radius: 26px; }
  html[data-noala-ui="synthese"] .noala-cab-stat-champs { grid-template-columns: minmax(0, 1fr); }
  html[data-noala-ui="synthese"] .noala-cab-stat-kv { grid-template-columns: minmax(0, 1fr); gap: 2px 0; padding: 16px; }
  html[data-noala-ui="synthese"] .noala-cab-stat-kv dd + dt { margin-top: 8px; }
}

/* ── Catalogues : Questionnaires, Protocoles, Médiathèque (lot 5, 2026-10-05) ──
   Aperçu validé : propositions-cabinet/catalogues.html?idee=plis (plis à filets).
   L'en-tête, la barre, les listes de choix, les états vide et échec sont ceux de
   l'écran Patients (`.noala-cab-pat-*`, `.noala-cab-choix*`, lot 4a) ; le champ de
   recherche est celui d'Activité ; le menu « ⋯ » reprend celui des Documents
   (`.noala-cab-doc-menu`, `.noala-cab-doc-mi`) ; la fenêtre de suppression est
   celle de la fiche (`.noala-cab-fen*`). Seul ce qui est propre aux catalogues
   vit ici. Aucune carte par rangée, aucune pastille : l'état se dit en mots.
   Une seule action encre par surface : ici aucune, « Créer » est en menthe. */
html[data-noala-ui="synthese"] .noala-cab-cat { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-cat-intro:focus { outline: none; }

/* Ligne d'outils : la vue à gauche, « Créer » à droite. */
html[data-noala-ui="synthese"] .noala-cab-cat-outils {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px 20px; margin-bottom: 14px;
}
html[data-noala-ui="synthese"] .noala-cab-cat-vue {
  display: inline-flex; gap: 2px; padding: 3px; background: var(--surface); border: 1px solid var(--cab-ligne); border-radius: 15px;
}
html[data-noala-ui="synthese"] .noala-cab-cat-vue button {
  height: 38px; margin: 0; padding: 0 16px; border: 0; border-radius: 12px; background: none; cursor: pointer; white-space: nowrap;
  font-family: var(--font-sans); font-size: 13.5px; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-cab-cat-vue button:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-cat-vue button[aria-pressed="true"] {
  background: var(--surface-2); color: var(--ink); font-weight: 600; box-shadow: inset 0 0 0 1px var(--cab-vert-bord);
}
html[data-noala-ui="synthese"] .noala-cab-cat-vue button:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }
/* Questionnaires : « Créer une check-list » en lien, à côté du bouton menthe. */
html[data-noala-ui="synthese"] .noala-cab-cat-creers { display: inline-flex; align-items: center; gap: 8px 20px; flex-wrap: wrap; }
html[data-noala-ui="synthese"] .noala-cab-fen-second.noala-cab-cat-creer { gap: 8px; padding: 10px 18px; font-weight: 600; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-cat-creer svg { width: 18px; height: 18px; }
html[data-noala-ui="synthese"] .noala-cab-fen-second.noala-cab-cat-voir-tout { margin-top: 14px; font-weight: 600; }
html[data-noala-ui="synthese"] :is(.noala-cab-cat-creer, .noala-cab-cat-voir-tout):hover { background: var(--cab-menthe-survol); }
html[data-noala-ui="synthese"] :is(.noala-cab-cat-creer, .noala-cab-cat-voir-tout):focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-cat :is(.noala-cab-pat-lien, .noala-cab-act-lien):focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }

/* La barre : la recherche, puis un à trois filtres. Elle reste une barre à toutes
   les largeurs (peu de filtres : pas de feuille), sur deux colonnes puis une. */
html[data-noala-ui="synthese"] .noala-cab-pat-outils.noala-cab-cat-filtres { margin-bottom: 0; }
html[data-noala-ui="synthese"] .noala-cab-pat-barre.noala-cab-cat-barre[data-n="1"] { grid-template-columns: minmax(0, 1fr); max-width: 560px; }
html[data-noala-ui="synthese"] .noala-cab-pat-barre.noala-cab-cat-barre[data-n="2"] { grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr); }
html[data-noala-ui="synthese"] .noala-cab-pat-barre.noala-cab-cat-barre[data-n="4"] {
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
}
html[data-noala-ui="synthese"] .noala-cab-cat-sous-barre {
  display: flex; align-items: center; flex-wrap: wrap; gap: 6px 22px; min-height: 24px; margin: 10px 0 0; font-size: 13.5px; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-cab-cat-case { display: inline-flex; align-items: center; gap: 8px; padding: 4px 0; cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-cat-case input { width: 18px; height: 18px; margin: 0; accent-color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-cat-case input:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-cat-res { margin-top: 22px; }
/* Une relecture a échoué après une écriture : un message, la liste reste. */
html[data-noala-ui="synthese"] .noala-cab-cat-relire {
  display: flex; align-items: center; flex-wrap: wrap; gap: 6px 14px; margin: 18px 0 -8px; font-size: 14px; color: var(--ink);
}

/* Plis à filets, deux niveaux. Le premier devient un intertitre (`data-fixe`)
   quand le catalogue affiché n'a qu'une spécialité ; le second n'est qu'un
   conteneur (`data-seul`) sous « Général » et sous un groupe au parent inconnu. */
html[data-noala-ui="synthese"] .noala-cab-cat-spe { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-cat-spe:last-of-type { border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] :is(.noala-cab-cat-spe, .noala-cab-cat-pli) > summary { list-style: none; cursor: pointer; }
html[data-noala-ui="synthese"] :is(.noala-cab-cat-spe, .noala-cab-cat-pli) > summary::-webkit-details-marker { display: none; }
html[data-noala-ui="synthese"] :is(.noala-cab-cat-spe, .noala-cab-cat-pli) > summary:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] :is(.noala-cab-cat-spe, .noala-cab-cat-pli) > summary:focus-visible { outline: 3px solid var(--accent-text); outline-offset: -3px; }
html[data-noala-ui="synthese"] .noala-cab-cat-spe[data-fixe] > summary,
html[data-noala-ui="synthese"] .noala-cab-cat-pli[data-seul] > summary { display: none; }
html[data-noala-ui="synthese"] .noala-cab-cat-spe > summary {
  display: flex; align-items: center; gap: 16px; margin: 0 -10px; padding: 22px 10px 18px; border-radius: 14px;
}
html[data-noala-ui="synthese"] .noala-cab-cat-spe-txt,
html[data-noala-ui="synthese"] .noala-cab-cat-spe-titre { display: flex; align-items: baseline; flex-wrap: wrap; gap: 2px 14px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-cat-spe-txt { flex: 1; }
html[data-noala-ui="synthese"] .noala-cab-cat-spe-titre { margin: 0; padding: 22px 0 18px; font-family: var(--font-sans); font-weight: 400; }
html[data-noala-ui="synthese"] .noala-cab-cat-spe-nom { font-size: 22px; line-height: 1.3; font-weight: 400; letter-spacing: -.4px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cat-spe-n { font-size: 13.5px; font-weight: 400; letter-spacing: 0; line-height: 1.5; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cat-signe {
  flex: none; align-self: center; width: 16px; margin-left: auto; text-align: center; font-size: 18px; line-height: 1; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-cat-signe::before { content: "+"; }
html[data-noala-ui="synthese"] details[open] > summary > .noala-cab-cat-signe::before { content: "−"; }
html[data-noala-ui="synthese"] .noala-cab-cat-spe-corps { padding: 0 0 14px; }
html[data-noala-ui="synthese"] .noala-cab-cat-pli { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-cat-pli > summary {
  display: flex; align-items: center; gap: 16px; min-height: 66px; margin: 0 -10px; padding: 15px 10px; border-radius: 14px;
}
html[data-noala-ui="synthese"] .noala-cab-cat-pli-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
html[data-noala-ui="synthese"] .noala-cab-cat-pli-nom { font-size: 16px; line-height: 1.4; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cat-pli[open] > summary .noala-cab-cat-pli-nom { font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-cat-pli-sec { font-size: 13.5px; line-height: 1.5; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cat-pli-corps { padding: 0 0 12px; }
html[data-noala-ui="synthese"] .noala-cab-cat-pli-corps > .noala-cab-pat-liste { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-cat-pli[data-seul] { border-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-cat-pli[data-seul] > .noala-cab-cat-pli-corps { padding-bottom: 0; }

/* Médiathèque : les natures d'un groupe, en une phrase de liens (pas de pastilles). */
html[data-noala-ui="synthese"] .noala-cab-cat-natures {
  display: flex; align-items: baseline; flex-wrap: wrap; gap: 2px 16px; margin: 0; padding: 2px 0 10px; font-size: 13.5px; color: var(--cab-doux);
}
html[data-noala-ui="synthese"] .noala-cab-cat-natures button {
  margin: 0; padding: 4px 0; border: 0; border-radius: 4px; background: none; cursor: pointer;
  font-family: var(--font-sans); font-size: 13.5px; font-weight: 500; color: var(--accent-text);
}
html[data-noala-ui="synthese"] .noala-cab-cat-natures button:hover { text-decoration: underline; text-underline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-cat-natures button[aria-pressed="true"] {
  color: var(--ink); font-weight: 600; text-decoration: underline; text-underline-offset: 3px;
}
html[data-noala-ui="synthese"] .noala-cab-cat-natures button:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }

/* Une rangée : icône au trait, nom (et nom complet), une phrase, un geste, « ⋯ ».
   Le nom est le bouton ; son `::after` couvre la rangée. Le geste et le menu
   passent au-dessus : aucun bouton dans un bouton. */
html[data-noala-ui="synthese"] .noala-cab-cat-rang {
  position: relative; display: grid; align-items: center; column-gap: 16px; min-height: 62px; padding: 10px; border-radius: 16px;
  grid-template-columns: 22px minmax(0, 1.25fr) minmax(0, 1fr) 164px 36px;
}
html[data-noala-ui="synthese"] .noala-cab-cat-rang:hover { background: var(--surface); box-shadow: 0 0 0 1px var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-cat-rang:has(.noala-cab-cat-ouvrir:focus-visible) { outline: 2px solid var(--ink); outline-offset: -2px; }
html[data-noala-ui="synthese"] .noala-cab-cat-ic { width: 22px; height: 22px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cat-qui { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 1px; }
html[data-noala-ui="synthese"] .noala-cab-cat-ouvrir {
  margin: 0; padding: 0; border: 0; border-radius: 4px; background: none; cursor: pointer; text-align: left;
  font-family: var(--font-sans); font-size: 15px; font-weight: 500; line-height: 1.45; color: var(--ink); overflow-wrap: anywhere;
}
html[data-noala-ui="synthese"] .noala-cab-cat-ouvrir::after { content: ""; position: absolute; inset: 0; border-radius: 16px; }
html[data-noala-ui="synthese"] .noala-cab-cat-ouvrir:focus-visible { outline: none; }
html[data-noala-ui="synthese"] .noala-cab-cat-sousnom {
  font-size: 13px; line-height: 1.5; color: var(--cab-doux); overflow: hidden;
  display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical;
}
html[data-noala-ui="synthese"] .noala-cab-cat-meta { min-width: 0; font-size: 13.5px; line-height: 1.5; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cat-fort { font-weight: 500; color: var(--ink); }
/* « Validé », « Expérimental » : le mot porte une explication (`title`). Il passe
   au-dessus du voile cliquable du nom, sinon la souris ne l'atteint jamais. Un
   clic dessus ouvre la rangée, comme partout ailleurs sur elle. */
html[data-noala-ui="synthese"] .noala-cab-cat-aide { position: relative; z-index: 1; cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-cat-geste {
  position: relative; z-index: 1; justify-self: end; display: flex; align-items: center; min-height: 36px; white-space: nowrap;
}
/* Sans geste (le span ne porte que ses gabarits) : il ne couvre pas le nom. */
html[data-noala-ui="synthese"] .noala-cab-cat-geste:not(:has(> button, > span)) { z-index: auto; pointer-events: none; }
html[data-noala-ui="synthese"] .noala-cab-cat-dedans { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cat-dedans svg { width: 16px; height: 16px; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-cat-plus {
  position: relative; z-index: 1; justify-self: end; display: grid; place-items: center; width: 36px; height: 36px;
  margin: 0; padding: 0; border: 0; border-radius: 50%; background: none; color: var(--ink); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-cat-plus:hover,
html[data-noala-ui="synthese"] .noala-cab-cat-plus[aria-expanded="true"] { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-cat-plus svg { width: 20px; height: 20px; }
html[data-noala-ui="synthese"] .noala-cab-cat-plus:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 0; }
html[data-noala-ui="synthese"] .noala-cab-cat-plus-vide { display: block; width: 36px; }
/* « Mon catalogue » : aucune rangée n'a de geste visible, la colonne rend sa place. */
@media (min-width: 641px) {
  html[data-noala-ui="synthese"] .noala-cab-cat[data-vue="mon"] .noala-cab-cat-rang { grid-template-columns: 22px minmax(0, 1.25fr) minmax(0, 1fr) 36px; }
  html[data-noala-ui="synthese"] .noala-cab-cat[data-vue="mon"] .noala-cab-cat-geste { display: none; }
}

/* Le menu « ⋯ » : la petite carte du menu des Documents, accrochée à la rangée. */
html[data-noala-ui="synthese"] .noala-cab-doc-menu.noala-cab-cat-menu {
  right: 6px; top: calc(100% - 8px); z-index: 30; width: auto; min-width: 250px; box-shadow: 0 18px 50px var(--cab-encre-16);
}
/* Le menu dépasserait le bas de ce qui se voit : il s'ouvre vers le haut
   (`_catPlacerMenu`). Trois classes : la règle passe aussi sur téléphone. */
html[data-noala-ui="synthese"] .noala-cab-doc-menu.noala-cab-cat-menu.noala-cab-cat-menu--haut { top: auto; bottom: calc(100% - 8px); }
html[data-noala-ui="synthese"] .noala-cab-cat-menu-sep { margin-top: 6px; padding-top: 6px; border-top: 1px solid var(--cab-ligne); }

/* Le pied : les autres spécialités. */
html[data-noala-ui="synthese"] .noala-cab-cat-pied {
  display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 18px 0 0; font-size: 14px; color: var(--cab-texte);
}

/* Chargement : la forme des rangées. */
html[data-noala-ui="synthese"] .noala-cab-cat-skel {
  display: grid; grid-template-columns: 22px minmax(0, 1.25fr) minmax(0, 1fr); align-items: center; column-gap: 16px;
  padding: 16px 0; border-top: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-cat-skel i { display: block; height: 12px; margin: 0; border-radius: 6px; }
html[data-noala-ui="synthese"] .noala-cab-cat-skel > i:first-child { width: 22px; height: 22px; border-radius: 7px; }
html[data-noala-ui="synthese"] .noala-cab-cat-skel > span { display: flex; flex-direction: column; gap: 8px; }
html[data-noala-ui="synthese"] .noala-cab-cat-skel > span > i:first-child { width: 38%; height: 14px; }
html[data-noala-ui="synthese"] .noala-cab-cat-skel > span > i:last-child { width: 62%; }
html[data-noala-ui="synthese"] .noala-cab-cat-skel > i:last-child { width: 46%; }

/* La fenêtre de suppression : l'action encre, puis « Garder » en lien dessous. */
html[data-noala-ui="synthese"] .noala-cab-fen-pied.noala-cab-cat-suppr-pied { display: flex; flex-direction: column; align-items: center; gap: 6px; padding-bottom: 30px; }

@media (max-width: 900px) {
  html[data-noala-ui="synthese"] .noala-cab-pat-barre.noala-cab-cat-barre { display: grid; }
  html[data-noala-ui="synthese"] .noala-cab-pat-barre.noala-cab-cat-barre[data-n="4"] { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 2px; }
  html[data-noala-ui="synthese"] .noala-cab-cat-barre[data-n="4"] .noala-cab-pat-seg:is([data-seg="q"], [data-seg="ct-region"]) { grid-column: 1 / -1; }
  html[data-noala-ui="synthese"] .noala-cab-cat-barre[data-n="4"] .noala-cab-pat-seg:is([data-seg="ct-nature"], [data-seg="ct-region"])::before { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-cat-rang { grid-template-columns: 22px minmax(0, 1.4fr) minmax(0, 1fr) 158px 36px; column-gap: 12px; }
}
@media (min-width: 641px) and (max-width: 900px) {
  html[data-noala-ui="synthese"] .noala-cab-cat[data-vue="mon"] .noala-cab-cat-rang { grid-template-columns: 22px minmax(0, 1.4fr) minmax(0, 1fr) 36px; }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-cat-outils { align-items: stretch; }
  html[data-noala-ui="synthese"] .noala-cab-cat-vue { width: 100%; }
  html[data-noala-ui="synthese"] .noala-cab-cat-vue button { flex: 1; padding: 0 8px; }
  html[data-noala-ui="synthese"] .noala-cab-fen-second.noala-cab-cat-creer { width: 100%; min-height: 48px; justify-content: center; }
  html[data-noala-ui="synthese"] .noala-cab-cat-creers { display: flex; flex-direction: column-reverse; align-items: stretch; width: 100%; }
  html[data-noala-ui="synthese"] .noala-cab-cat-creers > .noala-cab-pat-lien { align-self: center; }
  html[data-noala-ui="synthese"] .noala-cab-pat-barre.noala-cab-cat-barre[data-n="2"] { grid-template-columns: minmax(0, 1fr); row-gap: 2px; }
  html[data-noala-ui="synthese"] .noala-cab-cat-barre[data-n="2"] .noala-cab-pat-seg[data-seg="ct-type"]::before { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-cat-rang {
    grid-template-columns: 22px minmax(0, 1fr) 36px; grid-template-areas: "ic qui plus" ". meta plus" ". geste geste";
    column-gap: 12px; row-gap: 2px; padding: 12px 4px; align-items: start;
  }
  html[data-noala-ui="synthese"] .noala-cab-cat-rang > .noala-cab-cat-ic { grid-area: ic; margin-top: 1px; }
  html[data-noala-ui="synthese"] .noala-cab-cat-qui { grid-area: qui; }
  html[data-noala-ui="synthese"] .noala-cab-cat-meta { grid-area: meta; font-size: 13px; }
  html[data-noala-ui="synthese"] .noala-cab-cat-geste { grid-area: geste; justify-self: start; min-height: 0; }
  html[data-noala-ui="synthese"] .noala-cab-cat-geste:not(:has(> button, > span)) { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-cat-geste .noala-cab-act-lien { min-height: 40px; }
  html[data-noala-ui="synthese"] .noala-cab-cat-plus,
  html[data-noala-ui="synthese"] .noala-cab-cat-plus-vide { grid-area: plus; }
  html[data-noala-ui="synthese"] .noala-cab-cat-plus { margin-top: -6px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-menu.noala-cab-cat-menu { right: 0; top: 44px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-menu.noala-cab-cat-menu.noala-cab-cat-menu--haut { top: auto; bottom: calc(100% - 4px); }
  html[data-noala-ui="synthese"] .noala-cab-cat-spe > summary { margin: 0 -4px; padding: 18px 4px 14px; }
  html[data-noala-ui="synthese"] .noala-cab-cat-spe-titre { padding: 18px 0 14px; }
  html[data-noala-ui="synthese"] .noala-cab-cat-spe-nom { font-size: 19px; }
  html[data-noala-ui="synthese"] .noala-cab-cat-pli > summary { margin: 0 -4px; padding: 13px 4px; }
  html[data-noala-ui="synthese"] .noala-cab-cat-skel { grid-template-columns: 22px minmax(0, 1fr); }
  html[data-noala-ui="synthese"] .noala-cab-cat-skel > i:last-child { display: none; }
}

/* ── Réglages : rail de rubriques, sections à filets (lot 6, 2026-10-06) ─────
   Aperçu validé : propositions-cabinet/reglages.html?idee=a (reglages.css, `.rg-*`,
   valeurs reprises). Spec : docs/superpowers/specs/2026-10-06-cabinet-lot6-reglages-design.md.
   Idée A : un rail à gauche, le contenu en une colonne de 760 px. Une section est une
   carte blanche de premier niveau ; dedans, des rangées à filets, jamais une carte.
   Les classes d'avant (`.noala-tabs--pills`, `.noala-kv`, `.noala-spe-pilule`,
   `.noala-card`…) restent sur les éléments : des specs les lisent. Les règles
   ci-dessous les recouvrent sous `.noala-cab-rg`, sans rien changer à `app.css`. */
html[data-noala-ui="synthese"] { --rg-lib: 220px; --rg-ligne: var(--cab-ligne); --rg-doux: var(--cab-doux); --rg-texte: var(--cab-texte); --rg-vert: var(--accent-text); --rg-menthe: var(--surface-2); --rg-menthe-2: var(--cab-menthe-2); --rg-bord: var(--cab-bord); }
html[data-noala-ui="synthese"] .noala-cab-rg { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-rg :focus-visible { outline: 3px solid var(--accent-text); outline-offset: 3px; }

/* En-tête : surtitre, titre léger, une ligne ; « Aperçu patient » à droite. */
html[data-noala-ui="synthese"] .noala-cab-rg-tete { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px 32px; flex-wrap: wrap; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-page-title.noala-cab-pat-titre {
  margin: 0; font-family: var(--font-sans); font-size: 42px; line-height: 1.15; font-weight: 400; letter-spacing: -1.5px; color: var(--ink);
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-page-sub.noala-cab-pat-compte { margin: 12px 0 0; font-size: 15px; line-height: 1.7; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-apercu-btn { gap: 8px; }
html[data-noala-ui="synthese"] .noala-cab-rg-apercu-btn .noala-ic { width: 18px; height: 18px; }

/* Le rail : une barre qui défile elle-même sous 1000 px, une colonne au-delà. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-tabs.noala-cab-rg-rail {
  display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin: 0 0 24px; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none;
}
html[data-noala-ui="synthese"] .noala-cab-rg-rail::-webkit-scrollbar { display: none; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-rail > .noala-tab {
  flex: none; display: inline-flex; align-items: center; justify-content: flex-start; gap: 9px; min-height: 44px; height: auto; margin: 0; padding: 0 17px;
  border: 1px solid var(--rg-ligne); border-radius: 30px; background: var(--surface); box-shadow: none;
  font-family: var(--font-sans); font-size: 14px; font-weight: 400; color: var(--rg-texte); cursor: pointer; white-space: nowrap;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-rail > .noala-tab .noala-ic { width: 18px; height: 18px; flex: none; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-rail > .noala-tab:hover { background: var(--rg-menthe-2); border-color: var(--rg-ligne); color: var(--ink); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-rail > .noala-tab.active { background: var(--ink); border-color: var(--ink); color: var(--cta-fg); font-weight: 500; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-rail > .noala-tab:focus-visible { outline-offset: -3px; border-radius: 30px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-rail > .noala-tab.active:focus-visible { outline-color: var(--surface); }

/* Sous-onglets de Sécurité : soulignés, sur la colonne de contenu. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-tabs.noala-cab-rg-sous {
  gap: 4px; overflow-x: auto; scrollbar-width: none; margin: 0 0 22px; padding: 0; border: 0; border-bottom: 1px solid var(--rg-ligne); border-radius: 0; background: none; box-shadow: none;
}
html[data-noala-ui="synthese"] .noala-cab-rg-sous::-webkit-scrollbar { display: none; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-sous > .noala-tab {
  flex: none; display: inline-flex; align-items: center; gap: 7px; height: 46px; min-height: 0; margin: 0; padding: 0 14px;
  border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: none; box-shadow: none;
  font-family: var(--font-sans); font-size: 14px; font-weight: 400; color: var(--rg-texte); cursor: pointer; white-space: nowrap;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-sous > .noala-tab:first-child { padding-left: 2px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-sous > .noala-tab:hover { color: var(--ink); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-sous > .noala-tab.active { border-bottom-color: var(--ink); color: var(--ink); font-weight: 600; background: none; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-sous > .noala-tab.noala-cab-rg-alerte { color: var(--cab-alerte); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-sous > .noala-tab.noala-cab-rg-alerte.active { border-bottom-color: var(--cab-alerte); }
html[data-noala-ui="synthese"] .noala-cab-rg-sous .noala-ic { width: 16px; height: 16px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-sous > .noala-tab:focus-visible { outline-offset: -3px; }

html[data-noala-ui="synthese"] .noala-cab-rg-contenu { min-width: 0; max-width: 760px; }
@media (min-width: 1000px) {
  html[data-noala-ui="synthese"] .noala-cab-rg-corps { display: grid; grid-template-columns: 216px minmax(0, 760px); column-gap: 56px; align-items: start; }
  /* L'en-tête s'arrête au bord droit de la colonne : « Aperçu patient » s'aligne sur les sections. */
  html[data-noala-ui="synthese"] .noala-cab-rg-tete { max-width: 1032px; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-tabs.noala-cab-rg-rail { position: sticky; top: 20px; flex-direction: column; gap: 2px; overflow: visible; margin: 0; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-rail > .noala-tab { width: 100%; border-color: transparent; border-radius: 12px; background: none; padding: 0 14px; font-size: 14.5px; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-rail > .noala-tab:hover { background: var(--rg-menthe-2); border-color: transparent; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-rail > .noala-tab.active { background: var(--ink); border-color: var(--ink); }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-rail > .noala-tab:focus-visible { border-radius: 12px; }
}
@media (max-width: 999px) { html[data-noala-ui="synthese"] .noala-cab-rg-contenu { max-width: none; } }

/* Profil : les deux colonnes d'avant s'empilent (idée A, une seule colonne). */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-reglages-grille { display: block; margin: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-reglages-grille > .noala-reglages-col { display: block; min-width: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-reglages-col + .noala-reglages-col,
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-reglages-grille + .noala-card.noala-cab-rg-sec { margin-top: 20px; }

/* Section : une carte blanche de premier niveau, des filets dedans. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-card.noala-cab-rg-sec {
  display: block; margin: 0; padding: 6px 28px 12px; min-width: 0; overflow: visible;
  background: var(--surface); border: 1px solid var(--rg-ligne); border-radius: 16px; box-shadow: none;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-card.noala-cab-rg-sec + .noala-cab-rg-sec { margin-top: 20px; }
/* Une carte est son propre contexte d'empilement (app.css) : la section suivante
   passerait sur le menu « ⋯ » de la dernière rangée. La section qui porte un menu
   ouvert passe donc devant ses voisines. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-card.noala-cab-rg-sec:has([data-rg-menu]) { z-index: 5; }
/* `.noala-card-title` reste sur l'en-tête d'une section : des specs y lisent le titre et
   l'état. Sa forme d'app.css (capitales, interlettrage) est remise à plat ici. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-card-title.noala-cab-rg-sec-tete { font-size: inherit; letter-spacing: normal; text-transform: none; font-weight: inherit; color: inherit; }
html[data-noala-ui="synthese"] .noala-cab-rg-sec-tete { display: flex; align-items: center; gap: 6px 16px; flex-wrap: wrap; min-height: 64px; padding: 12px 0 10px; }
html[data-noala-ui="synthese"] .noala-cab-rg-h2 { margin: 0; font-family: var(--font-sans); font-size: 19px; line-height: 1.35; font-weight: 500; letter-spacing: -.3px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-h2 small { display: block; font-size: 13px; font-weight: 400; letter-spacing: 0; color: var(--rg-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-h2 .noala-ic { width: 20px; height: 20px; margin-right: 10px; vertical-align: -3px; }
html[data-noala-ui="synthese"] .noala-cab-rg-sec-etat { margin-left: auto; display: inline-flex; align-items: center; gap: 6px 14px; flex-wrap: wrap; font-size: 13.5px; color: var(--rg-texte); }
html[data-noala-ui="synthese"] .noala-cab-rg-sec-etat > .noala-ic { width: 16px; height: 16px; color: var(--rg-vert); }
html[data-noala-ui="synthese"] .noala-cab-rg-p { margin: 0; padding: 0 0 14px; max-width: 68ch; font-size: 13.5px; line-height: 1.7; color: var(--rg-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-p b { font-weight: 600; color: var(--rg-texte); }
html[data-noala-ui="synthese"] .noala-cab-rg-p--seul { padding-bottom: 18px; }
html[data-noala-ui="synthese"] .noala-cab-rg-note { margin: 0; padding: 12px 0 6px; border-top: 1px solid var(--rg-ligne); font-size: 13px; line-height: 1.65; color: var(--rg-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-h3 { display: flex; align-items: center; min-height: 56px; margin: 0; padding: 14px 0 4px; border-top: 1px solid var(--rg-ligne); font-family: var(--font-sans); font-size: 15.5px; font-weight: 600; line-height: 1.4; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-pied { display: flex; align-items: center; gap: 8px 18px; flex-wrap: wrap; min-height: 48px; margin: 0; padding: 10px 0 2px; border-top: 1px solid var(--rg-ligne); font-size: 13px; color: var(--rg-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-enr { display: inline-flex; align-items: center; gap: 7px; }
html[data-noala-ui="synthese"] .noala-cab-rg-enr .noala-ic { width: 16px; height: 16px; color: var(--rg-vert); }
html[data-noala-ui="synthese"] .noala-cab-rg-pied > .noala-cab-fen-lien { margin-left: auto; }
html[data-noala-ui="synthese"] .noala-cab-rg-actions { display: flex; align-items: center; gap: 8px 20px; flex-wrap: wrap; padding: 14px 0 8px; border-top: 1px solid var(--rg-ligne); }
html[data-noala-ui="synthese"] .noala-cab-rg-vide { margin: 0; padding: 18px 0 14px; border-top: 1px solid var(--rg-ligne); font-size: 14.5px; color: var(--rg-texte); }
html[data-noala-ui="synthese"] .noala-cab-rg-erreur { flex-basis: 100%; margin: 0; font-size: 13px; line-height: 1.5; color: var(--cab-alerte); }
html[data-noala-ui="synthese"] .noala-cab-rg-inerte { opacity: .5; pointer-events: none; }

/* Les gestes de l'écran : liens teal, lien sobre, bouton menthe (ceux des fenêtres). */
html[data-noala-ui="synthese"] .noala-cab-rg :is(.noala-cab-fen-lien, .noala-cab-fen-discret) { gap: 6px; min-height: 40px; font-size: 13.5px; white-space: nowrap; border-radius: 6px; }
html[data-noala-ui="synthese"] .noala-cab-rg .noala-cab-fen-discret { color: var(--rg-texte); text-decoration-color: var(--cab-souligne); }
html[data-noala-ui="synthese"] .noala-cab-rg .noala-cab-fen-lien .noala-ic { width: 17px; height: 17px; }
html[data-noala-ui="synthese"] .noala-cab-rg .noala-cab-fen-second { gap: 8px; padding: 10px 18px; font-weight: 600; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-rg .noala-cab-fen-second .noala-ic { width: 18px; height: 18px; }
html[data-noala-ui="synthese"] .noala-cab-rg-gestes { display: inline-flex; align-items: center; gap: 0 18px; flex-wrap: wrap; }
html[data-noala-ui="synthese"] .noala-cab-rg-fichier { display: none; }

/* Rangée libellé / valeur : deux colonnes fixes, un filet entre deux rangées. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv-liste { display: block; margin: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv {
  display: grid; grid-template-columns: var(--rg-lib) minmax(0, 1fr); column-gap: 20px; align-items: center;
  min-height: 54px; margin: 0; padding: 6px 0; border: 0; border-top: 1px solid var(--rg-ligne); border-radius: 0; background: none;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv.noala-cab-rg-kv--mention { grid-template-columns: var(--rg-lib) minmax(0, 1fr) auto; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv--haut { align-items: start; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv--haut .noala-kv-l { padding-top: 13px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv-l { flex: none; font-size: 14px; font-weight: 400; line-height: 1.45; color: var(--rg-texte); }
html[data-noala-ui="synthese"] .noala-cab-rg .noala-kv-l small { display: block; font-size: 12.5px; color: var(--rg-doux); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv-v { margin-left: 0; min-width: 0; text-align: left; font-size: 14px; font-weight: 400; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg span.noala-kv-v { display: flex; align-items: center; gap: 4px 16px; flex-wrap: wrap; }
html[data-noala-ui="synthese"] .noala-cab-rg-kv-txt { flex: 1 1 250px; min-width: 0; font-size: 13.5px; line-height: 1.5; color: var(--rg-texte); }
html[data-noala-ui="synthese"] .noala-cab-rg-kv-txt small { display: block; font-size: 12.5px; color: var(--rg-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-mention { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--rg-doux); white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-rg-mention .noala-ic { width: 15px; height: 15px; }
html[data-noala-ui="synthese"] .noala-cab-rg-unite { font-size: 14px; color: var(--rg-texte); }

/* Champ sans cadre au repos : l'enregistrement est automatique. Le texte tombe pile sur
   le bord gauche de la colonne des valeurs (retrait de 11 px = bord 1 px + marge 10 px). */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv .noala-kv-v.noala-input {
  width: calc(100% + 11px); max-width: none; height: 42px; min-height: 0; margin: 0 0 0 -11px; padding: 0 10px;
  border: 1px solid transparent; border-radius: 10px; background-color: transparent; box-shadow: none;
  font-family: var(--font-sans); font-size: 14.5px; font-weight: 500; color: var(--ink); text-align: left; text-overflow: ellipsis;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv textarea.noala-kv-v.noala-input { height: auto; min-height: 88px; padding: 10px; line-height: 1.6; font-size: 14px; font-weight: 400; resize: vertical; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv select.noala-kv-v.noala-input {
  appearance: none; padding-right: 38px; cursor: pointer; white-space: nowrap; overflow: hidden;
  background-image: var(--cab-chevron-champ);
  background-repeat: no-repeat; background-position: right 10px center; background-size: 18px;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv .noala-kv-v.noala-input::placeholder { color: var(--rg-doux); font-weight: 400; opacity: 1; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv .noala-kv-v.noala-input:hover:not(:disabled) { border-color: var(--rg-ligne); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv .noala-kv-v.noala-input:focus { outline: none; background-color: var(--rg-menthe-2); border-color: var(--rg-vert); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv .noala-kv-v.noala-input:focus-visible { outline: 3px solid var(--rg-vert); outline-offset: 1px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv .noala-kv-v.noala-input:disabled { color: var(--rg-texte); font-weight: 400; opacity: 1; }

/* Champ à cadre : là où rien ne s'enregistre tout seul (relances, mot de passe). */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-in {
  flex: 1 1 200px; min-width: 0; width: 100%; max-width: 360px; height: 46px; min-height: 0; margin: 0; padding: 0 14px;
  border: 1px solid var(--rg-bord); border-radius: 12px; background: var(--surface); box-shadow: none;
  font-family: var(--font-sans); font-size: 14.5px; font-weight: 400; color: var(--ink); text-align: left;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-in::placeholder { color: var(--rg-doux); opacity: 1; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-in:focus-visible { outline: 3px solid var(--rg-vert); outline-offset: 1px; border-color: var(--rg-vert); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-in.noala-cab-rg-in--nb { flex: none; width: 92px; text-align: right; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-in.noala-cab-rg-in--code { flex: none; width: 150px; letter-spacing: 3px; font-variant-numeric: tabular-nums; }

/* Case à cocher : une rangée à filet. */
html[data-noala-ui="synthese"] .noala-cab-rg-case { display: flex; align-items: flex-start; gap: 12px; min-height: 54px; margin: 0; padding: 15px 0; border-top: 1px solid var(--rg-ligne); font-size: 14.5px; line-height: 1.55; color: var(--ink); cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-rg-case input { flex: none; width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-rg-case b { font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-rg-case--sans { border-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-rg-oui { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; margin: 0; font-size: 13.5px; color: var(--rg-texte); cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-rg-oui input { width: 20px; height: 20px; margin: 0; accent-color: var(--accent-text); }

/* Échéances de relance : de petites étiquettes plates, retrait par une croix. */
html[data-noala-ui="synthese"] .noala-cab-rg-jours { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
html[data-noala-ui="synthese"] .noala-cab-rg-jour { display: inline-flex; align-items: center; gap: 2px; height: 40px; padding: 0 4px 0 13px; border-radius: 12px; background: var(--rg-menthe-2); font-size: 13.5px; font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-jour button { display: grid; place-items: center; width: 32px; height: 40px; margin: 0; padding: 0; border: 0; background: none; color: var(--rg-texte); cursor: pointer; border-radius: 10px; }
html[data-noala-ui="synthese"] .noala-cab-rg-jour button:hover { color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-jour .noala-ic { width: 15px; height: 15px; }

/* Portrait, signature, logo, photos de lieu. */
html[data-noala-ui="synthese"] .noala-cab-rg-portrait { flex: none; width: 64px; height: 64px; border-radius: 50%; overflow: hidden; background: var(--surface-2); display: grid; place-items: center; font-size: 20px; font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-portrait img { width: 100%; height: 100%; display: block; object-fit: cover; }
html[data-noala-ui="synthese"] .noala-cab-rg-signature { flex: none; display: grid; place-items: center; width: 132px; height: 44px; border-radius: 8px; background: var(--bg); }
html[data-noala-ui="synthese"] .noala-cab-rg-signature img { max-width: 112px; max-height: 34px; display: block; }
html[data-noala-ui="synthese"] .noala-cab-rg-logo { flex: none; display: grid; place-items: center; height: 44px; min-width: 60px; padding: 0 14px; border-radius: 8px; background: var(--bg); }
html[data-noala-ui="synthese"] .noala-cab-rg-logo img { max-width: 120px; max-height: 34px; display: block; object-fit: contain; }
html[data-noala-ui="synthese"] .noala-cab-rg-photo { flex: none; display: grid; place-items: center; overflow: hidden; border-radius: 10px; background: var(--rg-menthe-2); color: var(--rg-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-photo img { width: 100%; height: 100%; display: block; object-fit: cover; }
html[data-noala-ui="synthese"] .noala-cab-rg-photo[data-vide="true"] { box-shadow: inset 0 0 0 1px var(--rg-ligne); }
html[data-noala-ui="synthese"] .noala-cab-rg-photo .noala-ic { width: 20px; height: 20px; }

/* Lieux d'exercice : une rangée par lieu, ce que le patient verra. */
html[data-noala-ui="synthese"] .noala-cab-rg-lieu { position: relative; display: grid; grid-template-columns: 76px minmax(0, 1fr) auto; column-gap: 18px; align-items: center; padding: 16px 0; border-top: 1px solid var(--rg-ligne); }
html[data-noala-ui="synthese"] .noala-cab-rg-lieu > .noala-cab-rg-photo { width: 76px; height: 58px; }
html[data-noala-ui="synthese"] .noala-cab-rg-lieu-txt { min-width: 0; display: flex; flex-direction: column; gap: 1px; }
html[data-noala-ui="synthese"] .noala-cab-rg-lieu-nom { display: flex; align-items: center; gap: 6px 10px; flex-wrap: wrap; font-size: 15px; font-weight: 500; line-height: 1.5; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-lieu-nom strong { font-weight: 500; overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-rg-lieu-sec { font-size: 13.5px; line-height: 1.55; color: var(--rg-doux); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-rg-lieu-vu { font-size: 13.5px; line-height: 1.55; color: var(--rg-texte); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-rg-lieu-vu b { font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-lieu-gestes { display: flex; align-items: center; gap: 6px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-tag.noala-cab-rg-pastille {
  flex: none; padding: 3px 11px; border: 0; border-radius: 20px; background: var(--surface-2); color: var(--ink);
  font-size: 11.5px; font-weight: 500; line-height: 1.5; letter-spacing: 0; text-transform: none; white-space: nowrap;
}

/* Le bouton « ⋯ » et son menu (grammaire du menu des catalogues). */
html[data-noala-ui="synthese"] .noala-cab-rg-plus { flex: none; display: grid; place-items: center; width: 40px; height: 40px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: none; color: var(--ink); cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-rg-plus:hover,
html[data-noala-ui="synthese"] .noala-cab-rg-plus[aria-expanded="true"] { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-rg-plus:disabled { color: var(--cab-inactif); cursor: default; background: none; }
html[data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-plus:focus-visible { outline-offset: 0; }
html[data-noala-ui="synthese"] .noala-cab-rg-plus .noala-ic { width: 20px; height: 20px; }
html[data-noala-ui="synthese"] .noala-cab-doc-menu.noala-cab-rg-menu { right: 0; top: calc(50% + 22px); z-index: 30; width: auto; min-width: 230px; }

/* Spécialité : pilules de choix. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-spe-pilules { display: flex; gap: 8px; flex-wrap: wrap; margin: 0; padding: 14px 0; border-top: 1px solid var(--rg-ligne); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-spe-pilule {
  display: inline-flex; align-items: center; gap: 7px; min-height: 40px; margin: 0; padding: 6px 16px;
  /* Un nom long (« Chirurgie orthopédique et traumatologique ») passe à la ligne
     dans sa carte au lieu d'en sortir (375 px). */
  max-width: 100%; white-space: normal; text-align: left; line-height: 1.3; overflow-wrap: anywhere;
  border: 1px solid var(--rg-ligne); border-radius: 30px; background: var(--surface); box-shadow: none;
  font-family: var(--font-sans); font-size: 13.5px; font-weight: 400; color: var(--rg-texte); cursor: pointer;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-spe-pilule:hover { background: var(--rg-menthe-2); border-color: var(--rg-ligne); color: var(--rg-texte); }
html[data-noala-ui="synthese"] .noala-cab-rg .noala-spe-pilule .noala-ic { display: none; width: 15px; height: 15px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-spe-pilule[aria-pressed="true"] { background: var(--surface-2); border-color: var(--cab-vert-bord); color: var(--ink); font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-rg .noala-spe-pilule[aria-pressed="true"] .noala-ic { display: block; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-spe-pilule--mere[aria-pressed="true"] { background: var(--ink); border-color: var(--ink); color: var(--cta-fg); font-weight: 500; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-spe-synthese { display: flex; align-items: center; gap: 6px 20px; flex-wrap: wrap; margin: 0; padding: 12px 0; border-top: 1px solid var(--rg-ligne); font-size: 14px; line-height: 1.6; color: var(--rg-texte); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-spe-synthese b { font-weight: 600; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg .noala-spe-synthese .noala-cab-fen-lien { margin-left: auto; }

/* Outils d'une liste : recherche, liste de choix. */
html[data-noala-ui="synthese"] .noala-cab-rg-outils { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 0 0 16px; }
html[data-noala-ui="synthese"] .noala-cab-rg-outils--filet { padding: 14px 0 6px; border-top: 1px solid var(--rg-ligne); }
html[data-noala-ui="synthese"] .noala-cab-rg-cherche { flex: 1 1 220px; display: flex; align-items: center; gap: 10px; height: 46px; margin: 0; padding: 0 14px; border: 1px solid var(--rg-bord); border-radius: 12px; background: var(--surface); color: var(--rg-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-cherche .noala-ic { width: 18px; height: 18px; flex: none; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-cherche input { flex: 1; min-width: 0; height: auto; margin: 0; padding: 0; border: 0; outline: 0; background: none; box-shadow: none; font-family: var(--font-sans); font-size: 14.5px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-cherche input::placeholder { color: var(--rg-doux); opacity: 1; }
html[data-noala-ui="synthese"] .noala-cab-rg-cherche:focus-within { outline: 3px solid var(--accent-text); outline-offset: 1px; }
html[data-noala-ui="synthese"] .noala-cab-rg-choix { position: relative; flex: 0 1 250px; min-width: 200px; }
html[data-noala-ui="synthese"] .noala-cab-rg-choix-btn {
  display: flex; flex-direction: column; justify-content: center; width: 100%; height: 46px; margin: 0; padding: 0 40px 0 14px;
  border: 1px solid var(--rg-bord); border-radius: 12px; font-family: var(--font-sans); text-align: left; cursor: pointer; color: var(--ink);
  background: var(--surface) var(--cab-chevron-champ) no-repeat right 12px center / 18px;
}
html[data-noala-ui="synthese"] .noala-cab-rg-choix-btn small { font-size: 11px; line-height: 1.3; color: var(--rg-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-choix-btn span { font-size: 14px; line-height: 1.35; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html[data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-choix-btn:focus-visible { outline-offset: 1px; }
html[data-noala-ui="synthese"] .noala-cab-rg-choix > .noala-cab-choix { left: 0; top: calc(100% + 6px); width: 100%; min-width: 240px; }

/* Listes à filets en colonnes (modèles, correspondants, journal). */
html[data-noala-ui="synthese"] .noala-cab-rg-liste { margin: 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-rg-tr { position: relative; display: grid; grid-template-columns: var(--rg-cols); column-gap: 16px; align-items: center; min-height: 62px; padding: 10px 0; border-top: 1px solid var(--rg-ligne); font-size: 13.5px; line-height: 1.5; color: var(--rg-texte); }
html[data-noala-ui="synthese"] .noala-cab-rg-tr > * { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-rg-tr.noala-cab-rg-th { min-height: 0; padding: 0 0 8px; border-top: 0; font-size: 12px; font-weight: 500; color: var(--rg-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-td-nom { display: flex; flex-direction: column; gap: 1px; }
html[data-noala-ui="synthese"] .noala-cab-rg-td-nom b { font-size: 15px; font-weight: 500; line-height: 1.45; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-rg-td-nom span { font-size: 13px; color: var(--rg-doux); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-rg-td-2 { display: flex; flex-direction: column; overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-rg-td-act { display: flex; align-items: center; justify-content: flex-end; gap: 6px; }
html[data-noala-ui="synthese"] .noala-cab-rg-td-fin { overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-rg-code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12px; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-rg-tr > .noala-ic { width: 22px; height: 22px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-liste--cor { --rg-cols: minmax(0, 1fr) minmax(0, .55fr) minmax(0, 1.5fr) 76px 100px; }
html[data-noala-ui="synthese"] .noala-cab-rg-liste--devis { --rg-cols: 40px minmax(0, 1fr) 116px; }
/* Modèles de devis (2026-10-06) : l'étoile de favori ouvre la rangée ; un tarif
   CCAM qui a changé se dit en mots, avec son lien. */
html[data-noala-ui="synthese"] .noala-cab-rg-favori { color: var(--rg-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-favori[aria-pressed="true"] { color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-rg-favori[aria-pressed="true"] .noala-ic { fill: currentColor; }
html[data-noala-ui="synthese"] .noala-cab-rg-td-nom .noala-cab-rg-perime { display: flex; align-items: center; gap: 0 12px; flex-wrap: wrap; font-weight: 500; color: var(--ink); }
/* Modificateur sans case (6, R) : aligné sur le texte des cases voisines. */
html[data-noala-ui="synthese"] .noala-cab-rg-case--lu { padding-left: 32px; cursor: default; }
/* Le journal tient sur 702 px : l'adresse IP vit sous le détail, et un nom long va à la ligne. */
html[data-noala-ui="synthese"] .noala-cab-rg-liste--audit { --rg-cols: 104px 168px 96px minmax(0, .9fr) minmax(0, 1fr); }
html[data-noala-ui="synthese"] .noala-cab-rg-liste--audit .noala-cab-fen-lien { max-width: 100%; white-space: normal; text-align: left; overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-rg-audit-ip { display: block; margin-top: 2px; font-size: 12px; color: var(--rg-doux); }

/* Sécurité : QR code, pli de désactivation. */
html[data-noala-ui="synthese"] .noala-cab-rg-etapes { margin: 0; padding: 14px 0 6px; border-top: 1px solid var(--rg-ligne); font-size: 14.5px; line-height: 1.6; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-qr { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; padding: 4px 0 16px; }
html[data-noala-ui="synthese"] .noala-cab-rg-qr img { width: 148px; height: 148px; border-radius: 12px; background: var(--bg); }
html[data-noala-ui="synthese"] .noala-cab-rg-qr dl { margin: 0; font-size: 13px; color: var(--rg-doux); }
/* S2 : les codes de secours, montrés une seule fois dans Réglages, Sécurité. */
html[data-noala-ui="synthese"] .noala-cab-rg-codes { padding: 4px 0 12px; }
html[data-noala-ui="synthese"] .noala-cab-rg-codes-liste { display: grid; grid-template-columns: repeat(2, minmax(0, max-content)); gap: 6px 32px; margin: 0 0 12px; padding-left: 22px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 14px; color: var(--ink); letter-spacing: 1px; }
html[data-noala-ui="synthese"] .noala-cab-rg-qr dd { margin: 2px 0 8px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 14px; color: var(--ink); letter-spacing: 1px; overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-rg-pli { border-top: 1px solid var(--rg-ligne); }
html[data-noala-ui="synthese"] .noala-cab-rg-pli > summary { display: flex; align-items: center; gap: 16px; min-height: 56px; padding: 8px 0; list-style: none; cursor: pointer; font-size: 14.5px; color: var(--ink); border-radius: 10px; }
html[data-noala-ui="synthese"] .noala-cab-rg-pli > summary::-webkit-details-marker { display: none; }
html[data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-pli > summary:focus-visible { outline-offset: -3px; }
html[data-noala-ui="synthese"] .noala-cab-rg-pli > summary .noala-cab-fen-plus { margin-left: auto; }
html[data-noala-ui="synthese"] .noala-cab-rg-pli[open] > summary .noala-cab-fen-plus::before { content: "\2212"; }

/* Zone de danger : papier clair, encre d'alerte, une rangée par geste. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-card.noala-cab-rg-sec.noala-cab-rg-danger { background: var(--cab-grave-fond); border-color: var(--cab-grave-bord); }
html[data-noala-ui="synthese"] .noala-cab-rg-danger .noala-cab-rg-h2 .noala-ic { color: var(--cab-alerte); }
html[data-noala-ui="synthese"] .noala-cab-rg-danger .noala-cab-rg-p { color: var(--rg-texte); }
html[data-noala-ui="synthese"] .noala-cab-rg-geste-grave { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 24px; align-items: center; padding: 16px 0; border-top: 1px solid var(--cab-grave-bord); }
html[data-noala-ui="synthese"] .noala-cab-rg-geste-grave b { display: block; font-size: 15px; font-weight: 500; line-height: 1.5; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-geste-grave p { margin: 0; max-width: 60ch; font-size: 13.5px; line-height: 1.6; color: var(--rg-texte); }
html[data-noala-ui="synthese"] .noala-cab-rg-grave { display: inline-flex; align-items: center; min-height: 40px; margin: 0; padding: 0; border: 0; background: none; font-family: var(--font-sans); font-size: 13.5px; font-weight: 500; color: var(--cab-alerte); text-decoration: underline; text-decoration-color: var(--cab-grave-souligne); text-underline-offset: 3px; cursor: pointer; border-radius: 6px; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-rg-grave:hover { text-decoration-color: currentColor; }
html[data-noala-ui="synthese"] .noala-cab-pat-gestes-fiche { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
html[data-noala-ui="synthese"] .noala-cab-rg-grave:disabled { opacity: .45; cursor: not-allowed; text-decoration: none; }
html[data-noala-ui="synthese"] .noala-cab-rg-grave--fort { font-weight: 600; text-decoration-color: currentColor; }

/* ── Fenêtre d'un lieu : des parties qui se déplient (grammaire du lot 3c). ── */
html[data-noala-ui="synthese"] .noala-cab-rg-partie { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-rg-partie:last-of-type { border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-rg-partie > summary { display: flex; align-items: center; gap: 16px; min-height: 72px; padding: 12px 4px; list-style: none; cursor: pointer; border-radius: 12px; }
html[data-noala-ui="synthese"] .noala-cab-rg-partie > summary::-webkit-details-marker { display: none; }
html[data-noala-ui="synthese"] .noala-cab-rg-partie > summary:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-rg-partie > summary:focus-visible { outline-offset: -3px; }
html[data-noala-ui="synthese"] .noala-cab-rg-partie > summary > .noala-ic { width: 22px; height: 22px; flex: none; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-partie-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
html[data-noala-ui="synthese"] .noala-cab-rg-partie-nom { font-size: 16px; line-height: 1.4; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-partie[open] .noala-cab-rg-partie-nom { font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-rg-partie-sec { font-size: 13.5px; line-height: 1.5; color: var(--cab-doux); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-rg-partie[open] > summary .noala-cab-fen-plus::before { content: "\2212"; }
html[data-noala-ui="synthese"] .noala-cab-rg-partie-corps { padding: 2px 4px 22px 42px; }
html[data-noala-ui="synthese"] .noala-cab-rg-partie-corps .noala-cab-fen-champs { padding-top: 2px; gap: 14px; }
html[data-noala-ui="synthese"] .noala-cab-rg-bandeau { display: flex; align-items: center; gap: 12px 16px; flex-wrap: wrap; margin-top: 8px; }
html[data-noala-ui="synthese"] .noala-cab-rg-bandeau img { max-height: 44px; max-width: 160px; border-radius: 8px; background: var(--bg); }
html[data-noala-ui="synthese"] .noala-cab-rg-ph { display: grid; grid-template-columns: 88px minmax(0, 1fr); column-gap: 14px; align-items: start; padding: 14px 0 8px; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-rg-ph:first-of-type { border-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-rg-ph > .noala-cab-rg-photo { width: 88px; height: 66px; background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-rg-ph-txt { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-rg-ph-txt .noala-cab-fen-in { min-height: 42px; padding: 8px 14px; }
html[data-noala-ui="synthese"] .noala-cab-rg-ph-sous { display: flex; justify-content: space-between; gap: 10px; margin-top: 4px; font-size: 12.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-ph-sous b { font-weight: 500; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-rg-ph-gestes { grid-column: 2; display: flex; align-items: center; gap: 0; }
html[data-noala-ui="synthese"] .noala-cab-rg-ph-gestes .noala-cab-fen-discret { margin-left: 8px; min-height: 40px; }
html[data-noala-ui="synthese"] .noala-cab-rg-ph-pied { display: flex; align-items: center; gap: 8px 16px; flex-wrap: wrap; padding-top: 14px; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-rg-ph-pied small { font-size: 12.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-rg-ph-pied .noala-cab-fen-second .noala-ic { width: 18px; height: 18px; margin-right: 8px; }
html[data-noala-ui="synthese"] .noala-cab-rg-fen-pied { display: flex; flex-direction: column; align-items: center; gap: 6px; padding-bottom: 30px; }

/* Personnalisation du portail et des documents dans l'aperçu patient. */
.noala-cab-rg-document { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 12px 0; padding: 12px; border: 1px solid var(--border); border-radius: 12px; color: var(--ink); text-decoration: none; }
.noala-cab-rg-document > span:first-child,
.noala-cab-rg-document > span:has(strong) { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.noala-cab-rg-vue-marque { padding: 16px 20px; text-align: center; }
.noala-cab-rg-vue-marque img { max-width: 180px; max-height: 64px; object-fit: contain; }
.noala-cab-rg-vue-marque p { margin: 8px 0 0; overflow-wrap: anywhere; }
.noala-cab-rg-vue-document { margin: 16px; padding: 24px; background: var(--surface); color: var(--cab-document-texte); border: 1px solid var(--cab-document-bord); }
.noala-cab-rg-vue-document p { white-space: pre-wrap; overflow-wrap: anywhere; }
.noala-cab-rg-vue-bandeau img { display: block; max-width: 100%; max-height: 120px; object-fit: contain; margin: 0 auto; }
.noala-cab-rg-vue-placeholder { margin: 24px 0; padding: 32px 12px; background: var(--cab-vide-fond); text-align: center; color: var(--cab-vide-texte); }
#reglages-documents .noala-kv-v { display: grid; gap: 12px; min-width: 0; }
#reglages-documents .noala-input { width: 100%; }

/* ── Aperçu patient : la fiche du praticien telle que le patient la voit. ── */
html[data-noala-ui="synthese"] .noala-cab-rg-vue-lieux { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 16px; }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-lieux button { min-height: 40px; margin: 0; padding: 0 16px; border: 1px solid var(--cab-ligne); border-radius: 30px; background: var(--surface); font-family: var(--font-sans); font-size: 13.5px; color: var(--cab-texte); cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-lieux button[aria-pressed="true"] { background: var(--ink); border-color: var(--ink); color: var(--cta-fg); font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-fond { position: relative; height: 132px; margin-top: 8px; border-radius: 16px 16px 0 0; overflow: hidden; background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-fond img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-fond[data-photo="true"]::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, var(--cab-menthe-15), var(--cab-menthe-78)); }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-fond svg { position: absolute; right: 28px; bottom: 0; width: 150px; height: 132px; }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-corps { padding: 0; }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-corps > .noala-cab-rg-portrait { width: 72px; height: 72px; margin: -36px 0 0 16px; position: relative; box-shadow: 0 0 0 4px var(--surface); font-size: 22px; }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-nom { margin: 10px 0 0; font-size: 18px; font-weight: 500; letter-spacing: -.3px; line-height: 1.35; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-lieu { margin: 14px 0 0; padding-top: 12px; border-top: 1px solid var(--cab-ligne); font-size: 14px; font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-lieu small { display: block; font-size: 12.5px; font-weight: 400; line-height: 1.5; color: var(--cab-doux); white-space: pre-line; }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-liste { margin: 8px 0 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-liste li { display: flex; align-items: flex-start; gap: 12px; min-height: 46px; padding: 8px 0; border-top: 1px solid var(--cab-ligne); font-size: 13.5px; line-height: 1.5; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-liste li small { display: block; font-size: 12.5px; color: var(--cab-doux); overflow-wrap: anywhere; white-space: pre-line; }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-liste .noala-ic { flex: none; width: 18px; height: 18px; margin-top: 2px; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-rg-vue-note { margin: 12px 0 0; font-size: 12.5px; line-height: 1.6; color: var(--cab-doux); }

@media (max-width: 820px) {
  html[data-noala-ui="synthese"] .noala-cab-rg-liste--audit { --rg-cols: 104px minmax(0, 1.1fr) 96px minmax(0, .9fr) minmax(0, 1fr); }
}
@media (max-width: 640px) {
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-page-title.noala-cab-pat-titre { font-size: 32px; letter-spacing: -1.1px; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-page-sub.noala-cab-pat-compte { font-size: 14.5px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-apercu-btn { width: 100%; justify-content: center; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-tabs.noala-cab-rg-rail { margin: 0 -16px 20px; padding: 0 16px; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-tabs.noala-cab-rg-sous { margin: 0 -16px 18px; padding: 0 16px; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-card.noala-cab-rg-sec { padding: 4px 18px 10px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-sec-tete { min-height: 56px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-h2 { font-size: 18px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-sec-etat { margin-left: 0; flex-basis: 100%; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv,
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv.noala-cab-rg-kv--mention { grid-template-columns: minmax(0, 1fr); row-gap: 0; min-height: 0; padding: 10px 0 8px; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv-l { font-size: 13px; color: var(--rg-doux); }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-kv--haut .noala-kv-l { padding-top: 0; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg span.noala-kv-v { min-height: 42px; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-in { max-width: none; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg .noala-cab-rg-in:is(.noala-cab-rg-in--nb, .noala-cab-rg-in--code) { max-width: 150px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-lieu { grid-template-columns: 64px minmax(0, 1fr); column-gap: 14px; align-items: start; }
  html[data-noala-ui="synthese"] .noala-cab-rg-lieu > .noala-cab-rg-photo { width: 64px; height: 50px; margin-top: 3px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-lieu-gestes { grid-column: 2; margin-top: 2px; }
  html[data-noala-ui="synthese"] .noala-cab-doc-menu.noala-cab-rg-menu { left: 78px; right: auto; top: 100%; }
  html[data-noala-ui="synthese"] .noala-cab-rg .noala-spe-synthese .noala-cab-fen-lien { margin-left: 0; white-space: normal; text-align: left; }
  html[data-noala-ui="synthese"] .noala-cab-rg-pied > .noala-cab-fen-lien { margin-left: 0; }
  html[data-noala-ui="synthese"] .noala-cab-rg :is(.noala-cab-rg-outils, .noala-cab-rg-sec-etat) > .noala-cab-fen-second { width: 100%; justify-content: center; }
  html[data-noala-ui="synthese"] .noala-cab-rg-choix { flex-basis: 100%; }
  html[data-noala-ui="synthese"] .noala-cab-rg-tr.noala-cab-rg-th { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-rg-liste .noala-cab-rg-tr { grid-template-columns: minmax(0, 1fr) auto; row-gap: 2px; align-items: start; padding: 14px 0; }
  html[data-noala-ui="synthese"] .noala-cab-rg-tr > * { grid-column: 1 / -1; }
  html[data-noala-ui="synthese"] .noala-cab-rg-tr > :first-child { grid-column: 1; grid-row: 1; }
  html[data-noala-ui="synthese"] .noala-cab-rg-tr > .noala-cab-rg-td-act { grid-column: 2; grid-row: 1; margin-top: -8px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-liste--devis .noala-cab-rg-tr { grid-template-columns: 40px minmax(0, 1fr) auto; column-gap: 8px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-liste--devis .noala-cab-rg-tr > .noala-cab-rg-favori { margin-top: -8px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-liste--devis .noala-cab-rg-tr > .noala-cab-rg-td-nom { grid-column: 2; grid-row: 1; }
  html[data-noala-ui="synthese"] .noala-cab-rg-liste--devis .noala-cab-rg-tr > .noala-cab-rg-td-act { grid-column: 3; }
  html[data-noala-ui="synthese"] .noala-cab-rg-tr [data-lib]::before { content: attr(data-lib) " : "; color: var(--rg-doux); }
  html[data-noala-ui="synthese"] .noala-cab-rg-tr .noala-cab-doc-menu.noala-cab-rg-menu { left: auto; right: 0; top: 44px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-geste-grave { grid-template-columns: minmax(0, 1fr); row-gap: 4px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-qr { gap: 14px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-partie-corps { padding: 2px 0 20px; }
  html[data-noala-ui="synthese"] .noala-cab-rg-ph { grid-template-columns: 72px minmax(0, 1fr); }
  html[data-noala-ui="synthese"] .noala-cab-rg-ph > .noala-cab-rg-photo { width: 72px; height: 54px; }
}
/* Réglages, compléments : un élément
   de check-list tient sur une rangée ; le texte d'un bandeau s'écarte de sa liste. */
html[data-noala-ui="synthese"] .noala-cab-rg-elt { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; column-gap: 14px; align-items: center; padding: 8px 0; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-rg-elt .noala-cab-fen-in { min-height: 44px; padding: 9px 14px; }
html[data-noala-ui="synthese"] .noala-cab-rg-elt .noala-cab-fen-case { min-height: 44px; font-size: 13.5px; white-space: nowrap; }
@media (max-width: 620px) {
  html[data-noala-ui="synthese"] .noala-cab-rg-elt { grid-template-columns: minmax(0, 1fr) auto; }
  html[data-noala-ui="synthese"] .noala-cab-rg-elt > .noala-cab-fen-in { grid-column: 1 / -1; }
}

/* La fenêtre de suppression des Réglages passe au-dessus de la fenêtre d'un lieu
   (slot des modales, plus bas dans le document). */
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-fen.noala-cab-rg-suppr { z-index: 1200; }

/* ══ Console d'administration (lot 7, 2026-10-07) ═════════════════════════════
   Aperçu validé : propositions-cabinet/console.html?idee=a (console.css, `.cs-*`,
   valeurs reprises). Spec : docs/superpowers/specs/2026-10-07-cabinet-lot7-console-design.md.
   Coque A : la barre du praticien (`.noala-cab-barre`), le repère « Administration »,
   un rail de sous-destinations à gauche du contenu. La portée est `.noala-cab-cs`
   (le contenu) et `.noala-cab-cs-barre` (la barre) : rien ici ne touche index.html.
   Les classes d'avant restent sur les éléments de la console (`.noala-admin-rows`,
   `.noala-acc--cat`, `.noala-tab`, `.admin-stat`…) : des specs les lisent. */

/* ── Barre : le repère, la sortie vers la clinique, le bouton du tiroir ── */
html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-marque > span { display: inline-flex; }
html[data-noala-ui="synthese"] .noala-cab-cs-ou {
  align-items: center; height: 26px; margin-left: 8px; padding-left: 14px; border-left: 1px solid var(--cab-ligne);
  font-size: 14px; font-weight: 500; letter-spacing: 0; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-nav { margin-left: 16px; }
html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-lien { padding: 0 15px; gap: 8px; }
html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-outils { gap: 18px; }
html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-burger { position: relative; }
html[data-noala-ui="synthese"] .noala-cab-cs-burger-n { position: absolute; top: -6px; right: -6px; }
html[data-noala-ui="synthese"] .noala-cab-cs-tiroir a.noala-cab-item { text-decoration: none; }
html[data-noala-ui="synthese"] .noala-cab-cs-tiroir-fam { display: flex; flex-direction: column; gap: 2px; }
/* La console n'a que quatre liens, sans recherche : la navigation tient jusqu'à
   820 px, là où le praticien passe au tiroir dès 1120. Les icônes restent jusqu'à 1100. */
@media (min-width: 1101px) {
  html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-nav > .noala-cab-lien .noala-cab-ico { display: inline-grid; }
}
@media (min-width: 1121px) and (max-width: 1199px) {
  html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-marque > span { display: inline-flex; }
}
@media (min-width: 821px) and (max-width: 1120px) {
  html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-nav { display: flex; margin-left: 8px; }
  html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-burger { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-lien { padding: 0 12px; }
  html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-outils { gap: 10px; }
}
@media (max-width: 820px) {
  html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-menu { display: none; }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-cs-ou { margin-left: 4px; padding-left: 10px; font-size: 13px; }
  html[data-noala-ui="synthese"] .noala-cab-cs-barre .noala-cab-marque { font-size: 22px; }
}

/* ── Rail et colonne de contenu ──
   Deux écarts au rail des Réglages : le contenu prend toute la largeur restante
   (les listes ont jusqu'à huit colonnes), et la rubrique active est en menthe
   (la barre du haut porte déjà une pastille encre). */
html[data-noala-ui="synthese"] .noala-cab-cs { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-rg.noala-cab-cs .noala-cab-rg-contenu,
html[data-noala-ui="synthese"] .noala-cab-rg.noala-cab-cs .noala-cab-rg-tete { max-width: none; }
html[data-noala-ui="synthese"] .noala-cab-cs-rails { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-cs-rail-titre { display: none; margin: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg.noala-cab-cs .noala-cab-rg-rail > .noala-tab.active {
  background: var(--surface-2); border-color: var(--cab-vert-bord); color: var(--ink); font-weight: 600;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg.noala-cab-cs .noala-cab-rg-rail > .noala-tab.active:focus-visible { outline-color: var(--accent-text); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg.noala-cab-cs .noala-cab-rg-rail .noala-tab-badge {
  min-width: 0; height: auto; margin-left: 2px; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none;
  font-size: 13px; font-weight: 400; line-height: 1.4; color: var(--cab-doux); font-variant-numeric: tabular-nums;
}
@media (min-width: 1000px) {
  html[data-noala-ui="synthese"] .noala-cab-rg.noala-cab-cs > .noala-cab-rg-corps {
    grid-template-columns: 196px minmax(0, 1fr); column-gap: 52px; padding-top: 26px;
  }
  html[data-noala-ui="synthese"] .noala-cab-cs-rails { position: sticky; top: 20px; margin-left: -14px; }
  html[data-noala-ui="synthese"] .noala-cab-cs-rail-titre { display: block; margin: 6px 0 10px 14px; font-size: 13px; line-height: 1.5; color: var(--cab-doux); }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg.noala-cab-cs .noala-tabs.noala-cab-rg-rail { position: static; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg.noala-cab-cs .noala-cab-rg-rail > .noala-tab.active { border-color: transparent; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-rg.noala-cab-cs .noala-cab-rg-rail > .noala-tab :is(.noala-tab-badge, .noala-cab-pastille) { margin-left: auto; }
  html[data-noala-ui="synthese"] .noala-cab-rg.noala-cab-cs .noala-cab-cs-tete { padding-top: 0; }
}

/* ── Console : listes à filets (lot 7, étape 3) ──
   Les tables restent des tables (`table.noala-admin-rows`, sondées par des specs).
   Plus de carte ni d'ombre par rangée : un filet entre deux rangées, un en-tête
   gris sans capitales, la première cellule sur le bord gauche du titre de page. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-card.noala-card--data:not(.noala-cab-rg-sec) {
  padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-card--data:not(.noala-cab-rg-sec) > .noala-card-body { padding: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows {
  width: 100%; border-collapse: separate; border-spacing: 0; font-size: 13.5px; line-height: 1.5; color: var(--cab-texte);
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows thead th {
  padding: 0 10px 8px; border: 0; border-bottom: 1px solid var(--cab-ligne); background: none;
  font-size: 12px; font-weight: 500; letter-spacing: 0; text-transform: none; text-align: left; white-space: nowrap; color: var(--cab-doux);
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows tbody td {
  padding: 12px 10px; border: 0; border-bottom: 1px solid var(--cab-ligne); border-radius: 0; vertical-align: middle;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows tbody tr:last-child > td { border-bottom: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows :is(th, td):first-child { padding-left: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows :is(th, td):last-child { padding-right: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows tbody tr { background: none; box-shadow: none; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows td strong {
  font-size: 15px; font-weight: 500; line-height: 1.45; color: var(--ink); overflow-wrap: anywhere;
}
html[data-noala-ui="synthese"] .noala-cab-cs-sec { font-size: 13px; line-height: 1.5; color: var(--cab-doux); overflow-wrap: anywhere; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows :is(th, td).noala-cab-cs-nb { text-align: right; font-variant-numeric: tabular-nums; color: var(--ink); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows thead th.noala-cab-cs-nb { color: var(--cab-doux); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows :is(th, td).noala-cab-cs-act { text-align: right; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-cs-act > * { vertical-align: middle; }
html[data-noala-ui="synthese"] .noala-cab-cs-act > * + * { margin-left: 10px; }
html[data-noala-ui="synthese"] .noala-cab-cs-menu-ancre { position: relative; display: inline-block; }
html[data-noala-ui="synthese"] .noala-cab-cs-menu { text-align: left; white-space: normal; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows td.noala-cab-cs-vide { padding: 26px 0 10px; font-size: 14.5px; line-height: 1.7; color: var(--cab-doux); text-align: left; }
html[data-noala-ui="synthese"] .noala-cab-cs-inter { margin: 30px 0 14px; font-family: var(--font-sans); font-size: 19px; line-height: 1.35; font-weight: 500; letter-spacing: -.3px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cs-inter small { margin-left: 10px; font-size: 13.5px; font-weight: 400; letter-spacing: 0; color: var(--cab-doux); }
/* La barre de filtres en segments (aperçu : `.cs-filtres`). Les champs restent
   natifs et gardent `.noala-input` (des specs les lisent) : ils perdent leur cadre,
   le segment le porte. Elle reste une barre à toutes les largeurs. */
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-pat-barre.noala-cab-cs-filtres { display: grid; margin: 0 0 18px; }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres[data-n="1"] { grid-template-columns: minmax(0, 1fr); max-width: 560px; }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres[data-n="2"] { grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr); }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres[data-n="3"] { grid-template-columns: minmax(0, 1.9fr) minmax(0, 1fr) minmax(0, 1fr); }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres[data-n="4"] { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr); }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres[data-n="5"] { grid-template-columns: minmax(0, 1.5fr) repeat(4, minmax(0, 1fr)); }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres .noala-cab-pat-seg[data-seg="q"] { cursor: text; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres .noala-cab-pat-seg > .noala-input {
  display: block; width: 100%; min-width: 0; min-height: 0; height: auto; margin: 0; padding: 0; border: 0; border-radius: 0;
  background: none; box-shadow: none; outline: none; appearance: none; -webkit-appearance: none;
  font-family: var(--font-sans); font-size: 14.5px; line-height: 1.5; color: var(--ink); text-overflow: ellipsis; cursor: pointer;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres .noala-cab-pat-seg > input.noala-input { cursor: text; }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres .noala-input::placeholder { color: var(--cab-doux); opacity: 1; }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres .noala-input::-webkit-search-cancel-button { display: none; }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres .noala-cab-pat-seg--actif > .noala-input { font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres .noala-cab-pat-seg[data-sans-ic] { padding-right: 16px; }
@media (max-width: 900px) {
  html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres:is([data-n="3"], [data-n="4"], [data-n="5"]) { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 2px; }
  html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres:is([data-n="3"], [data-n="4"], [data-n="5"]) .noala-cab-pat-seg[data-seg="q"] { grid-column: 1 / -1; }
  html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres:is([data-n="3"], [data-n="4"], [data-n="5"]) .noala-cab-pat-seg:nth-child(2n)::before { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres[data-n="4"] .noala-cab-pat-seg:last-child { grid-column: 1 / -1; }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres[data-n] { grid-template-columns: minmax(0, 1fr); row-gap: 2px; }
  html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres[data-n] .noala-cab-pat-seg { grid-column: auto; }
  html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres[data-n] .noala-cab-pat-seg::before { display: none; }
}
html[data-noala-ui="synthese"] .noala-cab-cs-compte { margin-left: auto; font-size: 13.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cs-calme { padding: 0 0 6px; }
html[data-noala-ui="synthese"] .noala-cab-cs-attente { margin-bottom: 8px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-attente .noala-admin-rows tbody tr:first-of-type > td { border-top: 1px solid var(--cab-ligne); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cta.noala-cab-cs-cta { flex: none; gap: 8px; min-height: 46px; padding: 10px 20px; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-cs-retour-liste { display: inline-flex; align-items: center; gap: 6px; margin: 0 0 6px; }
html[data-noala-ui="synthese"] .noala-cab-cs-retour-liste .noala-ic { width: 17px; height: 17px; }

/* ── Console : le catalogue (lot 7, étape 4) ──
   Aperçu : `.cs-spe`, `.cs-pli`, `.cs-cat`. Les plis gardent `details.noala-acc--cat`
   et leur `summary.noala-qs-sec-head` (des specs les lisent) : ces règles recouvrent
   la carte d'`app.css` par des filets. Le signe « + » ou « − » remplace le chevron.
   Aucune carte dans une carte : la table d'un groupe n'a ni cadre ni en-tête visible. */
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-sous-filtres { margin: -8px 0 0; min-height: 44px; }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-sous-filtres > .noala-cab-cs-compte { margin-left: auto; }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-sous-filtres > .noala-cab-cat-natures { padding: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-nature-pills.noala-cab-cat-natures { gap: 2px 16px; padding: 0; border: 0; border-radius: 0; background: none; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-nature-pills.noala-cab-cat-natures > button {
  min-height: 0; padding: 4px 0; border: 0; border-radius: 4px; background: none; box-shadow: none;
  font-size: 13.5px; font-weight: 500; color: var(--accent-text);
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-nature-pills.noala-cab-cat-natures > button.active { color: var(--ink); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-nature-pills.noala-cab-cat-natures .noala-nature-pills-n { margin-left: 4px; padding: 0; background: none; font-size: 13px; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cs-cat .noala-cab-cs-filtres select.noala-input:disabled { color: var(--cab-doux); cursor: default; opacity: 1; }
html[data-noala-ui="synthese"] .noala-cab-cs-cat > .noala-card-body > div:has(> .noala-acc--cat) { margin-top: 18px; }

html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc.noala-acc--cat {
  margin: 0; padding: 0; border: 0; border-top: 1px solid var(--cab-ligne); border-radius: 0; background: none; box-shadow: none; overflow: visible;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc.noala-acc--cat:not(.noala-acc--cat-2):last-of-type { border-bottom: 1px solid var(--cab-ligne); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat > summary.noala-qs-sec-head {
  display: flex; align-items: center; gap: 16px; min-height: 0; margin: 0 -10px; padding: 22px 10px 18px;
  border: 0; border-radius: 14px; background: none; list-style: none; cursor: pointer; white-space: normal;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat > summary.noala-qs-sec-head::after { content: none; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat > summary.noala-qs-sec-head:hover { background: var(--cab-menthe-2); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat > summary.noala-qs-sec-head:focus-visible { outline: 3px solid var(--accent-text); outline-offset: -3px; border-radius: 14px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat > summary .noala-qs-sec-title {
  font-family: var(--font-sans); font-size: 22px; line-height: 1.3; font-weight: 400; letter-spacing: -.4px; color: var(--ink);
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat > summary .noala-qs-sec-count,
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat > summary:hover .noala-qs-sec-count {
  display: inline; min-width: 0; height: auto; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none;
  font: inherit; color: inherit; font-variant-numeric: tabular-nums;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat > .noala-acc-body { padding: 0 0 14px; border: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-2 { border-bottom: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-2 > summary.noala-qs-sec-head { min-height: 62px; padding: 13px 10px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-2 > summary .noala-qs-sec-title { font-size: 16px; line-height: 1.4; letter-spacing: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-2[open] > summary .noala-qs-sec-title { font-weight: 500; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-2 > .noala-acc-body { padding: 0 0 12px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-2:not(.noala-acc--cat-seul) > .noala-acc-body > .noala-admin-rows tbody tr:first-child > td { border-top: 1px solid var(--cab-ligne); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-seul { border-top: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-seul > summary.noala-qs-sec-head { display: none; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-seul > .noala-acc-body { padding-bottom: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-seul > .noala-acc-body > .noala-admin-rows tbody tr:first-child > td { border-top: 1px solid var(--cab-ligne); }
/* L'en-tête de colonnes reste dans le DOM (lecteur d'écran, specs), hors de l'œil. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-admin-rows thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-admin-rows { table-layout: auto; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-admin-rows :is(th, td):first-child { width: 46%; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-admin-rows :is(th, td).noala-cab-cs-act { width: 150px; }
html[data-noala-ui="synthese"] .noala-cab-cs-nom { display: grid; grid-template-columns: 22px minmax(0, 1fr); column-gap: 16px; align-items: center; }
html[data-noala-ui="synthese"] .noala-cab-cs-nom-txt { min-width: 0; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-nom-txt > .noala-cat-desc { margin-top: 0; font-size: 13px; line-height: 1.5; color: var(--cab-doux); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows td.noala-cab-cs-info { color: var(--cab-texte); overflow-wrap: anywhere; }
/* Les marques se disent en mots : plus de pastille par rangée (règle 4). */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows .noala-tag {
  display: inline; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none;
  font: inherit; letter-spacing: 0; text-transform: none; color: inherit;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows td.noala-cab-cs-info > .noala-tag:first-child { font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cs-info > :not(:first-child)::before { content: "\00B7"; margin: 0 6px 0 2px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cs-adresse { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12.5px; }
html[data-noala-ui="synthese"] .noala-cab-cs-adresse a { color: var(--accent-text); text-decoration: none; }
html[data-noala-ui="synthese"] .noala-cab-cs-adresse a:hover { text-decoration: underline; text-underline-offset: 3px; }
/* Dans une rangée, un geste est un lien teal. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows .noala-link-action {
  min-height: 40px; height: auto; padding: 0; border: 0; border-radius: 6px; background: none; box-shadow: none;
  font-size: 13.5px; font-weight: 500; color: var(--accent-text); text-decoration: none; white-space: nowrap;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows .noala-link-action:hover { background: none; text-decoration: underline; text-underline-offset: 3px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows .noala-cab-cs-act > .noala-link-action + .noala-link-action { margin-left: 16px; }
html[data-noala-ui="synthese"] .noala-cab-cs-vide-bloc {
  display: flex; align-items: center; flex-wrap: wrap; gap: 4px 16px; margin-top: 18px; padding: 26px 0 10px; border-top: 1px solid var(--cab-ligne);
  font-size: 14.5px; line-height: 1.7; color: var(--cab-doux);
}
@media (max-width: 760px) {
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-admin-rows,
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-admin-rows :is(tbody, tr, td) { display: block; width: auto; min-width: 0; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-admin-rows tbody tr { padding: 12px 0; border-top: 1px solid var(--cab-ligne); }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-admin-rows tbody tr > td,
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc-body > .noala-admin-rows tbody tr:first-child > td { padding: 1px 0; border: 0; text-align: left; white-space: normal; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-admin-rows td:is(.noala-cab-cs-info, .noala-cab-cs-act) { padding-left: 38px; width: auto; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-admin-rows td:first-child { width: auto; }
  html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-sous-filtres > .noala-cab-cs-compte { margin-left: 0; flex-basis: 100%; }
}
@media (max-width: 640px) {
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat > summary.noala-qs-sec-head { margin: 0 -4px; padding: 18px 4px 14px; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-2 > summary.noala-qs-sec-head { padding: 13px 4px; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat > summary .noala-qs-sec-title { font-size: 19px; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-acc--cat .noala-acc--cat-2 > summary .noala-qs-sec-title { font-size: 16px; }
}

/* ── Console : Système (lot 7, étape 6) ──
   Statistiques : quatre grands chiffres séparés par des filets (aperçu `.cs-chiffres`),
   deux sections côte à côte, une bande menthe. Envois : rangées libellé et valeur, une
   ligne de compteurs en mots. Journal et CCAM : listes à filets, intertitres. */
html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat-grid {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 0 28px;
  border-top: 1px solid var(--cab-ligne); border-bottom: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat { display: flex; flex-direction: column; gap: 2px; min-width: 0; padding: 20px 20px 18px 0; }
html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat + .admin-stat { padding-left: 24px; border-left: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat-l { font-size: 13px; line-height: 1.5; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat-v {
  font-size: 38px; font-weight: 400; letter-spacing: -1.2px; line-height: 1.15; color: var(--ink); font-variant-numeric: tabular-nums;
}
html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat-d { font-size: 13px; line-height: 1.5; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: start; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .admin-stat-cols > .noala-card.noala-cab-rg-sec + .noala-cab-rg-sec { margin-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-cs .admin-band {
  margin-top: 20px; padding: 16px 20px; border: 0; border-radius: 16px; background: var(--surface-2); font-size: 14px; line-height: 1.7; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-cab-cs-supervision { padding-top: 14px; font-size: 13.5px; color: var(--cab-doux); }
/* Rangée libellé et valeur (aperçu `.cs-kv`). */
html[data-noala-ui="synthese"] .noala-cab-cs-lv {
  display: grid; grid-template-columns: minmax(0, 220px) minmax(0, 1fr); column-gap: 20px; align-items: center;
  min-height: 52px; padding: 8px 0; border-top: 1px solid var(--cab-ligne); font-size: 14px; line-height: 1.5; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-cab-cs-lv b { font-weight: 500; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-cs-lv small { font-size: 13px; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cs .admin-canal-erreur { margin: 0 0 8px; }
html[data-noala-ui="synthese"] .noala-cab-cs-canal-test { padding: 14px 0 6px; border-top: 1px solid var(--cab-ligne); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-canal-test > input.noala-input {
  flex: 0 1 240px; width: auto; min-height: 46px; border-radius: 12px; border-color: var(--cab-bord); font-size: 14.5px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-rg-sec-etat > .noala-cab-fen-lien { margin-left: 4px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-show-grid.noala-cab-cs-mini {
  grid-template-columns: repeat(auto-fit, minmax(0, max-content)); gap: 4px 26px; padding: 12px 0 14px; border-top: 1px solid var(--cab-ligne);
  font-size: 13.5px; line-height: 1.5; color: var(--cab-doux);
}
html[data-noala-ui="synthese"] .noala-cab-cs-mini b { font-weight: 500; color: var(--ink); font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-cs-envois .noala-admin-rows thead th { padding-top: 6px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows td.noala-cab-cs-msg { max-width: 340px; overflow-wrap: anywhere; color: var(--ink); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows td.noala-cab-cs-code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12.5px; color: var(--ink); white-space: nowrap; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows td.noala-cab-cs-date { white-space: nowrap; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows :is(th, td).noala-cab-cs-centre { text-align: center; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows td.noala-cab-cs-centre .noala-ic { width: 17px; height: 17px; color: var(--ink); vertical-align: middle; }
html[data-noala-ui="synthese"] .noala-cab-cs-etat {
  display: flex; align-items: center; flex-wrap: wrap; gap: 2px 16px; margin: 0; font-size: 14px; line-height: 1.7; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-cab-cs-lien-texte { color: var(--accent-text); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-cs-inter > .noala-ic { width: 20px; height: 20px; margin-right: 10px; vertical-align: -3px; }
html[data-noala-ui="synthese"] :is(.noala-cab-cs-bloc, .noala-cab-cs-stats, .noala-cab-cs-ccam, .noala-cab-cs-audit) { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-cs-defile { overflow-x: auto; }
html[data-noala-ui="synthese"] .noala-cab-cs-pied-table { margin: 12px 0 0; max-width: 78ch; }
html[data-noala-ui="synthese"] .noala-cab-cs-maj { margin-top: 30px; border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-cs-depot { cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-cs-depot:has(:focus-visible) { outline: 3px solid var(--accent-text); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-cs-depot[aria-disabled="true"] { opacity: .55; cursor: default; }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-filtres input[type="date"].noala-input { color: var(--cab-texte); }
@media (max-width: 900px) {
  html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat:nth-child(3) { padding-left: 0; border-left: 0; }
  html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat:nth-child(n+3) { border-top: 1px solid var(--cab-ligne); }
  html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat-cols { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat-grid { grid-template-columns: minmax(0, 1fr); }
  html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat,
  html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat + .admin-stat { padding: 14px 0; border-left: 0; }
  html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat + .admin-stat { border-top: 1px solid var(--cab-ligne); }
  html[data-noala-ui="synthese"] .noala-cab-cs .admin-stat-v { font-size: 30px; }
  html[data-noala-ui="synthese"] .noala-cab-cs-lv { grid-template-columns: minmax(0, 1fr); row-gap: 0; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-canal-test > input.noala-input { flex-basis: 100%; }
  html[data-noala-ui="synthese"] .noala-cab-cs-canal-test > .noala-cab-fen-second { width: 100%; justify-content: center; }
}

/* ── Console : fenêtres et confirmations (lot 7, étape 7) ──
   La fenêtre de confirmation et « Insérer un lien » emploient la coque des fenêtres
   cabinet (`.noala-modal-overlay.noala-cab-fen`). Elles vivent hors du slot des modales
   de la console, au-dessus de lui. Deux modales du slot (« Nouveau praticien »,
   « Supprimer un compte ») prennent la même coque par `.modal-overlay.noala-cab-fen`. */
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-cs-conf { z-index: 400; }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cta.noala-cab-fen-cta.noala-cab-cs-cta-alerte { background: var(--alert); color: var(--cta-fg); }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cta.noala-cab-fen-cta.noala-cab-cs-cta-alerte:hover:not(:disabled) { background: var(--cab-alerte); }
html[data-noala-ui="synthese"] .modal-overlay.noala-cab-fen {
  align-items: center; justify-content: center; padding: 16px; overflow: hidden;
  background: var(--cab-encre-53); backdrop-filter: blur(7px); -webkit-backdrop-filter: blur(7px);
}
html[data-noala-ui="synthese"] .modal-overlay.noala-cab-fen > .modal-shell.noala-cab-fen-carte {
  position: relative; display: flex; flex-direction: column;
  width: min(620px, 100%); min-width: 0; max-width: 620px; height: auto; min-height: 0; max-height: min(90dvh, 880px);
  margin: auto; padding: 0; overflow: hidden;
  border: 1px solid var(--cab-ligne); border-radius: 28px; background: var(--surface); color: var(--ink);
  box-shadow: 0 25px 80px var(--cab-encre-20);
  font-family: var(--font-sans); font-size: 14px; line-height: 1.55;
}
html[data-noala-ui="synthese"] .noala-cab-fen-titre:is(:focus, :focus-visible) { outline: none; }
html[data-noala-ui="synthese"] .noala-cab-cs-deux { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 14px; }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cab-cs-champ > .noala-cab-fen-in { display: block; width: 100%; }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-checkbox.noala-cab-cs-case {
  display: flex; align-items: flex-start; gap: 10px; margin: 4px 0 8px; font-size: 14px; line-height: 1.55; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-fen .admin-suppr-lignes { margin: 4px 0 16px; font-size: 13.5px; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-fen .admin-suppr-erreur { margin: 0 0 12px; }
html[data-noala-ui="synthese"] .noala-cab-fen-intro strong { font-weight: 500; color: var(--ink); }
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .modal-overlay.noala-cab-fen > .modal-shell.noala-cab-fen-carte { border-radius: 24px; max-height: calc(100dvh - 32px); }
  html[data-noala-ui="synthese"] .noala-cab-cs-deux { grid-template-columns: minmax(0, 1fr); }
}

/* Pied de pagination : un filet, deux liens. */
html[data-noala-ui="synthese"] .noala-cab-cs .admin-pager {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 20px;
  margin-top: 6px; padding: 12px 0 0; border-top: 1px solid var(--cab-ligne); font-size: 13.5px; color: var(--cab-doux);
}
html[data-noala-ui="synthese"] .noala-cab-cs :is(.admin-pager-txt, .admin-pager-pos) { font-size: 13.5px; color: var(--cab-doux); font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-cs .admin-pager-txt strong { font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cs .admin-pager-btns { display: flex; align-items: center; gap: 22px; }
html[data-noala-ui="synthese"] .noala-cab-cs .admin-pager-btn {
  min-height: 40px; padding: 0; border: 0; border-radius: 6px; background: none; cursor: pointer;
  font-family: var(--font-sans); font-size: 13.5px; font-weight: 500; color: var(--accent-text);
}
html[data-noala-ui="synthese"] .noala-cab-cs .admin-pager-btn:hover:not(:disabled) { text-decoration: underline; text-underline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-cs .admin-pager-btn:disabled { color: var(--cab-doux); cursor: default; }

/* ── Console : le détail d'un praticien, en page (décision 2) ── */
html[data-noala-ui="synthese"] .noala-cab-cs-detail { max-width: 760px; }
html[data-noala-ui="synthese"] .noala-cab-cs-champ { display: block; margin: 0 0 14px; }
html[data-noala-ui="synthese"] .noala-cab-cs-champ > span { display: block; margin-bottom: 6px; font-size: 13px; font-weight: 500; line-height: 1.45; color: var(--ink); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs-champ > .noala-input,
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs-gestes--champ > select.noala-input {
  display: block; width: 100%; min-height: 46px; border-radius: 12px; border-color: var(--cab-bord); font-size: 14.5px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-cs-aide { margin: 0 0 12px; font-size: 12.5px; line-height: 1.6; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cs-kv {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 20px; align-items: center;
  min-height: 52px; padding: 8px 0; border-top: 1px solid var(--cab-ligne); font-size: 14px; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-cab-cs-kv b { font-size: 17px; font-weight: 400; color: var(--ink); font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-cs-gestes { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 14px; padding: 4px 0 12px; }
html[data-noala-ui="synthese"] .noala-cab-cs-gestes .noala-ic { width: 18px; height: 18px; margin-right: 8px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs-gestes--champ > select.noala-input { flex: 1 1 220px; width: auto; }
html[data-noala-ui="synthese"] .noala-cab-cs-pli { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-cs-pli > summary {
  display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 56px; padding: 8px 4px;
  list-style: none; cursor: pointer; border-radius: 12px; font-size: 15px; line-height: 1.4; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-cs-pli > summary::-webkit-details-marker { display: none; }
html[data-noala-ui="synthese"] .noala-cab-cs-pli > summary::after { content: "+"; flex: none; width: 16px; text-align: center; font-size: 18px; line-height: 1; }
html[data-noala-ui="synthese"] .noala-cab-cs-pli[open] > summary::after { content: "\2212"; }
html[data-noala-ui="synthese"] .noala-cab-cs-pli[open] > summary { font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-cs-pli > summary:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-cs .noala-cab-cs-pli > summary:focus-visible { outline-offset: -3px; }
html[data-noala-ui="synthese"] .noala-cab-cs-pli-corps { padding: 0 4px 10px; }
html[data-noala-ui="synthese"] .noala-cab-cs-cases { max-height: 280px; overflow-y: auto; margin: 0 0 10px; padding: 4px; }
html[data-noala-ui="synthese"] .noala-cab-cs-cases > .noala-checkbox { display: flex; align-items: flex-start; gap: 10px; margin: 0; padding: 7px 0; font-size: 14px; line-height: 1.5; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cs-cases small { font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cs-detail-pied { margin: 18px 0 0; }
html[data-noala-ui="synthese"] .noala-cab-cs-detail .noala-cab-fen-lien.noala-cab-cs-grave { color: var(--cab-alerte); }

/* Sous 760 px, une rangée de liste devient un petit bloc : le libellé de la
   colonne se dit devant la valeur (`data-lib`), l'en-tête de colonnes s'efface. */
@media (max-width: 760px) {
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows:is([data-repli], :has(td[data-lib])) thead {
    position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0);
  }
  /* Les cellules d'un en-tête masqué ne gardent pas leur largeur : sinon elles dépassent de l'écran sous une table vide. */
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows:is([data-repli], :has(td[data-lib])) thead :is(tr, th) {
    display: block; width: 1px; height: 1px; padding: 0; overflow: hidden; white-space: nowrap;
  }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows:is([data-repli], :has(td[data-lib])),
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows:is([data-repli], :has(td[data-lib])) :is(tbody, tr, td) { display: block; width: auto; min-width: 0; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows:is([data-repli], :has(td[data-lib])) tbody tr { padding: 12px 0; border-bottom: 1px solid var(--cab-ligne); }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows:is([data-repli], :has(td[data-lib])) tbody td { padding: 1px 0; border: 0; text-align: left; white-space: normal; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows td[data-lib]::before { content: attr(data-lib) " : "; color: var(--cab-doux); }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows:is([data-repli], :has(td[data-lib])) td.noala-cab-cs-act { padding-top: 4px; }
  html[data-noala-ui="synthese"] .noala-cab-cs-act > * + * { margin-left: 0; }
  html[data-noala-ui="synthese"] .noala-cab-cs-act > * { margin-right: 14px; }
  html[data-noala-ui="synthese"] .noala-cab-cs-menu-ancre .noala-cab-rg-menu { left: 0; right: auto; }
  html[data-noala-ui="synthese"] .noala-cab-cs-compte { margin-left: 0; flex-basis: 100%; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cta.noala-cab-cs-cta { width: 100%; }
}
/* Le titre de page reçoit le focus par script (retour, détail) : pas d anneau, ce n est pas une commande. */
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-page-title:is(:focus, :focus-visible) { outline: none; }

/* ── Console : les éditeurs sous le marqueur (lot 7, étape 8) ──
   Trois familles dans le slot `.modal-overlay` de la console (classe locale
   d'admin.html, absente d'index.html) : les fenêtres de 620 px
   (`.modal-overlay.noala-cab-fen`), les pages d'éditeur de 960 px
   (`.modal-overlay[data-kind="page"]`), et les deux builders, qui sont des pages.
   Les classes d'avant restent (`.noala-modal-actions`, `.noala-bsec*`) : des specs les
   lisent. Le sélecteur d'images de la console est parti (builders, lot 3, tâche 6) avec
   ses règles : la grille `fenImage` emploie celles des fenêtres des builders. */

/* Fenêtres : le pied, les champs, les boutons d'icône. */
html[data-noala-ui="synthese"] .modal-overlay.noala-cab-fen .noala-modal-actions.noala-cab-fen-pied {
  flex-wrap: nowrap; justify-content: flex-start; margin: 0; border-top: 0;
}
html[data-noala-ui="synthese"] .modal-overlay.noala-cab-fen .noala-modal-actions.noala-cab-fen-pied[data-filet="true"] { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .modal-overlay.noala-cab-fen .noala-cab-fen-lien.noala-cab-cs-grave { color: var(--cab-alerte); }
html[data-noala-ui="synthese"] .modal-overlay.noala-cab-fen .noala-cab-fen-lien .noala-cab-cs-lien-ic { width: 17px; height: 17px; margin-right: 8px; }
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay.noala-cab-fen .noala-cab-fen-corps .noala-input.noala-cab-fen-in {
  display: block; width: 100%; min-height: 48px; height: auto; margin: 0; padding: 11px 14px;
  border: 1px solid var(--text-2); border-radius: 12px; background-color: var(--surface); color: var(--ink); box-shadow: none;
  font-family: var(--font-sans); font-size: 15px; line-height: 1.4;
}
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay.noala-cab-fen .noala-cab-fen-corps select.noala-input.noala-cab-fen-in { padding-right: 40px; }
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay.noala-cab-fen .noala-cab-fen-corps input[type="file"].noala-input.noala-cab-fen-in { padding: 9px 12px; font-size: 14px; }
html[data-noala-ui="synthese"] .noala-cab-cs-ico-btn {
  display: inline-grid; place-items: center; flex: none; width: 36px; height: 36px; margin: 0; padding: 0;
  border: 0; border-radius: 10px; background: none; color: var(--cab-texte); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-cs-ico-btn:hover { background: var(--surface-2); color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cs-ico-btn .noala-ic { width: 18px; height: 18px; }
html[data-noala-ui="synthese"] .noala-cab-cs-ins-apercu {
  display: block; max-width: 100%; max-height: 200px; margin: 0 0 14px; border: 1px solid var(--cab-ligne); border-radius: 12px;
}
html[data-noala-ui="synthese"] .modal-overlay.noala-cab-fen .noala-cab-fen-corps > .noala-cab-cs-aide { margin: -8px 0 12px; }

/* Modèle de check-list : les éléments en rangées à filets. */
html[data-noala-ui="synthese"] .noala-cab-cs-elts { margin: 8px 0 4px; }
html[data-noala-ui="synthese"] .noala-cab-cs-elts-t { margin: 0 0 2px; font-size: 15px; font-weight: 500; line-height: 1.45; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cs-elts > .noala-cab-cs-aide { margin: 0 0 6px; }
html[data-noala-ui="synthese"] .noala-cab-cs-elt {
  display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; align-items: center; column-gap: 10px; row-gap: 2px;
  padding: 10px 0 6px; border-top: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-cs-elt > .noala-cab-cs-elt-doc { grid-column: 2; grid-row: 2; justify-self: start; min-height: 36px; }
html[data-noala-ui="synthese"] .noala-cab-cs-elt-n { font-size: 13px; color: var(--cab-doux); text-align: right; font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-cs-elt-doc { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: 13px; color: var(--cab-texte); white-space: nowrap; cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-cs-elt-gestes { display: inline-flex; align-items: center; }
html[data-noala-ui="synthese"] .noala-cab-cs-elts > .noala-cab-fen-lien { width: 100%; padding-top: 4px; border-top: 1px solid var(--cab-ligne); }

@media (max-width: 620px) {
  html[data-noala-ui="synthese"] .noala-cab-cs-elt { grid-template-columns: 22px minmax(0, 1fr); }
  html[data-noala-ui="synthese"] .noala-cab-cs-elt > .noala-cab-cs-elt-gestes { grid-column: 2; grid-row: 3; }
}

/* Pages d'éditeur de la console. Toutes (`data-kind="page"`) ont le fond papier. Les règles
   `.noala-cab-cs-ed` ne servent plus qu'au pack et au modèle de consentement : colonne de
   960 px, un lien de retour, un surtitre, un titre léger. Les deux builders et l'éditeur de
   contenu (builders, lot 4) prennent le socle `.noala-cab-ed`, plus bas.
   Une section est une carte blanche de premier niveau (`.noala-bsec`), jamais une
   carte dans une carte. Une seule action encre, dans le pied. */
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] { align-items: stretch; justify-content: stretch; padding: 0; background: var(--bg); }
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] > .modal-shell {
  width: 100%; max-width: none; min-height: 100vh; min-height: 100dvh; margin: 0; padding: 34px 28px 72px;
  border: 0; border-radius: 0; background: var(--bg); box-shadow: none; color: var(--ink);
}
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] > .modal-shell > .noala-cab-cs-ed { max-width: 960px; margin: 0 auto; }
/* La croix reste (des specs la lisent) : ronde, dans la marge de la colonne. */
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] > .modal-shell > .noala-modal-close {
  position: absolute; top: 26px; right: max(14px, calc((100% - 960px) / 2 - 60px)); display: grid; place-items: center;
  width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: none; color: var(--ink); font-size: 27px; font-weight: 400; line-height: 1;
}
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] > .modal-shell > .noala-modal-close:hover { background: var(--surface-2); border: 0; }
html[data-noala-ui="synthese"] .noala-cab-cs-ed-tete { margin: 0 0 26px; padding-right: 52px; }
html[data-noala-ui="synthese"] .noala-cab-cs-ed-tete > .noala-cab-cs-retour-liste { margin: 0 0 14px; }
html[data-noala-ui="synthese"] .noala-cab-cs-ed-tete > .noala-cab-pat-surtitre { margin: 0 0 10px; }
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-modal-title.noala-cab-cs-ed-titre {
  margin: 0; font-family: var(--font-sans); font-size: 36px; line-height: 1.2; font-weight: 400; letter-spacing: -1.2px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-cs-ed-phrase { max-width: 68ch; margin: 12px 0 0; font-size: 15px; line-height: 1.7; color: var(--cab-texte); }
/* Sections : cartes blanches à plat. */
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] :is(.noala-bsec, .noala-cab-cs-ed-carte) {
  margin: 0 0 16px; border: 1px solid var(--cab-ligne); border-radius: 16px; background: var(--surface); box-shadow: none; overflow: visible;
}
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-cab-cs-ed-carte { padding: 24px 26px 22px; }
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-bsec-hdr {
  padding: 20px 26px 0; border: 0; border-radius: 16px 16px 0 0; background: none;
  font-family: var(--font-sans); font-size: 19px; line-height: 1.35; font-weight: 500; letter-spacing: -.3px; text-transform: none; color: var(--ink);
}
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-bsec-body { padding: 14px 26px 22px; }
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-bsec .noala-bsec { border-color: var(--cab-ligne); background: var(--bg); }
/* Champs : libellé encre, cadre de 46 px. */
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-form-group > span:first-child,
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-form-group > label > span:first-child { font-size: 13px; font-weight: 500; line-height: 1.45; color: var(--ink); }
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-form-group .noala-input {
  min-height: 46px; border-color: var(--cab-bord); border-radius: 12px; font-size: 14.5px; color: var(--ink);
}
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .caps { font-size: 13px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--cab-doux); }
/* Le pied : des liens à gauche, la seule action encre à droite. */
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-modal-actions {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 20px; margin-top: 26px; padding-top: 18px; border-top: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-cs-ed-liens { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 24px; }
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-modal-actions .noala-link-action {
  min-height: 44px; height: auto; padding: 0; border: 0; border-radius: 6px; background: none; box-shadow: none;
  font-size: 14px; font-weight: 500; color: var(--accent-text);
}
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-modal-actions .noala-link-action:hover { background: none; text-decoration: underline; text-underline-offset: 4px; }
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-modal-actions .noala-link-action.noala-cab-cs-grave { color: var(--cab-alerte); }
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-modal-actions .noala-cta { min-height: 48px; padding: 12px 26px; border-radius: 15px; font-size: 14px; }
/* Dans une rangée dense, un geste d'icône n'est pas un pavé menthe. */
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-link-action:has(> .noala-ic:only-child) {
  display: inline-grid; place-items: center; flex: none; width: 36px; min-width: 36px; height: 36px; min-height: 36px; padding: 0;
  border: 0; border-radius: 10px; background: none; box-shadow: none; color: var(--cab-texte);
}
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-link-action:has(> .noala-ic:only-child):hover { background: var(--surface-2); color: var(--ink); }
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-link-action:has(> .noala-ic:only-child) > .noala-ic { width: 18px; height: 18px; }
/* Le pack : une collection par pli à filets, dans une seule section. */
/* Une seule action encre par page : celle du pied. Les autres `.noala-cta` d'un éditeur
   (un dépôt de fichier) sont des actions secondaires, en menthe. La table des étapes du
   builder de protocole, qui vivait ici, a pris la forme du socle (builders, lot 1). */
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-cab-cs-ed .noala-cta:not(.noala-modal-actions .noala-cta) {
  min-height: 44px; padding: 10px 16px; border: 0; border-radius: 15px; background: var(--surface-2); color: var(--accent-text); box-shadow: none; font-size: 14px; font-weight: 500;
}
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-cab-cs-ed .noala-cta:not(.noala-modal-actions .noala-cta):hover { background: var(--surface-2); color: var(--ink); opacity: 1; }
/* Un geste destructeur d'un builder (« Supprimer cette étape ») est un lien d'alerte, pas un pavé. */
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-cab-cs-ed .noala-link-action[style*="color:var(--alert)"]:not(:has(> .noala-ic:only-child)) {
  min-height: 44px; padding: 0; border: 0; border-radius: 6px; background: none; box-shadow: none; color: var(--cab-alerte) !important; font-size: 14px; font-weight: 500;
}
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-cab-cs-ed .noala-link-action[style*="color:var(--alert)"]:not(:has(> .noala-ic:only-child)):hover { text-decoration: underline; text-underline-offset: 4px; }
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-cab-cs-ed .noala-link-action[style*="color:var(--alert)"]:not(:has(> .noala-ic:only-child)) > .noala-ic { display: none; }
/* Les aides en ligne des builders (11 px, gris pâle) : lisibles, sans réécrire leur balisage. */
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] [style*="color:var(--text-3)"] { color: var(--cab-doux) !important; }
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] :is([style*="font-size:11px"], [style*="font-size:11.5px"], [style*="font-size:10px"]) { font-size: 12.5px !important; line-height: 1.5; }
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-cab-cs-ed-plis > .noala-bsec-body { padding-bottom: 8px; }
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-cab-cs-ed-plis .noala-cab-cs-pli:first-child { border-top: 0; }
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-cab-cs-pli > summary small { margin-left: 6px; font-size: 13.5px; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-cab-cs-cases > .noala-cab-cs-aide { margin: 6px 0; }
@media (max-width: 700px) {
  html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] > .modal-shell { padding: 22px 16px 56px; }
  html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] > .modal-shell > .noala-modal-close { top: 12px; right: 8px; }
  html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-modal-title.noala-cab-cs-ed-titre { font-size: 28px; letter-spacing: -.8px; }
  html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] :is(.noala-bsec-body, .noala-cab-cs-ed-carte) { padding-left: 16px; padding-right: 16px; }
  html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-bsec-hdr { padding-left: 16px; padding-right: 16px; }
  html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-modal-actions .noala-cta { width: 100%; }
}

/* ── Relecture du lot 7 (2026-10-07) ── */
/* L'état de chargement d'un éditeur ou d'un détail qui lit le serveur avant de s'ouvrir. */
html[data-noala-ui="synthese"] .noala-cab-cs-charge {
  position: fixed; left: 50%; bottom: 28px; z-index: 390; transform: translateX(-50%); margin: 0;
  padding: 10px 18px; border: 1px solid var(--cab-ligne); border-radius: 999px; background: var(--surface);
  box-shadow: 0 6px 24px var(--border); font-size: 14px; font-weight: 500; color: var(--ink);
}
/* Une cellule vide ne porte plus de tiret (décision du 2026-10-07) : repliée, elle
   ne laisse pas son libellé seul. */
@media (max-width: 760px) {
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-cs .noala-admin-rows td[data-lib]:empty { display: none; }
}
/* Un champ de nombre court (bornes d'une bande, d'un objectif) : assez large pour sa valeur. */
html[data-theme="light"][data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-input.noala-cab-cs-nb { flex: none; width: 108px; padding-left: 12px; padding-right: 8px; }
/* Sous 620 px, une page d'éditeur tient en une colonne : rien ne sort de sa carte. */
@media (max-width: 620px) {
  html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-form-row { display: grid; grid-template-columns: minmax(0, 1fr); }
  html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-form-row > * { min-width: 0; }
  html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] .noala-form-group > :is(select, input, textarea).noala-input { min-width: 0; max-width: 100%; }
}

/* ══ Socle des pages d'édition (programme builders, lot 1, 2026-10-15) ══════════════
   Spec : docs/superpowers/specs/2026-10-15-builders-lot1-protocole-design.md.
   Une page d'édition : retour, surtitre, titre léger, une ligne ; sections à filets ;
   rangées pliées ; pied collant à une seule action encre. Commun au praticien
   (`.noala-modal-overlay[data-kind="page"]`) et à la console (`.noala-cab-cs-ed`).
   Forme tirée de `propositions-cabinet/protocole.css` (préfixe `pb-`). Une classe ne
   figure ici que si une page la porte : les classes de la table et de l'étape ouverte
   s'ajoutent avec les tâches qui les posent. */
/* Le voile devient le papier de la page, et la carte la colonne : 1180 px, sans cadre. */
html[data-noala-ui="synthese"] .noala-modal-overlay[data-kind="page"]:has(> .noala-modal-card > .noala-cab-ed) {
  background: var(--bg); backdrop-filter: none; -webkit-backdrop-filter: none;
}
html[data-noala-ui="synthese"] .noala-modal-overlay[data-kind="page"] > .noala-modal-card:has(> .noala-cab-ed) {
  display: flex; flex-direction: column;
  width: 100%; max-width: 1180px; margin: 0 auto; padding: 24px 28px 0; border: 0; border-radius: 0;
  background: var(--bg); box-shadow: none; color: var(--ink);
}
/* La croix de coque reste dans l'angle de la colonne. */
html[data-noala-ui="synthese"] .noala-modal-overlay[data-kind="page"] > .noala-modal-card:has(> .noala-cab-ed) > .noala-modal-close {
  top: 18px; right: 24px;
}
html[data-noala-ui="synthese"] .noala-cab-ed { flex: 1 0 auto; display: flex; flex-direction: column; min-width: 0; }

/* ── En-tête de page ── */
html[data-noala-ui="synthese"] .noala-cab-ed-retour {
  align-self: flex-start; display: inline-flex; align-items: center; gap: 4px; margin-top: 6px; padding: 4px 0;
  border: 0; background: none; font-family: var(--font-sans); font-size: 13.5px; font-weight: 500; color: var(--accent-text); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-ed-retour .noala-ic { width: 17px; height: 17px; }
html[data-noala-ui="synthese"] .noala-cab-ed-retour:hover { text-decoration: underline; text-underline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-ed-tete { padding: 18px 44px 30px 0; max-width: 820px; }
html[data-noala-ui="synthese"] .noala-cab-ed-sur { margin: 0 0 14px; font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed .noala-cab-ed-titre {
  margin: 0; padding: 0; font-family: var(--font-sans); font-size: 42px; line-height: 1.15; font-weight: 400;
  letter-spacing: -1.5px; color: var(--ink); text-wrap: balance;
}
html[data-noala-ui="synthese"] .noala-cab-ed-intro { margin: 12px 0 0; font-size: 15px; line-height: 1.7; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-lecture {
  margin: 14px 0 0; display: flex; align-items: center; gap: 10px; padding: 12px 16px; border-radius: 16px;
  background: var(--surface-2); font-size: 14px; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-cab-ed-lecture .noala-ic { flex: none; color: var(--accent-text); }

/* ── Lien teal : un geste de second rang, jamais encre ── */
html[data-noala-ui="synthese"] .noala-cab-ed-lien {
  display: inline-flex; align-items: center; gap: 6px; border: 0; background: none; padding: 4px 0; font: inherit; font-size: 13.5px; font-weight: 500;
  color: var(--accent-text); cursor: pointer; border-radius: 4px; text-align: left; white-space: nowrap;
}
html[data-noala-ui="synthese"] .noala-cab-ed-lien:hover { text-decoration: underline; text-underline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-ed-lien:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }

/* ── Titre d'une section ── */
html[data-noala-ui="synthese"] .noala-cab-ed-sec { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px 20px; flex-wrap: wrap; margin-bottom: 10px; }
html[data-noala-ui="synthese"] .noala-cab-ed-sec h3 { margin: 0; font-size: 24px; font-weight: 500; letter-spacing: -.5px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-sous-titre { margin: 8px 0 0; font-size: 15px; font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-sous-titre-n { font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-sec-sous { margin: 2px 0 0; font-size: 13.5px; color: var(--cab-doux); }

/* ── Réglages du protocole, sous les étapes : des rangées pliées ── */
html[data-noala-ui="synthese"] .noala-cab-ed-reglages { margin-top: 44px; }
html[data-noala-ui="synthese"] .noala-cab-ed-plis { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-pli { border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-pli-tete {
  display: flex; align-items: center; gap: 18px; width: 100%; min-height: 70px; padding: 16px 10px; border: 0; border-radius: 12px;
  background: none; font-family: var(--font-sans); text-align: left; color: var(--ink); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-ed-pli-tete:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-ed-pli-tete:focus-visible { outline: 3px solid var(--accent-text); outline-offset: -3px; }
html[data-noala-ui="synthese"] .noala-cab-ed-pli-tete > .noala-ic { flex: none; width: 21px; height: 21px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-pli-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
html[data-noala-ui="synthese"] .noala-cab-ed-pli-lib { font-size: 15.5px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-pli-sec { font-size: 13.5px; color: var(--cab-doux); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-ed-plus { flex: none; width: 16px; text-align: center; font-size: 17px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-plus::before { content: "+"; }
html[data-noala-ui="synthese"] .noala-cab-ed-pli[data-ouvert] .noala-cab-ed-plus::before { content: "\2212"; }
html[data-noala-ui="synthese"] .noala-cab-ed-pli-corps { padding: 4px 10px 22px 49px; display: grid; gap: 16px; }

/* ── Pied toujours visible : l'état à gauche, une seule action encre à droite ── */
html[data-noala-ui="synthese"] .noala-cab-ed-pied {
  position: sticky; bottom: 0; z-index: 4; margin-top: auto; display: flex; align-items: center; justify-content: space-between;
  gap: 12px 20px; flex-wrap: wrap; padding: 14px 0 calc(14px + env(safe-area-inset-bottom, 0px));
  background: var(--bg); border-top: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-ed-reglages + .noala-cab-ed-pied { margin-top: 36px; }
html[data-noala-ui="synthese"] .noala-cab-ed-pied-gauche { display: flex; align-items: center; gap: 6px 22px; flex-wrap: wrap; }
html[data-noala-ui="synthese"] .noala-cab-ed-etat { font-size: 13.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-etat[data-modifie] { color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-ed-pied-droite { display: flex; align-items: center; gap: 14px; }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-ed-pied .noala-cta {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 12px 26px;
  border: 0; border-radius: 15px; background: var(--ink); color: var(--cta-fg); box-shadow: none;
  font-family: var(--font-sans); font-size: 14px; font-weight: 500; white-space: nowrap; cursor: pointer;
}
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-ed-pied .noala-cta:hover { background: var(--cta-bg-hover); }
html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-ed-pied .noala-cta:disabled { opacity: .55; cursor: default; }

/* ── Les toasts passent au-dessus du pied collant (builders, lot 5, L5-R8) ──
   La pile de `NoalaUI.toast` est fixée en bas à droite (`app.css`) : sur une page
   d'édition, elle tombait sur l'action encre du pied. « + Acte CCAM ajouté » cachait
   « Envoyer au patient » 2,5 s. Une page d'édition est `[data-kind="page"]` :
   `.noala-modal-overlay` côté praticien, `.modal-overlay` dans la console. Hauteurs du
   pied mesurées le 2026-10-22, toutes pages confondues : 77 px d'une ligne, 117 px
   quand il passe à la ligne (devis et protocole, de 641 à 900 px), 165 px au plus à
   640 px et moins (devis). Le décalage est cette hauteur plus l'écart d'origine.
   Seules les pages qui ont ce pied sont visées (relecture finale du lot 5) : une page
   sans pied collant, comme le pack ou le modèle de consentement de la console
   (`admin-pack-edit`, `admin-consent-template-edit`), garde la pile à sa place. Le
   sélecteur vaut pour les deux fronts (`.noala-modal-overlay` ou `.modal-overlay`). */
html[data-noala-ui="synthese"] body:has([data-kind="page"] .noala-cab-ed-pied) .noala-toast-stack {
  bottom: calc(100px + env(safe-area-inset-bottom, 0px));
}
@media (max-width: 900px) {
  html[data-noala-ui="synthese"] body:has([data-kind="page"] .noala-cab-ed-pied) .noala-toast-stack {
    bottom: calc(140px + env(safe-area-inset-bottom, 0px));
  }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] body:has([data-kind="page"] .noala-cab-ed-pied) .noala-toast-stack {
    bottom: calc(188px + env(safe-area-inset-bottom, 0px));
  }
}

/* ── Icône d'un lien teal, et lien d'alerte ── */
html[data-noala-ui="synthese"] .noala-cab-ed-lien .noala-ic { width: 17px; height: 17px; }
html[data-noala-ui="synthese"] .noala-cab-ed-lien-alerte { color: var(--cab-alerte); }
html[data-noala-ui="synthese"] .noala-cab-ed-lien-alerte:focus-visible { outline-color: var(--cab-alerte); }

/* ── La table des étapes : cinq colonnes, groupée par phase, des filets, aucun badge ── */
html[data-noala-ui="synthese"] .noala-cab-ed-vide { margin: 0; font-size: 13.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-entetes,
html[data-noala-ui="synthese"] .noala-cab-ed-rang {
  display: grid; grid-template-columns: 70px minmax(0, 1fr) minmax(0, 1.55fr) 170px 40px; column-gap: 20px; align-items: start;
}
html[data-noala-ui="synthese"] .noala-cab-ed-entetes { padding: 0 10px 8px; font-size: 12px; font-weight: 500; color: var(--cab-doux); border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-phase { display: flex; align-items: baseline; gap: 10px; margin: 0; padding: 22px 10px 8px; font-size: 13px; font-weight: 500; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-phase small { font-weight: 400; color: var(--cab-doux); font-size: 12.5px; }
html[data-noala-ui="synthese"] .noala-cab-ed-liste { margin: 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-ed-liste > li { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-liste > li:first-child { border-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-rang { position: relative; padding: 14px 10px; border-radius: 16px; cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-ed-rang:hover { background: var(--surface); box-shadow: 0 0 0 1px var(--cab-ligne); }
/* La rangée ouverte et sa zone d'édition ne forment qu'une seule surface blanche. */
html[data-noala-ui="synthese"] .noala-cab-ed-item[data-ouvert] > .noala-cab-ed-rang { background: var(--surface); box-shadow: 0 0 0 1px var(--cab-ligne); border-radius: 16px 16px 0 0; }

/* Le jour dans une arche, comme les dates du tableau de bord. */
html[data-noala-ui="synthese"] .noala-cab-ed-jour {
  width: 70px; display: flex; flex-direction: column; align-items: center; padding: 8px 0 7px; background: var(--surface-2);
  border-radius: 31px 31px 12px 12px; line-height: 1.15; text-align: center;
}
html[data-noala-ui="synthese"] .noala-cab-ed-jour b { font-size: 19px; font-weight: 400; letter-spacing: -.4px; font-variant-numeric: tabular-nums; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-jour small { font-size: 10.5px; color: var(--cab-doux); padding: 0 4px; }

html[data-noala-ui="synthese"] .noala-cab-ed-nom { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; min-width: 0; padding-top: 6px; }
html[data-noala-ui="synthese"] .noala-cab-ed-nom > span { font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-nom-btn {
  padding: 0; border: 0; background: none; font-family: var(--font-sans); font-size: 15px; font-weight: 500; color: var(--ink);
  text-align: left; overflow-wrap: anywhere; cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-ed-nom-btn:disabled { cursor: default; }
html[data-noala-ui="synthese"] .noala-cab-ed-nom-btn:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; border-radius: 4px; }

html[data-noala-ui="synthese"] .noala-cab-ed-recoit { display: flex; flex-direction: column; gap: 6px; min-width: 0; padding-top: 6px; }
html[data-noala-ui="synthese"] .noala-cab-ed-fam { display: grid; grid-template-columns: 18px minmax(0, 1fr); column-gap: 10px; align-items: start; font-size: 13.5px; line-height: 1.5; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-ed-fam .noala-ic { width: 18px; height: 18px; margin-top: 1px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-obj { padding-top: 6px; font-size: 13.5px; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-ed-obj small { display: block; font-size: 12px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-gris { color: var(--cab-doux); }
/* Protocole du catalogue, en lecture seule : la rangée ne se présente plus comme un bouton. */
html[data-noala-ui="synthese"] .noala-cab-ed[data-lecture] .noala-cab-ed-rang { cursor: default; }
html[data-noala-ui="synthese"] .noala-cab-ed[data-lecture] .noala-cab-ed-rang:hover { background: none; box-shadow: none; }

/* Le menu « ⋯ » de la rangée. */
html[data-noala-ui="synthese"] .noala-cab-ed-pts-zone { position: relative; }
html[data-noala-ui="synthese"] .noala-cab-ed-pts {
  position: relative; width: 36px; height: 36px; margin-top: 2px; display: grid; place-items: center; border: 0; border-radius: 50%;
  background: none; color: var(--ink); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-ed-pts:hover { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-ed-pts:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 1px; }
html[data-noala-ui="synthese"] .noala-cab-ed-menu {
  position: absolute; right: 0; top: 40px; z-index: 5; min-width: 220px; padding: 6px; background: var(--surface); border: 1px solid var(--cab-ligne);
  border-radius: 16px; box-shadow: 0 16px 40px var(--cab-encre-hex22);
}
html[data-noala-ui="synthese"] .noala-cab-ed-menu [role="menuitem"] {
  display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px 12px; border: 0; border-radius: 10px; background: none;
  font-family: var(--font-sans); font-size: 14px; color: var(--ink); text-align: left; cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-ed-menu [role="menuitem"]:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-ed-menu [role="menuitem"] .noala-ic { width: 18px; height: 18px; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-menu .noala-cab-ed-menu-alerte,
html[data-noala-ui="synthese"] .noala-cab-ed-menu .noala-cab-ed-menu-alerte .noala-ic { color: var(--cab-alerte); }
html[data-noala-ui="synthese"] .noala-cab-ed-menu hr { border: 0; border-top: 1px solid var(--cab-ligne); margin: 4px 6px; }

/* ── L'étape ouverte, sous sa rangée ── */
html[data-noala-ui="synthese"] .noala-cab-ed-edit { display: grid; gap: 22px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-item > .noala-cab-ed-edit {
  padding: 20px 20px 22px 100px; background: var(--surface); box-shadow: 0 0 0 1px var(--cab-ligne); border-radius: 0 0 16px 16px; margin-bottom: 10px;
}
html[data-noala-ui="synthese"] .noala-cab-ed-champs { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 14px 20px; align-items: start; max-width: 640px; }
html[data-noala-ui="synthese"] .noala-cab-ed-champ { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-lib { font-size: 12.5px; font-weight: 500; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-ed-input {
  height: 44px; padding: 0 14px; border: 1px solid var(--cab-ligne); border-radius: 12px; background: var(--surface);
  font-family: var(--font-sans); font-size: 14.5px; color: var(--ink); min-width: 0;
}
html[data-noala-ui="synthese"] .noala-cab-ed-input:focus { outline: 3px solid var(--accent-text); outline-offset: 1px; border-color: transparent; }
html[data-noala-ui="synthese"] .noala-cab-ed-input:disabled { background: var(--bg); color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-aide { font-size: 12.5px; color: var(--cab-doux); line-height: 1.5; }
html[data-noala-ui="synthese"] .noala-cab-ed-aide-alerte { color: var(--cab-alerte); }
html[data-noala-ui="synthese"] .noala-cab-ed-aide-compteur { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; flex-wrap: wrap; margin: 6px 0 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-aide-compteur > span:last-child { font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-ed-nom-montre { min-height: 44px; display: flex; flex-direction: column; justify-content: center; font-size: 14.5px; color: var(--ink); }

html[data-noala-ui="synthese"] .noala-cab-ed-bloc { display: grid; gap: 4px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-bloc-tete { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 6px; border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-bloc-tete h3 { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 15px; font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-bloc-tete h3 .noala-ic { color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-bloc-tete h3 small { font-size: 13px; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-elts { margin: 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-ed-elts li {
  display: flex; align-items: center; gap: 12px; min-height: 46px; padding: 6px 4px; border-bottom: 1px solid var(--cab-ligne); font-size: 14px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-ed-elts li > span { flex: 1; min-width: 0; display: flex; flex-direction: column; }
html[data-noala-ui="synthese"] .noala-cab-ed-elts li small { font-size: 12.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-elts .noala-cab-ed-elts-vide { color: var(--cab-doux); font-size: 13.5px; }
html[data-noala-ui="synthese"] .noala-cab-ed-retirer { flex: none; width: 34px; height: 34px; display: grid; place-items: center; border: 0; border-radius: 50%; background: none; color: var(--cab-doux); cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-ed-retirer:hover { background: var(--surface-2); color: var(--cab-alerte); }
html[data-noala-ui="synthese"] .noala-cab-ed-retirer:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 1px; }
html[data-noala-ui="synthese"] .noala-cab-ed-retirer .noala-ic { width: 17px; height: 17px; }
html[data-noala-ui="synthese"] .noala-cab-ed-message {
  width: 100%; min-height: 96px; padding: 12px 14px; border: 1px solid var(--cab-ligne); border-radius: 12px; background: var(--surface);
  font-family: var(--font-sans); font-size: 14px; line-height: 1.6; color: var(--ink); resize: vertical;
}
html[data-noala-ui="synthese"] .noala-cab-ed-message:focus { outline: 3px solid var(--accent-text); outline-offset: 1px; border-color: transparent; }
html[data-noala-ui="synthese"] .noala-cab-ed-obj-ligne { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 4px 0; font-size: 14px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-obj-ligne .noala-cab-ed-input { width: 84px; text-align: center; }
html[data-noala-ui="synthese"] .noala-cab-ed-obj-ligne .noala-cab-ed-input[type="text"] { width: 220px; text-align: left; }
html[data-noala-ui="synthese"] .noala-cab-ed-plus-corps { display: grid; gap: 14px; max-width: 460px; padding-top: 8px; }
html[data-noala-ui="synthese"] .noala-cab-ed-coche { display: flex; align-items: center; gap: 10px; font-size: 14px; color: var(--ink); cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-ed-coche input { width: 19px; height: 19px; margin: 0; accent-color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-edit-pied { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding-top: 4px; }

/* ── Le sélecteur unique et la confirmation (tâche 3) ──
   Deux fenêtres de 620 px posées hors du slot, au-dessus du builder (z-index 1000) :
   le sélecteur à 1100, la confirmation au-dessus de tout à 1200. */
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-ed-choix-fen,
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-ed-image-fen,
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-ed-dup-fen,
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-ed-qs-patient-fen,
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-ed-qs-coller-fen,
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-tel-fen,
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-ed-modele-fen { z-index: 1100; }
html[data-noala-ui="synthese"] .noala-modal-overlay.noala-cab-ed-conf { z-index: 1200; }
html[data-noala-ui="synthese"] .noala-cab-ed-choix-fen .noala-cab-fen-pied,
html[data-noala-ui="synthese"] .noala-cab-ed-image-fen .noala-cab-fen-pied,
html[data-noala-ui="synthese"] .noala-cab-ed-dup-fen .noala-cab-fen-pied,
html[data-noala-ui="synthese"] .noala-cab-ed-qs-patient-fen .noala-cab-fen-pied,
html[data-noala-ui="synthese"] .noala-cab-ed-qs-coller-fen .noala-cab-fen-pied,
html[data-noala-ui="synthese"] .noala-cab-ed-modele-fen .noala-cab-fen-pied,
html[data-noala-ui="synthese"] .noala-cab-ed-conf .noala-cab-fen-pied { display: flex; flex-direction: column; align-items: center; gap: 10px; }
html[data-noala-ui="synthese"] .noala-cab-ed-choix-fen .noala-cab-fen-pied,
html[data-noala-ui="synthese"] .noala-cab-ed-image-fen .noala-cab-fen-pied,
html[data-noala-ui="synthese"] .noala-cab-ed-dup-fen .noala-cab-fen-pied,
html[data-noala-ui="synthese"] .noala-cab-ed-qs-patient-fen .noala-cab-fen-pied,
html[data-noala-ui="synthese"] .noala-cab-ed-qs-coller-fen .noala-cab-fen-pied,
html[data-noala-ui="synthese"] .noala-cab-ed-modele-fen .noala-cab-fen-pied { flex-direction: row; justify-content: space-between; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-choix-fen .noala-cab-fen-pied .noala-cab-fen-cta,
html[data-noala-ui="synthese"] .noala-cab-ed-image-fen .noala-cab-fen-pied .noala-cab-fen-cta,
html[data-noala-ui="synthese"] .noala-cab-ed-dup-fen .noala-cab-fen-pied .noala-cab-fen-cta,
html[data-noala-ui="synthese"] .noala-cab-ed-qs-patient-fen .noala-cab-fen-pied .noala-cab-fen-cta,
html[data-noala-ui="synthese"] .noala-cab-ed-qs-coller-fen .noala-cab-fen-pied .noala-cab-fen-cta,
html[data-noala-ui="synthese"] .noala-cab-ed-modele-fen .noala-cab-fen-pied .noala-cab-fen-cta { width: auto; min-width: 220px; }
html[data-noala-ui="synthese"] .noala-cab-ed-choix-fen .noala-cta.noala-cab-fen-cta[aria-disabled="true"],
html[data-noala-ui="synthese"] .noala-cab-ed-image-fen .noala-cta.noala-cab-fen-cta[aria-disabled="true"],
html[data-noala-ui="synthese"] .noala-cab-ed-dup-fen .noala-cta.noala-cab-fen-cta[aria-disabled="true"],
html[data-noala-ui="synthese"] .noala-cab-ed-qs-patient-fen .noala-cta.noala-cab-fen-cta[aria-disabled="true"],
html[data-noala-ui="synthese"] .noala-cab-ed-qs-coller-fen .noala-cta.noala-cab-fen-cta[aria-disabled="true"],
html[data-noala-ui="synthese"] .noala-cab-ed-modele-fen .noala-cta.noala-cab-fen-cta[aria-disabled="true"] { background: var(--cab-cta-inactif); cursor: default; }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cta.noala-cab-fen-cta.noala-cab-ed-cta-alerte { background: var(--cab-alerte); }
/* M1 : la case « Aucun patient n'est reconnaissable » du dépôt d'image, sur sa propre ligne,
   au-dessus de « Annuler » et « Déposer une image ». */
html[data-noala-ui="synthese"] .noala-cab-ed-image-fen .noala-cab-fen-pied { flex-wrap: wrap; row-gap: 16px; }
html[data-noala-ui="synthese"] .noala-cab-ed-image-fen .noala-cab-fen-pied > .noala-cab-ed-coche { flex: 1 0 100%; order: -1; }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-cta.noala-cab-fen-cta.noala-cab-ed-cta-alerte:hover { background: var(--cab-alerte-survol); }
html[data-noala-ui="synthese"] .noala-cab-ed-onglets {
  display: flex; gap: 22px; flex-wrap: wrap; margin: 16px 0 0; padding-bottom: 10px; border-bottom: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-ed-onglets button {
  border: 0; border-bottom: 2px solid transparent; background: none; padding: 6px 0; font-family: var(--font-sans);
  font-size: 14px; color: var(--cab-doux); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-ed-onglets button:hover { color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-onglets button[aria-pressed="true"] { color: var(--ink); font-weight: 500; border-bottom-color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-onglets button small { margin-left: 4px; font-size: 12px; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-onglet-n { margin-left: 6px; font-size: 12.5px; font-weight: 600; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-cherche {
  display: flex; align-items: center; gap: 10px; height: 46px; margin: 14px 0 4px; padding: 0 14px;
  border: 1px solid var(--cab-ligne); border-radius: 14px; color: var(--cab-doux);
}
html[data-noala-ui="synthese"] .noala-cab-ed-cherche input {
  flex: 1; min-width: 0; border: 0; outline: 0; background: none; font-family: var(--font-sans); font-size: 14.5px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-ed-cherche:focus-within { outline: 3px solid var(--accent-text); outline-offset: 1px; border-color: transparent; }
html[data-noala-ui="synthese"] .noala-cab-ed-deja { margin: 0; padding: 6px 0 0; font-size: 13px; line-height: 1.6; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-panier { margin: 0; padding: 4px 0 0; font-size: 13px; line-height: 1.6; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-deja b { font-weight: 500; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-ed-panier b { font-weight: 500; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-groupe { margin: 0; padding: 18px 4px 4px; font-size: 12px; font-weight: 500; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-choix { margin: 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-ed-choix li { border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-choix label {
  display: flex; align-items: center; gap: 16px; min-height: 62px; padding: 12px 4px; border-radius: 10px; cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-ed-choix label:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-ed-choix input { flex: none; width: 19px; height: 19px; margin: 0; accent-color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-choix-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; }
html[data-noala-ui="synthese"] .noala-cab-ed-choix-txt b { font-size: 15px; font-weight: 400; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-choix-txt small { font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-choix li[data-deja] label { opacity: .62; cursor: default; }
html[data-noala-ui="synthese"] .noala-cab-ed-choix li[data-deja] label:hover { background: none; }
html[data-noala-ui="synthese"] .noala-cab-ed-choix-fen .noala-cab-fen-corps > .noala-cab-ed-aide { margin: 0; padding: 12px 4px; font-size: 13.5px; }

/* ── La fenêtre de choix commune (lot 3 des builders, 2026-10-19) ──
   Spec : docs/superpowers/specs/2026-10-19-builders-lot3-selecteurs-design.md, idée A.
   Valeurs tirées de `propositions-cabinet/selecteurs.css` (préfixe `se-`). Une rangée :
   case, nom, ligne secondaire en mots, lien « Aperçu » à droite ; l'aperçu s'ouvre sous
   la rangée, sur un fond menthe, sans carte. */
html[data-noala-ui="synthese"] .noala-fen-rang { display: flex; align-items: center; gap: 12px; }
html[data-noala-ui="synthese"] .noala-fen-rang > label { flex: 1; min-width: 0; }
html[data-noala-ui="synthese"] .noala-fen-apercu-lien {
  flex: none; border: 0; background: none; padding: 4px; font-family: var(--font-sans);
  font-size: 13px; font-weight: 500; color: var(--accent-text); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-fen-apercu-lien:hover { text-decoration: underline; text-underline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-apercu.noala-fen-apercu {
  max-height: none; overflow: visible; margin: 0 4px 12px 39px; padding: 14px 16px;
  border-radius: 14px; background: var(--cab-menthe-2); font-size: 13.5px; line-height: 1.7; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-fen-apercu .noala-apercu-bloc { background: var(--surface); border-color: var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-fen-apercu .noala-apercu-bloc--interne { background: var(--cab-bloc-interne); }
html[data-noala-ui="synthese"] .noala-fen-apercu .noala-apercu-lab:first-child { margin-top: 0; }
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-apercu.noala-fen-apercu { margin-left: 4px; }
}
/* Tâche 3 : le filtre de type de l'onglet Contenus, l'aperçu d'un contenu, le dépôt dans la
   fenêtre. Valeurs de `propositions-cabinet/selecteurs.css` (`se-filtres`, `se-depot`,
   `se-fichier`). Liens soulignés, aucun bouton bordé ; la fenêtre garde ses 620 px. */
html[data-noala-ui="synthese"] .noala-fen-types { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 12px 0 0; }
html[data-noala-ui="synthese"] .noala-fen-types button {
  border: 0; border-bottom: 1.5px solid transparent; background: none; padding: 2px 0;
  font-family: var(--font-sans); font-size: 13.5px; color: var(--cab-doux); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-fen-types button:hover { color: var(--ink); }
html[data-noala-ui="synthese"] .noala-fen-types button[aria-pressed="true"] { color: var(--ink); font-weight: 500; border-bottom-color: var(--ink); }
html[data-noala-ui="synthese"] .noala-fen-types small { margin-left: 3px; font-size: 12px; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-fen-apercu .noala-fen-apercu-texte { max-height: 220px; overflow: auto; font-size: 13.5px; }
html[data-noala-ui="synthese"] .noala-fen-apercu-video { display: block; width: 100%; max-height: 40vh; background: var(--cab-noir); border-radius: 10px; }
html[data-noala-ui="synthese"] .noala-fen-apercu-cadre { position: relative; aspect-ratio: 16 / 9; }
html[data-noala-ui="synthese"] .noala-fen-apercu-cadre iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: 10px; }
html[data-noala-ui="synthese"] .noala-fen-apercu-image { display: block; max-width: 100%; max-height: 260px; border-radius: 10px; }
html[data-noala-ui="synthese"] .noala-fen-apercu-adresse { margin: 0; overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-fen-apercu-adresse a { color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-fen-apercu > * + * { margin-top: 10px; }
html[data-noala-ui="synthese"] .noala-fen-deposer { padding: 16px 4px 4px; }
html[data-noala-ui="synthese"] .noala-fen-deposer .noala-cab-ed-lien { display: inline-flex; align-items: center; gap: 8px; }
html[data-noala-ui="synthese"] .noala-fen-depot { display: grid; gap: 16px; padding: 6px 0 10px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-fen-depot-choix { display: flex; flex-wrap: wrap; gap: 6px 22px; padding-bottom: 6px; border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-fen-depot-choix button {
  border: 0; border-bottom: 2px solid transparent; background: none; padding: 4px 0;
  font-family: var(--font-sans); font-size: 14px; color: var(--cab-doux); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-fen-depot-choix button:hover { color: var(--ink); }
html[data-noala-ui="synthese"] .noala-fen-depot-choix button[aria-pressed="true"] { color: var(--ink); font-weight: 500; border-bottom-color: var(--ink); }
html[data-noala-ui="synthese"] .noala-fen-fichier {
  display: grid; place-items: center; gap: 6px; min-height: 120px; padding: 16px; border: 1.5px dashed var(--cab-depot-bord);
  border-radius: 16px; color: var(--cab-doux); font-size: 13.5px; text-align: center; cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-fen-fichier:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-fen-fichier:focus-within { outline: 3px solid var(--accent-text); outline-offset: 1px; }
html[data-noala-ui="synthese"] .noala-fen-fichier .noala-ic { width: 22px; height: 22px; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-fen-fichier b { max-width: 100%; color: var(--accent-text); font-weight: 500; overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-fen-depot .noala-cab-ed-lib b { color: var(--accent-text); font-weight: 500; }
html[data-noala-ui="synthese"] .noala-fen-depot .noala-cab-fen-erreur { margin: 0; }

/* ── La grille d'images (lot 3, tâche 5) ──
   Valeurs de `propositions-cabinet/selecteurs.css` (`se-grille`, `se-tuile`). Une vignette
   n'est pas une carte : l'image porte un filet, le nom dessous, le « ⋯ » posé dans l'angle.
   Le menu s'ancre à la vignette entière et s'enroule : il n'est jamais coupé par le bord
   de la fenêtre, qui garde ses 620 px dans les deux vues. */
html[data-noala-ui="synthese"] .noala-fen-images {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px; margin: 0; padding: 6px 0 10px; list-style: none;
}
html[data-noala-ui="synthese"] .noala-fen-image { position: relative; min-width: 0; }
html[data-noala-ui="synthese"] .noala-fen-image-choisir {
  display: flex; flex-direction: column; gap: 6px; width: 100%; min-width: 0; margin: 0; padding: 0; border: 0; border-radius: 14px;
  background: none; box-shadow: none; font-family: var(--font-sans); text-align: left; cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-fen-image-choisir img {
  display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 14px; background: var(--cab-image-fond); box-shadow: 0 0 0 1px var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-fen-image-choisir:hover img,
html[data-noala-ui="synthese"] .noala-fen-image-choisir:focus-visible img { box-shadow: 0 0 0 3px var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-fen .noala-fen-image-choisir:focus-visible { outline: 0; }
html[data-noala-ui="synthese"] .noala-fen-image-choisir[aria-disabled="true"] { cursor: default; }
html[data-noala-ui="synthese"] .noala-fen-image-choisir span { font-size: 13px; color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-fen-image > .noala-cab-ed-pts-zone.noala-fen-image-pts { position: static; }
html[data-noala-ui="synthese"] .noala-fen-image-pts > .noala-cab-ed-pts {
  position: absolute; top: 6px; right: 6px; width: 32px; height: 32px; margin: 0; background: var(--cab-blanc-hexe6);
}
html[data-noala-ui="synthese"] .noala-fen-image-pts > .noala-cab-ed-pts:hover { background: var(--surface); }
html[data-noala-ui="synthese"] .noala-fen-image-pts > .noala-cab-ed-menu { left: 0; right: 0; top: 42px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-fen-image-pts > .noala-cab-ed-menu [role="menuitem"] { align-items: flex-start; font-size: 13.5px; line-height: 1.4; }
html[data-noala-ui="synthese"] .noala-fen-image-pts > .noala-cab-ed-menu [role="menuitem"] .noala-ic { flex: none; }
/* La seconde vue : l'image à gauche, ses trois champs à droite ; empilés sur un téléphone. */
html[data-noala-ui="synthese"] .noala-fen-image-edition { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 20px; align-items: start; padding: 6px 0 10px; }
html[data-noala-ui="synthese"] .noala-fen-image-edition > img {
  display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 14px; background: var(--cab-image-fond); box-shadow: 0 0 0 1px var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-fen-image-edition > .noala-fen-depot { padding: 0; }
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-fen-images { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html[data-noala-ui="synthese"] .noala-fen-image-edition { grid-template-columns: minmax(0, 1fr); }
  html[data-noala-ui="synthese"] .noala-fen-image-edition > img { max-width: 160px; }
}

/* ── « Dupliquer une étape » (tâche 4) ──
   La fenêtre reprend celle du sélecteur (z-index, pied en rangée). Le champ du jour est un
   nombre, une unité et un sens sur une ligne ; les liens du pied d'une étape se rangent côte à côte. */
html[data-noala-ui="synthese"] .noala-cab-ed-jour-champ { display: flex; gap: 8px; flex-wrap: wrap; }
html[data-noala-ui="synthese"] .noala-cab-ed-jour-champ .noala-cab-ed-input { padding: 0 10px; }
html[data-noala-ui="synthese"] .noala-cab-ed-jour-champ input.noala-cab-ed-input { width: 80px; text-align: center; font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-ed-dup-fen .noala-cab-fen-corps,
html[data-noala-ui="synthese"] .noala-cab-ed-modele-fen .noala-cab-fen-corps { padding-bottom: 16px; }
html[data-noala-ui="synthese"] .noala-cab-ed-edit-gestes { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }

/* ── La console (tâche 5) ──
   La page de la console garde la colonne de 960 px de ses autres éditeurs (gardée par
   `cabinet_lot7_console.spec.js`) ; la coque devient une colonne flexible pour que le
   pied colle en bas. Le sélecteur et « Dupliquer » passent au-dessus du slot (200) et
   SOUS la fenêtre de confirmation de la console (400), qui doit les couvrir. Le builder de
   questionnaire (lot 2) y range ses deux fenêtres, « Ce que lit le patient » et « Coller une
   liste », et le lot 3 sa grille d'images. */
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] > .modal-shell:has(> .noala-cab-ed) { display: flex; flex-direction: column; padding-bottom: 0; }
html[data-noala-ui="synthese"] .modal-overlay[data-kind="page"] > .modal-shell > .noala-cab-ed { width: 100%; max-width: 960px; margin: 0 auto; }
html[data-noala-ui="synthese"] body[data-auth-space="admin"] .noala-modal-overlay:is(.noala-cab-ed-choix-fen, .noala-cab-ed-image-fen, .noala-cab-ed-dup-fen, .noala-cab-ed-qs-patient-fen, .noala-cab-ed-qs-coller-fen, .noala-cab-tel-fen) { z-index: 300; }

/* ── Le builder de questionnaire (lot 2 des builders, 2026-10-18) ──
   Spec : docs/superpowers/specs/2026-10-18-builders-lot2-questionnaire-design.md. Valeurs
   tirées de `propositions-cabinet/questionnaire.css` (préfixe `qb-`), sur le socle ci-dessus.
   Listes à filets, aucune carte dans une carte, une seule action encre. */
/* Une étoile dit le champ obligatoire. */
html[data-noala-ui="synthese"] .noala-cab-ed-lib b { font-weight: 500; color: var(--cab-alerte); }
/* L'essentiel, à la création : deux colonnes sous un filet. */
html[data-noala-ui="synthese"] .noala-cab-ed-qs-essentiel { margin-bottom: 40px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-champs {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 20px; align-items: start; max-width: 820px;
  padding: 16px 10px 0; border-top: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-ed-pli-corps .noala-cab-ed-qs-champs { padding: 0; border-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-large { grid-column: 1 / -1; }
html[data-noala-ui="synthese"] .noala-cab-ed-pli-corps > .noala-cab-ed-champ { max-width: 680px; }

/* Le score : une ligne en mots, ce qu'il compte, les bandes à filets. */
html[data-noala-ui="synthese"] .noala-cab-ed-qs-score { margin-top: 44px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-score-corps {
  display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; padding: 18px 10px 4px; border-top: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-ed-qs-methode { display: flex; align-items: center; gap: 10px 18px; flex-wrap: wrap; font-size: 14.5px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-methode .noala-cab-ed-input { padding: 0 10px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-total { margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-total b { font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-total small { display: block; margin-top: 2px; font-size: 12.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bandes { margin: 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bandes li {
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap; min-height: 58px; padding: 6px 4px;
  border-bottom: 1px solid var(--cab-ligne); font-size: 14px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bandes li .noala-cab-ed-input { width: 64px; padding: 0 6px; text-align: center; font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bandes li .noala-cab-ed-qs-bande-lib { flex: 1; min-width: 180px; width: auto; padding: 0 14px; text-align: left; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bandes .noala-cab-ed-qs-vide { color: var(--cab-doux); font-size: 13.5px; }
/* Un sous-score : ses champs, ses questions cochées, sous un filet. */
html[data-noala-ui="synthese"] .noala-cab-ed-qs-sous { display: grid; gap: 12px; padding: 16px 0 18px; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-sous .noala-cab-ed-qs-champs { grid-template-columns: repeat(4, minmax(0, 1fr)); }

/* Les questions, par blocs de réponses (tâche 3) : une tête légère par bloc, les questions
   à la suite dans des champs sans bordure, une rangée vide pour écrire la suivante. Le
   réglage déplié est une surface blanche sous la tête, jamais une carte dans une carte. */
html[data-noala-ui="synthese"] .noala-cab-ed-qs-blocs { display: grid; grid-template-columns: minmax(0, 1fr); gap: 26px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bloc { min-width: 0; }
/* Les parties d'un bloc (tête, réglage, série) ne sont qu'un ordre de lecture. */
html[data-noala-ui="synthese"] .noala-cab-ed-qs-partie { display: contents; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bloc-tete {
  display: flex; align-items: baseline; justify-content: space-between; gap: 8px 18px; flex-wrap: wrap;
  padding: 0 10px 8px; border-bottom: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bloc-tete > div { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bloc-lib { margin: 0; font-size: 15px; font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bloc-sous { margin: 2px 0 0; font-size: 13px; color: var(--cab-doux); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-reglage {
  display: grid; gap: 14px; padding: 16px 10px 14px 54px; border-bottom: 1px solid var(--cab-ligne); background: var(--surface); border-radius: 0 0 16px 16px;
}
html[data-noala-ui="synthese"] .noala-cab-ed-qs-types { display: flex; gap: 6px 22px; flex-wrap: wrap; max-width: 680px; padding-top: 4px; border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-types button {
  padding: 4px 0; border: 0; border-bottom: 2px solid transparent; background: none; font-family: var(--font-sans);
  font-size: 14px; color: var(--cab-doux); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-ed-qs-types button:hover { color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-types button[aria-pressed="true"] { color: var(--ink); font-weight: 500; border-bottom-color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-types button:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-detail { display: grid; gap: 10px; max-width: 680px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-echelle { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 14px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-echelle .noala-cab-ed-input { width: 72px; padding: 0 6px; text-align: center; font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bornes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-options { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-options li { display: flex; align-items: center; gap: 10px; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-options li > span:first-child { flex: none; width: 22px; text-align: right; font-size: 13px; color: var(--cab-doux); font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-options li > .noala-cab-ed-input { flex: 1; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-vignette { flex: none; display: inline-flex; align-items: center; gap: 2px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-vignette img,
html[data-noala-ui="synthese"] .noala-cab-ed-qs-facult img { width: 34px; height: 34px; object-fit: cover; border-radius: 8px; border: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-img { flex: none; width: 34px; height: 34px; display: grid; place-items: center; border: 0; border-radius: 50%; background: none; color: var(--accent-text); cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-img:hover { background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-img:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 1px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-img .noala-ic { width: 17px; height: 17px; }

/* Une question : son numéro, son texte dans un champ sans bordure, « Hors score », le « ⋯ ». */
html[data-noala-ui="synthese"] .noala-cab-ed-qs-serie { margin: 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-q {
  display: grid; grid-template-columns: 34px minmax(0, 1fr) 116px 36px; column-gap: 10px; align-items: start;
  padding: 3px 10px; border-bottom: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-ed-qs-q > b {
  padding-top: 12px; font-size: 15px; font-weight: 400; color: var(--cab-doux); text-align: right; font-variant-numeric: tabular-nums;
}
html[data-noala-ui="synthese"] .noala-cab-ed-qs-nouvelle > b { color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-texte { min-width: 0; display: flex; flex-direction: column; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-ligne {
  width: 100%; min-width: 0; height: 44px; padding: 0 10px; border: 1px solid transparent; border-radius: 10px; background: none;
  font-family: var(--font-sans); font-size: 15px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-ed-qs-ligne:hover { border-color: var(--cab-ligne); background: var(--surface); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-ligne:focus { outline: 3px solid var(--accent-text); outline-offset: 1px; background: var(--surface); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-ligne::placeholder { color: var(--cab-indice); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-facult { display: flex; align-items: center; gap: 10px; margin: 0 0 6px; padding: 0 11px; font-size: 12.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-rep {
  display: flex; align-items: baseline; gap: 4px 14px; flex-wrap: wrap; margin: 0 0 8px; padding: 0 11px; font-size: 13px; color: var(--cab-doux); overflow-wrap: anywhere;
}
html[data-noala-ui="synthese"] .noala-cab-ed-qs-lu { padding: 10px 11px 2px; font-size: 15px; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-hors { padding-top: 13px; font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-q .noala-cab-ed-pts { margin-top: 4px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-q .noala-cab-ed-menu { min-width: 290px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-reglage .noala-cab-ed-aide { margin: 0; }
/* Un bloc sans tête (une question seule) garde le filet qui le sépare du précédent. */
html[data-noala-ui="synthese"] .noala-cab-ed-qs-bloc:not(:has(.noala-cab-ed-qs-bloc-tete)) .noala-cab-ed-qs-serie { border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-ajout { display: flex; align-items: center; gap: 8px 18px; flex-wrap: wrap; font-size: 13.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-ajout .noala-cab-ed-input { height: 38px; padding: 0 10px; border-radius: 10px; font-size: 13.5px; }

/* ── « Ce que lit le patient » et « Coller une liste » (tâche 4) ──
   Deux fenêtres de 620 px posées hors du slot, comme le sélecteur unique (grammaire, z-index et
   pied en rangée plus haut). Le rendu patient reprend `.qb-tel` de l'aperçu : un téléphone
   simplifié, une question à la fois, sans charger `patient.css`. */
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel { min-width: 0; padding: 22px 20px 24px; border: 1px solid var(--cab-ligne); border-radius: 24px; background: var(--bg); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel-sur { display: flex; justify-content: space-between; gap: 12px; font-size: 12px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel-titre { margin: 14px 0 0; font-size: 13px; font-weight: 500; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel-q { margin: 6px 0 0; min-height: 54px; font-size: 20px; line-height: 1.35; font-weight: 500; letter-spacing: -.3px; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel-rep { display: grid; gap: 8px; margin-top: 18px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel-rep > span { display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 10px 16px; border: 1px solid var(--cab-ligne); border-radius: 14px; background: var(--surface); font-size: 14.5px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel-rep > span b { width: 22px; font-weight: 500; color: var(--accent-text); font-variant-numeric: tabular-nums; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel-rep > span small { font-size: inherit; overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel-rep > span[data-zone] { align-items: flex-start; min-height: 96px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel-avance { display: flex; align-items: center; margin-top: 18px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel-avance i { flex: 1; height: 4px; overflow: hidden; border-radius: 4px; background: var(--cab-tel-fond); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel-avance i::before { content: ""; display: block; width: var(--avance, 0%); height: 100%; background: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-patient-fen .noala-cab-ed-lien[aria-disabled="true"] { opacity: .45; cursor: default; text-decoration: none; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-coller-fen .noala-cab-fen-corps { display: grid; gap: 16px; padding-bottom: 16px; }
html[data-noala-ui="synthese"] .noala-cab-ed-qs-coller-fen .noala-cab-ed-message { min-height: 160px; }
@media (max-width: 620px) {
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-tel { padding: 18px 14px 20px; border-radius: 20px; }
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-patient-fen .noala-cab-fen-pied,
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-coller-fen .noala-cab-fen-pied { gap: 12px; }
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-patient-fen .noala-cab-fen-pied .noala-cab-fen-cta,
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-coller-fen .noala-cab-fen-pied .noala-cab-fen-cta { flex: 1 1 0; min-width: 0; padding-inline: 12px; }
}

/* ── L'éditeur de contenu de la médiathèque (builders, lot 4, 2026-10-21) ──
   Spec : docs/superpowers/specs/2026-10-21-builders-lot4-contenu-design.md. La page reprend le
   socle ; ne s'ajoute ici que ce qui lui est propre. Forme tirée de
   `propositions-cabinet/mediatheque.css` (préfixe `me-`). */
html[data-noala-ui="synthese"] .noala-cab-ed-med-sec .noala-cab-ed-sec { margin-bottom: 14px; }
/* Le type en mots, à la manière des filtres de la fenêtre de choix : le choix courant souligné. */
html[data-noala-ui="synthese"] .noala-cab-ed-med-types { display: flex; flex-wrap: wrap; gap: 4px 20px; padding-bottom: 8px; border-bottom: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-med-types button {
  min-height: 36px; padding: 6px 0; border: 0; border-bottom: 2px solid transparent; background: none;
  font-family: var(--font-sans); font-size: 14px; color: var(--cab-doux); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-ed-med-types button:hover { color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-med-types button[aria-pressed="true"] { color: var(--ink); font-weight: 500; border-bottom-color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-med-types button:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; border-radius: 4px; }
html[data-noala-ui="synthese"] .noala-cab-ed-med-types button:disabled { cursor: default; }
/* Le texte : son libellé et « Insérer une image » sur une ligne, une grande zone de saisie. */
html[data-noala-ui="synthese"] .noala-cab-ed-med-outils { display: flex; align-items: center; justify-content: space-between; gap: 10px 20px; flex-wrap: wrap; }
html[data-noala-ui="synthese"] .noala-cab-ed-message.noala-cab-ed-med-texte { min-height: 300px; font-size: 14.5px; line-height: 1.7; }
/* Le dépôt d'un fichier (PDF, image), et le PDF déjà déposé sur une rangée. */
html[data-noala-ui="synthese"] .noala-cab-ed-med-depot {
  display: grid; justify-items: center; gap: 8px; padding: 18px 16px; border: 1.5px dashed var(--cab-depot-bord); border-radius: 16px;
  background: var(--surface); text-align: center; color: var(--cab-doux);
}
html[data-noala-ui="synthese"] .noala-cab-ed-med-depot > .noala-ic { width: 22px; height: 22px; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-med-depot input[type="file"] { max-width: 100%; font-family: var(--font-sans); font-size: 13.5px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-med-depot input[type="file"]:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-ed-med-fichier {
  display: flex; align-items: center; gap: 14px; min-height: 60px; padding: 8px 2px;
  border-top: 1px solid var(--cab-ligne); border-bottom: 1px solid var(--cab-ligne); font-size: 14.5px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-ed-med-fichier > .noala-ic { flex: none; width: 20px; height: 20px; }
html[data-noala-ui="synthese"] .noala-cab-ed-med-fichier > span { flex: 1; min-width: 0; display: flex; flex-direction: column; overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-ed-med-fichier small { font-size: 12.5px; color: var(--cab-doux); }
/* ── Le téléphone « ce que lit le patient » (tâche 4) ──
   Spec, « Le téléphone ». À 1180 px et plus, une colonne de 360 px à droite des champs,
   collante sous l'en-tête, qui défile seule si le texte est long ; en dessous, le lien du
   pied l'ouvre en fenêtre (`.noala-cab-tel-fen`). Le texte y est rendu par les fonctions
   du portail (`NoalaLecture`) ; ses styles suivent `.noala-md` et les cartes de lecture de
   `patient.css` (valeurs du portail sur un téléphone, sous 620 px), sans la charger. */
html[data-noala-ui="synthese"] .noala-cab-ed-med-corps { display: grid; grid-template-columns: minmax(0, 1fr); gap: 36px; align-items: start; }
html[data-noala-ui="synthese"] .noala-cab-ed-med-corps > div { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-med-corps + .noala-cab-ed-pied { margin-top: 36px; }
html[data-noala-ui="synthese"] .noala-cab-tel-col { display: none; }
@media (min-width: 1180px) {
  html[data-noala-ui="synthese"] .noala-cab-ed-med-corps { grid-template-columns: minmax(0, 1fr) 360px; }
  html[data-noala-ui="synthese"] .noala-cab-tel-col { display: block; position: sticky; top: 16px; min-width: 0; }
  html[data-noala-ui="synthese"] .noala-cab-ed-pied .noala-cab-tel-lien { display: none; }
}
html[data-noala-ui="synthese"] .noala-cab-tel {
  min-width: 0; max-height: calc(100dvh - 150px); overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain;
  padding: 22px 18px 24px; border: 1px solid var(--cab-ligne); border-radius: 32px; background: var(--bg);
  font-family: var(--font-sans); font-size: 15px; line-height: 1.65; color: var(--ink); overflow-wrap: anywhere;
}
html[data-noala-ui="synthese"] .noala-cab-tel-aide { margin: 10px 0 0; font-size: 12.5px; color: var(--cab-doux); text-align: center; }
/* Le titre de la page de lecture : léger, en grand. */
html[data-noala-ui="synthese"] .noala-cab-tel-titre { margin: 0 0 16px; font-size: 26px; line-height: 1.2; font-weight: 300; letter-spacing: -.4px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-tel-vide { margin: 0; padding: 18px 4px; font-size: 13.5px; color: var(--cab-doux); text-align: center; }
/* Le texte rendu, comme `.noala-md`. */
html[data-noala-ui="synthese"] .noala-cab-tel-md h2 { margin: 20px 0 8px; font-size: 18px; font-weight: 500; line-height: 1.3; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-tel-md h3 { margin: 16px 0 8px; font-size: 16px; font-weight: 600; line-height: 1.35; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-tel-md > :first-child { margin-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-tel-md > :last-child { margin-bottom: 0; }
html[data-noala-ui="synthese"] .noala-cab-tel-md p { margin: 0 0 12px; }
html[data-noala-ui="synthese"] .noala-cab-tel-md ul { margin: 0 0 12px; padding-left: 1.25em; }
html[data-noala-ui="synthese"] .noala-cab-tel-md li { margin: 4px 0; }
html[data-noala-ui="synthese"] .noala-cab-tel-md strong { font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-tel-md a { color: var(--accent-text); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; }
html[data-noala-ui="synthese"] .noala-cab-tel-md blockquote { margin: 16px 0; padding: 12px 16px; border-radius: 14px; background: var(--surface-2); }
html[data-noala-ui="synthese"] .noala-cab-tel-md blockquote p:last-child { margin-bottom: 0; }
html[data-noala-ui="synthese"] .noala-cab-tel-md .noala-md-figure { margin: 12px 0; }
/* Une carte par partie ; sans titre intérieur, le texte entier est une carte (`data-seule`). */
html[data-noala-ui="synthese"] :is(.noala-cab-tel-partie, .noala-cab-tel-question, .noala-cab-tel-avant[data-seule]) {
  min-width: 0; margin: 0 0 14px; padding: 18px 18px 20px; border: 1px solid var(--cab-ligne); border-radius: 22px; background: var(--surface);
}
html[data-noala-ui="synthese"] .noala-cab-tel-avant:not([data-seule]) { margin: 0 0 14px; }
html[data-noala-ui="synthese"] :is(.noala-cab-tel-partie, .noala-cab-tel-question) > h2 { margin: 0 0 12px; font-size: 18px; font-weight: 500; line-height: 1.3; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-tel-partie[data-bref] { padding: 14px 18px 20px; border: 0; background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-tel-partie[data-bref] > h2 { margin-bottom: 8px; font-size: 15px; }
/* Les listes d'une carte : des lignes aérées, un filet entre deux, un point vert. */
html[data-noala-ui="synthese"] .noala-cab-tel-partie > .noala-cab-tel-md ul { list-style: none; padding: 0; }
html[data-noala-ui="synthese"] .noala-cab-tel-partie > .noala-cab-tel-md li { position: relative; margin: 0; padding: 9px 0 9px 22px; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-tel-partie > .noala-cab-tel-md li:first-child { border-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-tel-partie > .noala-cab-tel-md li::before {
  content: ""; position: absolute; left: 4px; top: calc(9px + .825em - 3px); width: 6px; height: 6px; border-radius: 50%; background: var(--accent);
}
/* Une question de FAQ, réponse ouverte : la question en gras, un filet, la réponse. */
html[data-noala-ui="synthese"] .noala-cab-tel-question > h2 { font-size: 16px; font-weight: 600; }
html[data-noala-ui="synthese"] .noala-cab-tel-question > .noala-cab-tel-md { padding-top: 12px; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-tel-citation { margin: 0 0 14px; padding: 16px 18px; border-radius: 14px; background: var(--surface-2); }
/* La vidéo dans son cadre 16:9, l'image dans la colonne. */
html[data-noala-ui="synthese"] .noala-cab-tel-video iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: 14px; background: var(--cab-tel-fond); }
html[data-noala-ui="synthese"] .noala-cab-tel-image img { display: block; width: 100%; height: auto; border-radius: 14px; }
/* Une vidéo sensible : l'avertissement de la page de lecture du portail
   (`.noala-lecture-sensible`, patient.css), aux couleurs du téléphone. « Passer » y est un
   libellé en texte simple, sans forme de bouton : l'aperçu n'a pas d'élément suivant
   (2026-10-23). */
html[data-noala-ui="synthese"] .noala-cab-tel-sensible { display: grid; gap: 14px; justify-items: start; padding: 22px 18px; border: 1px solid var(--cab-ligne); border-radius: 24px; background: var(--surface); }
html[data-noala-ui="synthese"] .noala-cab-tel-sensible > .noala-ic { width: 32px; height: 32px; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-tel-sensible h2 { margin: 0; font-size: 20px; font-weight: 500; line-height: 1.3; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-tel-sensible p { margin: 0; color: var(--cab-doux); line-height: 1.6; }
html[data-noala-ui="synthese"] .noala-cab-tel-sensible-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 6px; }
html[data-noala-ui="synthese"] .noala-cab-tel-passer { padding: 0 4px; font-size: 14px; font-weight: 500; color: var(--cab-doux); cursor: default; }
/* PDF et lien : une rangée au nom, « Ouvrir ». */
html[data-noala-ui="synthese"] .noala-cab-tel-ouvrir {
  display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 10px 16px; border: 1px solid var(--cab-ligne); border-radius: 16px;
  background: var(--surface); font-size: 14.5px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-tel-ouvrir > .noala-ic { flex: none; width: 20px; height: 20px; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-tel-ouvrir > span { flex: 1; min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-tel-ouvrir > b { flex: none; font-weight: 500; color: var(--accent-text); }
/* La fenêtre, sous 1180 px : le téléphone à sa largeur, sans limite de hauteur (le corps défile). */
html[data-noala-ui="synthese"] .noala-cab-tel-fen .noala-cab-tel { max-width: 380px; max-height: none; margin: 0 auto 12px; border-radius: 24px; }
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-tel-fen .noala-cab-fen-corps { padding-left: 16px; padding-right: 16px; }
  html[data-noala-ui="synthese"] .noala-cab-tel-fen .noala-cab-tel { padding: 18px 14px 20px; }
}

/* ── Le builder de devis (builders, lot 5, 2026-10-22) ──
   Spec : docs/superpowers/specs/2026-10-22-builders-lot5-devis-design.md. Forme tirée de
   `propositions-cabinet/devis.css` (idée A, le récapitulatif à droite). Les actes à gauche,
   le récapitulatif à droite, collant ; sous 1180 px, il passe sous les actes.
   Le tableau : une grille de sept colonnes que l'en-tête, les lignes et le total
   partagent, pour que les montants s'alignent par construction (`builders_lot5_devis`
   le mesure à 1440 et 1024 px). */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-corps { display: grid; grid-template-columns: minmax(0, 1fr); gap: 36px; align-items: start; padding-bottom: 40px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-actes { min-width: 0; }
@media (min-width: 1180px) {
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-corps { grid-template-columns: minmax(0, 1fr) minmax(0, 300px); }
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-recap { position: sticky; top: 16px; }
}
/* L'état en mots, sous l'introduction : un point gris pour un brouillon, vert sinon. */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-etat { margin: 10px 0 0; display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-etat > i { flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-etat[data-statut="brouillon"] > i { background: var(--cab-brouillon); }
/* Les taux des modificateurs manquent : une ligne, le texte rouge du socle. */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-alerte { margin: 14px 0 0; display: flex; align-items: flex-start; gap: 10px; font-size: 14px; line-height: 1.5; color: var(--cab-alerte); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-alerte .noala-ic { flex: none; width: 18px; height: 18px; margin-top: 1px; }

/* L'ajout d'un acte, et sa liste (« Mes modèles » puis la base CCAM). */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-ajout-zone { position: relative; margin-top: 4px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-ajout {
  display: flex; align-items: center; gap: 10px; height: 48px; padding: 0 16px; border: 1px solid var(--cab-ligne); border-radius: 14px;
  background: var(--surface); color: var(--cab-doux); cursor: text;
}
html[data-noala-ui="synthese"] .noala-cab-ed-dv-ajout .noala-ic { flex: none; width: 18px; height: 18px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-ajout input {
  flex: 1; min-width: 0; height: 100%; padding: 0; border: 0; outline: 0; background: none;
  font-family: var(--font-sans); font-size: 14.5px; color: var(--ink);
}
html[data-noala-ui="synthese"] .noala-cab-ed-dv-ajout:focus-within { outline: 3px solid var(--accent-text); outline-offset: 1px; border-color: transparent; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-liste { top: 52px; margin-top: 0; max-height: 380px; border-color: var(--cab-ligne); border-radius: 16px; background: var(--surface); box-shadow: 0 18px 40px var(--cab-encre-14); }
html[data-noala-ui="synthese"] .noala-ccam-item.noala-cab-ed-dv-res { align-items: center; gap: 10px; padding: 10px 14px; border-bottom-color: var(--cab-ligne); font-family: var(--font-sans); font-size: 13.5px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-ccam-item.noala-cab-ed-dv-res:hover { background: var(--cab-menthe-2); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-res > .noala-ic { flex: none; width: 18px; height: 18px; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-res-code { flex: none; min-width: 68px; font-weight: 600; font-variant-numeric: tabular-nums; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-res-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-res-nom { font-weight: 500; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-res-codes { font-size: 12px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-res-meta { flex: none; font-size: 12px; color: var(--cab-doux); font-variant-numeric: tabular-nums; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-sans { margin: 6px 0 0; }
/* « Vos modèles : … », des liens sur une ligne. */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-modeles { display: flex; align-items: baseline; flex-wrap: wrap; gap: 2px 18px; margin: 10px 0 0; font-size: 13.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-modeles .noala-cab-ed-lien { white-space: normal; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-du-proto { font-size: 12.5px; font-weight: 400; color: var(--cab-doux); }

/* La ligne d'outils, au-dessus du tableau. */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-outils { display: flex; align-items: center; justify-content: space-between; gap: 10px 20px; flex-wrap: wrap; margin-top: 18px; font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-tous { display: flex; align-items: center; gap: 8px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-select {
  height: 34px; padding: 0 8px; border: 1px solid var(--cab-ligne); border-radius: 10px; background: var(--surface);
  font-family: var(--font-sans); font-size: 13px; color: var(--ink); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-ed-dv-select:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 1px; }
/* La règle d'association (chantier du 2026-10-22) : seule sur sa ligne, au-dessus du
   compte et des honoraires du lot 5. Le libellé le plus long d'un choix est plus
   large qu'un téléphone : la liste passe à la ligne et se resserre. */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-regle { flex: 1 1 100%; flex-wrap: wrap; min-width: 0; max-width: 100%; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-regle .noala-cab-ed-dv-select { min-width: 0; max-width: 100%; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-regle-lue { margin: 18px 0 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-vide { margin-top: 18px; }

/* Le tableau : une liste à filets, sept colonnes communes. */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-table { margin-top: 10px; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-rangee {
  display: grid; grid-template-columns: minmax(0, 1fr) 92px 72px 88px 120px 84px 34px; column-gap: 10px;
  padding: 14px 4px; border-bottom: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-ed-dv-rangee > * { min-width: 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-entetes { align-items: end; padding-top: 10px; padding-bottom: 8px; font-size: 12px; line-height: 1.3; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-entetes > .noala-cab-ed-dv-num { display: block; text-align: right; white-space: normal; font-size: 12px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-ligne { align-items: start; }
/* Chaque valeur d'une ligne tient sur la hauteur du champ des honoraires (40 px). */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-ligne > * { min-height: 40px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-acte { display: flex; flex-direction: column; justify-content: center; gap: 3px; }
/* Le libellé CCAM long (100 à 150 caractères) s'arrête à trois lignes ; le texte entier
   est dans l'infobulle (`title`). */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-acte-lib {
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; overflow: hidden;
  font-size: 14.5px; line-height: 1.35; color: var(--ink); overflow-wrap: anywhere;
}
html[data-noala-ui="synthese"] .noala-cab-ed-dv-acte-meta { font-size: 12.5px; line-height: 1.4; color: var(--cab-doux); font-variant-numeric: tabular-nums; }
/* « Ajouter une seconde fois cet acte » : un lien discret sous l'acte, qui passe à la ligne. */
html[data-noala-ui="synthese"] .noala-cab-ed-lien.noala-cab-ed-dv-dupliquer { align-self: flex-start; padding: 0; font-size: 12.5px; white-space: normal; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-mods { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 4px; font-size: 13px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-case { display: inline-flex; align-items: center; gap: 6px; color: var(--cab-texte); white-space: nowrap; cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-case b { font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-case input { flex: none; width: 16px; height: 16px; margin: 0; accent-color: var(--accent-text); cursor: pointer; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-case input:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 2px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-case:has(input:disabled) { cursor: default; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-aucun { font-size: 12.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-num {
  display: flex; align-items: center; justify-content: flex-end; text-align: right; white-space: nowrap;
  font-size: 14.5px; font-variant-numeric: tabular-nums; color: var(--cab-texte);
}
html[data-noala-ui="synthese"] .noala-cab-ed-dv-fort { font-weight: 500; color: var(--ink); }
/* Les honoraires : le champ, les unités en mots soulignés, et « soit … » dessous. */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-hono { display: flex; flex-direction: column; align-items: flex-end; gap: 3px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-hono-saisie { display: flex; align-items: center; justify-content: flex-end; gap: 6px; height: 40px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-hono-saisie input {
  width: 64px; height: 38px; padding: 0 8px; border: 1px solid var(--cab-ligne); border-radius: 10px; background: var(--surface);
  font-family: var(--font-sans); font-size: 14.5px; text-align: right; color: var(--ink); font-variant-numeric: tabular-nums;
  -moz-appearance: textfield; appearance: textfield;
}
html[data-noala-ui="synthese"] .noala-cab-ed-dv-hono-saisie input::-webkit-outer-spin-button,
html[data-noala-ui="synthese"] .noala-cab-ed-dv-hono-saisie input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-hono-saisie input:focus { outline: 3px solid var(--accent-text); outline-offset: 1px; border-color: transparent; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-hono-saisie input:disabled { background: none; border-color: transparent; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-unite { display: flex; gap: 1px; font-size: 13px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-unite button {
  min-width: 20px; padding: 4px 2px; border: 0; border-bottom: 1.5px solid transparent; background: none;
  font-family: var(--font-sans); font-size: 13px; color: var(--cab-doux); cursor: pointer;
}
html[data-noala-ui="synthese"] .noala-cab-ed-dv-unite button[aria-pressed="true"] { color: var(--ink); font-weight: 500; border-bottom-color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-unite button:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 1px; border-radius: 4px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-unite button:disabled { cursor: default; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-soit { font-size: 12px; color: var(--cab-doux); font-variant-numeric: tabular-nums; white-space: nowrap; }
/* La corbeille, centrée sur la hauteur du champ. */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-ligne .noala-cab-ed-retirer { margin-top: 3px; }
/* La ligne de total. */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-total { align-items: center; border-bottom: 0; font-size: 14.5px; font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-total > .noala-cab-ed-dv-num { color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-actifs { font-size: 12.5px; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-aide { margin: 10px 0 0; }

/* Le récapitulatif : une seule carte blanche, dans l'ordre du calcul. */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-recap {
  min-width: 0; display: grid; gap: 16px; padding: 24px 24px 22px; border: 1px solid var(--cab-ligne); border-radius: 24px; background: var(--surface);
}
html[data-noala-ui="synthese"] .noala-cab-ed-dv-lieu { font-size: 14.5px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-somme { margin: 0; padding-top: 16px; border-top: 1px solid var(--cab-ligne); display: grid; gap: 10px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-somme > div { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; font-size: 14px; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-somme dt { font-weight: 400; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-somme dd { margin: 0; color: var(--ink); font-variant-numeric: tabular-nums; white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-somme > .noala-cab-ed-dv-somme-modifs { flex-direction: column; align-items: stretch; gap: 4px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-somme-modifs dd { display: grid; gap: 2px; white-space: normal; font-size: 13px; color: var(--cab-texte); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-somme-modifs dd b { font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-du { display: grid; gap: 4px; padding-top: 14px; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-du > span { font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-du > strong {
  font-family: var(--font-sans); font-size: 32px; font-weight: 500; letter-spacing: -.8px; line-height: 1.15;
  color: var(--accent-text); font-variant-numeric: tabular-nums; white-space: nowrap;
}

/* Le pied collant (tâche 3) : « Fermer » et l'état à gauche ; à droite le total (sous
   1180 px seulement, le récapitulatif le porte au-dessus), le menu « ⋯ », qui s'ouvre vers
   le haut, et une seule action encre. */
html[data-noala-ui="synthese"] .noala-cab-ed-dv-pied-droite { flex-wrap: wrap; justify-content: flex-end; gap: 10px 16px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-pied-du { display: flex; flex-direction: column; align-items: flex-end; line-height: 1.25; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-pied-du > span { font-size: 12.5px; color: var(--cab-doux); white-space: nowrap; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-pied-du > b {
  font-size: 22px; font-weight: 500; letter-spacing: -.4px; color: var(--ink); font-variant-numeric: tabular-nums; white-space: nowrap;
}
@media (min-width: 1180px) {
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-pied-du { display: none; }
}
html[data-noala-ui="synthese"] .noala-cab-ed-pied .noala-cab-ed-pts { margin-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-ed-menu.noala-cab-ed-dv-menu { top: auto; bottom: calc(100% + 8px); min-width: 260px; }
html[data-noala-ui="synthese"] .noala-cab-ed-dv-menu [role="menuitem"] { white-space: nowrap; }

@media (max-width: 1180px) {
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-rangee { grid-template-columns: minmax(0, 1fr) 104px 68px 92px 124px 80px 34px; column-gap: 10px; }
}
/* Sous 860 px, l'en-tête du tableau disparaît et chaque ligne s'empile : l'acte et sa
   corbeille, puis une rangée par colonne, son nom à gauche, sa valeur à droite. La ligne
   de total ne garde que le total. Le pied passe à la ligne. */
@media (max-width: 860px) {
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-entetes { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-ligne { grid-template-columns: minmax(0, 1fr) 34px; row-gap: 6px; }
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-ligne > [data-col="acte"] { grid-column: 1; grid-row: 1; }
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-ligne > [data-col="retrait"] { grid-column: 2; grid-row: 1; }
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-ligne > [data-label] {
    grid-column: 1 / -1; min-height: 0; display: flex; flex-direction: row; flex-wrap: wrap; align-items: center;
    justify-content: flex-end; gap: 4px 12px;
  }
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-ligne > [data-label]::before { content: attr(data-label); margin-right: auto; font-size: 12.5px; font-weight: 400; color: var(--cab-doux); }
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-ligne .noala-cab-ed-dv-soit { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-total { grid-template-columns: minmax(0, 1fr) auto; }
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-total > :not([data-col="acte"]):not([data-col="total"]) { display: none; }
  /* Le pied passe à la ligne : l'état, puis le total et le menu, puis l'action encre. */
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-pied-droite { flex: 1 1 100%; justify-content: flex-end; }
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-pied-du { margin-right: auto; align-items: flex-start; }
}
@media (max-width: 520px) {
  html[data-noala-ui="synthese"] .noala-cab-ed-dv-pied-du > b { font-size: 18px; }
  html[data-theme="light"][data-noala-ui="synthese"] .noala-cab-ed-dv-pied-droite > .noala-cta { flex: 1 1 100%; }
}

/* ── Le calendrier du Nouveau suivi, en résumé (builders, lot 6, 2026-10-22) ──
   À l'étape 2 de « Créer un parcours patient », sous les champs : un filet, pas de carte
   menthe ni de petites capitales. Un titre, une ligne en gris, des phrases à filets avec
   une icône au trait (comme les lignes de famille `noala-cab-ed-fam`), un lien teal. */
html[data-noala-ui="synthese"] .noala-cab-cal { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--cab-ligne); }
html[data-noala-ui="synthese"] .noala-cab-cal-vide { margin: 0; font-size: 14px; line-height: 1.7; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cal-titre { margin: 0; font-size: 18px; font-weight: 500; letter-spacing: -.3px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cal-sous { margin: 4px 0 0; font-size: 13.5px; line-height: 1.65; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cal-sous .noala-cab-ed-lien { padding: 0; }
html[data-noala-ui="synthese"] .noala-cab-cal-resume { margin: 12px 0 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-cal-resume > li {
  display: grid; grid-template-columns: 19px minmax(0, 1fr); column-gap: 12px; align-items: start;
  padding: 10px 0; border-top: 1px solid var(--cab-ligne); font-size: 14px; line-height: 1.6; color: var(--cab-texte); overflow-wrap: anywhere;
}
html[data-noala-ui="synthese"] .noala-cab-cal-resume > li:first-child { border-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-cal-resume .noala-ic { width: 19px; height: 19px; margin-top: 2px; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cal-resume b { font-weight: 500; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cal-resume > li[data-alerte] .noala-ic,
html[data-noala-ui="synthese"] .noala-cab-cal-resume > li[data-alerte] b { color: var(--cab-attention); }
html[data-noala-ui="synthese"] .noala-cab-ed-lien.noala-cab-cal-voir { margin-top: 8px; white-space: normal; }

/* ── Le calendrier complet, second écran de la même fenêtre (lot 6) ──
   Une ligne sous « Étape 2 / 2 · Le calendrier », puis les groupes à filets, titre en vert.
   Une rangée par étape : la date dans une arche menthe (forme des dates du tableau de bord
   et de `noala-cab-ed-jour`), le nom, « Mardi · J-7 », l'état en mots, les lignes de
   famille `noala-cab-ed-fam`. La création a une arche encre ; une étape perdue est grise. */
html[data-noala-ui="synthese"] .noala-cab-cal-complet:focus { outline: none; }
html[data-noala-ui="synthese"] .noala-cab-cal-intro { margin: 4px 0 0; font-size: 14px; line-height: 1.65; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cal-phase { display: flex; align-items: baseline; gap: 10px; margin: 0; padding: 20px 0 6px; font-size: 13px; font-weight: 500; color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-cal-phase small { font-size: 12.5px; font-weight: 400; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cal-liste { margin: 0; padding: 0; list-style: none; }
html[data-noala-ui="synthese"] .noala-cab-cal-rang {
  display: grid; grid-template-columns: 62px minmax(0, 1fr); column-gap: 16px; align-items: start;
  padding: 12px 0; border-top: 1px solid var(--cab-ligne);
}
html[data-noala-ui="synthese"] .noala-cab-cal-rang:first-child { border-top: 0; }
html[data-noala-ui="synthese"] .noala-cab-cal-jour {
  width: 62px; display: flex; flex-direction: column; align-items: center; padding: 7px 0 6px; background: var(--surface-2);
  border-radius: 28px 28px 11px 11px; line-height: 1.1; text-align: center;
}
html[data-noala-ui="synthese"] .noala-cab-cal-jour b { font-size: 20px; font-weight: 400; letter-spacing: -.4px; font-variant-numeric: tabular-nums; color: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cal-jour small { font-size: 10.5px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cal-jour[data-creation] { background: var(--ink); }
html[data-noala-ui="synthese"] .noala-cab-cal-jour[data-creation] small { color: var(--cta-fg); }
html[data-noala-ui="synthese"] .noala-cab-cal-jour[data-creation] .noala-ic { width: 22px; height: 22px; margin: 3px 0 4px; color: var(--cta-fg); }
html[data-noala-ui="synthese"] .noala-cab-cal-corps { min-width: 0; display: flex; flex-direction: column; gap: 3px; padding-top: 3px; }
html[data-noala-ui="synthese"] .noala-cab-cal-nom { font-size: 15px; font-weight: 500; color: var(--ink); overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-cal-quand { font-size: 13px; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cal-etat { margin: 2px 0 0; font-size: 13px; font-weight: 500; color: var(--cab-doux); }
html[data-noala-ui="synthese"] .noala-cab-cal-etat[data-etat="creation"] { color: var(--accent-text); }
html[data-noala-ui="synthese"] .noala-cab-cal-etat[data-etat="perdue"] { color: var(--cab-attention); }
html[data-noala-ui="synthese"] .noala-cab-cal-recoit { display: flex; flex-direction: column; gap: 5px; margin-top: 6px; overflow-wrap: anywhere; }
html[data-noala-ui="synthese"] .noala-cab-cal-rang[data-perdue] .noala-cab-cal-jour { background: var(--cab-jour-perdu); }
html[data-noala-ui="synthese"] .noala-cab-cal-rang[data-perdue] .noala-cab-cal-jour b,
html[data-noala-ui="synthese"] .noala-cab-cal-rang[data-perdue] .noala-cab-cal-nom { color: var(--cab-doux); }
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-cab-cal-rang { grid-template-columns: 54px minmax(0, 1fr); column-gap: 12px; }
  html[data-noala-ui="synthese"] .noala-cab-cal-jour { width: 54px; }
}

/* ── Écrans étroits ── */
@media (max-width: 1000px) {
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-champs,
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-sous .noala-cab-ed-qs-champs { grid-template-columns: minmax(0, 1fr); }
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-q { grid-template-columns: 28px minmax(0, 1fr) 36px; column-gap: 6px; padding: 3px 4px; }
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-hors:empty { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-hors { grid-column: 2; grid-row: 2; padding: 0 11px 8px; }
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-q .noala-cab-ed-pts-zone { grid-column: 3; grid-row: 1; }
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-reglage { padding: 16px 10px 14px; }
  html[data-noala-ui="synthese"] .noala-cab-ed-qs-bornes { grid-template-columns: minmax(0, 1fr); }
  html[data-noala-ui="synthese"] .noala-cab-ed-pli-corps { padding-left: 10px; }
  html[data-noala-ui="synthese"] .noala-cab-ed-entetes { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-ed-rang { grid-template-columns: 62px minmax(0, 1fr) 36px; row-gap: 10px; }
  html[data-noala-ui="synthese"] .noala-cab-ed-jour { width: 62px; }
  html[data-noala-ui="synthese"] .noala-cab-ed-recoit,
  html[data-noala-ui="synthese"] .noala-cab-ed-obj { grid-column: 2 / 4; }
  html[data-noala-ui="synthese"] .noala-cab-ed-obj:not(:has(span)) { display: none; }
  html[data-noala-ui="synthese"] .noala-cab-ed-item > .noala-cab-ed-edit { padding: 18px 16px 20px; }
  html[data-noala-ui="synthese"] .noala-cab-ed-champs { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  html[data-noala-ui="synthese"] .noala-modal-overlay[data-kind="page"] > .noala-modal-card:has(> .noala-cab-ed) { padding-left: 16px; padding-right: 16px; }
  html[data-noala-ui="synthese"] .noala-cab-ed .noala-cab-ed-titre { font-size: 32px; letter-spacing: -1px; }
}
