
@font-face{font-family:'AVP Signes';font-style:normal;font-weight:100 900;font-display:swap;src:url(data:font/woff2;base64,d09GMgABAAAAAAL8ABAAAAAABfgAAAKiAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhQbHhxABmA/U1RBVF4ATBEICihGCwwAATYCJAMUBCAFhHgHIAwHG/YEyAQevrrsV031BFCHWtinuAdO0lmIR/m4J+G4L9eVMH8/tzos9HV4SKnU9GViuLbdEuqNVCnJpIt3SkcDdiXo8upRjwAiUVICxaqW+qlwMslEDBsxbhqhqK5YMDiCaPYBDMC6rqx5XpuHohZjdpeQaWTtbYab9TSaPjp+Yu5yJfuIrWgg18tZvDY2dhN1dBFDfiAjNKk0JaV6iAwOQs8JhVJiYeTEiSO5hP4fVfn/DqgWsQHE3gVLMlV2sud0rAgEoViARKm6AjnH7jD3/OWcFtMhBMJpNnrEQCR5JGPFgkSKQRcjs3UpBtAiE5b0MFsj8lyvT7b4EiEZiSh64VBCR9Wj62F69f+LinlP8NGDXw+uSjVacGoFIhgkhlO10BdO7QvlRGy0hSteoCK0KNUUpUXWde7stHfp3tL95U6DtNy4fOrfm/qYft9CLZaXTeV7S6+8YJc+ab7U79+O/yr8oypnfVaymABkX0Tqvx2/74V/nDHuVGlyFnXiAL4jtrBRrSbiSGUB7gmHu2A6igNwQipMzp0Qeg6CeBENkmgBWOhBJyjyOAYa6WwGKzo+RzQ96KWIr9dXwYIgnDwYQCTJpoG2cHUQ1mem4MdLIz5GY9KIByfNTMBPW9sxDzNx0oKJg5kYnGyXiHnMxCRAO32ophq/pBv4sEk5HyYFqRntGFRRqXZKw8TP1M2Wt1PJFAzsdODhEes5A4M22gnBPp0uVFFDLd1nBXTZmz427t/6MpKJTGQkfTebUpqxgTr0UoV5tF2aHGh5DV3ogs40HBjS2JzKSbThx8WrzeMyg+kARa5Ojju/BFrGjrO3toMmqmh+C1M1RyagzLRTfbxOEyc+KrGzgwYGbippPprPA1wt/Suxuii4iy441adEcNVxtQkAAAA=) format('woff2');unicode-range:U+2009,U+202F}@font-face{font-family:'AVP Signes';font-style:normal;font-weight:100 900;font-display:swap;src:url(data:font/woff2;base64,d09GMgABAAAAAAQUABAAAAAACDwAAAO4AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGUYbeBw0BmA/U1RBVF4ATBEICoJMgW8LEAABNgIkAxoEIAWGCgcgDAcbtwbIBB74PL8/9+Y2D1A6QjUSM20KpfBqxl/e2Stq93cgd39e/O/3WxmbTujeIGRq+XPQx0WjSxLxBJHQCcUkrWrfktI+YDesVotKCKD+13NRqLXrt+5lMFjNJRmM5KwEg0mzkGYQHSFfIGmmHn5dOEeQsZBl5+xUOrdqIz6Wd+crwz8TSVi5NKY2FUHRMCRskrPxSLrBvgkM5gHpMq2yo6uRAKnD1DQKxoCrjRXkBnEDrgZ5lTwIbPEVxHECYkRFKl1zKZc0GWTRJQkaxptXrV29g1cxJr+omsefBu0vsdZA3Dkt1yfyDtpjoMlU34G63b+bhbQz+ZoIQjkSLYg8IlYwk6KAZAq96GhIpCiuD2gc2SzFPnEDyBf5DCJGa61A6gZGKfaIFu4BdqxeYrhvnvzM5BdX6jXcN8YNzlefZz/e8/HmYfRGvkA4Dm0U1bkYnDVwvPXWOMCuaOPO/2NKKdXa2qrrTYmmaEtjvEm1uJqPulqU2SiO9BxcHmmylh7uO3RANJmcWmERWh7kZKKJg71HloUawysOdR9ec6TpUH9z/mDj4b6Wnffcvuye2+9dds/tyxKRRZGliTu+vINq/5Z3um3+NN4aWDx1YPF7fxrt3Tb9/295x+4R7j+PLR6YunjwmPtPYXfjObrl7e5M+5/u92Gff/tPN90ZXJdf7ht/+S6Hud+Ov9J3+ZU7nSXfDEroX1zx3tsn2pb+V69pPxJpPvW9dMJ/8rOnb73f6Rl/q/517XtAv3gWjnxt/c9Oj9Nb//o2gr5bl6fZyW8gH2KqfIgBIrMPN27YZnXcRCOP09iJtKN0t/IEb1Zb73tb3BZLBcOiJpW0iqRUY7nwSBWzhJS6CHGHVGcaJUkrc1k9J/YNUSSC9DODlMaoZ4I0TzO9vIKokRW5m2A3NilM0myiwKkniRHkANa5CFEK+JlLhqAdHGoAyDbIE6PGQ2EFLnsxXrzkOU+OGMyTxwOoTuLBJkeEOr+D9WxlDzZFclTGYg8W+HyYucxmNxYRijwzSdpfju4vsUljMBcPPnzMZQlRghU4lLISL/DXe/DjZz5LVuRJYAGUw1hUsHgB3jzxfOYt+/DPY9LggTTLULuwD2cVa1nNDpaspEdqYEx6eJaYGfCts1MswHNk8SpC2JzqcK5KngIWKfKqZxPp3fDkyLhklrMQN2vaGVHZDHgwByJPp4dTeJnOLAzKxCgQXT/l52Yt0bR+xzmSI9PbMUnNY8HoX03cGMDz1Tqdd+l+Ru6zwrnwlLoWAAAA) format('woff2');unicode-range:U+2191-2193,U+25B2,U+25BC}@font-face{font-family:'AVP Signes';font-style:normal;font-weight:100 900;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2');unicode-range:U+25B8,U+25BE,U+25C2}@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2')}@font-face{font-family:'Source Serif 4';font-style:italic;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2')}@font-face{font-family:'Radio Canada';font-style:normal;font-weight:300 700;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2')}@font-face{font-family:'Radio Canada';font-style:italic;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2')}
/* ============================================================ Theme "Glass & Neu"
   Glassmorphism & Neumorphism hybride, sur toute l'interface :
   - fond : degrade "mesh" pastel fixe (memes teintes que les accents), assez
     doux pour laisser les cartes neumorphiques s'y fondre et assez present
     pour que le flou des panneaux vitres (nav, boutons, tooltips, overlays)
     soit visible.
   - cartes de contenu (.card, .ctr, .vkpi, .chip...) : neumorphisme -- meme
     famille de couleur que le fond, PAS de bordure, relief uniquement via une
     double ombre douce (claire en haut-gauche, sombre en bas-droite, cf.
     --neu-out/--neu-out-sm/--neu-in).
   - panneaux flottants/actifs (nav, boutons, badges de source, pastille de
     menu, tooltips de graphique, cartes de recherche) : verre depoli
     (translucide + backdrop-filter blur/saturate + bordure lumineuse fine),
     qui se detache visuellement du fond neumorphique plus mat. */
:root{
  /* vert de marque IDENTIQUE a avpatrimoine.fr (assets/css/style.css :
     --color-primary:#92C461) -- demande explicite "inspire toi de toute la
     charte graphique... de AVPATRIMOINE-SITE", remplace l'ancien #1fab6f
     propre a MIKASA. Reste LE signal (positif/action). */
  --navy:#16211c; --navy2:#22352c; --blue:#3b82c9; --orange:#e8952e;
  --green:#92C461; --red:#d64550; --ink:#1c2521; --mut:#5c6b64; --mut2:#8a978f;
  /* palette choisie par l'utilisateur (sauge + creme, chaude et sobre) :
     --bg reprend #F4EFE6 (creme) plutot qu'un gris froid generique -- les 4
     teintes tres claires deviennent des fonds de teinte doux (chips, pills,
     zones de graphique) via --tint-*, #033C20 devient le point de depart
     (fonce) du degrade de sidebar. */
  --bg:#F4EFE6; --line:rgba(3,60,32,.09); --card:#ffffff;
  --tint-sauge-clair:#BBE1BB; --tint-sauge:#A7C4A0; --tint-bleu:#DFF7FF; --tint-jaune:#FFF8D4;
  /* --green-ink = le vert qui ECRIT (gains, "+2 nouveaux", date de bilan) :
     le vert des gains de la fiche (--fc-gain), sur la MEME teinte que le logo
     (128 deg) mais assez fonce pour se lire : 5,1:1 sur blanc, 4,8:1 sur une
     ligne grisee (propositions L2 et S3, 25/10/2026). L'ancien compromis
     (le vert du logo en texte, 2,7:1) ne tenait plus : les montants du
     tableau sont en graisse 400. La variante ecartee en septembre comme
     "vert sans emotion" (#5D7D3E) etait un olive (90 deg), pas cette teinte.
     Le vert du logo (--green-line) garde tout ce qu'il DESSINE : liseres des
     tuiles, mosaique, onglet actif. Pertes a la terracotta de la fiche. */
  --green-ink:#2e7d38; --red-ink:#a5442a;
  /* meme logique que green-ink/red-ink : versions assombries de --orange et
     --gold pour tout usage en texte (--orange 2.2:1, --gold 2.7:1 en brut). */
  --orange-ink:#b55c0d; --gold-ink:#956d33;
  /* duo "financier" (versements/valeurs vs cout/retrait) utilise dans les
     graphiques simulateurs (epargne, financement, frais) -- distinct du
     --navy de marque, reserve aux courbes/marqueurs financiers */
  --navy3:#1e3a5f; --gold:#c2924d;
  --radius:22px; --radius-s:16px; --gap:16px;
  /* timings de transition unifies (hover cartes/boutons/chips) : avant,
     chaque composant avait sa propre duree (.12s a .28s, melange de "ease"
     et de cubic-bezier) accumulee au fil des iterations successives sans
     coherence d'ensemble -- desormais 2 crans partages, --t-fast pour les
     petits elements interactifs (boutons, chips, toggles), --t-base pour
     les surfaces plus grandes (cartes). */
  --t-fast:.15s cubic-bezier(.4,0,.2,1); --t-base:.2s cubic-bezier(.4,0,.2,1);
  /* POLICES (piste 3 de l'etude typographique, choisie le 22/10/2026 ; la
     meme paire que avpatrimoine.fr) : une pile sans, une pile serif (cf.
     --fc-serif), une seule declaration de chaque. La sans compte : Radio
     Canada porte les montants, les etiquettes, l'interface et tout le texte
     du cabinet. --police-titre n'est plus qu'un alias : la titraille se
     distingue par la graisse (300 a 700) et la taille. Pile LITTERALE :
     policeCorps() la passe telle quelle a un canvas, qui ne lit pas var().
     AVP Signes en TETE : famille annexe a plages unicode (espaces fines,
     fleches, triangles, chevrons) ; elle ne couvre pas l'espace, la police
     principale reste donc Radio Canada. Placee apres, l'espace fine serait
     fabriquee a 0,12 em par le moteur de rendu au lieu de 1/6 em. */
  --police-titre:var(--police-corps);
  --police-corps:"AVP Signes","Radio Canada","Segoe UI",system-ui,-apple-system,sans-serif;
  /* meme courbe que --ease sur avpatrimoine.fr (assets/css/style.css) :
     reservee au verre de la sidebar (largeur/marge au repli, ombre au
     scroll) plutot que d'ecraser --t-base/--t-fast utilises partout
     ailleurs dans l'app. */
  --ease-glass:.38s cubic-bezier(.16,.8,.3,1);
  /* meme courbe "overshoot" que .contact-modal-panel sur avpatrimoine.fr
     (assets/css/style.css : --ease-overshoot) -- une ouverture de modale
     depasse legerement sa taille finale puis revient, plus vivant qu'un
     ease-out plat ; demande explicite "inspire-toi de avpatrimoine.fr" pour
     les animations. */
  --ease-overshoot:cubic-bezier(.22,.9,.3,1.08);
  /* --grad1 = le vert du logo (valeur de --green-ink jusqu'au 25/10/2026),
     plutot que l'ancien #033C20 propre a MIKASA -- .tab.on (onglet actif)
     l'utilise en couleur de texte. Il ne suit plus --green-ink : onglets,
     jauges et poignees gardent exactement leur vert d'avant. */
  --grad1:var(--green-line); --grad2:var(--green);
  /* VERT DE STRUCTURE, unique : c'est le vert du soulignement des tuiles
     (bandeau haut de .chip / .vkpi) retenu comme reference. Tout ce qui est
     DECORATIF (filets, aplats, jalons, mosaique) doit passer par ce token,
     au lieu des trois verts qui coexistaient (5aaf65 en dur, --grad1 sur
     .vkpi, degrades menthe 7fd4b0). Il dessine, il n'ecrit pas : le texte
     vert passe par --green-ink, sa version lisible. */
  --green-line:#5aaf65;
  /* declinaison claire du meme vert, pour les degrades de jauge */
  --green-line-soft:#8fd39a;
  --grad:linear-gradient(160deg,var(--grad1),var(--grad2));
  /* ---- ombre plate ("elevation"), remplace le neumorphisme double-ombre ----
     2 couches diffuses (une fine de contact + une large de portee), jamais de
     paire clair/sombre simulant un relief embouti -- une carte est POSEE sur
     le fond, pas moulee dedans. Memes NOMS de variable que l'ancien systeme
     neumorphique : toutes les regles existantes qui les consomment (cartes,
     tuiles KPI, boutons segmentes, champs...) heritent du nouveau rendu sans
     etre reecrites une a une. */
  --neu-light:transparent; --neu-dark:transparent;
  --neu-out:0 1px 2px rgba(3,60,32,.05), 0 10px 24px rgba(3,60,32,.08);
  --neu-out-sm:0 1px 2px rgba(3,60,32,.05), 0 3px 10px rgba(3,60,32,.07);
  --neu-out-hover:0 2px 4px rgba(3,60,32,.06), 0 16px 36px rgba(3,60,32,.12);
  --neu-in:inset 0 1px 3px rgba(3,60,32,.12);
  --depth-1:var(--neu-out-sm);
  --depth-2:var(--neu-out-hover);
  /* boutons/panneaux flottants : blanc plein + meme ombre plate, plus de verre
     depoli/flou -- un bouton est une carte, pas une vitre. */
  --btn-bg:#ffffff; --btn-bg-hover:#F4EFE6;
  --glass-brd:rgba(3,60,32,.08);
  --glass-shadow:var(--neu-out);
  --glass-shadow-hover:var(--neu-out-hover);
}
*{box-sizing:border-box}
/* toutes les transitions/animations du site sont cosmetiques (survol, pastille
   de menu, ouverture d'encart...) -- aucune n'est necessaire a la comprehension,
   donc les reduire au minimum ici ne retire aucun retour fonctionnel. */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important}
}
/* polices : Radio Canada en corps de texte partout (cf. --police-corps),
   comme avpatrimoine.fr. Repli Segoe UI/system-ui si les fichiers .woff2
   sont absents (le bloc @font-face est vide dans ce cas, cf. font_face_css ;
   la regle police-manquante de controles.py refuse alors le lot). NE PAS
   reecrire ici le nom du marqueur substitue en tete de gabarit : il serait
   remplace lui aussi et embarquerait les polices une seconde fois.
   AUCUN faux gras ni faux italique (font-synthesis:none, herite) : Source
   Serif 4 n'existe qu'en 400 et Radio Canada s'arrete a 700 ; une graisse
   absente s'affiche dans la plus proche reelle. Taille optique automatique :
   le compteur de 88 px et la note de 12,5 px prennent chacun le dessin
   prevu pour leur corps. */
html{font-synthesis:none;font-optical-sizing:auto}
body{margin:0;color:var(--ink);overflow-x:hidden;
  font:14px/1.45 var(--police-corps);font-kerning:normal;
  background:var(--bg);position:relative}
/* les controles de formulaire n'heritent PAS de la police du document (regle
   du navigateur, pas du CSS de l'app) : sans cette ligne, chaque <button>
   retombait sur l'Arial du systeme -- 342 boutons de l'app etaient hors charte
   (copie de lien, repli de la sidebar, retrait d'une ligne de simulateur).
   font-family seul, pas le raccourci font : les tailles/graisses propres a
   chaque bouton restent definies par leurs regles de classe. */
button,input,select,textarea{font-family:inherit}
/* titraille du cabinet (titres de page, h2.sec, onglets, date de bilan) :
   meme famille que le corps depuis la piste 3 (--police-titre est un alias
   de --police-corps). La hierarchie vient de la graisse et de la taille ;
   les graisses 800 et 900 encore ecrites dans les regles du cabinet
   s'affichent en 700, la plus forte de Radio Canada, sans faux gras. */
h1,h2.sec,.tab,.bilan-date,.foyer-head .sur,.btn-dash{font-family:var(--police-titre)}
h1{letter-spacing:-.01em}
/* fond anime REEL, identique a avpatrimoine.fr (assets/css/style.css) --
   demande explicite "sers toi du script dans le dossier AVPATRIMOINE-SITE",
   apres plusieurs passes de reproduction CSS pure jugees insatisfaisantes.
   body::before est le degrade STATIQUE de repli (memes teintes que le
   ShaderGradient), visible pendant le chargement, hors-ligne, ou si le CDN
   est bloque ; #gradient-bg est le point de montage du canvas WebGL (module
   ES en fin de fichier, deja ecrit, simplement reactive ici). */
body::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:linear-gradient(115deg,#f2e8d5,#c8dba0 48%,#92c461);opacity:.32}
#gradient-bg{position:fixed;inset:0;z-index:-1;pointer-events:none}
/* apparition en fondu du canvas WebGL (identique au site) : evite un "pop"
   brutal par-dessus le degrade statique une fois le module charge. */
#gradient-bg canvas{animation:fond-apparait .8s ease-out both}
@keyframes fond-apparait{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){#gradient-bg canvas{animation:none}}
/* voile blanc + grain au-dessus du canvas (identique au site) : adoucit les
   teintes vives du shader (#ffbd7a/#bdd470/#b1e7f2) vers la brume pastel
   presque monochrome observee sur le rendu reel, plutot qu'un degrade cru. */
#gradient-bg::after{content:"";position:absolute;inset:0;
  background-color:rgba(255,255,255,.8);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.08'/%3E%3C/svg%3E")}
/* @media print{#gradient-bg{display:none!important}} deja couvert plus bas
   dans le bloc @media print general (garde une seule source de verite). */
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}

/* ---- barre de navigation / sidebar : verre depoli neutre, SANS couleur
   propre (demande explicite) -- meme recette que .site-header sur
   avpatrimoine.fr (rgba(255,255,255,.72) + blur(16px) saturate(1.5)), cf.
   templates/base.html + assets/css/style.css du site public. Le fond anime
   (body::after ci-dessus) transparait a travers ce verre plutot que d'etre
   peint ici. */
.topbar{background:rgba(255,255,255,.72);
  backdrop-filter:blur(20px) saturate(1.6);-webkit-backdrop-filter:blur(20px) saturate(1.6);
  border-bottom:none;position:sticky;top:0;z-index:10;
  box-shadow:0 0 0 rgba(3,60,32,0);transition:box-shadow .25s ease}
/* meme mecanique que .site-header.is-scrolled sur avpatrimoine.fr : l'ombre
   n'existe pas au repos (scrollTop<=8px), apparait en fondu au-dela -- pas
   un redimensionnement de la barre, juste un rehaussement au scroll (cf.
   initOmbreScrollSidebar()). */
.topbar.is-scrolled{box-shadow:2px 0 30px -12px rgba(3,60,32,.45)}
.topbar-in{position:relative;max-width:1200px;margin:0 auto;padding:10px 20px;
  display:flex;gap:10px;align-items:center;
  overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.topbar-in::-webkit-scrollbar{display:none}
.tab{flex:0 0 auto}
/* flex + centrage sur les 2 axes plutot qu'un vertical-align au pif : les
   icones SVG (icone_ou_emoji) ne sont plus de simples emoji inline, un
   vertical-align fixe les desalignait du texte selon le contexte (bug reel
   signale -- "les icones ne sont pas alignees par rapport a leur texte"). */
.tab-ic{display:inline-flex;align-items:center;justify-content:center}
/* icones inline (currentColor, cf. icone_ou_emoji) : taille fixe en CSS,
   remplace le width/height:100% de l'export d'origine -- suit la couleur du
   texte du bouton (encre au repos, vert de marque actif) au lieu d'une
   teinte figee. */
.tab-ic svg{width:18px;height:18px;display:block;fill:currentColor}
/* couleur du libelle fixee explicitement : .tab/.tab.on/.tab:hover changent
   `color`, qui se propage par heritage a .tab-ic ET .tab-lbl -- une valeur
   posee ICI, directement sur .tab-lbl, gagne toujours sur une valeur heritee
   (peu importe la specificite du parent) et decouple donc le texte de l'etat
   actif/survol. Seule l'icone (qui n'a pas sa propre regle de couleur, cf.
   .tab-ic svg{fill:currentColor} ci-dessus) continue de suivre `color` et
   change donc seule -- demande explicite "le texte reste toujours dans la
   couleur de depart, seule l'icone change". */
.tab-lbl{display:inline-block;margin-left:.4em;color:var(--mut)}
.fiche-subnav{display:none}
.btn-sidebar-toggle{display:none}
/* habillage des items de sous-navigation : en BASE (pas dans le bloc
   sidebar min-width:900) car ces classes servent aussi hors sidebar -- le
   volet Simulateurs (.sim-flyout) et le tiroir mobile les affichent a
   toutes les largeurs d'ecran. Selecteur a 2 classes (.tab.subnav-item) :
   la regle .tab, declaree PLUS BAS, ecraserait sinon taille et graisse a
   specificite egale. */
.tab.subnav-item{font-size:11.5px;padding:7px 12px 7px 10px;font-weight:450}
/* Gestes vers l'EXTERIEUR (prise de RDV, recommandation), destines aux
   CLIENTS sur leur lien a token -- masques par defaut, donc absents de
   l'espace conseiller ; generate_client_reports.py les reactive.
   margin-top:auto les pousse en bas de la colonne (la sidebar est un flex
   column) : ils restent hors du flux de navigation, ou l'oeil ne les cherche
   pas, et ne s'intercalent pas entre les onglets et la sous-nav de fiche. */
.tab-actions{display:none;flex-direction:column;gap:6px;margin-top:auto;padding-top:12px;
  border-top:1px solid rgba(3,60,32,.14);order:100}
/* menu "Me recommander" : meme composant que le menu au clic sur la vignette
   video de "Nous rejoindre" (avpatrimoine.fr, .video-choice) -- verre, rayon
   14px, survol vert pastel. Il est ancre au bouton de la sidebar (position
   calculee en JS) au lieu d'etre centre sur une vignette, et pose en enfant
   direct de body : la sidebar porte un backdrop-filter, qui ferait d'elle le
   containing block d'un descendant position:fixed. */
.reco-menu{position:fixed;z-index:1004;display:flex;flex-direction:column;gap:2px;padding:8px;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);
  border:1px solid var(--glass-brd);border-radius:14px;box-shadow:var(--glass-shadow-hover);
  animation:flyoutApparait .18s cubic-bezier(.4,0,.2,1)}
.reco-menu[hidden]{display:none}
.reco-menu a,.reco-menu button{display:flex;align-items:center;gap:9px;
  padding:9px 16px;border:none;background:none;border-radius:9px;
  font:inherit;font-size:13px;font-weight:600;color:var(--ink);
  cursor:pointer;text-align:left;white-space:nowrap;text-decoration:none}
@media (hover:hover) and (pointer:fine){
  .reco-menu a:hover,.reco-menu button:hover{background:rgba(146,196,97,.16);color:var(--grad1)}
}
.subnav-puce{display:inline-block;width:8px;height:8px;border-radius:50%}
.subnav-logo{display:flex;align-items:center;justify-content:center}
.subnav-logo img{width:100%;max-width:20px;height:14px;object-fit:contain}
/* marque carree (cf. SRC_MARQUES) : elle a besoin de hauteur, pas de
   largeur -- le gabarit 20x14 du logo complet la rabougrirait. */
.subnav-marque{width:18px;flex:0 0 18px}
.subnav-marque img{max-width:18px;height:18px}
/* etiquette de groupe "Par produits" : meme vocabulaire typographique que
   .lab/label du reste du systeme (majuscules, .06em, mauve sourd) plutot
   qu'une nouvelle echelle -- separe visuellement Recap general/Financement
   (racine) des sections par source (sous-menu indente juste en dessous). */
.subnav-groupe{font-size:10px;letter-spacing:.06em;text-transform:uppercase;
  font-weight:700;color:var(--mut2);margin:10px 0 2px;padding:0 12px}
.tab.subnav-item-produit{padding-left:20px;gap:4px}
.subnav-fleche{color:var(--mut2);font-size:13px;flex:0 0 auto}
/* sous-menu "Simulateurs" en volet flottant (demande explicite : "doit
   s'ouvrir comme un sous-menu, a droite et legerement par-dessus le bouton
   SIMULATEURS") -- au clic sur toggleSimFlyout() ci-dessous plutot
   qu'integre dans le fil de la colonne (cf. fiche-subnav, reserve aux
   sous-nav de fiche/dashboard). Position calculee en JS (getBoundingClientRect
   de l'onglet) plutot qu'un simple position:relative/absolute imbrique : un
   <a> ne peut pas contenir d'autres <a> (les 5 liens de simulateurs), le
   volet doit donc etre un sibling positionne, pas un enfant de l'onglet. */
.sim-flyout{position:fixed;z-index:20;display:none;min-width:230px;max-width:280px;
  background:var(--card);border-radius:16px;padding:8px;box-shadow:var(--neu-out-hover)}
/* apparition depuis le bord GAUCHE (cote onglet declencheur), pas depuis le
   centre : noteApparait (bulle qui descend) donnerait un volet qui tombe du
   mauvais cote -- un sous-menu doit grandir depuis son origine physique. */
@keyframes flyoutApparait{
  0%{opacity:0;transform:translateX(-4px) scale(.96)}
  100%{opacity:1;transform:translateX(0) scale(1)}
}
.sim-flyout.open{display:block;transform-origin:left top;
  animation:flyoutApparait .22s var(--ease-overshoot)}
.sim-flyout .subnav-groupe{padding:0 10px}
/* 1 ligne par simulateur (demande explicite) : intitules courts (cf.
   SIMULATEURS_LISTE), police reduite et graisse allegee -- nowrap garde
   la garantie visuelle, le volet s'elargit a la mesure (max 280px). */
/* meme taille/graisse que les items de la sous-nav de fiche (.tab.subnav-item,
   11.5px/600) : le volet Simulateurs vit dans la meme colonne, une echelle
   propre y cassait la coherence typographique (demande explicite). */
.sim-flyout .subnav-item{border-radius:10px;white-space:nowrap;display:flex;align-items:center}
.sim-flyout .tab-lbl{overflow:visible;text-overflow:clip;flex:1 1 auto}
/* ===== menu mobile : copie du systeme avpatrimoine.fr ("modern slide
   menu") -- hamburger dans la barre du haut, tiroir en verre depoli qui
   glisse depuis la droite, voile sombre cliquable sur le reste de la page.
   En dessous de 900px seulement : au-dela, .nav-drawer est un simple
   conteneur transparent (display:contents) et la sidebar habituelle prend
   le relais. */
.nav-toggle{display:none}
.nav-overlay{position:fixed;inset:0;z-index:998;background:rgba(15,25,18,.22);
  opacity:0;visibility:hidden;transition:opacity .3s ease, visibility .3s ease}
body.nav-mobile-open .nav-overlay{opacity:1;visibility:visible}
.nav-drawer{display:contents}
@media (max-width:899.98px){
  .topbar-in{padding:9px 14px;gap:8px}
  /* hamburger 3 traits -> croix (memes valeurs que .nav-toggle du site
     public) ; au-dessus du tiroir pour rester cliquable une fois ouvert. */
  .nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;
    width:40px;height:40px;border:none;background:transparent;cursor:pointer;flex:none;
    padding:0;margin-left:auto;position:relative;z-index:1002}
  .nav-toggle span{display:block;width:100%;height:2px;background:var(--ink);border-radius:2px;
    transition:transform .25s ease, opacity .25s ease}
  body.nav-mobile-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  body.nav-mobile-open .nav-toggle span:nth-child(2){opacity:0}
  body.nav-mobile-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  /* backdrop-filter sur la barre creerait un "containing block" pour le
     tiroir position:fixed (il serait confine a la hauteur de la barre) : le
     flou passe sur un pseudo-element, meme rendu visuel, position:fixed
     libere -- meme correctif que sur avpatrimoine.fr. */
  .topbar{backdrop-filter:none;-webkit-backdrop-filter:none}
  .topbar::before{content:"";position:absolute;inset:0;z-index:-1;
    backdrop-filter:blur(20px) saturate(1.6);-webkit-backdrop-filter:blur(20px) saturate(1.6)}
  /* barre hissee au-dessus du voile (998) menu ouvert, sinon le hamburger
     (enfant de la barre, z-index:10) serait assombri et inaccessible. */
  body.nav-mobile-open .topbar{z-index:1001}
  .nav-drawer{display:flex;position:fixed;top:0;right:0;bottom:0;width:min(78vw,320px);
    z-index:999;flex-direction:column;align-items:stretch;gap:7px;
    background:rgba(255,255,255,.72);
    backdrop-filter:blur(26px) saturate(1.4);-webkit-backdrop-filter:blur(26px) saturate(1.4);
    border-left:1px solid rgba(255,255,255,.6);border-radius:26px 0 0 26px;
    padding:70px 18px calc(22px + env(safe-area-inset-bottom));overflow-y:auto;
    /* pan-y : le defilement vertical du tiroir reste natif, l'axe horizontal
       est laisse au geste JS de fermeture (initGesteTiroir). */
    touch-action:pan-y;
    transform:translateX(105%);transition:transform .38s cubic-bezier(.16,.8,.3,1);
    box-shadow:-18px 0 60px rgba(15,25,18,.2)}
  body.nav-mobile-open .nav-drawer{transform:translateX(0)}
  .nav-drawer .tab{display:flex;align-items:center;white-space:normal;text-align:left}
  .nav-drawer .tab-lbl{flex:1 1 auto}
  .nav-drawer .fiche-subnav{display:flex;flex-direction:column;gap:2px;margin:10px 0 0;
    padding-top:10px;border-top:1px solid rgba(3,60,32,.14)}
  .nav-drawer .fiche-subnav .tab{display:flex!important}
  .nav-drawer .brand{margin:auto 0 0;white-space:normal;font-size:10.5px;line-height:1.45;
    min-width:0;overflow-wrap:break-word}
  /* le volet Simulateurs doit s'afficher AU-DESSUS du tiroir (999). */
  .sim-flyout{z-index:1003}
}
/* pastille qui suit la souris au survol d'un groupe de boutons (menu du haut,
   groupes ".seg"...), et se pose sur l'element actif au repos quand il y en
   a un -- sur le verre CLAIR de la nav (cf. .topbar plus haut), un lavis vert
   fait office de "pilule active" (le blanc translucide d'origine, pense pour
   un fond fonce, devenait invisible sur ce fond clair). */
.tab-glow{position:absolute;top:0;left:0;height:0;width:0;opacity:0;
  background:rgba(3,60,32,.12);border-radius:12px;
  /* position anime via transform (composite, GPU) plutot que left/top (mise
     en page) -- largeur/hauteur restent en layout car les faire suivre par un
     scale() non-uniforme deformerait border-radius/border. */
  /* meme courbe et meme duree que le survol des boutons (--t-base) : le halo
     et le bouton qu'il souligne bougent desormais ensemble, au lieu de deux
     rythmes concurrents. */
  transition:transform var(--t-base), width var(--t-base),
    height var(--t-base), opacity var(--t-fast);
  pointer-events:none;z-index:0}
/* chaque onglet porte sa PROPRE pastille de verre depoli (fond translucide +
   flou), plutot qu'un seul grand panneau de verre sur toute la colonne --
   demande explicite "la ou il y a les textes, que ce soit en verre depoli" :
   le degrade anime de .topbar reste visible, cru, dans les espaces entre les
   onglets et pres du logo. */
/* pas de police dediee ici (herite du corps de texte, cf. body) :
   .main-nav a:not(.btn) sur avpatrimoine.fr utilise var(--font-body), la
   meme police que le reste du site -- fidele a la charte reelle plutot
   qu'une police d'affichage inventee pour la nav. */
.tab{position:relative;z-index:1;display:inline-block;padding:9px 16px;color:var(--mut);font-weight:500;
  font-size:12.5px;border-radius:14px;cursor:pointer;white-space:nowrap;
  /* blanc quasi plein (pas la teinte creme du degrade) + ombre chaude fine :
     un ton translucide proche des couleurs du degrade (ex. FCFAEE, l'un des
     3 stops) se fondait dedans sans contraste visible, le degrade anime
     paraissait alors uniforme/statique -- corrige suite a un retour direct. */
  background:rgba(255,255,255,.72);
  box-shadow:0 1px 3px rgba(160,140,40,.14);
  backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);
  transition:color var(--t-fast), background var(--t-fast), box-shadow var(--t-fast)}
/* l'onglet actif se distingue par un effet "enfonce" (ombres internes qui
   suggerent un bouton pousse dans la surface) plutot qu'un aplat de couleur
   -- demande explicite "bouton enfonce plutot que de le surligner avec une
   couleur". Ombre sombre en haut (la lumiere semble venir du bas, creusant
   le bouton) + liseret clair tres fin en bas (le "rebord" qui capte un peu
   de lumiere) : meme recette qu'un bouton physique presse, pas un highlight. */
.tab.on{color:var(--grad1);font-weight:700;background:rgba(3,60,32,.06);
  box-shadow:inset 0 2px 4px rgba(3,60,32,.22), inset 0 -1px 0 rgba(255,255,255,.6)}
.tab:hover{text-decoration:none;color:var(--grad1)}
/* retour direct "il manque l'effet au survol sur synthese globale et chacun
   des produits" -- .tab:hover ne changeait QUE la couleur du texte, un
   changement trop discret sur un fond qui ne bouge pas (contrairement aux 3
   onglets racine, deja distingues par leur propre pastille de verre). Un
   leger lavis + une ombre plate (memes proportions que .card:hover) donnent
   un retour tactile net, sans empieter sur l'effet "enfonce" de .tab.on
   (:not(.on) exclu explicitement -- l'etat actif ne doit pas bouger au
   survol). */
.tab:not(.on):hover{background:rgba(3,60,32,.05);box-shadow:0 2px 6px rgba(3,60,32,.12)}
/* pression : TOUS les boutons de nav (onglets racine, sous-nav, volet
   Simulateurs) s'enfoncent exactement comme l'onglet actif (.on ci-dessus)
   -- demande explicite "que tous les boutons reagissent pareil". */
.tab:not(.on):active{background:rgba(3,60,32,.06);
  box-shadow:inset 0 2px 4px rgba(3,60,32,.22), inset 0 -1px 0 rgba(255,255,255,.6)}
/* Recherche est un point d'entree a part (recherche libre plutot qu'un onglet
   de contenu comme les 3 autres) -- une fine separation le distingue du
   groupe Dashboard/Synthese/Simulateurs, demande explicite. */
.tab[data-tab="recherche"]{margin-right:10px;padding-right:22px;
  border-right:1px solid rgba(3,60,32,.14)}
/* Recherche en direct dans la sidebar (demande explicite) : meme moteur que
   le champ de la page d'accueil (matchPersonnes/personnesIndex, cf.
   initRechercheSidebar) -- lettres suivantes possibles et message "Entree"
   affiches dans une bulle sous le champ plutot que le fantome en incrustation
   dans le champ (#gghost de la page d'accueil, trop juste sur 224px). */
/* z-index superieur aux autres .tab (tous a 1, cf. regle .tab de base) : la
   bulle de suggestion (.gnote-side) deborde SOUS le champ, par-dessus les
   onglets Dashboard/Synthese/Simulateurs qui suivent -- a z-index egal entre
   des elements positionnes, l'ordre DOM tranche, et ces onglets suivent
   .tab-recherche-live dans le template, donc ils passaient dessus.
   overflow:visible EXPLICITE : la regle .tab de base met overflow:hidden
   (troncature du libelle des autres onglets) -- heritee ici via la classe
   .tab partagee, elle rognait purement et simplement la bulle avant meme la
   question de l'ordre d'empilement (bug reel confirme via elementsFromPoint :
   la bulle n'apparaissait dans AUCUNE pile de points pourtant a l'interieur
   de son propre rectangle -- signe d'un rognage, pas d'un simple recouvrement). */
.tab-recherche-live{display:flex!important;align-items:center;cursor:default;z-index:5;overflow:visible!important}
.gbox-side{position:relative;flex:1 1 auto;min-width:0}
/* champ de recherche moins gras que les onglets (700) : c'est une zone de
   SAISIE, pas un libelle de navigation -- demande explicite. */
.gsearch-side{width:100%;padding:0;font:inherit;font-size:12.5px;font-weight:500;
  color:var(--ink);border:none;background:transparent;outline:none}
.gsearch-side::placeholder{color:var(--mut);font-weight:500}
/* seul champ de saisie de l'app sans indicateur de focus visible (audit) --
   meme anneau que .gsearch/.search/.sim-field, adapte a un champ sans
   bordure propre (le contour suit directement le rectangle du champ). */
.gsearch-side:focus{box-shadow:0 0 0 2px rgba(31,171,111,.35);border-radius:6px}
/* position:fixed + placement JS (positionnerNoteRecherche, meme technique
   que le volet Simulateurs) : en absolute sous le champ, la bulle de
   220-260px recouvrait les onglets Dashboard/Synthese dans la colonne de
   190px (bug reel sur capture) -- elle s'ouvre desormais A DROITE de la
   sidebar, par-dessus la page, et se replie sous le champ seulement quand
   la place a droite manque (barre horizontale etroite, tiroir mobile). */
.gnote-side{position:fixed;min-width:220px;max-width:260px;
  padding:9px 13px;border-radius:12px;background:var(--card);box-shadow:var(--neu-out-hover);
  font-size:11.5px;font-weight:600;color:var(--mut);line-height:1.4;z-index:1003;
  display:none;white-space:normal}
/* petit "pop" a l'apparition (impeccable /delight : moment de decouverte de
   la recherche en direct, nouvelle cette session) -- reprend --ease-overshoot
   (meme signature de mouvement que avpatrimoine.fr, deja utilisee sur les
   modales) plutot qu'inventer une nouvelle courbe. Ne rejoue PAS a chaque
   frappe : classList.add("on") est un no-op si la classe est deja presente,
   l'animation ne tourne donc qu'une fois par ouverture reelle de la bulle,
   pas a chaque lettre tapee -- reste discret meme apres des centaines
   d'utilisations. Jamais depuis scale(0) : depart a .96, pas 0. */
@keyframes noteApparait{
  0%{opacity:0;transform:translateY(-4px) scale(.96)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}
.gnote-side.on{display:block;animation:noteApparait .28s var(--ease-overshoot)}
.gnote-side b{color:var(--ink)}
.topbar .brand{position:relative;z-index:1;margin-left:auto;color:var(--mut2);font-size:12px;
  flex:0 0 auto;white-space:nowrap}
/* logo AVP en haut a gauche : toujours visible, y compris sur le rapport
   interne aux cotes des onglets -- sur les fiches clients (cf.
   generate_client_reports.py), il reste seul une fois les onglets caches.
   Plus de pastille blanche : reliquat de l'ancienne sidebar en degrade vert
   plein (le monogramme y etait illisible tel quel) -- la nav est desormais
   un verre neutre sur fond clair, le logo se pose directement dessus,
   demande explicite ("sans fond blanc, dans tous les cas"). */
#topbar-logo{position:relative;z-index:1;height:20px;width:auto;flex:0 0 auto;object-fit:contain}
/* signature "Mikasa by" juste au-dessus du logo AVP : reprend la mise en forme
   de la page de connexion (nom en degrade, mention en petites capitales) pour
   qu'on comprenne que l'outil est developpe PAR AV Patrimoine. Masquee en
   barre horizontale (desktop etroit), ou seul le logo tient. */
#topbar-signature{display:none;position:relative;z-index:1;font-size:11px;
  letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--mut2);
  line-height:1;white-space:nowrap}
/* "by" en minuscules (demande explicite) : le text-transform:uppercase de
   la signature ne s'applique qu'a "MIKASA". */
#topbar-signature i{font-style:normal;font-weight:600;opacity:.75;text-transform:lowercase}
/* version carree du logo (favicon_avp.png, cf. generate_report.py) reservee
   au mode sidebar REPLIE : le monogramme plat 804x374 n'a pas la place de
   s'afficher sans distorsion dans les 68px de la colonne repliee (meme
   probleme de fond que le bug d'etirement du logo complet, cf. commentaire
   plus bas) -- masquee partout ailleurs. */
#topbar-logo-mini{display:none}

.wrap{max-width:1200px;margin:0 auto;padding:22px 20px 60px}
/* ---- mode sidebar (>=900px) : la meme barre devient une colonne fixe a
   gauche plutot qu'une ligne collante en haut -- aucun changement de DOM,
   uniquement une reorganisation CSS (flex-direction, position), ce qui
   laisse render()/initGlowMenu/le glow des onglets fonctionner sans
   modification (ils lisent offsetLeft/offsetTop, deja generiques). Sous ce
   seuil, la barre garde exactement sa presentation actuelle (onglets
   horizontaux collants). Placee apres la regle de base .wrap (et non avec
   les autres regles .topbar plus haut) : a specificite egale, l'ordre
   source tranche, donc cette regle doit suivre .wrap pour gagner la
   cascade sur margin-left. */
@media (min-width:900px){
  :root{--sidebar-w:224px; --sidebar-w-collapsed:68px}
  .topbar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);
    border-bottom:none;border-right:1px solid rgba(3,60,32,.10);
    transition:width var(--ease-glass), box-shadow .25s ease}
  body.sidebar-collapsed .topbar{width:var(--sidebar-w-collapsed)}
  .topbar-in{flex-direction:column;align-items:stretch;max-width:none;
    height:100%;padding:18px 14px;overflow-x:visible;overflow-y:auto;gap:7px}
  /* align-self:flex-start necessaire ICI : .topbar-in a align-items:stretch
     (colonne verticale, cf. juste au-dessus) -- sans ca, ce logo (element
     remplace avec un ratio intrinseque) se voit etire en largeur sur toute
     la colonne par le stretch flex, et son contenu bitmap se retrouve
     ecrase/deforme via object-fit (logo "eclate", bug reel observe et
     corrige des la 1ere verification manuelle en navigateur). */
  /* sidebar developpee : logo agrandi (demande explicite "en gros") --
     hauteur reelle du monogramme desormais, plus de pastille blanche pour
     compenser une petite taille de base. Centre dans la colonne (demande
     explicite), pas cale a gauche. */
  #topbar-logo{margin:0 6px 14px;height:38px;width:auto;align-self:center}
  body.sidebar-collapsed #topbar-logo{display:none}
  /* en colonne (sidebar), la signature s'affiche juste au-dessus du logo.
     Le nom porte le degrade de la marque, comme sur la page de connexion. */
  /* "Mikasa" au vert plein du logo (et non en degrade) : demande explicite
     d'un seul vert, celui de la marque, partout. */
  #topbar-signature{display:block;align-self:center;margin:2px 6px 5px;text-align:center;
    color:var(--green-line)}
  #topbar-signature i{color:var(--mut2)}
  body.sidebar-collapsed #topbar-signature{display:none}
  /* sidebar repliee : logo plus petit que la version developpee (demande
     explicite), toujours sans fond -- la version carree (favicon_avp.png)
     reste necessaire ici (cf. commentaire au-dessus de la regle de base
     #topbar-logo-mini), seule sa taille change. */
  body.sidebar-collapsed #topbar-logo-mini{display:block;width:26px;height:26px;
    object-fit:contain;margin:0 auto 14px;align-self:center}
  /* order:101 (au-dela du .brand a order:99, seul autre element repousse en
     bas de la colonne) : place le bouton tout en bas de la sidebar quelle
     que soit sa position dans le DOM (demande explicite), sans devoir
     deplacer la balise elle-meme dans le gabarit HTML statique. */
  .btn-sidebar-toggle{display:flex;align-items:center;justify-content:center;
    width:26px;height:26px;margin:10px 6px 4px auto;flex:0 0 auto;align-self:flex-end;order:101;
    border:none;border-radius:8px;background:rgba(3,60,32,.08);color:var(--mut);
    font-size:12px;cursor:pointer;
    transition:background var(--t-fast),color var(--t-fast),box-shadow var(--t-fast)}
  /* meme grammaire que les onglets (.tab:hover / .tab:active plus haut) :
     survol = lavis vert + ombre plate, pression = "enfonce" par ombres
     internes. Le scale(.9) d'origine faisait de ce bouton le seul de la
     colonne a changer de taille sous le doigt -- une reaction etrangere au
     reste de la sidebar. */
  .btn-sidebar-toggle:hover{background:rgba(3,60,32,.14);color:var(--grad1);
    box-shadow:0 2px 6px rgba(3,60,32,.12)}
  .btn-sidebar-toggle:active{background:rgba(3,60,32,.06);
    box-shadow:inset 0 2px 4px rgba(3,60,32,.22), inset 0 -1px 0 rgba(255,255,255,.6)}
  body.sidebar-collapsed .btn-sidebar-toggle{align-self:center;margin:10px auto 4px}
  /* pas de width:100% (etirait chaque pastille bord a bord, ne laissant
     quasiment plus de degrade cru visible entre les onglets en colonne) --
     align-items:stretch sur .topbar-in etire quand meme chaque onglet a
     largeur du conteneur MOINS ces marges, ce qui laisse une bande de
     degrade anime visible de chaque cote, demande explicite suite a un
     retour ("je ne vois pas ... les onglets portent leur pastille"). */
  .tab{margin:0 5px;display:flex;align-items:center;padding:10px 12px;white-space:nowrap;overflow:hidden}
  /* en colonne, la separation de Recherche passe d'un trait vertical (mode
     ligne, cf. regle de base) a un trait horizontal sous l'onglet, avec plus
     de marge qu'entre 2 onglets normaux -- c'est un champ de saisie, pas un
     lien de nav, demande explicite de le "decaler" visuellement du reste. */
  .tab[data-tab="recherche"]{margin-right:0;padding-right:12px;border-right:none;
    margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid rgba(3,60,32,.14)}
  .tab-ic{flex:0 0 auto;width:1.3em;text-align:center}
  .tab-lbl{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;
    transition:opacity var(--t-fast)}
  body.sidebar-collapsed .tab-lbl{opacity:0;width:0;margin-left:0}
  /* chevron "sous-menu" de l'onglet Simulateurs : signale que le clic ouvre
     un volet lateral (pas une simple navigation), meme symbole › que les
     items du volet. Masque quand la sidebar est repliee (plus de place). */
  .tab-sousmenu-ind{flex:0 0 auto;margin-left:auto;color:var(--mut2);font-weight:700;
    transition:opacity var(--t-fast)}
  body.sidebar-collapsed .tab-sousmenu-ind{opacity:0;width:0;overflow:hidden}
  /* repliee, .tab garde sa pleine largeur (pastille circulaire) mais
     .tab-lbl s'efface a largeur 0 -- sans recentrage explicite, l'icone
     reste calee a gauche (justify-content:flex-start par defaut) plutot que
     centree dans le rond, bug reel signale sur capture ("les icones ne sont
     toujours pas alignees" en mode replie specifiquement). */
  body.sidebar-collapsed .tab{justify-content:center;margin:0 auto}
  /* sidebar repliee (68px) : meme traitement que .tab-lbl -- seule l'icone
     loupe reste visible, le champ de recherche en direct n'a pas la place. */
  body.sidebar-collapsed .gbox-side{opacity:0;flex:0 0 0;width:0;overflow:hidden}
  .fiche-subnav{display:flex;flex-direction:column;gap:2px;margin:10px 0 0;
    padding-top:10px;border-top:1px solid rgba(3,60,32,.14)}
  body.sidebar-collapsed .fiche-subnav{display:none}
  /* les fiches client (generate_client_reports.py) masquent les onglets
     globaux via une balise de style separee, injectee juste apres l'ouverture
     du body (cf. _HIDE_TABS_STYLE : selecteurs [data-tab=...] passes en
     display none important), sans objet sur un export a un seul foyer --
     mais la sous-nav par source REUTILISE la classe ".tab" (meme
     habillage). Selecteur a specificite superieure (2 classes) : gagne quel
     que soit l'ordre des balises de style dans le document, pour que la
     sous-nav reste visible sur les fiches client (voulu : cf. demande
     "notamment pour les fiches clients"). ATTENTION, deux pieges verifies a
     la dure sur cette ligne : 1) ne jamais ecrire en toutes lettres, meme
     dans un commentaire, la sequence qui fermerait une vraie balise de
     style HTML -- cette feuille entiere vit entre 2 telles balises, qui se
     terminent des la 1ere occurrence de cette sequence, commentaire ou pas
     (element "raw text" HTML, le tokenizer ignore la syntaxe CSS) ; 2) un
     commentaire CSS ne s'imbrique pas -- ne jamais faire figurer un exemple
     de commentaire CSS complet a l'interieur de celui-ci, son symbole de
     fin fermerait prematurement celui qui l'englobe et invaliderait tout ce
     qui suit jusqu'au prochain point-virgule/accolade (les 2 bugs reels
     rencontres et corriges ici au tout premier essai). */
  .fiche-subnav .tab{display:flex!important}
  /* pied de sidebar : la regle de base (barre horizontale) impose
     white-space:nowrap -- dans la colonne de 190px, la date deborde. Ici le
     texte revient a la ligne et retrecit pour tenir dans la largeur. */
  .topbar .brand{margin:auto 6px 0;order:99;white-space:normal;
    font-size:10.5px;line-height:1.45;min-width:0;overflow-wrap:break-word}
  body.sidebar-collapsed .topbar .brand{display:none}
  /* marge de contenu calee sur la largeur COURANTE de la sidebar (demande
     explicite : "quand la sidebar se ferme, l'espace de la page s'agrandit,
     sinon aucune utilite de la fermer" -- remplace l'ancienne regle inverse
     de marge fixe, decidee quand le repli etait rare ; il arrive desormais
     a chaque scroll). La marge accompagne la transition de largeur de la
     sidebar ; les ajusteurs de graphiques sont rejoues apres la bascule
     (cf. replierSidebar/deplierSidebar). */
  /* au-dela de 1600px + sidebar, le reste de l'espace partait tout entier a
     droite (encarts colles a la sidebar, grand vide sur le bord droit sur un
     ecran large) -- la gouttiere devient symetrique des que la place le
     permet (max() : jamais moins que les 20px minimum d'origine). */
  :root{--sidebar-w-actuelle:var(--sidebar-w)}
  body.sidebar-collapsed{--sidebar-w-actuelle:var(--sidebar-w-collapsed)}
  .wrap{
    margin-left:calc(var(--sidebar-w-actuelle) + max(20px, (100vw - var(--sidebar-w-actuelle) - 1600px) / 2));
    margin-right:max(20px, (100vw - var(--sidebar-w-actuelle) - 1600px) / 2);
    max-width:1600px;
    transition:margin-left var(--ease-glass), margin-right var(--ease-glass);
  }
  body.landing .topbar{display:none}
  body.landing .wrap{margin-left:0}
}
/* fondu court a chaque changement de page (cf. render()) -- evite le
   teleportage brut d'un onglet/foyer a l'autre sans ralentir la navigation. */
#app{opacity:0;transition:opacity .15s ease-out}
#app.fade-in{opacity:1}
.tbl-centre th,.tbl-centre td{text-align:right}
.tbl-centre .col-gauche{text-align:left}
/* tuile generique neumorphique : meme couleur que le fond, pas de bordure,
   relief uniquement via la double ombre douce (--neu-out) */
.card{background:var(--card);
  border:none;
  border-radius:var(--radius);padding:22px 24px;margin-bottom:var(--gap);
  box-shadow:var(--neu-out);
  transition:box-shadow var(--t-base), transform var(--t-base), background var(--t-base)}
.card:hover{box-shadow:var(--neu-out-hover);background:#fff}
h2.sec{margin:0 0 14px;font-size:17px;color:var(--navy);font-weight:600;letter-spacing:-.005em}

/* ---- en-tete foyer ---- */
.foyer-head{display:flex;align-items:flex-end;justify-content:space-between;
  flex-wrap:wrap;gap:8px;margin:6px 0 18px}
/* echelle de graisses (Radio Canada 300 a 700) : surtitre et corps du
   titre en Light 300, nom du client en 700, la plus forte -- le contraste
   porte la hierarchie, pas la taille seule. */
.foyer-head .sur{color:var(--mut2);font-size:13px;margin-bottom:2px;font-weight:300;
  letter-spacing:.04em;text-transform:uppercase}
.foyer-head h1{margin:0;font-size:25px;color:var(--mut);font-weight:300}
/* nom du client : plus epais que le reste du titre (demande explicite), au
   gras REEL de Radio Canada (700, sa graisse la plus forte). */
.foyer-head h1 b{color:var(--navy);text-transform:uppercase;letter-spacing:.2px;font-weight:700}
/* vraie icone vectorielle au lieu de l'emoji calendrier (rendu different et
   souvent laid selon la plateforme) -- suit la couleur du texte. */
.bilan-date{color:var(--green-ink);font-weight:700;display:inline-flex;align-items:center;gap:6px}
.bilan-date .ic-cal{width:15px;height:15px;flex:0 0 auto;fill:currentColor}

/* ---- decrochage visuel (fiche client) : detache un bloc (produits,
   performance...) de ce qui l'entoure par un espace marque + une ligne fine,
   plutot qu'un simple enchainement de cartes -- lisible comme un vrai
   chapitre de la fiche. */
.produits-decrochage{margin-top:34px;padding-top:28px;border-top:1px solid var(--line);
  margin-bottom:30px}

/* ---- sous-navigation par source (fiche client) : un en-tete (logo + nom
   de la societe de gestion) au-dessus des cartes de chaque source, sert
   d'ancre a la sous-navigation de la sidebar (cf. remplirSousNavFiche). */
.fiche-section{scroll-margin-top:70px}
.fiche-section + .fiche-section{margin-top:30px}
.src-section-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}

/* ---- cartes synthese (bento 2 colonnes) ---- */
/* minmax(0,_) plutot qu'un 1fr/2fr/3fr nu (cf. .bento-produit) : sans ca, un
   tableau large (ex. "Par societe de gestion") a l'interieur d'une case
   empeche la colonne de retrecir sous sa largeur de contenu et pousse toute
   la page plus large que l'ecran sur mobile, malgre le overflow-x:auto du
   .tbl-scroll (qui ne peut jamais s'activer si la grille refuse deja de
   retrecir). */
.vue-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap);
  margin-bottom:var(--gap);align-items:stretch}
/* Stats AVP, bas de page : colonnes DESEQUILIBREES a dessein -- "Detail par
   partenaire" (6 colonnes courtes) se contente de 42 %, ce qui donne a
   "Financements en cours" (nom de foyer + libelle + 3 montants) les 58 %
   dont il a besoin pour ne plus declencher de scroll horizontal. */
.vue-grid-global{grid-template-columns:minmax(0,39fr) minmax(0,61fr)}
/* cartes camembert : etirees a la hauteur de leur voisine (tableau) par
   align-items:stretch, leur contenu restait colle en haut avec un grand
   vide dessous. La zone graphique prend desormais la hauteur restante et
   centre legende + camembert dedans. */
.card-pie{display:flex;flex-direction:column}
.card-pie .pie-zone{flex:1;display:flex;align-items:center;justify-content:center;
  gap:28px;flex-wrap:wrap;min-height:0}
/* marge de securite : 4px de padding horizontal au lieu de 6 sur les 6
   colonnes de "Detail par partenaire" -- le ratio seul laissait 2px de
   deficit, un ecart trop fin pour etre stable d'une police/zoom a l'autre. */
.vue-grid-global > .card:first-child .tbl-compact th,
.vue-grid-global > .card:first-child .tbl-compact td{padding-left:4px;padding-right:4px}
@media (max-width:760px){.vue-grid-global{grid-template-columns:minmax(0,1fr)}}
.vue-grid .card{margin-bottom:0}
@media (max-width:760px){.vue-grid{grid-template-columns:minmax(0,1fr)}}
/* ligne Performance totale / Evolution du patrimoine : repartie 40/60 (au
   lieu de 50/50) pour donner plus de place au graphique d'evolution. Le
   margin-bottom du decrochage (30px) doit gagner sur celui, plus petit, de
   .vue-grid (var(--gap)) : selecteur a 2 classes = specificite superieure,
   peu importe l'ordre dans la feuille de style. */
.vue-grid-patrimoine{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}
.vue-grid.produits-decrochage{margin-bottom:30px}
@media (max-width:760px){.vue-grid-patrimoine{grid-template-columns:minmax(0,1fr)}}
/* bandeau vertical a gauche de "Par societe de gestion"/"Par type de
   produit" (Dashboard) : largeur fixe ~10% via flex-basis, meme hauteur que
   les 2 lignes grace a align-items:stretch sur le flex parent. */
.volume-affaires{flex:0 0 clamp(32px,4%,40px);margin-bottom:0;
  display:flex;align-items:center;justify-content:center;padding:16px 4px}
.volume-affaires span{writing-mode:vertical-rl;transform:rotate(180deg);
  font-weight:800;color:var(--navy);font-size:20px;letter-spacing:.03em;white-space:nowrap}
@media (max-width:760px){.volume-affaires{display:none}}
/* carte de France (Dashboard) : contour statique + points cliquables, zoom
   molette / pan a la souris via transform sur #carte-vp (cf. carteZoom/
   carteDragMove) -- pas de fond de carte charge au runtime. */
.carte-svg{width:100%;height:100%;cursor:grab;touch-action:none}
.carte-svg:active{cursor:grabbing}
/* transition douce sur le zoom molette / centrage au clic -- desactivee
   pendant le drag (classe .no-anim) pour que le pan suive la souris 1:1. */
#carte-vp{transition:transform .22s cubic-bezier(.25,.8,.35,1)}
#carte-vp.no-anim{transition:none}
.carte-contour{fill:#eef1fa;stroke:var(--line);stroke-width:1.2}
/* tracé des regions (visible + cliquable en permanence) et departements
   (reveles + cliquables au zoom via .zoom-dept, cf. carteAppliquerVue).
   fill:transparent (pas "none") + pointer-events:all pour que tout
   l'interieur de la forme reponde au clic, pas seulement le trait. */
.carte-region{fill-opacity:.65;stroke:rgba(44,39,64,.32);stroke-width:.9;cursor:pointer;pointer-events:all;
  transition:opacity .25s ease,stroke .25s ease,stroke-width .25s ease}
.carte-departements{opacity:0;transition:opacity .3s}
.carte-dept{fill-opacity:.45;stroke:rgba(44,39,64,.3);stroke-width:.45;pointer-events:none;
  transition:opacity .25s ease,stroke .25s ease,stroke-width .25s ease}
.carte-svg.zoom-dept .carte-departements{opacity:1}
.carte-svg.zoom-dept .carte-dept{cursor:pointer;pointer-events:all}
.carte-svg.zoom-dept .carte-region{opacity:.35}
/* une fois une region/un departement selectionne : attenue la FRONTIERE des
   autres (le remplissage/densite reste lisible), fait ressortir celle/celui
   actif -- cf. carteAppliquerSelectionZones, appele a chaque changement de
   selection. */
.carte-region.dim, .carte-dept.dim{stroke-opacity:.25}
.carte-region.actif{stroke:var(--navy);stroke-width:2.2}
.carte-dept.actif{stroke:var(--navy);stroke-width:1.4}
/* couche de clic : cercles invisibles, taille fixe par ville -- cliquer
   selectionne toujours le departement (cf. carteSelectVille). */
.carte-pt-clic{fill:transparent;cursor:pointer}
/* UN point fixe PAR FOYER (pas par ville, pas de taille variable) : la
   densite se lit via la couleur des regions/departements, ce point ne sert
   qu'a montrer l'emplacement de chaque foyer. */
.carte-pt-marqueur{fill:var(--green);opacity:.85;transition:transform .15s ease,fill .15s ease;transform-box:fill-box;transform-origin:center}
/* departement selectionne : tous ses marqueurs restent reperes en orange. */
.carte-pt-marqueur.sel{fill:var(--orange);transform:scale(1.6)}
/* survol d'un client dans la liste (vue departement) -> met en avant le(s)
   marqueur(s) de sa ville sur la carte (cf. carteHoverVille). */
.carte-pt-marqueur.survol{transform:scale(2.6);fill:var(--navy)}
.carte-vide{color:var(--mut2);font-size:12px;padding:4px 2px 10px}
.carte-toutes{display:flex;flex-direction:column;gap:4px}
/* meme couleur/graisse que l'ecriture du logo AVP (.landing-title, --grad1),
   fond dans une nuance plus claire de ce meme vert. */
.carte-btn-retour{margin-left:6px;font-size:11px;font-weight:800;color:var(--green-ink);
  background:rgba(31,171,111,.12);border:none;border-radius:8px;padding:3px 10px;cursor:pointer}
.carte-btn-retour:hover{background:rgba(31,171,111,.2)}
.carte-ville-row{display:flex;justify-content:space-between;padding:7px 10px;border-radius:10px;cursor:pointer;font-size:13px}
.carte-ville-row:hover{background:rgba(91,110,232,.08)}
.carte-ville-row span{color:var(--mut);font-weight:700}
/* detail ville par ville (vue departement) : un groupe par ville, avec ses
   clients directement listes dessous -- aucun clic supplementaire requis. */
.carte-groupe-ville{margin-bottom:10px}
.carte-groupe-titre{display:flex;justify-content:space-between;padding:6px 10px 3px;font-size:12px}
.carte-groupe-titre span{color:var(--mut);font-weight:700}
.carte-client-row{padding:4px 10px 4px 18px;border-radius:10px;font-size:13px}
.carte-client-row a{color:var(--ink);text-decoration:none}
.carte-client-row a:hover{color:var(--blue);text-decoration:underline}
.carte-client-row:hover{background:rgba(91,110,232,.08)}
/* ==================== STATS AVP (#/global) : propositions S1 a S8 ====================
   Habillage « piste C » (direction visuelle du 25/10/2026) : la couche
   console du cabinet (cartes blanches .card, tuiles a lisere vert, Radio
   Canada) rendue plus vivante -- pastilles d'icones, evolutions en
   pastilles, lignes au lavis vert au survol, camemberts pleins a la palette
   des types, rangs en chiffres gras. Prefixe st- : aucune regle commune
   n'est modifiee ; les couleurs propres a la page sont des jetons ci-dessous.
   Le vert de gain est --green-ink (#2e7d38 depuis S3/L2). */
.st-page{--st-gain:var(--green-ink);--st-perte:#a5442a;--st-encre-verte:#2f6b37;--st-ic-fond:rgba(90,175,101,.16);
  --st-lavis:rgba(90,175,101,.08);--st-filet-fort:rgba(3,60,32,.18);--aire-gain:#5aaf65;--aire-perte:#a5442a}
/* textes poses a meme le fond anime : la mousse pale (2,9:1) et --mut
   (4,1:1 sur le pire composite, le repli vert a .32) ne tiennent pas l'AA ;
   #4a5751 y tient 5,5:1 */
.st-page .foyer-head .sur,.st-tete-phrase{color:#4a5751}
.st-tete-phrase{margin:6px 0 0;font-size:13.5px}
.st-gain{color:var(--st-gain)}
.st-perte{color:var(--st-perte)}
.st-ic{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.st-ic-pers{color:#3f7a3a}
.st-chev{color:var(--st-encre-verte)}
/* libelle lu par les lecteurs d'ecran, montre au telephone ou il le faut */
.st-k{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.st-carte{position:relative}
.st-note{margin:-8px 0 16px;font-size:12.5px;line-height:1.45;color:var(--mut)}
.st-aide{margin:10px 0 0;font-size:12px;line-height:1.45;color:var(--mut)}
.st-rel-liste,.st-leg,.st-top,.st-fin{list-style:none;margin:0;padding:0}
.st-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
/* S2 : quatre tuiles de tete, au dessin des tuiles du cabinet (carte
   blanche, lisere vert du haut) avec pastille d'icone et evolutions en
   pastilles ; elles se soulevent de 2 px au survol */
.st-tuiles{display:grid;grid-template-columns:minmax(0,1.25fr) repeat(3,minmax(0,1fr));gap:var(--gap);margin-bottom:var(--gap)}
.st-tuile{position:relative;display:flex;flex-direction:column;gap:6px;min-width:0;background:var(--card);
  border-top:4px solid var(--green-line);border-radius:var(--radius);padding:14px 18px 16px;box-shadow:var(--neu-out-sm);
  transition:box-shadow var(--t-base),transform .2s cubic-bezier(.23,1,.32,1)}
.st-tuile:hover{box-shadow:var(--neu-out)}
.st-tuile.st-hote-ouvert{z-index:6}
@media (prefers-reduced-motion:no-preference){
  .st-tuile{animation:stEntree .35s cubic-bezier(.16,1,.3,1) backwards}
  .st-tuile:nth-child(2){animation-delay:.04s}
  .st-tuile:nth-child(3){animation-delay:.07s}
  .st-tuile:nth-child(4){animation-delay:.1s}
  @keyframes stEntree{from{opacity:0;transform:translateY(8px)}}
}
@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){.st-tuile:hover{transform:translateY(-2px)}}
.st-tuile-tete{display:flex;align-items:center;gap:10px;min-height:30px}
.st-ic-rond{display:inline-grid;place-items:center;width:30px;height:30px;flex:none;border-radius:50%;background:var(--st-ic-fond);color:var(--st-encre-verte)}
.st-lab{font-size:11px;line-height:1.3;letter-spacing:.06em;color:var(--mut);font-weight:700;text-transform:uppercase}
/* S4 : le libelle porte son detail (souligne pointille), cible de 44 px */
.st-def{position:relative;margin:-7px 0;min-height:44px;padding:0;border:0;background:none;cursor:pointer;font-family:inherit;
  text-align:left;text-decoration:underline dotted var(--green-line);text-decoration-thickness:1.5px;text-underline-offset:4px}
.st-def:hover,.st-def[aria-expanded="true"]{color:var(--st-encre-verte)}
.st-def:focus-visible{outline:2px solid var(--st-encre-verte);outline-offset:2px;border-radius:4px}
.st-val{margin:4px 0 0;font-size:26px;font-weight:700;line-height:1.15;color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap}
.st-val-grand{font-size:30px}
.st-unite{font-size:13px;font-weight:600;color:var(--mut)}
.st-sous{margin:0;font-size:12.5px;line-height:1.45;color:var(--mut)}
.st-sous b{font-weight:700;color:var(--ink)}
.st-sous b.st-gain{color:var(--st-gain)}
.st-sous b.st-perte{color:var(--st-perte)}
.st-pastilles{margin:2px 0 0}
.st-pastille{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.4}
/* lavis a .08 et non .10 : #2e7d38 n'y tenait que 4,48:1 */
.st-pastille-gain{background:rgba(46,125,56,.08);color:var(--st-gain)}
.st-pastille-perte{background:rgba(165,68,42,.10);color:var(--st-perte)}
@media (max-width:1100px){.st-tuiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){
  .st-tuiles{grid-template-columns:minmax(0,1fr);gap:10px}
  .st-tuile{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:4px;align-items:center;padding:12px 14px}
  .st-tuile > *{grid-column:1/-1}
  .st-tuile > .st-tuile-tete{grid-column:1}
  .st-tuile > .st-val{grid-column:2;grid-row:1;margin:0;text-align:right;font-size:20px}
}
/* S4 : UNE bulle pour la page, sous son hote ; un pont invisible la relie a
   l'hote pour que la souris puisse y entrer sans la fermer */
.st-bulle{position:absolute;z-index:30;left:0;top:calc(100% + 8px);width:340px;max-width:calc(100vw - 32px);box-sizing:border-box;
  background:#fff;color:var(--ink);border-top:3px solid var(--green-line);border-radius:14px;
  box-shadow:0 14px 34px rgba(3,60,32,.18),0 2px 8px rgba(3,60,32,.08);padding:12px 14px 10px;
  font-size:12.5px;line-height:1.5;font-weight:400;letter-spacing:0;text-transform:none;text-align:left;white-space:normal}
.st-bulle[hidden]{display:none}
.st-bulle::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.st-bulle p{margin:0}
.st-bulle .st-bulle-titre{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--st-encre-verte)}
.st-bulle-liste{margin-top:8px}
.st-bl{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:4px 6px;border-radius:8px;color:var(--ink);text-decoration:none}
.st-bl + .st-bl{border-top:1px solid var(--line)}
.st-bl:hover{background:var(--st-lavis)}
.st-bl:focus-visible{outline:2px solid var(--st-encre-verte);outline-offset:-2px}
.st-bl-qui{font-size:13px;font-weight:700}
.st-bl-quoi{display:block;font-size:12px;color:var(--mut)}
.st-bl-v{font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.st-badge{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--st-ic-fond);color:#24502a;
  font-size:11px;font-weight:700;vertical-align:1px}
.st-bulle .st-bulle-sous{margin:10px 0 0;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--mut)}
.st-bulle .st-bulle-vide{margin-top:6px;color:var(--mut)}
.st-bulle .st-bulle-note{margin-top:8px;padding-top:7px;border-top:1px solid var(--line);font-size:12px;color:var(--mut)}
.st-dl{margin:8px 0 0}
.st-dl div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:3px 0}
.st-dl dt{color:var(--mut)}
.st-dl dd{margin:0;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.st-dl .st-dl-tot{margin-top:3px;padding-top:6px;border-top:1px solid var(--line)}
.st-dl .st-dl-tot dt{color:var(--ink);font-weight:600}
.st-point{display:inline-block;width:9px;height:9px;flex:none;border-radius:50%;margin-right:7px}
@media (max-width:560px){.st-bulle{position:static;width:auto;max-width:none;margin-top:8px}}
/* S6 : courbe du cabinet (stCourbeRendre) */
.st-courbe-leg{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 20px;margin:0 0 8px;padding:0;list-style:none;font-size:12.5px;color:var(--ink)}
.st-courbe-leg i{display:inline-block;width:22px;height:0;margin-right:8px;vertical-align:4px}
.st-courbe-leg .st-k-val{border-top:2.5px solid var(--st-encre-verte)}
.st-courbe-leg .st-k-cap{border-top:2px dashed var(--navy3)}
.st-courbe-leg .st-k-fut{border-top:2px dotted var(--mut)}
.st-courbe-zone{position:relative;border-radius:8px}
.st-courbe-zone:focus-visible{outline:2px solid var(--st-encre-verte);outline-offset:4px}
.st-courbe-svg svg{display:block;width:100%;height:auto;overflow:visible}
.st-c-grille{stroke:rgba(3,60,32,.09);stroke-width:1}
.st-c-gy,.st-c-gx{font-size:12px;font-family:var(--police-corps);fill:var(--mut);font-variant-numeric:tabular-nums}
.st-c-gx.st-futur{font-style:italic}
.st-c-valeur{fill:none;stroke:var(--st-encre-verte);stroke-width:2.5}
.st-c-capital{fill:none;stroke:var(--navy3);stroke-width:2;stroke-dasharray:6 4}
.st-c-capital.st-futur{stroke:var(--mut);stroke-dasharray:2 4}
.st-c-pt{transform-box:fill-box;transform-origin:center;transition:transform .12s ease}
.st-c-pt-val{fill:var(--st-encre-verte)}
.st-c-pt-cap{fill:var(--navy3)}
.st-c-pt-cap.st-evide{fill:#fff;stroke:var(--mut);stroke-width:1.5}
.st-c-pt.st-sel{transform:scale(1.6)}
.st-c-repere{stroke:rgba(3,60,32,.35);stroke-width:1;stroke-dasharray:3 3}
.st-c-zone{fill:transparent;cursor:crosshair}
.st-tip{position:absolute;z-index:5;width:250px;pointer-events:none;background:#fff;border-top:3px solid var(--green-line);border-radius:12px;
  box-shadow:0 14px 34px rgba(3,60,32,.18),0 2px 8px rgba(3,60,32,.08);padding:10px 12px;font-size:12.5px}
.st-tip[hidden]{display:none}
.st-tip-mois{margin:0 0 6px;font-size:13px;font-weight:700;color:var(--navy)}
.st-tip-l{display:flex;justify-content:space-between;gap:10px;padding:3px 0}
.st-tip-l span{color:var(--mut)}
.st-tip-l b{font-weight:700;font-variant-numeric:tabular-nums}
.st-tip-note{margin:6px 0 0;font-size:12px;color:var(--mut)}
/* detail du mois : sous la courbe au doigt ; a l'ordinateur, reserve aux
   lecteurs d'ecran (zone annoncee) */
.st-courbe-detail{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.st-courbe-tactile .st-courbe-detail{position:static;width:auto;height:auto;overflow:visible;clip-path:none;margin-top:12px;
  padding:10px 12px;border-radius:12px;background:var(--st-lavis);border-top:3px solid var(--green-line)}
/* S5 : une seule repartition, camemberts pleins (trait blanc de 1,5) */
.st-rep-bloc + .st-rep-bloc{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.st-rep-titre{margin:0 0 12px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.st-rep-grille{display:grid;grid-template-columns:180px minmax(0,1fr);gap:28px;align-items:center}
.st-rep-pie{display:flex;justify-content:center}
.st-page .pie-slice{stroke-width:1.5}
.st-rel-entete,.st-rel-ligne{display:grid;grid-template-columns:minmax(0,2.4fr) repeat(4,minmax(0,1fr));column-gap:12px;align-items:center}
.st-rel-entete{padding:0 6px 8px 18px;border-bottom:1px solid var(--st-filet-fort)}
.st-rel-entete span,.st-top-entete span,.st-fin-entete span{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.st-rel-entete span:not(:first-child){text-align:right}
.st-rel-ligne{min-height:64px;padding:10px 6px 10px 18px;border-bottom:1px solid var(--line);box-shadow:inset 4px 0 0 var(--st-teinte);transition:background .15s ease}
.st-page .st-rel-ligne.fiche-section{margin-top:0}
.st-rel-ligne:hover{background:var(--st-lavis)}
.st-rel-ident{display:flex;align-items:center;gap:12px;min-width:0}
.st-mono{flex:none;width:38px;height:38px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);border-radius:10px}
.st-mono img{width:24px;height:24px;object-fit:contain}
.st-rel-nom{display:block;font-size:14px;font-weight:700}
.st-rel-sous{display:block;font-size:12px;color:var(--mut)}
.st-rel-ligne .st-v{font-size:14px;font-weight:500}
.st-rel-note{margin:12px 0 0;font-size:12px;line-height:1.45;color:var(--mut)}
.st-leg{display:flex;flex-direction:column;max-width:520px}
.st-leg-item{position:relative}
.st-def.st-leg-btn{display:grid;grid-template-columns:auto minmax(0,1fr) auto 52px;align-items:center;column-gap:10px;width:100%;margin:0;
  padding:4px 8px;border-bottom:1px solid var(--line);color:var(--ink);font-size:13.5px;text-decoration:none}
.st-def.st-leg-btn:hover,.st-def.st-leg-btn[aria-expanded="true"]{background:var(--st-lavis);color:var(--ink)}
.st-leg-nom{font-weight:600;text-decoration:underline dotted var(--green-line);text-decoration-thickness:1.5px;text-underline-offset:4px}
.st-leg-v{font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.st-leg-p{text-align:right;color:var(--mut);font-variant-numeric:tabular-nums}
.st-leg .st-bulle{top:calc(100% + 6px)}
@media (max-width:760px){.st-rep-grille{grid-template-columns:minmax(0,1fr);gap:16px}}
@media (max-width:640px){
  .st-rel-entete{display:none}
  .st-rel-ligne{grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr);row-gap:6px;column-gap:10px;padding:12px 4px 12px 14px}
  .st-rel-ident{grid-column:1/-1;margin-bottom:2px}
  .st-rel-ligne .st-num{display:contents}
  .st-rel-ligne .st-k{position:static;width:auto;height:auto;overflow:visible;clip-path:none;font-size:12px;color:var(--mut);text-align:left}
  .st-rel-ligne .st-v{text-align:right}
}
/* S7 : carte au-dessus de la liste sous 760 px, une seule teinte (cf.
   carteTeinte), regions sans client en creme profond, points de foyer
   visibles mais pas des cibles au doigt ; la page defile sous le doigt */
.st-geo-grille{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:var(--gap);align-items:start;margin-bottom:var(--gap)}
.st-geo-grille > .card{margin-bottom:0}
.st-geo-svg .carte-svg{display:block;width:100%;height:auto;max-height:470px;touch-action:auto}
.st-geo-svg .carte-contour{fill:#ebe6dc;stroke:rgba(3,60,32,.14)}
/* traits d'epaisseur constante au zoom (ils s'epaississaient avec la carte) */
.st-geo-svg .carte-contour,.st-geo-svg .carte-region,.st-geo-svg .carte-dept,.st-geo-svg .carte-pt-marqueur{vector-effect:non-scaling-stroke}
.st-geo-svg .carte-region{fill-opacity:1;stroke:rgba(22,33,28,.28)}
.st-geo-svg .carte-dept{fill-opacity:.9;stroke:rgba(22,33,28,.25)}
.st-geo-svg .carte-pt-marqueur{fill:#fff;stroke:var(--navy);stroke-width:1.2;opacity:1}
.st-geo-svg .carte-pt-marqueur.sel{fill:#e9b44c}
.st-geo-svg .carte-pt-marqueur.survol{fill:var(--navy)}
@media (pointer:coarse){.st-geo-svg .carte-pt-clic{pointer-events:none}}
.st-geo-leg{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:12px 0 0;font-size:12px;color:var(--mut)}
.st-geo-rampe{width:110px;height:10px;border-radius:3px}
.st-geo-un{display:inline-flex;align-items:center;gap:6px;margin-left:8px}
.st-geo-un i{width:9px;height:9px;box-sizing:border-box;border-radius:50%;background:#fff;border:1px solid var(--navy)}
.st-geo-tete{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding-bottom:8px;border-bottom:1px solid var(--st-filet-fort)}
.st-geo-tete h3{margin:0;font-size:16px;font-weight:600;color:var(--navy)}
.st-geo-tete h3:focus-visible{outline:2px solid var(--st-encre-verte);outline-offset:3px;border-radius:4px}
.st-geo-retour{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:0;border-radius:999px;
  background:var(--st-ic-fond);color:#24502a;font:600 13px/1 var(--police-corps);cursor:pointer;transition:background .15s ease}
.st-geo-retour:hover{background:rgba(90,175,101,.28)}
.st-geo-retour:focus-visible{outline:2px solid var(--st-encre-verte);outline-offset:2px}
.st-geo-ligne{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;column-gap:12px;align-items:center;width:100%;min-height:56px;
  padding:8px;border:0;border-bottom:1px solid var(--line);background:none;font:inherit;color:var(--ink);text-align:left;cursor:pointer;transition:background .15s ease}
.st-geo-ligne:hover{background:var(--st-lavis)}
.st-geo-nom{min-width:0;font-size:14px;font-weight:600}
.st-geo-barre{display:block;height:4px;margin-top:6px;border-radius:2px;background:rgba(3,60,32,.07)}
.st-geo-barre i{display:block;height:100%;border-radius:2px;background:var(--green-line)}
.st-geo-n{font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums}
.st-geo-ville-tete{display:flex;justify-content:space-between;margin:12px 0 0;padding:0 8px 4px;font-size:12.5px;color:var(--mut)}
.st-geo-ville-tete b{color:var(--ink)}
.st-geo-client{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 8px 0 14px;border-bottom:1px solid var(--line);
  color:var(--ink);text-decoration:none;font-size:13.5px;font-weight:600;transition:background .15s ease}
.st-geo-client:hover{background:var(--st-lavis)}
.st-geo-client .st-chev{margin-left:auto}
.st-geo-ligne:focus-visible,.st-geo-client:focus-visible,.st-top-ligne:focus-visible,.st-fin-ligne:focus-visible{outline:2px solid var(--st-encre-verte);outline-offset:-2px;border-radius:8px}
@media (max-width:760px){.st-geo-grille{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.st-geo-retour{min-height:44px}}
/* S8 : top 10 et financements en lignes-liens ; rang en chiffre gras vert */
.st-top-entete,.st-top-ligne{display:grid;grid-template-columns:26px minmax(0,2.2fr) minmax(0,1.4fr) minmax(0,1fr) minmax(0,.9fr) minmax(0,1fr) 16px;column-gap:14px;align-items:center}
.st-fin-entete,.st-fin-ligne{display:grid;grid-template-columns:minmax(0,2.4fr) repeat(3,minmax(0,1fr)) 16px;column-gap:14px;align-items:center}
.st-top-entete,.st-fin-entete{padding:0 10px 8px;border-bottom:1px solid var(--st-filet-fort)}
.st-top-entete span:nth-child(n+4),.st-fin-entete span:not(:first-child){text-align:right}
.st-top-ligne,.st-fin-ligne{min-height:52px;padding:6px 10px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;transition:background .15s ease}
.st-fin-ligne{min-height:60px;padding:8px 10px}
.st-top-ligne:hover,.st-fin-ligne:hover{background:var(--st-lavis)}
.st-rang{font-size:15px;font-weight:700;color:var(--st-encre-verte);text-align:right;font-variant-numeric:tabular-nums}
.st-qui{display:flex;align-items:center;gap:9px;min-width:0}
.st-qui-nom{min-width:0;font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.st-fin-ligne .st-qui-nom{display:block}
.st-fin-sous{display:block;font-size:12px;font-weight:400;color:var(--mut)}
.st-piste{height:6px;border-radius:3px;background:rgba(3,60,32,.07)}
.st-piste i{display:block;height:100%;border-radius:3px;background:var(--green-line)}
.st-top-ligne .st-num,.st-fin-ligne .st-num{font-size:14px}
.st-top-perf{font-weight:700}
.st-top-dep{font-size:13px;color:var(--mut);text-align:right}
@media (max-width:640px){
  .st-top-entete,.st-fin-entete{display:none}
  .st-top-ligne{grid-template-columns:22px minmax(0,1fr) auto 16px;grid-template-areas:"r q v c" "r d f c" "r b b c";row-gap:4px;padding:10px 4px}
  .st-top-ligne .st-rang{grid-area:r;align-self:start;padding-top:1px}
  .st-top-ligne .st-qui{grid-area:q}
  .st-top-ligne .st-top-val{grid-area:v}
  .st-top-ligne .st-top-perf{grid-area:f}
  .st-top-ligne .st-top-dep{grid-area:d;text-align:left;font-size:12px}
  .st-top-ligne .st-piste{grid-area:b;margin-top:4px}
  .st-top-ligne .st-chev{grid-area:c}
  .st-top-dep .st-k{position:static;width:auto;height:auto;overflow:visible;clip-path:none}
  .st-top-ligne .st-qui-nom{white-space:normal}
  .st-fin-ligne{grid-template-columns:minmax(0,1fr) auto 16px;row-gap:4px;padding:12px 4px}
  .st-fin-ligne .st-qui{grid-column:1/3}
  .st-fin-ligne .st-chev{grid-column:3;grid-row:1}
  .st-fin-ligne .st-num{display:contents}
  .st-fin-ligne .st-k{position:static;width:auto;height:auto;overflow:visible;clip-path:none;grid-column:1;text-align:left;font-size:12.5px;color:var(--mut)}
  .st-fin-ligne .st-v{grid-column:2;text-align:right}
}
/* haut de fiche foyer : total placé (33%) a cote de la repartition (67%) */
.foyer-top{display:grid;grid-template-columns:1fr 2fr;gap:var(--gap);
  margin-bottom:var(--gap);align-items:stretch}
.foyer-top .card{margin-bottom:0}
@media (max-width:760px){.foyer-top{grid-template-columns:1fr}}
/* ==================== FICHE CLIENT « LE RELEVÉ » ====================
   Refonte editoriale de la fiche client (maquette validee) : la fiche est
   composee comme le releve annuel d'une banque privee -- masthead d'encre,
   sections numerotees a filets typographiques, barre de composition
   segmentee, contrats en lignes de releve, bloc conseiller signature.
   COULEURS : strictement celles du site -- encre = #033C20 (le vert profond
   des filets/sidebar AVP), accent = --green-line #5aaf65 (remplace le
   laiton de la maquette), gains clairs sur fond sombre = --green-line-soft,
   papier = --bg. TYPO (piste 3, commune avec avpatrimoine.fr) : la serif
   parle, la sans compte. Source Serif 4 (--fc-serif) pour le nom, le
   compteur, les titres et les notes ; Radio Canada (--police-corps) pour
   les montants, les etiquettes et l'interface.
   Prefixe .fc- : ce vocabulaire est propre a la fiche, les autres pages
   gardent leur style carte. */
:root{
  --fc-encre:#15261d;
  /* fond des grands blocs sombres (masthead, bloc conseiller) : emeraude
     profond, plus lumineux et plus vivant que l'encre (demande explicite --
     l'encre reste le TEXTE sur papier, ou elle lit noir, mais en grand
     aplat elle tirait sur le kaki ; un bleu de minuit a ete essaye puis
     remplace par du vert, toujours a la demande). --fc-emeraude-2 = lueur
     haute du masthead.
     TEINTE ALIGNEE SUR LE LOGO (03/09/2026, demande explicite « le vert
     principal ne correspond pas au vert du logo ») : le logo AVP est un
     aplat unique #5AAF65, teinte 128° ; tous les verts du Releve etaient a
     145-151°, soit un ecart de 20° vers le bleu, visible cote a cote. Ils
     ont ete pivotes a 128°. Les grands aplats sombres vont plus loin : ils
     reprennent AUSSI la saturation du logo (34,7 %) et remontent en clarte
     (L 32 % au lieu de 22 %), choix fait sur maquette comparative -- le vert
     du logo TEL QUEL (L 52 %) a ete essaye et rejete par les chiffres :
     ivoire a 2,4:1 et laiton a 1,2:1 dessus, le surtitre disparaissait. A
     L 32 % l'ivoire tient a 5,4:1. Le laiton, lui, descend a 2,6:1 (contre
     4,0:1 avant) : c'est le prix connu et accepte de cette clarte, a
     surveiller si un accent laiton devient porteur d'information.
     Tout nouveau vert de la fiche doit se placer sur cette teinte. */
  --fc-emeraude:#356e3d;
  --fc-emeraude-2:#43884d;
  /* fond des encarts (cartes a plat) : un ton PLUS CLAIR que le papier de
     la page, pour que les encarts se detachent du fond (demande explicite)
     sans reintroduire d'ombres. */
  --fc-carte:#fbf9f3;
  /* CARTES DE SECTION (melange retenu par Antoine le 26/10/2026 : la Regle
     du Papier a Plat est levee pour elles seules) : la trajectoire, le
     releve, la carte du financement et les mouvements deviennent des cartes
     BLANCHES, sans filet, arrondies a 14 px, posees sur une ombre douce en
     deux couches (contact, puis portee), teintee du vert le plus sombre. */
  --fc-ombre-carte:0 1px 2px rgba(3,60,32,.05),0 10px 24px rgba(3,60,32,.08);
  --fc-papier:#f5f1e8;
  --fc-papier-2:#efe9dc;
  --fc-filet:rgba(21,38,29,.16);
  --fc-filet-fort:rgba(21,38,29,.5);
  --fc-ivoire:#f5f1e8;
  /* ivoire SECONDAIRE du bandeau (sous-lignes, legende, mention ; propositions
     10 et 07 du 21/10/2026) : couleur PLEINE, jamais d'opacite. #e1e5d8
     tenait 4,6 a 4,7:1 sur l'emeraude plat, mais mesure au pixel sous les
     glyphes, la partie claire du degrade le faisait tomber a 4,41:1
     (22/10/2026). Eclairci a #e8ecdf : environ 4,7:1 sur le pixel le plus
     clair, toujours distinct de l'ivoire plein. Il ne doit pas tomber sous
     la lueur elle-meme (#43884d). */
  --fc-ivoire-doux:#e8ecdf;
  --fc-laiton:#a8823c;
  --fc-laiton-clair:#c9a55c;
  /* laiton qui ECRIT (pastilles des lignes du releve et du depli des
     tableaux, lot 2 du 22/10/2026) : 6,3:1 sur la carte, la ou le laiton
     d'ornement (#a8823c) ne fait que 3,4:1 */
  --fc-laiton-txt:#7a5a23;
  --fc-gain:#2e7d38;
  /* COUT en texte (mouvements preleves, lot 4) : l'orange de la proposition
     01 dans sa version qui ecrit, 5,9:1 sur la carte */
  --fc-cout:#8a5a1d;
  /* GAIN sur fond sombre (metriques du masthead). Le fond ayant ete
     eclairci (--fc-emeraude a L 32 %), l'ancien #8fd39a n'etait plus qu'a
     3,47:1 dessus -- du vert sur du vert, signale a l'oeil nu. Eclairci ET
     sature (L 80 %, S 70 %, teinte du logo conservee) : 4,57:1 sur
     l'emeraude plat, mais 4,24:1 mesure au pixel sur la partie claire du
     degrade. Il reste tres proche de l'ivoire voisin en CLARTE (1,18) et
     s'en distingue franchement en TEINTE : la luminosite etant deja saturee,
     il ne peut pas eclaircir davantage. Il s'ecrit donc en 700, gros texte
     au sens WCAG de 19 a 22 px (cf. .fc-metriques .val.gain). */
  --fc-gain-clair:#a8f0b2;
  --fc-perte:#a5442a;
  /* serif de la fiche (piste 3) : Source Serif 4, romain en taille optique
     (8 a 60 : le compteur de 88 px prend le dessin le plus contraste, la
     note de 12,5 px le plus robuste), graisse 400 seule. --fc-serif-d (les
     grands corps) n'est plus qu'un alias : la taille optique fait ce que
     faisait l'ancienne coupe d'affichage. AVP Signes en tete, cf.
     --police-corps. */
  --fc-serif:"AVP Signes","Source Serif 4","Iowan Old Style",Georgia,serif;
  --fc-serif-d:var(--fc-serif);
}
/* fiche Releve : fond PAPIER UNI -- le fond anime ShaderGradient est coupe
   sur les fiches clients (demande explicite), le document se pose sur
   l'ivoire calme de la maquette. */
body.fiche-releve{background:var(--fc-papier)}
body.fiche-releve #gradient-bg{display:none}
/* surtitres en capitales (piste 3) : sans 600 de 11 px, interligne 1,35 ;
   1,45 sous 600 px, ou ils passent sur deux lignes sans se toucher */
.fc-eyebrow{font:600 11px/1.35 var(--police-corps);letter-spacing:.16em;text-transform:uppercase}
/* chiffres tabulaires : !important pour qu'un raccourci font: plus specifique
   ne le neutralise plus en silence (font: remet font-variant-numeric a
   normal) ; chaque raccourci porteur de chiffres le redeclare aussi APRES
   lui. Les deux polices sont tabulaires par defaut, on n'y compte pas. */
.fc-tnum{font-variant-numeric:tabular-nums lining-nums!important}
/* --- masthead --- */
/* lueur RESSERREE (proposition 10 du 21/10/2026) : la lueur large faisait
   tomber l'ivoire a 3,8:1 en haut a gauche ; elle s'arrete desormais a mi-
   hauteur, et tous les textes courants du bandeau tombent sur l'emeraude
   plat (ivoire 5,4:1). Plus serree encore sous 600 px (bandeau plus haut). */
.fc-masthead{background:radial-gradient(120% 75% at 18% 0%,var(--fc-emeraude-2) 0%,var(--fc-emeraude) 50%);
  color:var(--fc-ivoire);position:relative;
  overflow:hidden;border-radius:var(--radius)}
.fc-masthead::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E")}
/* padding bas nul : la mention des performances passees ferme le bandeau
   avec son propre retrait (.fc-mast-mention). */
.fc-mast-inner{padding:22px 30px 0;position:relative;z-index:1}
.fc-mast-top{display:flex;justify-content:space-between;align-items:baseline;gap:6px 14px;flex-wrap:wrap;
  padding-bottom:14px;border-bottom:1px solid rgba(245,241,232,.22)}
/* surtitre « AV Patrimoine · Relevé de patrimoine » et signe € : laiton clair
   en ORNEMENT (2,6:1 assume : ils ne portent aucune information propre). */
.fc-mast-top .fc-eyebrow{color:var(--fc-laiton-clair);font:600 11px/1.35 var(--police-corps);letter-spacing:.16em}
/* date du bilan en ivoire PLEIN (elle etait a 70 %), « 1er » en exposant */
.fc-mast-date{font:italic 400 13px/1.3 var(--fc-serif);color:var(--fc-ivoire)}
.fc-sup{font-size:.68em;line-height:0;vertical-align:.5em}
.fc-mast-outils{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fc-outil-btn{background:none;border:1px solid rgba(245,241,232,.3);color:rgba(245,241,232,.85);
  border-radius:12px;padding:7px 14px;font:600 12px var(--police-corps);cursor:pointer;
  transition:background var(--t-fast),color var(--t-fast),transform var(--t-fast)}
.fc-outil-btn:hover{background:rgba(245,241,232,.12);color:#fff}
/* retour de pression, comme .voir-suite/.btn-dash : les boutons du monde
   Releve doivent repondre au toucher comme le reste de l'app. */
.fc-outil-btn:active{transform:scale(.97)}
.fc-outil-btn[disabled]{opacity:.4;cursor:not-allowed}
.fc-nom{margin:0;padding:22px 0 4px;font:400 clamp(30px,4vw,44px)/1.08 var(--fc-serif-d);letter-spacing:-.005em}
.fc-nom a{color:inherit;text-decoration:none}
.fc-nom a:hover{color:var(--fc-laiton-clair)}
.fc-et{font-style:italic;color:var(--fc-laiton-clair)}
/* police de CORPS, droite (l'italique serif "times" deplaisait -- demande
   explicite), ivoire PLEIN. « 5 ans de confiance. » ne se coupe plus et quitte
   le laiton clair, qui n'y tenait que 2,6:1 (proposition 10 du 21/10/2026). */
.fc-depuis{font:500 13px/1.5 var(--police-corps);color:var(--fc-ivoire);margin-bottom:22px}
.fc-depuis .duree{white-space:nowrap}
/* surtitre du grand chiffre : il PORTE l'information (« net, crédit déduit »),
   il passe donc de l'ivoire a 55 % a l'ivoire plein. */
.fc-valeur .fc-eyebrow{color:var(--fc-ivoire);font:600 11px/1.35 var(--police-corps);letter-spacing:.16em;
  margin-bottom:8px;display:block}
/* grand montant SANS cases de gare (melange retenu par Antoine le
   26/10/2026) : le montant s'ecrit en grand, a nu, en Source Serif 4 ; 76 px
   au plus (la planche validee) des 1000 px, 52 px au moins comme avant (un
   montant a 7 chiffres tient a 375 px). */
.fc-chiffre{font:400 clamp(52px,calc(30px + 4.6vw),76px)/1 var(--fc-serif-d);letter-spacing:-.01em;
  font-variant-numeric:tabular-nums lining-nums}
/* COMPTEUR D'OUVERTURE (proposition 15 du 21/10/2026), sans ses cases
   depuis le 26/10/2026 : chaque chiffre (.fd) reste une FENETRE (overflow
   cache, hauteur d'une ligne) qui porte une BANDE verticale : un blanc, puis
   trois tours de 0 a 9 ; plus de tuile sombre ni de ligne mediane, le
   chiffre roule a meme le bandeau, comme un compteur. Le HTML pose deja la
   bande sur le bon chiffre (--d) : sans script et en mouvement reduit, la
   valeur finale est lisible d'emblee. L'animation (animerChiffreGare) part
   du BLANC, jamais de zeros, floute la bande pendant la course et arrete
   chaque chiffre directement a sa place : aucun etat intermediaire ne forme
   un total lisible. La bande est un pseudo-element (31 lignes : une vide,
   puis 0 a 9 trois fois) : elle n'entre ni dans le texte de la page ni dans
   un copier-coller. Le gabarit (.fd-gab) garde le chiffre en TEXTE
   transparent : il donne la largeur tabulaire de la fenetre et se copie.
   Hauteurs en em : elles tiennent avec la police de repli (Georgia). */
.fc-chiffre .fd{display:inline-block;position:relative;overflow:hidden;vertical-align:bottom;height:1.04em}
.fc-chiffre .fd-gab{display:block;color:transparent;padding-top:.02em}
.fc-chiffre .fd-bande{position:absolute;left:0;right:0;top:0;padding-top:.02em;text-align:center;
  transform:translateY(calc(-1.04em * (1 + var(--d, 0))))}
.fc-chiffre .fd-bande::before{content:"\A 0\A 1\A 2\A 3\A 4\A 5\A 6\A 7\A 8\A 9\A 0\A 1\A 2\A 3\A 4\A 5\A 6\A 7\A 8\A 9\A 0\A 1\A 2\A 3\A 4\A 5\A 6\A 7\A 8\A 9";display:block;white-space:pre;line-height:1.04em}
.fc-chiffre .fd.roule .fd-bande{filter:blur(.05em)}
/* sans case pour la cadrer, la bande en course s'estompe aux bords de sa
   fenetre au lieu d'y etre tranchee net ; a l'arret, plus de masque */
.fc-chiffre .fd.roule{-webkit-mask-image:linear-gradient(transparent,#000 22%,#000 78%,transparent);
  mask-image:linear-gradient(transparent,#000 22%,#000 78%,transparent)}
/* centimes en exposant, a hauteur du haut des chiffres, et € laiton clair
   (ornement) : memes places qu'avec les cases, proportions de la planche */
.fc-chiffre .cents{font-size:.45em;vertical-align:.9em}
.fc-chiffre .euro{font-size:.55em;color:var(--fc-laiton-clair);margin-left:.22em}
/* phrase a un seul nombre (capital restant du et derniere echeance) et
   echelle graduee SANS chiffres : ivoire plein = patrimoine net, hachures =
   capital restant du, base = valeur brute des contrats (proposition 10). */
/* la phrase tient sur UNE ligne des que le bandeau le permet (demande
   d'Antoine, 22/10/2026 : plafond de 56ch retire, 606 px a 15 px sur la
   demo) ; sinon lignes equilibrees, et 14 px sous 420 px (deux lignes au
   lieu de trois a 375 px) */
.fc-mast-phrase{margin:16px 0 12px;max-width:none;font:500 15px/1.55 var(--police-corps);text-wrap:balance}
@media (max-width:420px){.fc-mast-phrase{font-size:14px}}
.fc-mast-phrase b{font-weight:700;white-space:nowrap}
.fc-mast-barre{display:flex;height:12px;max-width:520px;border:1px solid rgba(245,241,232,.55);
  border-radius:3px;overflow:hidden}
.fc-mast-barre .b-net{background:var(--fc-ivoire)}
.fc-mast-barre .b-crd{background:repeating-linear-gradient(135deg,rgba(245,241,232,.42) 0 3px,transparent 3px 7px)}
.fc-mast-leg{list-style:none;display:flex;flex-wrap:wrap;gap:4px 18px;margin:8px 0 0;padding:0;
  font:500 12px/1.4 var(--police-corps);color:var(--fc-ivoire-doux)}
.fc-mast-leg i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:7px;vertical-align:-1px}
.fc-mast-leg .k-net{background:var(--fc-ivoire)}
.fc-mast-leg .k-crd{border:1px solid rgba(245,241,232,.7);
  background:repeating-linear-gradient(135deg,rgba(245,241,232,.6) 0 2px,transparent 2px 4px)}
/* metriques : les libelles sont des boutons de definition (proposition 07),
   en ivoire plein ; minmax(0,1fr) + min-width:0 : une valeur longue ne
   pousse plus sa colonne. */
.fc-metriques{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px;
  border-top:1px solid rgba(245,241,232,.22)}
.fc-metriques>div{min-width:0;padding:16px 18px;border-left:1px solid rgba(245,241,232,.14)}
.fc-metriques>div:first-child{border-left:none;padding-left:0}
.fc-metriques .lab{margin:0 0 7px;font:600 11px/1.3 var(--police-corps);letter-spacing:.14em;text-transform:uppercase;
  color:var(--fc-ivoire)}
/* valeurs en sans 600 (piste 3 : la sans compte), 19 px sous 600 px */
.fc-metriques .val{margin:0;font:600 22px/1.1 var(--police-corps);letter-spacing:-.005em;
  font-variant-numeric:tabular-nums lining-nums;white-space:nowrap}
/* 700 : en sans 600 de 19 a 22 px, le gain n'est plus un gros texte et
   tombe sous 4,5:1 sur la partie claire du degrade (4,24:1 mesure au pixel) ;
   en 700, gros texte (14 pt en gras), le seuil est 3:1. Meme recette que la
   perte, juste dessous. */
.fc-metriques .val.gain{color:var(--fc-gain-clair);font-weight:700}
/* meme correction que le gain : la terracotta claire tombait a 2,96:1 sur le
   nouveau fond. Abricot plus lumineux (3,87:1) plutot qu'un ton encore plus
   pale, qui aurait vire au beige et se serait confondu avec l'ivoire des
   autres metriques -- ici la SATURATION porte le sens autant que le ratio.
   3,87:1 ne vaut que pour un GROS texte : en sans de 19 a 22 px (piste 3),
   la perte s'ecrit donc en 700, gros texte au sens WCAG (14 pt en gras). */
.fc-metriques .val.perte{color:#f9c494;font-weight:700}
/* sous-lignes PLUS DISCRETES que la maquette (decision d'Antoine du
   21/10/2026 : plus petites, graisse normale, ton secondaire), en couleur
   PLEINE calibree (--fc-ivoire-doux, 4,7:1 au pixel) : l'ancienne ivoire a
   50 % ne tenait que 2,6:1. La discretion tient a la taille et a la graisse,
   le ton ne peut pas descendre plus bas sans perdre l'AA. 12 px depuis la
   piste 3 (plus de demi-pas a 11,5 px) : Radio Canada, plus etroite que la
   police d'avant, garde la discretion voulue au plancher.
   EN PASTILLES depuis le melange du 26/10/2026 : lavis blanc, rayon plein.
   Sur un lavis, l'ivoire doux tombe sous 4:1 : l'ecriture passe au blanc
   plein (Regle de l'Ivoire Plein : couleur pleine, jamais d'opacite). Le
   lavis est a 10 % et non aux 13 % de la planche : mesure au pixel (grain
   compris), le blanc n'y tenait que 4,31:1 au pire et 4,48:1 en mediane ;
   a 10 %, 4,56:1 au pire et 4,75:1 en mediane, a 1440 comme a 390 px. */
.fc-metriques .sub{margin:6px 0 0;font:400 12px/1.4 var(--police-corps);color:#fff;
  width:fit-content;max-width:100%;box-sizing:border-box;padding:4px 11px;
  border-radius:999px;background:rgba(255,255,255,.10)}
/* mention sur les performances passees : elle FERME le bandeau, visible sans
   rien ouvrir. */
.fc-mast-mention{margin:0;padding:10px 0 16px;border-top:1px solid rgba(245,241,232,.14);
  font:italic 400 12px/1.4 var(--police-corps);color:var(--fc-ivoire-doux)}
/* (le tiroir "D'ou viennent ces chiffres ?" et ses styles .fc-orig ont ete
   supprimes -- demande explicite : l'espace entier disparait du masthead.) */
/* double filet de cloture, facon document financier : SOUS le bandeau,
   detache de 6 px (maquette 10), et non plus rogne par son arrondi. */
.fc-regle{border-top:2px solid var(--fc-laiton);border-bottom:1px solid var(--fc-laiton);
  height:5px;margin-top:6px;position:relative;z-index:1;background:transparent}
/* --- sections editoriales --- */
.fc-section{padding-top:52px}
/* wrap : une note longue passe sous le titre sur mobile au lieu de
   l'ecraser. */
.fc-sec-head{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;
  border-bottom:1px solid var(--fc-filet-fort);padding-bottom:11px;margin-bottom:8px}
/* numero toujours plus petit que le titre (piste 3) ; a 17-20 px ce n'est
   plus un gros texte : le laiton qui ECRIT (5,6:1 sur le papier), le
   laiton d'ornement n'y tenait que 3,2:1 */
.fc-sec-num{font:italic 400 clamp(17px,1.8vw,20px)/1 var(--fc-serif);color:var(--fc-laiton-txt)}
.fc-sec-titre{font:400 clamp(22px,2.4vw,27px)/1.12 var(--fc-serif);color:var(--fc-encre);letter-spacing:-.005em}
/* FICHE CLIENT (melange retenu par Antoine le 26/10/2026) : une PASTILLE
   D'ICONE remplace le numero 01, 02... (rond de 34 px au lavis du vert du
   logo, icone au trait en vert fonce, decorative : le titre h2 dit tout) et
   le titre passe en Radio Canada 700, meme corps. La bibliotheque garde ses
   numeros et sa serif (.fc-sec-head sans .ico). */
.fc-sec-ico{display:inline-grid;place-items:center;flex:none;align-self:center;width:34px;height:34px;
  border-radius:50%;background:rgba(90,175,101,.16);color:#2f6b37}
.fc-sec-ico svg{width:17px;height:17px;display:block}
.fc-sec-head.ico .fc-sec-titre{font-family:var(--police-corps);font-weight:700}
/* notes de section ACCOLEES au titre, pas projetees a droite ("2 contrats",
   "survolez pour le détail"...) : elles se lisent dans le prolongement du
   titre (demande explicite, generalisee depuis la variante .pres de
   "Derniers mouvements"). */
.fc-sec-note{font:italic 400 13px/1.45 var(--fc-serif);color:var(--mut)}
/* --- 01 composition --- */
/* COMPOSITION NOMMEE (proposition 08 du 21/10/2026, lot 3) : chaque segment
   est un vrai bouton qui ECRIT son pourcentage et le nom court du contrat
   (plus de « pilier… » ni d'emoji : le pilier passe dans la bulle) ; il
   ouvre la bulle unique de la fiche au survol, au focus et a la tape.
   Largeur par --g (part en %, plancher 1,5), couleur par --teinte
   (couleursComposition : la meme que le lisere de la ligne du releve).
   L'encre suit le fond (encreSurSegment) : ivoire sur les verts et les
   bruns, encre #16211c sur les laitons (--fc-encre n'y tenait que 4,46:1),
   AA partout. Sous 8 % (.petit), le nom se tronque, la bulle le donne en
   entier. Toujours sans legende separee (choix d'Antoine) ; sous 600 px, la
   barre se range en lignes pleine largeur, avec une mini-barre
   proportionnelle (--part) de la couleur du segment. */
/* le gras d'une zone serif passe en sans (la serif n'existe qu'en 400) */
.fc-sec-note b{font:700 1em var(--police-corps);font-style:normal;color:var(--fc-encre)}
.fc-compo-barre{display:flex;gap:2px;height:60px;margin-top:24px}
.fc-compo-seg{-webkit-appearance:none;appearance:none;position:relative;box-sizing:border-box;
  flex:var(--g) 1 0%;min-width:14px;display:flex;align-items:center;margin:0;padding:0 12px;
  border:0;border-radius:3px;background:var(--teinte);font:inherit;text-align:left;cursor:pointer;overflow:hidden;
  transition:transform .15s ease-out,filter .15s ease-out}
.fc-compo-seg.sur-sombre{color:var(--fc-ivoire)}
.fc-compo-seg.sur-clair{color:#16211c}
.fc-compo-seg.petit{padding:0 6px}
.fc-compo-in{display:flex;flex-direction:column;gap:4px;min-width:0;max-width:100%;
  transition:transform .15s ease-out}
.fc-compo-seg .pct{font:600 17px/1 var(--police-corps);font-variant-numeric:tabular-nums lining-nums;white-space:nowrap}
.fc-compo-seg .qui{font:600 13px/1.2 var(--police-corps);letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fc-compo-seg:focus-visible{outline:2px solid var(--fc-encre);outline-offset:2px;z-index:1}
/* survol (demande explicite d'origine) : le segment grandit, les autres
   s'eteignent. Desature plutot qu'assombri depuis qu'ils portent du texte :
   l'assombrissement faisait tomber l'encre des laitons sous 4,5:1. */
@media (hover:hover) and (pointer:fine) and (min-width:601px){
  .fc-compo-barre:has(.fc-compo-seg:hover) .fc-compo-seg:not(:hover){filter:saturate(.45)}
  .fc-compo-seg:hover{transform:scaleY(1.12)}
  .fc-compo-seg:hover .fc-compo-in{transform:scaleY(.893)}
}
@media (max-width:600px){
  .fc-compo-barre{flex-direction:column;height:auto;gap:6px}
  .fc-compo-seg,.fc-compo-seg.petit{flex:none;display:block;min-height:46px;padding:9px 10px 16px;
    background:var(--fc-carte);border:1px solid var(--fc-filet);border-radius:4px}
  .fc-compo-seg.sur-sombre,.fc-compo-seg.sur-clair{color:var(--fc-encre)}
  .fc-compo-in{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:10px}
  .fc-compo-seg .qui{order:-1;white-space:normal;font-size:13.5px}
  .fc-compo-seg::after{content:"";position:absolute;left:10px;bottom:6px;height:5px;border-radius:2px;
    width:calc((100% - 20px) * var(--part));background:var(--teinte)}
}
/* --- 02 trajectoire : le graphique interactif existant, pose sur papier --- */
/* carte blanche de section (cf. --fc-ombre-carte, 26/10/2026) : elle
   remplace l'encart --fc-carte a filet ; meme recette pour le releve, la
   carte du financement et les mouvements. */
.fc-traj{margin-top:24px;background:#fff;border:0;border-radius:14px;box-shadow:var(--fc-ombre-carte);
  padding:16px 18px 14px}
/* NUANCIER UNIQUE DES GRAPHIQUES DE LA FICHE (proposition 01 du 21/10/2026,
   lot 3) : la VALEUR en trait plein emeraude (teinte du logo ; le vert gain
   reste a l'aire d'ecart), le CAPITAL PLACE en pointille d'encre, les loyers
   estimes en vert clair et l'effort en orange (financement). Les marques
   des partenaires gardent leurs couleurs, plus les courbes. Les traces
   lisent des VARIABLES, avec le repli orange du tableau de bord : le
   controle bloquant des courbes compare au caractere pres le stroke d'un
   trace et le fill de ses points, la couleur ne s'ecrit donc qu'une fois
   (COUL_VALO). La zone des simulateurs recopiee du site n'est pas touchee. */
body.fiche-releve{--courbe-valo:var(--fc-emeraude);--navy3:var(--fc-encre)}
/* axes : texte en --mut (5,3:1 sur la carte ; le gris bleu #8896a8 n'y
   tenait que 3,2:1), grille et reticule a la gamme du Releve. Par CSS, qui
   l'emporte sur les attributs de presentation SVG : le balisage des
   graphiques partages avec le tableau de bord ne change pas. */
.fc-traj svg text[fill="#8896a8"],.fc-rel-det-contenu .gwrap svg text[fill="#8896a8"]{fill:var(--mut)}
.fc-traj svg line[stroke="#e8eef5"],.fc-rel-det-contenu .gwrap svg line[stroke="#e8eef5"]{stroke:rgba(21,38,29,.10)}
.fc-traj .chart-crosshair,.fc-rel-det-contenu .chart-crosshair{stroke:var(--fc-filet-fort)}
/* traits a epaisseur CONSTANTE a l'ecran : le SVG est etire (viewBox de
   1000 unites) ; sans cela, a 375 px, la courbe de 2,5 unites ne faisait
   plus que 0,75 px. Les points ne changent pas (le controle des courbes
   lit leurs coordonnees, pas leur rendu). */
.fc-traj svg path[fill="none"],.fc-rel-det-contenu .gwrap svg path[fill="none"],
.fc-traj .gwrap svg line,.fc-rel-det-contenu .gwrap svg line{vector-effect:non-scaling-stroke}
/* legende en traits : la courbe telle qu'elle est dessinee */
.legende.fc-leg-courbes{gap:4px 18px;margin:0 0 10px;font:500 12px/1.4 var(--police-corps);color:var(--mut)}
.fc-leg-courbes>span{display:inline-flex;align-items:center;gap:7px}
.fc-leg-courbes i{display:inline-block;width:22px;border-top:2.5px solid var(--courbe-valo,#fb923c)}
.fc-leg-courbes i.cap{border-top:2px dashed var(--fc-encre)}
.fc-leg-courbes i.deduit{border-top-style:dotted}
.fc-rel-det-contenu .fc-leg-courbes{justify-content:flex-start}
/* reglette : fenetre et poignees en emeraude */
body.fiche-releve .brush-fenetre{fill:rgba(53,110,61,.07);stroke:var(--fc-emeraude)}
body.fiche-releve .brush-poignee{fill:var(--fc-carte);stroke:var(--fc-emeraude)}
body.fiche-releve .brush-dim{fill:rgba(21,38,29,.06)}
/* aides sous les graphiques (reglette, prix de part) : 12 px en --mut */
.fc-aide-graphe{margin:4px 0 0;font:400 12px/1.4 var(--police-corps);color:var(--mut)}
.fc-k-point{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle;
  background:var(--courbe-valo)}
/* encadre « Lecture » de la trajectoire : la phrase des loyers et la mention
   sur les performances passees, visibles sans geste ; il remplace
   l'annotation laiton (montant a 3,0:1). */
.fc-lecture{margin-top:16px;padding:11px 16px 11px 14px;background:rgba(46,125,56,.08);
  border-left:4px solid var(--green);border-radius:0 6px 6px 0}
.fc-lecture .fc-lecture-eti{margin:0 0 5px;font:600 11px/1.25 var(--police-corps);letter-spacing:.12em;
  text-transform:uppercase;color:var(--fc-emeraude)}
.fc-lecture p{margin:0 0 5px;font:400 14px/1.55 var(--police-corps);color:var(--fc-encre)}
.fc-lecture b{color:var(--fc-emeraude);font-weight:700;white-space:nowrap}
.fc-lecture .fc-lecture-mention,.fc-traj>.fc-lecture-mention{margin:0;font:italic 400 12px/1.45 var(--police-corps);color:var(--mut)}
.fc-traj>.fc-lecture-mention{margin-top:12px}
@media (max-width:600px){
  .legende.fc-leg-courbes{justify-content:flex-start}
  /* hauteur LISIBLE sur telephone : le SVG s'ecrasait au ratio de sa
     viewBox (89 px a 375) ; ajusterHauteurGraphiquePatrimoine recale la
     viewBox et la police sur cette boite */
  .fc-traj .svg-shell{height:200px}
}
/* --- 03 releve des contrats --- */
/* RELEVE (propositions 04, 09 et 03 option B du 21/10/2026, lot 2).
   04 : chaque ligne de contrat est un vrai <button aria-expanded
   aria-controls> (clavier, lecteur d'ecran) ; la pastille porte un mot
   (« Détail », « Fermer ») sur grand ecran ; chaque montant porte son
   libelle (.k) : lu par le lecteur d'ecran partout, AFFICHE quand l'entete
   disparait, dans le MEME ordre pour les contrats et le rapprochement.
   03 B : la ligne porte un lisere de la couleur de son segment dans la barre
   de composition (--fc-rel-c, cf. couleursComposition) : elle sert de
   legende a la barre. Ligne ouverte : le lisere s'epaissit, sans aplat (le
   vert des gains tomberait sous 4,5:1 sur un fond plus sombre que le papier).
   09 : le bas du releve retombe sur le bandeau (.fc-rel-rappro).
   UNE grille pour l'entete, les lignes et le rapprochement ; ses paliers
   suivent la largeur du RELEVE (requetes de conteneur : la barre laterale
   repliee ou non change la place a fenetre egale), avec un repli en @media
   pour les navigateurs qui ne les connaissent pas. */
/* carte blanche de section (26/10/2026) ; pas d'overflow cache : les
   infobulles des graphiques du tiroir doivent pouvoir en sortir. Les lignes
   pleine largeur ne touchent jamais les coins arrondis (entete au-dessus,
   note au-dessous). */
.fc-releve{--rel-pad:18px;container-type:inline-size;margin-top:6px;background:#fff;
  border:0;border-radius:14px;box-shadow:var(--fc-ombre-carte);padding:2px var(--rel-pad) 16px}
.fc-rel-entete,.fc-rel-tete,.fc-rel-rappro{display:grid;
  grid-template-columns:minmax(0,2.6fr) repeat(4,minmax(0,1fr)) 76px 84px;
  column-gap:12px;align-items:center}
.fc-rel-entete>*,.fc-rel-tete>*,.fc-rel-rappro>*{min-width:0}
.fc-rel-entete{padding:14px 4px 9px;border-bottom:1px solid var(--fc-filet-fort)}
.fc-rel-entete>span{font:600 11px/1.2 var(--police-corps);letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
.fc-rel-entete>span.d{text-align:right}
.fc-rel-ligne+.fc-rel-ligne{border-top:1px solid var(--fc-filet)}
/* le bouton deborde sur le rembourrage de la carte : lisere et survol vont
   jusqu'au bord, le contenu reste aligne sur l'entete (4 px) */
.fc-rel-tete{-webkit-appearance:none;appearance:none;box-sizing:border-box;position:relative;
  width:calc(100% + 2 * var(--rel-pad));margin:0 calc(-1 * var(--rel-pad));
  padding:16px calc(var(--rel-pad) + 4px);border:0;border-radius:0;background:transparent;
  font:400 14px/1.4 var(--police-corps);color:var(--fc-encre);text-align:left;cursor:pointer;
  box-shadow:inset 4px 0 0 var(--fc-rel-c,var(--fc-filet));
  transition:background .2s,box-shadow .25s cubic-bezier(.4,0,.2,1)}
/* survol au LAVIS du vert du logo (8 %, melange du 26/10/2026), plus sur le
   papier : sur la carte blanche, le vert des gains y garde 4,8:1 */
.fc-rel-tete:hover{background:rgba(90,175,101,.08)}
.fc-rel-tete:focus-visible{outline:2px solid var(--fc-encre);outline-offset:-2px}
.fc-rel-tete[aria-expanded="true"]{box-shadow:inset 7px 0 0 var(--fc-rel-c,var(--fc-filet-fort))}
.fc-rel-id{display:flex;gap:13px;align-items:center;min-width:0}
.fc-rel-txt{display:block;min-width:0}
.fc-mono{width:40px;height:40px;flex:none;border:1px solid var(--fc-laiton);color:var(--fc-laiton);
  display:flex;align-items:center;justify-content:center;font:500 14px var(--police-corps);
  font-variant-numeric:tabular-nums lining-nums;border-radius:3px}
/* variante logo : la marque du partenaire logee dans le carre, sur fond
   blanc (les marques sont concues sur fond clair) avec un peu d'air. */
.fc-mono-logo{background:#fff;padding:5px;border-color:var(--fc-filet)}
.fc-mono-logo img{max-width:100%;max-height:100%;object-fit:contain;display:block}
/* dans le releve (26/10/2026) : la marque dans une PASTILLE RONDE blanche
   cerclee d'un filet tres doux ; un peu plus d'air pour que la marque ne
   touche pas le cercle. Le monogramme de repli s'arrondit avec elle. La
   bibliotheque garde ses carres. */
.fc-releve .fc-mono{border-radius:50%}
.fc-releve .fc-mono-logo{padding:6px;border-color:rgba(3,60,32,.12);box-shadow:0 2px 6px rgba(3,60,32,.08)}
.fc-rel-nom{display:block;font-weight:600;font-size:14px;line-height:1.3;letter-spacing:0;color:var(--fc-encre)}
.fc-rel-sub{display:block;font:500 12px/1.4 var(--police-corps);color:var(--mut);margin-top:2px}
/* la sous-ligne se coupe ENTRE ses segments (nature, numero, date...) :
   un segment ne se casse que s'il ne tient pas seul sur une ligne */
.fc-rel-sub>span{display:inline-block;max-width:100%}
/* montants : une seule famille par ligne, la sans (piste 3) ; le total se
   distingue par la graisse (.fc-rel-rappro.fin, 700) */
.fc-rel-tete .num,.fc-rel-rappro .num{font:500 15px/1.3 var(--police-corps);font-variant-numeric:tabular-nums lining-nums;
  text-align:right;color:var(--fc-encre);white-space:nowrap}
.fc-rel-tete .num.gain,.fc-rel-rappro .num.gain{color:var(--fc-gain)}
.fc-rel-tete .num.perte,.fc-rel-rappro .num.perte{color:var(--fc-perte)}
.fc-rel-tete .num .fc-note-num{display:block;font:500 11px/1.3 var(--police-corps);color:var(--mut);
  margin-top:2px;white-space:normal}
/* libelle de colonne porte par chaque montant : le bouton se lit « Confié
   33 000 € » ; masque visuellement tant que l'entete est la */
.fc-rel-tete .k,.fc-rel-rappro .k{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.fc-spark svg{width:76px;height:27px;display:block;margin-left:auto}
.fc-rel-ouvrir{justify-self:end;display:inline-flex;align-items:center;gap:8px;
  font:600 12px/1 var(--police-corps);color:var(--fc-encre)}
.fc-rel-ouvrir .chev,.fc-ouvrir-table .chev{color:var(--fc-laiton-txt)}
.fc-rel-ouvrir .chev svg,.fc-ouvrir-table .chev svg{width:10px;height:10px;display:block}
/* survol et etat ouvert de la pastille : un LAVIS laiton sous une encre
   lisible (proposition 02), plus l'aplat laiton plein des autres pastilles */
.fc-releve .fc-rel-tete:hover .chev,.fc-ouvrir-table:hover .chev{background:rgba(168,130,60,.16);color:var(--fc-laiton-txt)}
.fc-releve .fc-rel-tete[aria-expanded="true"] .chev{background:rgba(168,130,60,.16)}
/* paliers : sous 900 px de releve, la sparkline et le mot s'effacent ; sous
   640 px, chaque ligne passe en 2 x 2 libelle/montant (bloc plus bas, apres
   ce palier, et repli @media 860 px en fin de feuille) */
@container (max-width:899.98px){
  .fc-rel-entete,.fc-rel-tete,.fc-rel-rappro{grid-template-columns:minmax(0,2.6fr) repeat(4,minmax(0,1fr)) 30px}
  .fc-spark,.fc-rel-mot{display:none}
}
/* repli des navigateurs SANS requetes de conteneur seulement : pose sans
   condition, il s'imposait a tous et court-circuitait le palier de
   conteneur (relevé de 728 px deja en 2 x 2 a 768 px ; correctifs du
   22/10/2026) */
@supports not (container-type:inline-size){
@media (max-width:1180px){
  .fc-rel-entete,.fc-rel-tete,.fc-rel-rappro{grid-template-columns:minmax(0,2.6fr) repeat(4,minmax(0,1fr)) 30px}
  .fc-spark,.fc-rel-mot{display:none}
}
}
@container (max-width:639.98px){
  .fc-rel-entete{display:none}
  .fc-rel-tete,.fc-rel-rappro{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;row-gap:3px}
  .fc-rel-tete{padding:14px calc(var(--rel-pad) + 4px) 12px}
  /* sans entete, la 1re ligne touche le coin arrondi de la carte : son
     lisere en suit la courbe au lieu d'en deborder (26/10/2026) */
  .fc-rel-entete+.fc-rel-ligne .fc-rel-tete{border-top-left-radius:12px}
  .fc-rel-id{grid-column:1/-1;padding-right:34px;margin-bottom:8px}
  .fc-rel-ouvrir{position:absolute;top:22px;right:calc(var(--rel-pad) + 4px)}
  .fc-rel-mot,.fc-spark,.fc-rel-vide{display:none}
  .fc-rel-tete .num,.fc-rel-rappro .num{display:flex;justify-content:space-between;align-items:baseline;gap:6px;
    font-size:15px;text-align:left}
  .fc-rel-tete .k,.fc-rel-rappro .k{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;
    clip-path:none;font:500 12px/1.6 var(--police-corps);color:var(--mut)}
  .fc-rel-v{text-align:right}
  .fc-rel-tete .num{flex-wrap:wrap}
  .fc-rel-tete .num .fc-note-num{flex-basis:100%;text-align:right;margin-top:0}
  .fc-rel-rappro .fc-rel-lib{grid-column:1/-1;margin-bottom:6px}
  .fc-rel-rappro.fin .num{font-size:15.5px}
}
/* depli d'une ligne de releve : meme recette d'accordeon 0fr->1fr que
   partout ailleurs -- il contient le trio de cartes detaillees existant
   (identite/rendement/evolution) + les tableaux mensuels/supports. */
.fc-rel-det{display:grid;grid-template-rows:0fr;
  transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1)}
.fc-rel-det.open{grid-template-rows:1fr}
.fc-rel-det>.fc-rel-det-inner{overflow:hidden;min-height:0}
/* ceinture de l'attribut inert (tiroir ferme, cf. toggleFcDet) : le contenu
   d'un tiroir ferme n'est ni visible ni atteignable, une fois la fermeture
   (0,3 s) terminee. */
.fc-rel-det:not(.open)>.fc-rel-det-inner{visibility:hidden;transition:visibility 0s .3s}
/* TIROIR A UN SEUL NIVEAU (proposition 14 du 21/10/2026, lot 2) : le
   bouton de la ligne ouvre et ferme TOUT, plus de « Réduire » par bloc. Deux
   blocs A PLAT cote a cote (versements, evolution), empiles sous 640 px ;
   puis l'encart des grandes dates (frise, proposition 02), qui porte le
   seul depli restant : le tableau mois par mois, pour toutes les natures. */
.fc-rel-det.open>.fc-rel-det-inner{border-top:1px dashed var(--fc-filet)}
.fc-rel-det-contenu{padding:18px 4px 22px}
.fc-duo-produit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:22px 36px;
  margin-bottom:0;align-items:stretch}
.fc-duo-produit>*{min-width:0}
.fc-duo-produit .card{margin-bottom:0}
.fc-duo-produit-scpi{grid-template-areas:"identite evolution" "vp evolution" "drr evolution";
  grid-template-rows:auto auto 1fr}
.fc-duo-produit-scpi .g-identite{grid-area:identite}
.fc-duo-produit-scpi .g-vp{grid-area:vp}
.fc-duo-produit-scpi .g-drr{grid-area:drr}
.fc-duo-produit-scpi .g-evolution{grid-area:evolution}
@media (max-width:640px){
  .fc-duo-produit{grid-template-columns:minmax(0,1fr)}
  .fc-duo-produit-scpi{grid-template-areas:"identite" "evolution" "vp" "drr";grid-template-rows:auto}
}
/* blocs a plat : ni cadre ni rembourrage dans le tiroir (les cartes FIP et
   les options SCPI comprises) ; les cartes 3 Colonnes, hors de ce duo,
   gardent leur cadre */
.fc-rel-det-contenu .fc-duo-produit .card{background:none;border:0;border-radius:0;padding:0}
.fc-rel-det-contenu .fc-duo-produit .card+.card{margin-top:22px}
.fc-rel-det-contenu .fc-duo-produit .g-vp .card{border-top:1px solid var(--fc-filet);padding-top:12px;margin-top:0}
.fc-bloc{min-width:0}
.fc-bloc-titre{margin:0 0 10px;font:400 16.5px/1.25 var(--fc-serif);color:var(--fc-encre);letter-spacing:.005em}
.fc-vers{margin:0;font:500 13.5px/1.4 var(--police-corps);color:var(--fc-encre)}
.fc-vers>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:5px 0}
.fc-vers dt{min-width:0}
.fc-vers dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums lining-nums;white-space:nowrap}
.fc-vers .tot{border-top:1px solid var(--fc-filet);margin-top:3px;padding-top:8px}
.fc-vers .gain dd{color:var(--fc-gain)}
.fc-vers .perte dd{color:var(--fc-perte)}
.fc-vers .fc-note-num{font:500 12px/1.4 var(--police-corps);color:var(--mut)}
.fc-alloc{margin-top:22px}
.fc-alloc-un{margin:0;font:500 13.5px/1.5 var(--police-corps);color:var(--fc-encre)}
.fc-alloc-profil{margin:-4px 0 8px;font:500 12px/1.4 var(--police-corps);color:var(--mut)}
/* encart des grandes dates (proposition 02) */
.fc-encart{margin-top:26px;background:var(--fc-carte);border:1px solid var(--fc-filet);border-radius:6px;
  padding:16px 18px 4px}
.fc-encart>.fc-bloc-titre{margin-bottom:18px}
.fc-frise{--n:4;--k:2;list-style:none;margin:0;padding:0;display:grid;
  grid-template-columns:repeat(var(--n),minmax(0,1fr));position:relative}
.fc-frise::before,.fc-frise::after{content:"";position:absolute;top:7px;height:2px;left:calc(50% / var(--n));border-radius:2px}
.fc-frise::before{right:calc(50% / var(--n));background:var(--fc-filet)}
.fc-frise::after{width:calc((100% - 100% / var(--n)) * var(--k) / (var(--n) - 1));background:var(--fc-emeraude);
  transform-origin:left;transform:scaleX(var(--s,1))}
.fc-frise.anime::after{transition:transform .6s cubic-bezier(.4,0,.2,1) .15s}
.fc-frise li{position:relative;z-index:1;text-align:center;padding:0 6px;min-width:0}
.fc-frise-jalon{display:block;box-sizing:border-box;width:16px;height:16px;margin:0 auto 10px;border-radius:50%;
  background:var(--fc-carte);border:2px solid var(--fc-filet-fort)}
.fc-frise .passe .fc-frise-jalon{background:var(--fc-emeraude);border-color:var(--fc-emeraude)}
.fc-frise .auj .fc-frise-jalon{border-color:var(--fc-emeraude);box-shadow:0 0 0 4px rgba(53,110,61,.16)}
.fc-frise-quand{display:block;font:700 13px/1.3 var(--police-corps);font-variant-numeric:lining-nums;color:var(--fc-encre)}
.fc-frise-quoi{display:block;margin-top:2px;font:600 13px/1.3 var(--police-corps);color:var(--fc-encre)}
.fc-frise .auj .fc-frise-quoi{color:var(--fc-gain)}
.fc-frise-detail{display:block;margin-top:2px;font:500 12px/1.4 var(--police-corps);color:var(--mut)}
@media (max-width:560px){
  .fc-encart{padding:14px 14px 4px}
  .fc-frise{grid-template-columns:minmax(0,1fr);row-gap:16px}
  .fc-frise::before,.fc-frise::after{top:8px;left:7px;width:2px;height:auto}
  .fc-frise::before{bottom:8px;right:auto}
  .fc-frise::after{bottom:auto;height:calc((100% - 16px) * var(--k) / (var(--n) - 1));transform-origin:top;transform:scaleY(var(--s,1))}
  .fc-frise li{display:grid;grid-template-columns:16px minmax(0,1fr);column-gap:12px;text-align:left;padding:0}
  .fc-frise-jalon{margin:0;grid-row:1 / span 3}
}
@media (prefers-reduced-motion:reduce){.fc-frise.anime::after{transition:none}}
/* depli du tableau mois par mois : une ligne pleine largeur au mot en encre
   de 13 px (plancher du site), la pastille garde le laiton */
.fc-ouvrir-table{-webkit-appearance:none;appearance:none;display:flex;align-items:center;justify-content:space-between;
  gap:12px;width:100%;margin:16px 0 0;padding:12px 0;border:0;border-top:1px solid var(--fc-filet);border-radius:0;
  background:none;cursor:pointer;font:600 13px/1.3 var(--police-corps);color:var(--fc-encre);text-align:left}
.fc-encart>.fc-ouvrir-table:first-child{margin-top:0;border-top:0}
.fc-ouvrir-table small{display:block;font:500 12px/1.4 var(--police-corps);color:var(--mut)}
.fc-ouvrir-table:focus-visible{outline:2px solid var(--fc-emeraude);outline-offset:3px}
.fc-encart .sim-collapse-body.open{margin:4px 0 14px}
/* COHERENCE DU TIROIR (demande explicite : "quand je clique sur un contrat,
   ca a garde l'esthetisme d'avant... ca fait tache") : les cartes du detail
   (trio identite/rendement/evolution, tableaux) quittent le neumorphisme --
   fond papier, filets fins, titres en serif -- pour rester
   dans le langage du Releve. Overrides scopes au tiroir : les memes cartes
   restent neumorphiques partout ailleurs (Synthese globale...). */
.fc-rel-det-contenu .card,.fc-flat .card{background:var(--fc-carte);box-shadow:none;
  border:1px solid var(--fc-filet);border-radius:6px;padding:20px 22px}
.fc-rel-det-contenu .card:hover,.fc-flat .card:hover{box-shadow:none;background:var(--fc-carte);transform:none}
.fc-rel-det-contenu h2.sec,.fc-flat h2.sec{font:400 19px/1.2 var(--fc-serif);color:var(--fc-encre);letter-spacing:0}
.fc-rel-det-contenu .p-nom{font-family:var(--fc-serif);font-weight:400;font-size:16px;color:var(--fc-encre)}
.fc-rel-det-contenu .p-titre-bloc{font-family:var(--fc-serif);font-weight:400;font-size:16px;color:var(--fc-encre)}
/* valeurs des encarts en police de CORPS (harmonie demandee explicitement :
   la serif ne reste que sur les titres h2.sec et le nom du produit) --
   seule la couleur encre est imposee, les tailles/graisses de base font foi. */
.fc-flat .fin-val,.fc-flat .fin-scpi-row .v{color:var(--fc-encre)}
/* "Projet de financement" au vocabulaire du Releve (demande explicite :
   l'encart ne collait plus a la charte). Le bloc et son graphique consomment
   des VARIABLES (--green/--navy/--orange/--gold-ink/--line) : on les remappe
   ici vers la gamme de la maquette -- courbes, marqueur "Aujourd'hui", zone
   DIFFERE, pastilles de legende et accents du recit basculent d'un coup,
   sans toucher au balisage ni a la page globale (hors fiche), qui garde ses
   couleurs d'origine. */
.fc-flat .fin-card{border-color:var(--fc-filet);
  --green:var(--fc-gain);--green-ink:var(--fc-gain);--green-line-soft:var(--fc-gain-clair);
  --orange:var(--fc-laiton);--navy:var(--fc-encre);--gold-ink:var(--fc-laiton);
  --line:var(--fc-filet)}
/* VOTRE FINANCEMENT LISIBLE (propositions 11 et 01 du 21/10/2026, lot 3).
   L'EFFORT passe du laiton a l'orange du site, sur la seule carte de la
   fiche (.fin-card-x, propre a financementBloc) : la page Simulateurs porte
   aussi .fin-card et garde son laiton (zone recopiee du site, un port
   l'ecraserait). Les regles .simx-* de la zone recopiee ne sont pas
   touchees : surcharges sous .fin-card-x seulement. */
.fc-flat .fin-card-x{--orange:#e8952e}
/* carte du financement de la FICHE (.fc-fin-cartes, pose par pageFoyer) en
   carte blanche de section (26/10/2026) ; survol compris, que .fc-flat
   .card:hover remettait a plat. La page Simulateurs n'est pas touchee. */
.fc-flat.fc-fin-cartes>.card,.fc-flat.fc-fin-cartes>.card:hover{background:#fff;border:0;border-radius:14px;
  box-shadow:var(--fc-ombre-carte)}
.fin-card-x .fc-fin-eti{margin:0 0 4px;font:600 11px/1.3 var(--police-corps);letter-spacing:.14em;
  text-transform:uppercase;color:var(--fc-laiton-txt)}
.fin-card-x .fc-fin-titre{margin:0;font:400 19px/1.25 var(--fc-serif);color:var(--fc-encre)}
.fin-card-x .fc-fin-sous{margin:3px 0 0;font:500 12.5px/1.4 var(--police-corps);color:var(--mut)}
.fin-card-x .simx-titre{color:var(--fc-emeraude)}
.fin-card-x .simx-resultat{background:none;border:0;border-left:1px solid var(--fc-filet);border-radius:0;padding:0 0 0 28px}
.fin-card-x .simx-phare{font-weight:400}
.fin-card-x .simx-phrase{margin:10px 0 12px;max-width:62ch;font-size:15px;line-height:1.55;font-weight:500;color:var(--fc-encre)}
.fin-card-x .simx-phrase b{color:var(--fc-encre)}
.fin-card-x .simx-barre{height:12px}
.fin-card-x .simx-legende b.o{color:var(--orange-txt)}
.fin-card-x .simx-legende span.fc-k-valo::before{background:var(--courbe-valo)}
.fin-card-x .simx-onglets button.on{color:var(--fc-encre)}
.fc-fin-marque{display:inline-grid;place-items:center;flex:none;box-sizing:border-box;width:28px;height:28px;padding:2px;
  border:1px solid var(--fc-filet);border-radius:3px;background:#fff}
.fc-fin-marque img{width:100%;height:100%;object-fit:contain}
/* mention visible sous la barre, AVANT toute projection (elle vivait au
   fond de « Voir le détail », replie pour le client) */
.fc-fin-mention{margin:10px 0 0;padding:8px 12px;border-left:3px solid var(--fc-filet-fort);background:rgba(21,38,29,.03);
  font:italic 400 12.5px/1.5 var(--police-corps);color:var(--mut)}
/* mensualites en barres HTML : un libelle par case, qui va a la ligne au
   lieu de chevaucher ; aucune barre ne depasse sa mensualite (--k = part de
   la plus forte), le surplus est hachure DANS la barre et ecrit au-dessus */
.fc-mens{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));margin-top:18px}
.fc-mens-col{min-width:0;display:flex;flex-direction:column}
.fc-mens-zone{height:200px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;
  padding:0 6px;border-bottom:1px solid var(--fc-filet-fort)}
.fc-mens-mt{margin-bottom:6px;text-align:center;font:700 14px/1.2 var(--police-corps);
  font-variant-numeric:tabular-nums lining-nums;color:var(--fc-encre)}
.fc-mens-mt small{display:block;margin-top:2px;font:600 12px/1.2 var(--police-corps);
  font-variant-numeric:tabular-nums lining-nums;color:var(--fc-gain)}
.fc-mens-pile{width:min(84px,70%);height:calc(var(--k) * 150px);display:flex;flex-direction:column;
  border-radius:4px 4px 0 0;overflow:hidden}
.fc-mens-e{background:var(--orange)}
.fc-mens-l{background:var(--color-primary)}
.fc-mens-l.surplus{background:repeating-linear-gradient(135deg,rgba(255,255,255,.35) 0 3px,transparent 3px 7px),var(--color-primary)}
.fc-mens-lib{margin:8px 0 0;padding:0 4px;text-align:center;font:600 12.5px/1.35 var(--police-corps);color:var(--fc-encre)}
.fc-mens-lib span{display:block;font:500 12px/1.35 var(--police-corps);color:var(--mut)}
.fc-mens+.simx-legende{margin-top:12px}
/* periode de differe (22/10/2026) : meme laiton que la bande du graphique
   Patrimoine net (--fc-laiton a 14 %), etiquette en tete de la premiere
   colonne ; des colonnes de differe voisines forment une seule bande */
.fc-mens-zone{position:relative}
.fc-mens-zone.differe{background:rgba(168,130,60,.14)}
/* --nd = nombre de colonnes du differe : colonnes de grille egales et sans
   gouttiere, l'etiquette couvre toute la bande ; z-index pour passer
   devant la colonne voisine, positionnee elle aussi */
.fc-mens-tag{position:absolute;z-index:1;top:8px;left:0;width:calc(100% * var(--nd, 1));text-align:center;
  font:600 12px/1.2 var(--police-corps);color:var(--fc-laiton-txt)}
/* « pendant le differe » pour les lecteurs d'ecran seulement, sous chaque
   colonne du differe (l'etiquette visible, unique, est aria-hidden) */
.fc-mens-lib .fc-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media (max-width:860px){
  .fin-card-x .simx-resultat{border-left:0;padding:0}
  .fin-card-x .simx-phare small{display:inline;margin:0 0 0 6px}
}
@media (max-width:760px){
  .fc-flat .fin-card-x{padding:16px 14px}
  .fin-card-x .simx-phare{font-size:34px}
  .fin-card-x .simx-phare small{display:inline-block;white-space:nowrap}
  .fin-card-x .simx-onglets button{padding:8px;font-size:13px}
  .fc-mens-zone{height:180px;padding:0 3px}
  .fc-mens-pile{height:calc(var(--k) * 132px)}
}
/* jauge de mensualite : segments A PLAT (vert anglais / laiton) au lieu des
   degrades brillants -- !important requis, les degrades sont poses en style
   inline par financementBloc (partage avec la page globale). Barre sur
   papier-2 + filet, comme la barre de composition. */
.fc-flat .jauge-frais .jf-barre{background:var(--fc-papier-2);border:1px solid var(--fc-filet);
  border-radius:3px;height:14px}
.fc-flat .jf-barre-split .jf-seg:first-child{background:var(--fc-gain) !important}
.fc-flat .jf-barre-split .jf-seg:last-child{background:var(--fc-laiton) !important}
/* recit de rendement : meme registre que .fc-annotation (bandeau laiton a
   filet fort), a la place de la boite verte arrondie du simulateur. */
.fc-flat .sime-recit-encart{background:rgba(168,130,60,.08);border:none;
  border-left:3px solid var(--fc-laiton);border-radius:0 6px 6px 0}
.fc-flat .sime-recit{font-size:13px}
/* page Simulateurs entiere en .fc-flat (cf. pageSimulateurs) : champs de
   formulaire a plat sur filet (plus de creux neumorphiques verts), boutons
   de choix au contour filet avec actif laiton, sous-cartes SCPI et tuiles
   de l'estimateur d'impots sur papier-2/carte. */
.fc-flat .sim-field input, .fc-flat .sim-field select{background:#fff;border:1px solid var(--fc-filet);
  border-radius:3px;box-shadow:none;color:var(--fc-encre)}
.fc-flat .sim-field input:focus, .fc-flat .sim-field select:focus{box-shadow:none;outline:none;
  border-color:var(--fc-laiton)}
.fc-flat .sim-field input:disabled, .fc-flat .sim-field select:disabled{background:var(--fc-papier-2);
  color:var(--mut2)}
.fc-flat .sim-choix-btn{background:transparent;border:1px solid var(--fc-filet);border-radius:3px;
  color:var(--fc-encre);box-shadow:none}
.fc-flat .sim-choix-btn:hover{box-shadow:none;border-color:var(--fc-laiton)}
.fc-flat .sim-choix-btn.on{border-color:var(--fc-laiton);background:rgba(168,130,60,.10);
  color:var(--fc-encre);box-shadow:none}
.fc-flat .sim-scpi-row{background:var(--fc-papier-2);border-color:var(--fc-filet);border-radius:6px}
.fc-flat .simi-stat{background:#fff;border-color:var(--fc-filet);border-radius:6px}
.fc-flat .simi-stat-val{color:var(--fc-encre)}
.fc-flat .fin-scpi{background:var(--fc-papier-2);border:1px solid var(--fc-filet);border-radius:6px}
.fc-flat .fin-scpi-nom{color:var(--fc-encre)}
.fc-rel-det-contenu .kpi .val,.fc-flat .kpi .val{font:600 15px/1.35 var(--police-corps);
  font-variant-numeric:tabular-nums lining-nums;color:var(--fc-encre)}
/* TOUS les boutons/controles a l'interieur du monde Releve -- y compris ceux
   qui n'apparaissent qu'apres un clic (« Voir la suite » de l'historique,
   filtres...) : contour laiton a plat, plus de verre/neumorphisme (demande
   explicite). */
.fc-flat .voir-suite{background:transparent;border:1px solid var(--fc-laiton);color:var(--fc-laiton);
  box-shadow:none;border-radius:3px;font:600 12px/1.2 var(--police-corps);
  letter-spacing:.08em;text-transform:uppercase;padding:9px 16px}
.fc-flat .voir-suite:hover{background:var(--fc-laiton);color:#fff;box-shadow:none;transform:none}
.fc-flat .filtres select{background:transparent;border:1px solid var(--fc-filet);box-shadow:none;
  border-radius:3px;color:var(--fc-encre)}
.fc-flat .filtres select:focus{box-shadow:none;outline:none;border-color:var(--fc-laiton)}
.fc-flat .copy-btn{background:transparent;border:1px solid var(--fc-filet);box-shadow:none;
  border-radius:3px;color:var(--fc-encre)}
.fc-flat .copy-btn:hover{background:var(--fc-papier-2);box-shadow:none}
/* bandeau "Affichage limite a fin ..." (htmlVersements) : la pilule orange
   sur creme detonnait dans le monde Releve -- meme registre que .fc-rel-note
   (italique serif discret), filet laiton a gauche, picto masque. */
.fc-flat .note{border-left:2px solid var(--fc-laiton);background:transparent;border-radius:0;
  padding:2px 0 2px 12px;font:italic 400 13px/1.45 var(--fc-serif);color:var(--mut)}
.fc-flat .note .note-ic{display:none}
.fc-rel-det-contenu table th{font:600 11px/1.3 var(--police-corps);letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.fc-rel-det-contenu .v{font-variant-numeric:tabular-nums lining-nums}
.fc-rel-det-contenu td,.fc-flat td{font-variant-numeric:tabular-nums lining-nums}
/* RAPPROCHEMENT (proposition 09) : sous-total des contrats detenus en
   direct, lignes calculees (contrats finances nets du capital restant du,
   contrats integralement rachetes, primes du mois), puis le patrimoine du
   bandeau (sa pastille « = bandeau de tete » est retiree le 22/10/2026,
   demande d'Antoine : le montant identique suffit). */
.fc-rel-rappro{padding:14px 4px}
.fc-rel-rappro+.fc-rel-rappro{border-top:1px solid var(--fc-filet)}
.fc-rel-rappro.st{border-top:1px solid var(--fc-filet-fort)}
.fc-rel-rappro.fin{border-top:2px solid var(--fc-encre);padding:15px 4px 8px}
.fc-rel-lib{font:600 13.5px/1.35 var(--police-corps);color:var(--fc-encre)}
.fc-rel-lib small{display:block;margin-top:2px;font:500 12px/1.4 var(--police-corps);color:var(--mut)}
.fc-rel-surtitre{display:block;margin-bottom:3px;font:600 11px/1.2 var(--police-corps);letter-spacing:.12em;
  text-transform:uppercase;color:var(--mut)}
.fc-rel-rappro.fin .fc-rel-lib{font:700 15px/1.3 var(--police-corps)}
.fc-rel-rappro.fin .num{font-weight:700;font-size:17px}
/* note du releve : droit, 13 px (elle porte la mention des performances
   passees, la ou la colonne Perf. se lit) */
.fc-rel-note{font:500 13px/1.55 var(--police-corps);color:var(--mut);margin-top:12px}
.fc-releve>.fc-rel-note{margin:4px 0 0;padding-top:12px;border-top:1px solid var(--fc-filet)}
.fc-rel-note b{color:var(--fc-encre);font-weight:700}
/* --- infobulles du Releve -------------------------------------------------
   UN SEUL habillage pour toutes les infobulles de la fiche : panneau de
   papier (--fc-carte) a filet, coiffe d'un trait de laiton, sans verre depoli
   ni arrondi de 14 px -- le <sup>?</sup> nu et le title natif du navigateur
   (gris systeme, une seconde de latence) detonnaient dans le document.
   Le marqueur devient une pastille cerclee de laiton qui se remplit au
   survol : elle se voit assez pour qu'on sache qu'il y a quelque chose a
   lire, sans peser dans un tableau de chiffres. */
/* --- commande de depli des panneaux du tiroir --------------------------
   L'en-tete entier est la zone de clic (elle l'etait deja, mais rien ne le
   disait) : fond qui s'eclaire au survol, et un bouton explicite a droite.
   Le mot compte autant que la fleche -- un chevron seul, gris, de 10 px, se
   lit comme un ornement. */
.p-sum{cursor:pointer;border-radius:4px;margin:-6px -8px 0;padding:6px 8px;
  transition:background var(--t-fast)}
.p-sum:hover{background:rgba(168,130,60,.07)}
/* LE CHEVRON, PARTOUT DANS LE MONDE RELEVE. Un glyphe gris de 10 px pose
   dans un coin de carte ne se lit pas comme une commande -- signale deux
   fois. Trois signaux se cumulent desormais, du plus fort au plus discret :
   (1) la SURFACE repond au survol (fond qui s'eclaire : c'est le signal qui
   porte le plus loin, il dit « toute cette bande est cliquable ») ;
   (2) le chevron devient une PASTILLE cerclee de laiton, qui se remplit au
   survol -- meme vocabulaire que les infobulles et les boutons de depli ;
   (3) un MOT ("Voir le détail" / "Masquer", "Détail" / "Réduire") partout ou
   la place le permet, car aucune icone n'est aussi explicite qu'un verbe.
   Les lignes du releve et de la bibliotheque gardent la pastille seule : un
   mot par ligne serait du bruit sur une grille de chiffres, et l'intention y
   est deja ecrite une fois dans la note de section. */
body.fiche-releve .chev,.fc-flat .chev{display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;border-radius:50%;flex:none;
  /* le glyphe faisait 9 px dans un disque de 20 : la pastille se voyait, la
     FLECHE non. 13 px remplissent le disque et se lisent d'un coup d'oeil. */
  font-size:13px;line-height:1;
  border:1px solid var(--fc-laiton);color:var(--fc-laiton);
  transform:none;
  transition:transform .25s cubic-bezier(.4,0,.2,1),background var(--t-fast),color var(--t-fast)}
body.fiche-releve .chev.open,.fc-flat .chev.open{transform:rotate(180deg)}
.fc-rel-tete:hover .chev,.bib-tete:hover .chev,.kpis-depliable:hover .chev,.p-sum:hover .chev{
  background:var(--fc-laiton);color:var(--fc-ivoire)}
/* La fleche DESCEND de 2 px au survol : elle mime le panneau qui va
   s'ouvrir. Sur un panneau deja ouvert (chevron retourne) elle REMONTE --
   le mouvement annonce ce que le clic va faire, pas ce qu'il a fait.
   Transforms ecrites en toutes lettres, etat par etat : une version
   composee par variables CSS (translateY(var()) rotate(var())) n'etait pas
   appliquee par le navigateur, la rotation d'ouverture disparaissait. */
.fc-rel-tete:hover .chev,.bib-tete:hover .chev,.kpis-depliable:hover .chev,.p-sum:hover .chev{
  transform:translateY(2px)}
.fc-rel-tete:hover .chev.open,.bib-tete:hover .chev.open,
.kpis-depliable:hover .chev.open,.p-sum:hover .chev.open{
  transform:translateY(-2px) rotate(180deg)}
@media (prefers-reduced-motion:reduce){
  .fc-rel-tete:hover .chev,.bib-tete:hover .chev,.kpis-depliable:hover .chev,.p-sum:hover .chev{
    transform:none}
  .fc-rel-tete:hover .chev.open,.bib-tete:hover .chev.open,
  .kpis-depliable:hover .chev.open,.p-sum:hover .chev.open{transform:rotate(180deg)}
}
/* le bandeau de KPI n'avait aucune reponse au survol, contrairement aux
   lignes de releve et de bibliotheque : il ne se distinguait pas d'un encart
   decoratif. */
.kpis-depliable{cursor:pointer;border-radius:4px;margin:-8px -10px;padding:8px 10px;
  transition:background .2s}
.kpis-depliable:hover{background:var(--fc-papier-2)}
.p-toggle{display:inline-flex;align-items:center;gap:7px;flex:none}
.p-toggle-lbl{font:600 11px/1 var(--police-corps);letter-spacing:.1em;
  text-transform:uppercase;color:var(--fc-laiton)}
.p-sum .chev{margin-left:0}
.fc-info{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;
  margin-left:5px;vertical-align:1px;border-radius:50%;cursor:help;
  border:1px solid var(--fc-laiton);color:var(--fc-laiton);background:transparent;
  font:700 10.5px/1 var(--police-corps);
  transition:background var(--t-fast),color var(--t-fast)}
.fc-info:hover,.fc-info:focus-visible{background:var(--fc-laiton);color:var(--fc-ivoire);outline:none}
/* position:fixed, et posee sur le body : en position:absolute elle serait
   rognee par .tbl-scroll (overflow-x:auto rend AUSSI l'axe vertical
   scrollable, donc clippant). */
.fc-tip{position:fixed;z-index:120;max-width:252px;pointer-events:none;
  background:var(--fc-carte);color:var(--fc-encre);
  border:1px solid var(--fc-filet-fort);border-top:2px solid var(--fc-laiton);border-radius:4px;
  font:400 12px/1.55 var(--police-corps);padding:10px 13px;
  box-shadow:0 12px 30px rgba(21,38,29,.20)}
/* --- definitions au toucher (proposition 07 du 21/10/2026) ---------------
   Le LIBELLE est le declencheur : un bouton souligne en pointille (laiton
   sur le papier, ivoire sur l'emeraude ; indicateur non textuel a 3,4:1),
   qui ouvre UNE bulle, posee sur le body en position fixe (le bandeau, les
   tiroirs et les tableaux defilants la rogneraient), au survol, au focus et
   a la tape. Echap, un clic ailleurs ou le defilement la ferment. Sous
   640 px elle s'ancre sous le terme, sur toute la largeur. */
.fc-terme{-webkit-appearance:none;appearance:none;background:none;border:0;padding:0;margin:0;border-radius:2px;
  font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;text-align:inherit;line-height:inherit;
  cursor:help;text-decoration:underline dotted var(--fc-laiton);text-decoration-thickness:1.5px;text-underline-offset:4px}
.fc-terme:focus-visible{outline:2px solid var(--fc-emeraude);outline-offset:2px}
.fc-terme-sombre{text-decoration-color:rgba(245,241,232,.75);text-decoration-thickness:1px}
.fc-terme-sombre:focus-visible{outline-color:var(--fc-ivoire);outline-offset:3px}
.fc-bulle{position:fixed;z-index:130;top:0;left:0;max-width:300px;box-sizing:border-box;
  background:var(--fc-carte);color:var(--fc-encre);border:1px solid var(--fc-filet-fort);
  border-top:2px solid var(--fc-laiton);border-radius:4px;box-shadow:0 12px 30px rgba(21,38,29,.2);
  padding:11px 13px;font:500 12.5px/1.5 var(--police-corps);text-transform:none;letter-spacing:0;text-align:left;
  opacity:0;visibility:hidden;transform:translateY(-4px);
  transition:opacity .16s cubic-bezier(.16,.8,.3,1),transform .16s cubic-bezier(.16,.8,.3,1),visibility 0s .16s}
.fc-bulle.ouvert{opacity:1;visibility:visible;transform:none;
  transition:opacity .16s cubic-bezier(.16,.8,.3,1),transform .16s cubic-bezier(.16,.8,.3,1)}
.fc-bulle strong{display:block;margin-bottom:5px;font:600 11px/1.2 var(--police-corps);letter-spacing:.1em;
  text-transform:uppercase;color:var(--fc-emeraude)}
.fc-bulle .fc-bulle-note{display:block;margin-top:8px;padding-top:7px;border-top:1px solid var(--fc-filet);
  color:var(--mut);font-size:12px}
/* bulle d'un segment de la composition (proposition 08) : nom et nature
   en titre, puis valeur, part et pilier en lignes libelle / valeur */
.fc-bulle.fc-bulle-compo{font-size:13px;line-height:1.45}
.fc-bulle.fc-bulle-compo strong{font:700 13px/1.3 var(--police-corps);letter-spacing:0;text-transform:none;color:var(--fc-encre)}
.fc-bulle-compo dl{margin:0}
.fc-bulle-compo dl div{display:flex;justify-content:space-between;gap:10px;padding:1px 0}
.fc-bulle-compo dt{color:var(--mut)}
.fc-bulle-compo dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
@media (max-width:639.98px){.fc-bulle{max-width:none}}
@media (prefers-reduced-motion:reduce){.fc-bulle,.fc-bulle.ouvert{transition:none;transform:none}}
/* texte reserve au lecteur d'ecran (valeur stable du compteur) */
.fc-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* les infobulles de graphique (chart-tip, tipPie...) suivent le meme
   habillage sur la fiche : le verre depoli restait le dernier vestige de
   l'ancien style au milieu du document. */
body.fiche-releve .chart-tip,.fc-flat .chart-tip{background:var(--fc-carte);
  backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--fc-encre);
  border:1px solid var(--fc-filet-fort);border-top:2px solid var(--fc-laiton);border-radius:4px;
  box-shadow:0 12px 30px rgba(21,38,29,.20)}
body.fiche-releve .chart-tip .t-mois,.fc-flat .chart-tip .t-mois{
  font:400 14px var(--fc-serif);color:var(--fc-encre)}
body.fiche-releve .chart-tip .t-row:nth-of-type(even),.fc-flat .chart-tip .t-row:nth-of-type(even){
  background:rgba(21,38,29,.05)}
body.fiche-releve .chart-tip .t-row .v,.fc-flat .chart-tip .t-row .v{color:var(--fc-encre)}
body.fiche-releve .chart-tip .t-row .v.pos,.fc-flat .chart-tip .t-row .v.pos{color:var(--fc-gain)}
body.fiche-releve .chart-tip .t-row .v.neg,.fc-flat .chart-tip .t-row .v.neg{color:var(--fc-perte)}
/* aire d'ecart des graphiques d'evolution (aireEcartBicolore) : gain et perte
   du Releve, comme les montants de l'infobulle ; hors fiche, le vert et le
   rouge d'origine du tableau de bord */
body.fiche-releve,.fc-flat{--aire-gain:var(--fc-gain);--aire-perte:var(--fc-perte)}
/* infobulles des simulateurs (.simi-tooltip) : meme papier, la fleche suit */
.fc-flat .simi-tooltip{background:var(--fc-carte);backdrop-filter:none;-webkit-backdrop-filter:none;
  border:1px solid var(--fc-filet-fort);border-top:2px solid var(--fc-laiton);border-radius:4px;
  box-shadow:0 12px 30px rgba(21,38,29,.20);color:var(--fc-encre)}
.fc-flat .simi-tooltip::after{border-top-color:var(--fc-carte)}
.fc-flat .simi-tooltip b{color:var(--fc-emeraude)}
.fc-flat .simi-tooltip-regle{border-left-color:var(--fc-filet);color:var(--mut)}
/* --- 05 derniers mouvements (proposition 05 du 21/10/2026, lot 4) ---------
   La liste quitte le fond de page pour une CARTE du Releve (filet, sans
   ombre ni aplat) et se range par mois. Periode en segments (actif a
   l'encre, souligne laiton), produits en pastilles cochables avec compteur,
   qui defilent DANS leur rangee sur telephone (fondu), jamais la page. */
/* carte blanche de section depuis le 26/10/2026 (cf. --fc-ombre-carte) */
.fc-flux-carte{background:#fff;border:0;border-radius:14px;box-shadow:var(--fc-ombre-carte);
  padding:4px 18px 10px;margin-top:4px;min-width:0}
.fc-flux-filtres{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;padding:12px 0;
  border-bottom:1px solid var(--fc-filet);min-width:0}
.fc-flux-per{display:inline-flex;border:1px solid var(--fc-filet-fort);border-radius:4px;overflow:hidden;flex:none}
.fc-flux-per button{all:unset;box-sizing:border-box;cursor:pointer;padding:7px 12px;text-align:center;
  font:600 12.5px/1.2 var(--police-corps);color:var(--mut);transition:background-color var(--t-fast),color var(--t-fast)}
.fc-flux-per button+button{border-left:1px solid var(--fc-filet)}
.fc-flux-per button:hover{color:var(--fc-encre);background:var(--fc-papier)}
.fc-flux-per button[aria-pressed="true"]{background:var(--fc-papier-2);color:var(--fc-encre);font-weight:700;
  box-shadow:inset 0 -2px 0 var(--fc-laiton)}
.fc-flux-per button:focus-visible{outline:2px solid var(--fc-encre);outline-offset:-2px}
.fc-flux-puces{display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.fc-flux-puce{position:relative;display:inline-flex;align-items:center;gap:7px;padding:5px 11px 5px 6px;
  border:1px solid var(--fc-filet);border-radius:999px;background:var(--fc-carte);cursor:pointer;white-space:nowrap;
  font:600 12.5px/1.2 var(--police-corps);color:var(--fc-encre)}
.fc-flux-puce input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.fc-flux-puce:focus-within{outline:2px solid var(--fc-encre);outline-offset:1px}
.fc-flux-coche{width:16px;height:16px;box-sizing:border-box;border-radius:50%;border:1.5px solid var(--fc-laiton);
  display:grid;place-items:center;flex:none}
.fc-flux-coche svg{width:10px;height:10px;opacity:0}
.fc-flux-puce input:checked+.fc-flux-coche{background:var(--fc-laiton)}
.fc-flux-puce input:checked+.fc-flux-coche svg{opacity:1}
.fc-flux-puce img{width:15px;height:15px;object-fit:contain;flex:none}
.fc-flux-puce .n{font-weight:500;color:var(--mut)}
/* decochee : contour pointille et nom attenue (couleur pleine, 5,3:1) */
.fc-flux-puce.off{border-style:dashed;color:var(--mut)}
.fc-flux-puce.off img{filter:grayscale(1);opacity:.5}
.fc-flux-mois{display:flex;justify-content:space-between;align-items:baseline;gap:4px 10px;flex-wrap:wrap;
  padding:16px 0 7px;border-bottom:1px solid var(--fc-filet-fort)}
.fc-flux-mois h3{margin:0;font:400 17px/1.2 var(--fc-serif);color:var(--fc-encre)}
.fc-flux-mois h3:focus{outline:none}
.fc-flux-mois span{font:500 12px/1.3 var(--police-corps);color:var(--mut)}
.fc-flux-mvts{list-style:none;margin:0;padding:0}
.fc-flux-ligne{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;
  padding:9px 0;border-top:1px solid var(--fc-filet)}
.fc-flux-ligne:first-child{border-top:0}
.fc-flux-jour{text-align:center;line-height:1;color:var(--fc-encre)}
.fc-flux-jour b{display:block;font:700 18px/1 var(--police-corps);color:var(--fc-encre);font-variant-numeric:lining-nums tabular-nums}
.fc-flux-jour small{display:block;margin-top:4px;font:700 11px/1 var(--police-corps);letter-spacing:.08em;
  text-transform:uppercase;color:var(--mut)}
.fc-flux-quoi{min-width:0}
.fc-flux-produit{display:flex;align-items:center;gap:7px;font:600 13.5px/1.3 var(--police-corps);color:var(--fc-encre)}
.fc-flux-produit img,.fc-flux-sans-marque{width:16px;height:16px;object-fit:contain;flex:none}
.fc-flux-pnom{min-width:0}
.fc-flux-qui{font:italic 400 12px var(--fc-serif);color:var(--mut)}
.fc-flux-type{display:block;margin-top:1px;padding-left:23px;font:500 12.5px/1.35 var(--police-corps);color:var(--mut)}
.fc-flux-mt{text-align:right;white-space:nowrap;font:500 15px/1.15 var(--police-corps);color:var(--fc-encre);
  font-variant-numeric:tabular-nums lining-nums}
.fc-flux-mt small{display:block;margin-top:3px;font:500 12px/1.2 var(--police-corps);color:var(--mut)}
/* le SENS se lit sans la couleur (mot sous le montant) ; la couleur le
   double : recu en vert du gain (4,9:1 sur la carte), preleve en cout
   (l'orange de 01, version texte), verse et reinvesti a l'encre */
.fc-flux-mt.recu{color:var(--fc-gain)}
.fc-flux-mt.preleve{color:var(--fc-cout)}
/* « Voir la suite », « Voir tout l'historique transmis », actions de l'etat
   vide : bouton a contour, encre, survol en lavis laiton */
.fc-voir-tout{display:block;margin:14px auto 4px;padding:9px 16px;min-height:40px;box-sizing:border-box;cursor:pointer;
  border:1px solid var(--fc-filet-fort);border-radius:4px;background:none;
  font:600 12.5px/1.2 var(--police-corps);color:var(--fc-encre);
  transition:background-color var(--t-fast),transform var(--t-fast)}
.fc-voir-tout:hover{background:rgba(168,130,60,.12)}
.fc-voir-tout:active{transform:scale(.97)}
.fc-voir-tout:focus-visible{outline:2px solid var(--fc-encre);outline-offset:2px}
.fc-flux-vide{margin:14px 0 6px;padding:20px 18px;border:1px dashed var(--fc-filet-fort);border-radius:6px;
  background:var(--fc-carte);text-align:center}
.fc-flux-vide p{margin:0 0 12px;font:500 13.5px/1.5 var(--police-corps);color:var(--fc-encre)}
.fc-flux-vide p:last-child{margin-bottom:0}
.fc-flux-vide .fc-voir-tout{margin:0 auto}
@media (max-width:600px){
  .fc-flux-carte{padding:2px 12px 8px}
  .fc-flux-per{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
  .fc-flux-per button{padding:9px 4px}
  .fc-flux-puces{flex:1 1 100%;flex-wrap:nowrap;overflow-x:auto;padding:2px 24px 4px 2px;scrollbar-width:none;
    -webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent)}
  .fc-flux-puces::-webkit-scrollbar{display:none}
  .fc-flux-ligne{grid-template-columns:38px minmax(0,1fr) auto;gap:10px}
  .fc-flux-jour b{font-size:17px}
  .fc-flux-type{padding-left:0}
  .fc-flux-produit{display:block}
  .fc-flux-produit img,.fc-flux-sans-marque{display:inline-block;vertical-align:-3px;margin-right:7px}
}
/* --- 06 cloture du conseiller (proposition 06 du 21/10/2026, lot 4) -------
   L'aplat emeraude du bloc conseiller, deplace : il ferme la fiche en pleine
   largeur. Meme rayon (22 px), meme grain, meme monogramme en filigrane.
   Tout texte qui informe est en ivoire plein ou en ivoire doux (couleur
   pleine) ; le laiton clair ne garde que l'ornement (trait, cabinet). */
.fc-cloture{position:relative;overflow:hidden;margin-top:60px;display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:30px;align-items:center;
  padding:30px 32px;border-radius:22px;background:var(--fc-emeraude);color:var(--fc-ivoire)}
.fc-cloture::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E")}
.fc-cloture>*{position:relative;z-index:1;min-width:0}
.fc-cloture>.fc-cloture-logo{position:absolute;top:18px;right:18px;width:40px;height:auto;
  opacity:.5;filter:brightness(0) invert(1);pointer-events:none}
.fc-cloture-eti{margin:0;font:600 11px/1.2 var(--police-corps);letter-spacing:.18em;text-transform:uppercase;color:var(--fc-ivoire-doux)}
.fc-cloture-trait{display:block;width:26px;height:2px;background:var(--fc-laiton-clair);margin:10px 0 14px}
.fc-cloture-titre{margin:0 0 16px;font:400 clamp(24px,3.6vw,30px)/1.15 var(--fc-serif-d);color:var(--fc-ivoire);text-wrap:balance}
.fc-cloture-points{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:9px}
.fc-cloture-points li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start;
  font:500 14px/1.45 var(--police-corps);color:var(--fc-ivoire)}
.fc-cloture-coche{width:20px;height:20px;border-radius:50%;background:rgba(245,241,232,.16);display:grid;place-items:center;margin-top:1px}
.fc-cloture-coche svg{width:11px;height:11px}
.fc-cloture-actions{display:flex;flex-wrap:wrap;gap:10px}
.fc-cloture-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;box-sizing:border-box;
  padding:0 18px;border-radius:4px;font:600 14px/1.2 var(--police-corps);text-decoration:none;
  transition:background-color .15s cubic-bezier(.16,.8,.3,1),transform .15s cubic-bezier(.16,.8,.3,1)}
.fc-cloture-btn:hover{text-decoration:none}
.fc-cloture-btn:active{transform:scale(.97)}
.fc-cloture-btn:focus-visible{outline:2px solid var(--fc-ivoire);outline-offset:3px}
.fc-cloture-btn svg{width:16px;height:16px;flex:none}
.fc-cloture-btn.plein{background:var(--fc-ivoire);color:var(--fc-emeraude);border:1px solid var(--fc-ivoire)}
.fc-cloture-btn.plein:hover{background:#fff;color:var(--fc-emeraude)}
/* « M'ecrire » en bouton BLANC PLEIN a texte vert fonce (melange du
   26/10/2026, il etait au contour ivoire) : 9,3:1 ; au survol, le blanc se
   teinte du lavis du vert du logo. */
.fc-cloture-btn.blanc{background:#fff;color:#24502a;border:1px solid #fff}
.fc-cloture-btn.blanc:hover{background:#eef7f0;border-color:#eef7f0;color:#24502a}
.fc-cloture-signature{border-left:1px solid rgba(245,241,232,.24);padding-left:28px;display:grid;
  grid-template-columns:64px minmax(0,1fr);gap:4px 16px;align-items:center}
.fc-cloture-signature.sans-portrait{grid-template-columns:minmax(0,1fr)}
.fc-cloture-portrait{width:64px;height:64px;box-sizing:border-box;border-radius:50%;border:2px solid var(--fc-laiton-clair);
  object-fit:cover;background:#cfe8b4}
.fc-cloture-nom{font:400 21px/1.15 var(--fc-serif-d);color:var(--fc-ivoire)}
.fc-cloture-cab{margin-top:6px;font:600 11px/1 var(--police-corps);letter-spacing:.16em;text-transform:uppercase;color:var(--fc-laiton-clair)}
.fc-cloture-role{grid-column:1/-1;margin:12px 0 0;font:500 13px/1.45 var(--police-corps);color:var(--fc-ivoire-doux)}
@media (max-width:640px){
  .fc-cloture{grid-template-columns:minmax(0,1fr);gap:22px;padding:24px 20px;margin-top:44px}
  .fc-cloture-signature{border-left:0;border-top:1px solid rgba(245,241,232,.24);padding:18px 0 0}
  .fc-cloture-btn{flex:1 1 100%}
}
/* --- 13 encadre « Sources et méthode » (proposition 13, encadre seul) ------
   Au dessin de l'encadre des articles : cadre pointille, texte attenue en
   couleur pleine (5,3:1), puces laiton. Il n'imprime AUCUN montant. */
.fc-sources{margin-top:28px;padding:16px 20px 8px;border:1px dashed var(--fc-filet-fort);border-radius:6px;
  background:var(--fc-carte);font:500 13px/1.55 var(--police-corps);color:var(--mut)}
.fc-sources h2{margin:0 0 10px;font:600 11px/1.2 var(--police-corps);letter-spacing:.12em;text-transform:uppercase;color:var(--fc-encre)}
.fc-sources ul{margin:0;padding:0;list-style:none}
.fc-sources li{position:relative;padding-left:16px;margin-bottom:8px}
.fc-sources li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--fc-laiton)}
.fc-sources b{color:var(--fc-encre);font-weight:700}
@media (max-width:560px){.fc-sources{padding:14px 14px 6px}}
/* pied : contenu inchange (decision du 21/10/2026 : ni ORIAS ni CIF) ; il
   passe au plancher de 12 px et « AV Patrimoine » ne se coupe plus. Pose sur
   le fond de page (plus clair et plus vert en bas), le --mut y tombait a
   4,3:1 : texte a l'encre. */
.fc-pied{border-top:2px solid var(--fc-encre);margin-top:40px;padding-top:14px;
  display:flex;justify-content:space-between;align-items:baseline;gap:8px 16px;font-size:12px;line-height:1.5;color:var(--fc-encre)}
.fc-pied .marque{font:italic 400 14px var(--fc-serif);color:var(--fc-encre);white-space:nowrap;flex:none}
@media (max-width:560px){.fc-pied{flex-direction:column}}
/* retour a l'accueil, bas des fiches (vue cabinet seulement, jamais dans
   les exports clients) : bouton a contour du Releve, comme ceux de la
   cloture, au lieu d'un lien vert pale illisible sur le bas de page
   (demande d'Antoine, 22/10/2026). Cible de 44 px ; au survol, aplat
   emeraude et fleche qui recule ; anneau de focus emeraude. Selecteur a
   deux classes : passe devant les regles de liens de la fiche. */
.fc-retour{display:flex;justify-content:center;margin:28px 0 8px}
.fc-retour a.fc-retour-btn{display:inline-flex;align-items:center;gap:10px;min-height:44px;box-sizing:border-box;
  padding:0 20px 0 16px;border:1px solid var(--fc-filet-fort);border-radius:4px;background:var(--fc-carte);
  font:600 14px/1.2 var(--police-corps);color:var(--fc-emeraude);text-decoration:none;
  transition:background-color .15s cubic-bezier(.16,.8,.3,1),border-color .15s cubic-bezier(.16,.8,.3,1),
    color .15s cubic-bezier(.16,.8,.3,1),transform .15s cubic-bezier(.16,.8,.3,1)}
.fc-retour a.fc-retour-btn svg{width:16px;height:16px;flex:none;transition:transform .15s cubic-bezier(.16,.8,.3,1)}
@media (hover:hover){
  .fc-retour a.fc-retour-btn:hover{background:var(--fc-emeraude);border-color:var(--fc-emeraude);color:var(--fc-ivoire);text-decoration:none}
  .fc-retour a.fc-retour-btn:hover svg{transform:translateX(-3px)}
}
.fc-retour a.fc-retour-btn:active{transform:scale(.97)}
.fc-retour a.fc-retour-btn:focus-visible{outline:2px solid var(--fc-emeraude);outline-offset:3px}
@media (prefers-reduced-motion:reduce){
  .fc-retour a.fc-retour-btn,.fc-retour a.fc-retour-btn svg{transition:none}
  .fc-retour a.fc-retour-btn:hover svg{transform:none}
}
/* repli des navigateurs sans requetes de conteneur seulement (cf. le
   palier de 1180 px, correctifs du 22/10/2026) */
@supports not (container-type:inline-size){
@media (max-width:860px){
  /* releve en 2 x 2 libelle/montant : repli des requetes de conteneur */
  .fc-rel-entete{display:none}
  .fc-rel-tete,.fc-rel-rappro{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;row-gap:3px}
  .fc-rel-tete{padding:14px calc(var(--rel-pad) + 4px) 12px}
  .fc-rel-entete+.fc-rel-ligne .fc-rel-tete{border-top-left-radius:12px}
  .fc-rel-id{grid-column:1/-1;padding-right:34px;margin-bottom:8px}
  .fc-rel-ouvrir{position:absolute;top:22px;right:calc(var(--rel-pad) + 4px)}
  .fc-rel-mot,.fc-spark,.fc-rel-vide{display:none}
  .fc-rel-tete .num,.fc-rel-rappro .num{display:flex;justify-content:space-between;align-items:baseline;gap:6px;
    font-size:15px;text-align:left}
  .fc-rel-tete .k,.fc-rel-rappro .k{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;
    clip-path:none;font:500 12px/1.6 var(--police-corps);color:var(--mut)}
  .fc-rel-v{text-align:right}
  .fc-rel-tete .num{flex-wrap:wrap}
  .fc-rel-tete .num .fc-note-num{flex-basis:100%;text-align:right;margin-top:0}
  .fc-rel-rappro .fc-rel-lib{grid-column:1/-1;margin-bottom:6px}
  .fc-rel-rappro.fin .num{font-size:15.5px}
}
}
/* bandeau sur telephone (maquette 10) : lueur plus serree, mentions
   secondaires masquees (« AV Patrimoine · », « Bilan au »), metriques en
   lignes, libelle et sous-ligne a gauche, valeur a droite. */
@media (max-width:600px){
  .fc-masthead{background:radial-gradient(120% 50% at 18% 0%,var(--fc-emeraude-2) 0%,var(--fc-emeraude) 42%)}
  .fc-mast-inner{padding:16px 18px 0}
  .fc-m-cache{display:none}
  .fc-nom{padding-top:14px}
  .fc-depuis{margin-bottom:16px}
  .fc-metriques{grid-template-columns:minmax(0,1fr);margin-top:18px}
  .fc-metriques>div{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;align-items:center;
    padding:10px 0;border-left:none;border-top:1px solid rgba(245,241,232,.14)}
  .fc-metriques>div:first-child{border-top:none}
  .fc-metriques .lab{grid-column:1;margin:0}
  .fc-metriques .val{grid-column:2;grid-row:1 / span 2;font-size:19px}
  .fc-metriques .sub{grid-column:1;margin-top:2px}
  .fc-releve{--rel-pad:12px}
  .fc-eyebrow,.fc-mast-top .fc-eyebrow,.fc-valeur .fc-eyebrow{line-height:1.45}
  .fc-sec-note{font-size:12.5px}
}
/* --- 12 sommaire qui suit la lecture (proposition 12 du 21/10/2026, lot 4) --
   Fiche seulement : .fc-sommaire-nav est pose par initLectureFiche, la
   sous-nav du #/global n'est pas touchee. Entree en cours au dessin de
   l'onglet actif (papier profond, barre laiton de 2 px) ; ni numeros ni
   etat « lu ». La mention « vous lisez ici » sous l'entree en cours a ete
   retiree le 26/10/2026 a la demande d'Antoine. */
.fc-lec-tete{max-height:140px;overflow:hidden;padding:0 0 4px;transition:opacity .3s ease,max-height .3s ease}
.fc-lec-eti{margin:2px 8px 7px;font:600 11px/1.2 var(--police-corps);letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
.fc-lec-prog{height:4px;margin:0 8px;border-radius:2px;background:var(--fc-papier-2);overflow:hidden}
.fc-lec-prog i,.fc-lec-fil i{display:block;height:100%;background:var(--fc-laiton);transform-origin:left center;transform:scaleX(0)}
/* colonne d'icone fixe (18 px) et marge reduite : « Derniers mouvements »
   et « Relevé de vos contrats » tiennent sur une ligne dans la barre */
.fc-sommaire-nav .tab.subnav-item{align-items:flex-start;white-space:normal;margin:0;padding:8px 6px 8px 8px;
  font:500 13px/1.3 var(--police-corps)}
.fc-sommaire-nav .tab.subnav-item .tab-ic{display:flex;justify-content:center;align-items:center;
  width:18px;flex:0 0 18px;height:17px}
.fc-sommaire-nav .tab.subnav-item .tab-ic svg{width:16px;height:16px}
.fc-sommaire-nav .tab.subnav-item .tab-ic img{max-width:16px;height:16px}
.fc-sommaire-nav .tab.subnav-item .tab-lbl{margin-left:9px;color:var(--fc-encre);overflow:visible;white-space:normal;text-overflow:clip}
.fc-sommaire-nav .tab.subnav-item.on{font-weight:700}
.fc-sommaire-nav .tab.subnav-item:focus-visible{outline:2px solid var(--fc-encre);outline-offset:1px}
.fc-lec-pt{display:none}
@media (min-width:900px){
  /* barre REPLIEE : les reperes restent, en points ; la section en cours
     cerclee de laiton. Survol et focus redeplient la barre (comportement
     existant de initSidebarInactivity) : le nom se lit alors en clair. */
  body.sidebar-collapsed .fiche-subnav.fc-sommaire-nav{display:flex;align-items:center}
  body.sidebar-collapsed .fc-sommaire-nav .fc-lec-tete{max-height:0;opacity:0;padding:0}
  body.sidebar-collapsed .fc-sommaire-nav .tab.subnav-item{padding:9px;margin:0 auto;justify-content:center;
    align-items:center;background:none;box-shadow:none}
  body.sidebar-collapsed .fc-sommaire-nav .tab.subnav-item .tab-lbl{margin-left:0}
  body.sidebar-collapsed .fc-sommaire-nav .tab.subnav-item .tab-ic{display:none}
  body.sidebar-collapsed .fc-sommaire-nav .tab.subnav-item .tab-lbl{overflow:hidden;white-space:nowrap}
  body.sidebar-collapsed .fc-lec-pt{display:block;width:10px;height:10px;box-sizing:border-box;border-radius:50%;
    border:1.5px solid var(--mut)}
  body.sidebar-collapsed .fc-sommaire-nav .subnav-item.on .fc-lec-pt{border:2px solid var(--fc-laiton);
    background:var(--fc-laiton);box-shadow:0 0 0 4px rgba(168,130,60,.2)}
}
/* TELEPHONE : fil de progression de 3 px sous la barre du haut, pastille
   « Sommaire » en papier (ombre de ce qui flotte, sans aplat sombre) qui
   ouvre la feuille montante ; la feuille accueille le MEME #fiche-subnav. */
.fc-lec-pastille,.fc-lec-fil{display:none}
@media (max-width:899.98px){
  body.fc-sommaire-actif .fc-lec-fil{display:block;position:absolute;left:0;right:0;bottom:-3px;height:3px;
    background:var(--fc-papier-2);pointer-events:none}
  body.fc-sommaire-actif .fc-lec-pastille{display:inline-flex;align-items:center;gap:0;position:fixed;z-index:60;
    left:50%;bottom:calc(14px + env(safe-area-inset-bottom));transform:translateX(-50%);
    min-height:44px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:0 18px;cursor:pointer;
    border:1px solid var(--fc-filet-fort);border-radius:999px;background:var(--fc-carte);
    font:700 13px/1.2 var(--police-corps);color:var(--fc-encre);box-shadow:0 10px 26px rgba(21,38,29,.16)}
  .fc-lec-past-sec{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:var(--mut)}
  .fc-lec-pastille:focus-visible{outline:2px solid var(--fc-encre);outline-offset:2px}
  body.nav-mobile-open .fc-lec-pastille,body.fc-lec-ouverte .fc-lec-pastille{display:none}
  /* la pastille ne masque jamais la fin de la page */
  body.fc-sommaire-actif .wrap{padding-bottom:110px}
}
.fc-lec-voile{position:fixed;inset:0;z-index:1008;background:rgba(21,38,29,.3)}
.fc-lec-feuille{position:fixed;left:0;right:0;bottom:0;z-index:1009;max-height:82vh;overflow-y:auto;box-sizing:border-box;
  padding:8px 16px calc(14px + env(safe-area-inset-bottom));background:var(--fc-carte);
  border-top:2px solid var(--fc-laiton);border-radius:14px 14px 0 0;box-shadow:0 -10px 26px rgba(21,38,29,.12);
  animation:fc-lec-monte .28s cubic-bezier(.16,.8,.3,1)}
.fc-lec-voile[hidden],.fc-lec-feuille[hidden]{display:none}
@keyframes fc-lec-monte{from{transform:translateY(100%)}to{transform:none}}
.fc-lec-poignee{width:36px;height:4px;margin:2px auto 10px;border-radius:999px;background:var(--fc-filet-fort)}
.fc-lec-feuille .fiche-subnav{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;border:0}
.fc-lec-feuille .fiche-subnav .tab{display:flex}
.fc-lec-feuille .fc-lec-prog{display:none}
.fc-lec-feuille .fc-sommaire-nav .tab.subnav-item{padding:10px 8px;font-size:14px;min-height:44px;box-sizing:border-box}
.fc-lec-fermer{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin-top:10px;
  box-sizing:border-box;border:1px solid var(--fc-filet-fort);border-radius:999px;background:var(--fc-carte);cursor:pointer;
  font:700 13px/1.2 var(--police-corps);color:var(--fc-encre)}
.fc-lec-fermer span{font-weight:500;color:var(--mut)}
.fc-lec-fermer:focus-visible{outline:2px solid var(--fc-encre);outline-offset:2px}
@media (min-width:900px){.fc-lec-voile,.fc-lec-feuille{display:none!important}}
@media (prefers-reduced-motion:reduce){
  .fc-lec-tete{transition:none}
  .fc-lec-feuille{animation:none}
}
/* --- 02 plancher typographique (lot 4 du 22/10/2026) : 12 px pour un texte
   lu, 11 px pour des capitales espacees, comme le site depuis le 21/10.
   Etiquettes de la reglette (regle globale, surchargee sur la fiche seulement)
   en couleur pleine attenuee : le --mut2 d'origine ne tenait pas l'AA. Les
   trois sous-lignes du bandeau, a 11,5 px par decision d'Antoine sur la
   proposition 10, passent a 12 px avec la piste 3 ; les exposants (1er) ne
   sont pas du texte courant. */
body.fiche-releve .brush-lbl{font-size:12px;color:var(--mut)}
.fc-rel-det-contenu th.fut{color:var(--mut)}
/* --- correctifs du 22/10/2026 (verificateurs de la refonte) ---------------
   Reglette : a 12 px, les etiquettes de bornes mordaient de 2,6 px sur le bas
   de la bande (positionnees en bottom:0 dans une bande de 44 px) ; 5 px de
   plus sous la bande les degagent. Regle globale .brush-lbl inchangee hors
   fiche. Poignees au clavier : focus visible en laiton cerne d'encre. */
body.fiche-releve .brush-strip{padding-bottom:5px}
body.fiche-releve .brush-poignee:focus{outline:none}
body.fiche-releve .brush-poignee:focus-visible{fill:var(--fc-laiton);stroke:var(--fc-encre);stroke-width:2.5}
/* tiroirs 3 Colonnes et FIP a plat (memes blocs que l'assurance vie) : deux
   colonnes, chacune empile ses blocs ; sous-lignes en retrait, valeurs
   libres longues autorisees a passer a la ligne */
.fc-duo-produit>div>.fc-bloc+.fc-bloc{margin-top:22px}
.fc-vers .sous{padding-top:0}
.fc-vers .sous dt{padding-left:12px;color:var(--mut)}
.fc-vers .sous dd{font-weight:600}
.fc-vers .long dd{white-space:normal;text-align:right;min-width:0}
.fc-vers dd.fc-a-definir{font-style:italic;font-weight:500;color:var(--mut)}
.fc-c3-eng+.fc-c3-eng{margin-top:16px}
.fc-c3-eng-tete{display:flex;justify-content:space-between;align-items:baseline;gap:4px 12px;flex-wrap:wrap;
  margin-bottom:6px;font:500 13.5px/1.4 var(--police-corps);color:var(--fc-encre)}
.fc-c3-eng-reste{font-weight:700;white-space:nowrap}
.fc-c3-eng-reste.fini{color:var(--fc-gain)}
body.fiche-releve .c3-jauge{background:var(--fc-papier-2)}
body.fiche-releve .c3-jauge-fill{background:var(--fc-emeraude)}
body.fiche-releve .c3-jauge-bornes{flex-wrap:wrap;gap:2px 10px;font-size:12px;line-height:1.4;color:var(--mut)}
body.fiche-releve .c3-jauge-note{font-size:12px;line-height:1.4;color:var(--mut)}
/* pastille compteur (reprise de .biblio-shelf-head .cpt, generalisee) */
.cpt-pill{font-size:11px;font-weight:700;color:var(--mut2);
  background:var(--bg);border-radius:20px;padding:2px 9px;white-space:nowrap}
/* auto-fit plutot que 2 colonnes fixes : sur une carte large (celle-ci
   n'occupe que 1fr des 3 de .foyer-top, mais peut quand meme depasser la
   largeur necessaire a 2 colonnes de ~150px), les 4 KPI s'etalent alors sur
   une seule ligne au lieu de laisser un vide a droite -- constate
   visuellement. Repasse a 2 puis 1 colonne(s) sur les cartes plus etroites. */
.kpis-2x2{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px 12px}
/* identite + rendement (25% chacun) a cote de la courbe d'evolution (50%) --
   minmax(0,_) plutot que 1fr nu : un 1fr grid track vaut par defaut
   minmax(auto,1fr), donc un encart au contenu large (ex. tableau de
   versements) peut deborder de sa part et fausser le 25/25/50 en pratique ;
   minmax(0,_) force le respect strict du ratio (le contenu wrap/scroll
   plutot que d'elargir la colonne). */
.bento-produit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,2fr);gap:var(--gap);
  margin-bottom:var(--gap);align-items:stretch}
.bento-produit .card{margin-bottom:0}
@media (max-width:900px){.bento-produit{grid-template-columns:1fr}}
/* variante SCPI : les 2 petits encarts d'options (versement programme /
   reinvestissement) prennent la moitie de largeur laissee par identite +
   rendement, sur une 2e ligne ; la courbe d'evolution (2 parts) s'etire sur
   toute la hauteur des 2 lignes pour combler l'espace en face */
.bento-produit-scpi{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,2fr);
  grid-template-areas:"identite rendement evolution" "vp drr evolution";
  gap:var(--gap);margin-bottom:var(--gap);align-items:stretch}
.bento-produit-scpi .card{margin-bottom:0;height:100%}
.bento-produit-scpi .g-identite{grid-area:identite}
.bento-produit-scpi .g-rendement{grid-area:rendement}
.bento-produit-scpi .g-evolution{grid-area:evolution}
.bento-produit-scpi .g-vp{grid-area:vp}
.bento-produit-scpi .g-drr{grid-area:drr}
@media (max-width:900px){.bento-produit-scpi{grid-template-columns:1fr 1fr;
  grid-template-areas:"identite identite" "rendement rendement" "evolution evolution" "vp drr"}}
.kpis{display:flex;gap:40px;flex-wrap:wrap}
.kpi .lab{font-size:11px;letter-spacing:.06em;color:var(--mut);font-weight:700;text-transform:uppercase}
.kpi .val{font-size:28px;font-weight:800;color:var(--navy);margin-top:2px}
/* pas de backdrop-filter (meme raison que .voir-suite plus haut). */
/* encart PERFORMANCE : le liseret rgba(91,110,232) etait un reliquat de
   l'ancien accent VIOLET, jamais migre lors du passage au vert de marque --
   il jurait avec tout le reste. Remplace par un aplat teinte du SIGNE du
   resultat (vert si gain, rouge si perte) : la couleur devient porteuse de
   sens au lieu d'etre un cadre decoratif, et le chiffre n'a plus besoin de
   bordure pour se detacher. */
.perf-box{margin-top:16px;padding:18px 16px;text-align:center;border-radius:18px;
  background:rgba(3,60,32,.05);border:none;box-shadow:none}
.perf-box.pos{background:rgba(146,196,97,.16)}
.perf-box.neg{background:rgba(214,69,80,.10)}
.perf-box .lab{font-size:10.5px;letter-spacing:.1em;color:var(--mut);font-weight:600;
  text-transform:uppercase}
.perf-box .big{font-size:30px;font-weight:800;line-height:1.15;margin-top:2px;
  font-family:var(--police-titre)}
.perf-box .sub{font-size:13px;color:var(--mut)}
.pos{color:var(--green-ink)} .neg{color:var(--red-ink)} .neutre{color:var(--mut)}
/* .kpi/.vkpi/.chip .val fixent deja color:navy (specificite 2 classes) : sans
   ces regles plus specifiques, .pos/.neg (1 classe) perdent toujours face a
   elles et une valeur negative/positive reste affichee en navy. */
.kpi .val.pos,.vkpi .val.pos,.chip .val.pos{color:var(--green-ink)}
.kpi .val.neg,.vkpi .val.neg,.chip .val.neg{color:var(--red-ink)}

.brk{max-width:640px;margin:0 auto 4px}
.brk .row{display:flex;justify-content:space-between;padding:3px 0}
.brk .row .v{font-weight:700;color:var(--navy)}
.brk .row .v.pos{color:var(--green-ink)} .brk .row .v.neg{color:var(--red-ink)}
.brk .row.tot{border-top:1px solid var(--line);margin-top:4px;padding-top:6px;font-weight:700}
.brk .stitle{font-size:11px;letter-spacing:.06em;color:var(--mut);font-weight:700;
  text-transform:uppercase;margin:10px 0 4px}

/* ---- tableaux ---- */
table{border-collapse:collapse;width:100%}
.tbl-scroll{overflow-x:auto}
/* ZEBRAGE des tableaux (meme principe que les infobulles) : sur des lignes
   larges de 7-8 colonnes, l'oeil perdait le lien entre le libelle a gauche
   et le chiffre du mois a droite. Teinte tres faible -- un rail de lecture,
   pas une alternance de couleur qui concurrencerait les montants colores.
   .zebre est pose a la generation la ou des lignes sont masquables (cf.
   ligneClic) ; .tbl-zebre suffit pour les tableaux a lignes toujours
   visibles. */
tr.zebre > td{background:rgba(3,60,32,.035)}
.tbl-zebre tbody tr:nth-child(even) > td{background:rgba(3,60,32,.035)}
.tbl-zebre tbody tr.totrow > td{background:transparent}
/* tableau Client/Foyer (Dashboard) : zebrage EXPLICITE via .frow-pair (idx
   logique), pas nth-child -- une ligne "couple"/"foyer" est parfois suivie
   d'une 2e ligne <detail> masquee (deployee au clic) qui compte quand meme
   comme sibling et derivait la parite nth-child d'un client a l'autre. */
tr.frow-pair > td{background:rgba(3,60,32,.035)}
/* variante resserree (Dashboard, tableaux "Par societe de gestion"/"Par type
   de produit" en demi-largeur cote a cote avec leur camembert) : padding
   horizontal reduit pour eviter le scroll interne sur un tableau a 6 colonnes. */
.tbl-compact th,.tbl-compact td{padding:7px 6px}
/* les deux zones "compressibles" du tableau Dashboard : la liste des membres
   d'un couple (2e ligne de la cellule Client/Foyer) et les logos partenaires
   peuvent passer a la ligne quand la place manque -- sans ca, leur
   white-space:nowrap herite de td rendait le tableau plus large que son
   encart et la derniere colonne se faisait rogner. */
/* nom du client/foyer dans la Liste clients : en 600, comme la titraille
   (demande explicite). La ligne des PRENOMS juste en dessous (.membres)
   reste en graisse normale : c'est une precision de contenu, pas un titre. */
tr.frow > td:first-child > b{
  font-family:var(--police-titre);
  font-weight:600;letter-spacing:-.005em}
.frow .membres{white-space:normal}
/* marques carrees juxtaposees (cf. srcMarque) : nowrap redevient possible --
   3-4 marques de 20px tiennent sur une ligne la ou les logos complets
   passaient a la ligne. */
/* PAS de display:flex ici : un <td> flex perd son comportement de cellule de
   tableau -- sur les lignes plus hautes (couples, 2 lignes de libelle) le
   contenu se decalait et debordait (bug reel constate sur deux couples de la
   liste). Les marques restent donc des inline-block. */
/* alignees a GAUCHE : centrees (defaut des td), les marques demarraient a une
   abscisse differente selon leur nombre (1, 2 ou 3 partenaires) -- la colonne
   paraissait desalignee d'une ligne a l'autre (bug reel signale sur deux
   couples de la liste). */
td.col-part,th.col-part{white-space:nowrap;line-height:1;vertical-align:middle;text-align:left}
.src-marque{width:20px;height:20px;object-fit:contain;display:inline-block;vertical-align:middle;
  background:#fff;border:1px solid var(--line);border-radius:6px;padding:1px;box-sizing:content-box}
/* la colonne affiche desormais 4 emplacements fixes au lieu de 1 a 3 marques :
   cadre et gouttiere resserres (2px->1px, 5px->3px) pour que ces 4 cases
   coutent a peu pres la largeur des 3 anciennes. La marque elle-meme garde
   ses 20px -- c'est le chrome autour qui maigrit, pas le dessin. Les 4 cases
   se lisent aussi mieux comme UN groupe quand elles sont serrees. */
.src-marque + .src-marque{margin-left:2px}
.col-part .src-marque{width:12px;height:12px}
/* partenaire absent : la marque garde sa place mais devient une empreinte
   creuse -- desaturee, attenuee, et creusee par une ombre interne (le meme
   vocabulaire "enfonce" que les boutons de la nav). Elle se lit comme un
   emplacement vide, pas comme un logo delave. */
/* l'opacite s'applique AUSSI a l'ombre interne : a .3 elle retombait a ~6%
   d'alpha, donc invisible. Opacite remontee et ombre renforcee pour que le
   creux se voie reellement une fois les deux combines (~.15 effectif). */
.src-marque.absent{filter:grayscale(1);opacity:.42;background:rgba(3,60,32,.06);
  box-shadow:inset 0 1px 3px rgba(3,60,32,.38)}
/* jauge d'engagement 3 Colonnes (cf. carteEngagementC3) : une barre de
   progression sobre, dans le vert du theme -- pas un graphique, il n'y a
   qu'une seule grandeur a montrer. */
.c3-jauge{height:8px;border-radius:99px;background:rgba(3,60,32,.09);overflow:hidden}
.c3-jauge-fill{height:100%;border-radius:99px;
  background:linear-gradient(90deg,var(--grad1),var(--grad2, #92c461));
  transition:width var(--t-base)}
.c3-jauge-fill.echu{background:rgba(146,196,97,.85)}
.c3-jauge-bornes{display:flex;justify-content:space-between;gap:10px;
  margin-top:5px;font-size:10.5px;color:var(--mut2)}
.c3-jauge-note{margin-top:4px;font-size:10.5px;color:var(--mut2)}
.sticky-head{overflow-x:visible}
.tbl-scroll th,.tbl-scroll td{padding-left:5px;padding-right:5px}
.sticky-head thead th{position:sticky;top:0;z-index:5;background:#fff;
  box-shadow:0 1px 0 var(--line), 0 6px 12px -6px rgba(3,60,32,.22)}
/* sous 1000px : le scroll horizontal PAGE (implicite dans overflow-x:visible
   ci-dessus, pense pour un tableau qui tient dans les 1200px du wrap) rognait
   la derniere colonne des que le tableau depassait son encart -- on revient a
   un scroll horizontal CONTENU dans le tableau lui-meme (comme .tbl-scroll de
   base), l'entete perd juste son collage au scroll vertical de la page
   (compromis correct : toutes les colonnes restent accessibles). Seuil a
   1000px : au-dela, le tableau Dashboard tient entier dans son encart une
   fois membres/logos repliables (cf. .membres / .col-part). */
@media (max-width:1000px){.sticky-head{overflow-x:auto}
  .sticky-head thead th{position:static;background:none;backdrop-filter:none;box-shadow:none}}
/* variante pour un tableau au scroll INTERNE (overflow-y:auto sur le
   conteneur lui-meme, ex. detail mois par mois des simulateurs) -- l'entete
   colle au sommet du conteneur (top:0), pas au sommet de la PAGE (top:57px,
   sous la topbar fixe) comme .sticky-head. */
.tbl-scroll-local thead th{position:sticky;top:0;z-index:5;
  background:rgba(255,255,255,.95);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line)}
th,td{padding:7px 9px;text-align:right;white-space:nowrap;font-size:12.5px}
th{color:var(--mut);font-size:11px;letter-spacing:.05em;text-transform:uppercase;
  border-bottom:2px solid #f1eefb}
td{border-bottom:1px solid rgba(3,60,32,.07)}
th:first-child,td:first-child{text-align:left}
tr.srow td{background:linear-gradient(90deg,rgba(31,171,111,.08),rgba(76,195,140,.06));
  color:var(--navy);font-weight:700;font-size:12px;text-align:left}
td.sub{color:var(--mut);font-style:italic}
td.fut,th.fut{color:var(--mut2)}
td.cur{font-weight:700}
.tir{color:#c9c3de}

/* ---- bouton "voir la suite" ---- */
/* pas de backdrop-filter : --btn-bg/--btn-bg-hover sont des hex opaques
   (#ffffff/#F4EFE6, cf. :root), un flou derriere un fond plein ne produit
   visuellement rien -- reliquat de l'ere "bouton en verre", retire. */
.voir-suite{border:1px solid var(--glass-brd);background:var(--btn-bg);
  border-radius:14px;padding:8px 22px;font:inherit;font-size:13px;font-weight:700;
  color:var(--navy);cursor:pointer;box-shadow:var(--glass-shadow);
  transition:box-shadow var(--t-fast), background var(--t-fast), transform var(--t-fast)}
.voir-suite:hover{background:var(--btn-bg-hover);box-shadow:var(--glass-shadow-hover)}
@media (hover:hover) and (pointer:fine){.voir-suite:hover{transform:translateY(-1px)}}
.voir-suite:active{transform:scale(.97)}

/* ---- graphique ---- */
/* flex-wrap:wrap (pas nowrap) : sans ca, sur un ecran etroit (mobile) les
   items de la legende retrecissent chacun en dessous de la largeur de leur
   propre libelle -- le texte se met alors a la ligne A L'INTERIEUR d'un item
   ("Capital" / "brut" empiles), illisible -- plutot que l'item ENTIER qui
   passe simplement a la ligne suivante. white-space:nowrap sur chaque item
   empeche ce repli interne quel que soit l'espace disponible. */
.legende{display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:flex-end;font-size:12px;color:var(--mut);margin-bottom:4px}
.legende>span{white-space:nowrap}
.gwrap{position:relative}
.card-fill-hauteur{display:flex;flex-direction:column;min-height:0}
.card-fill-hauteur > .fill-col{flex:1;display:flex;flex-direction:column;min-height:0}
.card-fill-hauteur .gwrap{flex:1;display:flex;flex-direction:column;min-height:0}
/* min-height:180px (pas 0) : un plancher FIXE, qui ne depend pas du
   contenu du SVG, donc ne reintroduit pas la boucle de croissance (cf.
   plus haut) -- mais empeche l'encart de s'ecraser sous la hauteur
   minimale lisible du graphique quand la carte n'est PAS etiree par un
   voisin (ex. bento-produit-scpi en colonne unique, mobile) : sans ce
   plancher, .svg-shell peut s'ecraser a 0px (flex:1 sans espace restant)
   et le SVG (position:absolute) retombe alors sur son propre ratio
   intrinseque pour se dimensionner, debordant par-dessus les encarts
   suivants au lieu de rester contenu dans sa carte. */
.card-fill-hauteur .gwrap .svg-shell{flex:1;min-height:180px;position:relative}
.card-fill-hauteur .gwrap .svg-shell svg{position:absolute;inset:0;width:100%;height:100%}
.chart-tip{position:absolute;pointer-events:none;z-index:30;min-width:190px;
  background:rgba(255,255,255,.82);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);
  border:1px solid var(--glass-brd);border-radius:14px;
  padding:10px 13px;font-size:12px;box-shadow:var(--glass-shadow-hover);
  /* fondu d'apparition sans toucher au JS existant (qui bascule juste
     display:none/"") : allow-discrete anime la propriete display elle-meme,
     @starting-style fournit l'etat de depart. Se degrade silencieusement en
     bascule instantanee sur les navigateurs qui ne le supportent pas encore. */
  opacity:1;transition:opacity .12s ease-out, display .12s allow-discrete}
@starting-style{.chart-tip{opacity:0}}
/* contenu injecte dans #acces-resultat (lien genere, ou message d'erreur) :
   entree en fondu court via @starting-style (meme mecanique que .chart-tip
   ci-dessus) plutot qu'un remplacement innerHTML sec -- le resultat se
   remarque au lieu de se teleporter dans la modale. */
.acces-apparait{opacity:1;transform:translateY(0);
  transition:opacity .18s ease-out, transform .18s ease-out}
@starting-style{.acces-apparait{opacity:0;transform:translateY(4px)}}
.chart-tip .t-mois{font-weight:800;color:var(--navy);margin-bottom:5px}
/* confirmation visuelle du point survole sur le graphique patrimoine
   principal (Dashboard + fiches foyer) : grossit juste le point concerne.
   scale() plutot que le CSS "r" (SVG2, support recent) pour rester
   compatible partout -- transform-box:fill-box pour centrer le zoom sur le
   point lui-meme plutot que sur l'origine du viewport SVG. */
.chart-pt{transition:transform .12s ease-out;transform-box:fill-box;transform-origin:center}
.chart-pt.hi{transform:scale(1.55)}
/* barre survolee (graphique "Rendements annuels par profil") : eclaircie
   plutot que grossie -- une barre bidirectionnelle (positive/negative) n'a
   pas d'origine de scale evidente qui ne la deformerait pas visuellement. */
.chart-bar{transition:filter .12s ease-out}
.chart-bar.hi{filter:brightness(1.18)}
/* marqueur de survol repositionne dynamiquement en JS sur les graphiques a
   courbes continues (financement, epargne SCPI, impact des frais) -- pas de
   cercle par mois/annee pre-rendu (trop nombreux), juste 1 marqueur par
   courbe qu'on deplace et qu'on affiche/masque au survol. */
.chart-hover-marker{opacity:0;transition:opacity .1s ease-out;pointer-events:none}
.chart-hover-marker.hi{opacity:1}
/* parts de camembert (pieChart/pieSlice) : leger zoom depuis le centre du
   pie au survol -- transform-box:view-box pour que l'origine soit le centre
   du GRAPHIQUE (la part grandit vers l'exterieur), pas le centre de la
   part elle-meme ; overflow:visible sur le svg absorbe le depassement. */
.pie-slice{transition:transform .15s ease-out;transform-box:view-box;transform-origin:center;cursor:pointer}
@media (hover:hover) and (pointer:fine){
  .pie-slice:hover{transform:scale(1.05)}
}
/* bande de selection de periode ("brush") sous les graphiques Evolution :
   touch-action:none pour que le drag au doigt pilote la fenetre au lieu de
   faire defiler la page. */
.brush-wrap{margin-top:8px}
.brush-svg{width:100%;height:44px;display:block;touch-action:none}
/* etiquettes debut/fin de la bande : HTML absolu (indeformable), plus des
   <text> ecrases par l'etirement non uniforme du svg (cf. brushVueHTML). */
.brush-strip{position:relative}
.brush-lbl{position:absolute;bottom:0;font-size:11px;line-height:1;color:var(--mut2);
  pointer-events:none;user-select:none}
.brush-dim{fill:rgba(3,60,32,.08)}
.brush-fenetre{fill:rgba(31,171,111,.10);stroke:var(--grad1);stroke-width:1.5;cursor:grab}
.brush-fenetre:active{cursor:grabbing}
.brush-poignee{fill:#fff;stroke:var(--grad1);stroke-width:1.5;cursor:ew-resize}
/* zebrage : sur les infobulles longues (detail par contrat, jusqu'a 10
   lignes), l'oeil perdait la correspondance entre le libelle a gauche et le
   montant a droite. Une ligne sur deux legerement teintee sert de guide --
   meme principe que les grands tableaux. Teinte tres faible (.045) : c'est
   un rail de lecture, pas une alternance de couleur. Le padding lateral
   compense le fond, qui sinon s'arreterait au ras du texte. */
.chart-tip .t-row{display:flex;justify-content:space-between;gap:14px;padding:2.5px 6px;
  margin:0 -6px;border-radius:5px}
.chart-tip .t-row:nth-of-type(even){background:rgba(3,60,32,.045)}
.chart-tip .t-row .v{font-weight:700;color:var(--navy)}
/* largeur reservee au badge "nouveau" : sans elle, les lignes sans badge
   demarraient plus a gauche et la colonne de noms paraissait en escalier. */
.chart-tip .t-badge{display:inline-block;width:20px;flex:0 0 20px;text-align:left}
.chart-tip .t-row .v.pos{color:var(--green-ink)} .chart-tip .t-row .v.neg{color:var(--red-ink)}
/* jauge d'absorption des frais sur versements (assurance vie) */
.jauge-frais{margin-top:12px;padding-top:10px;border-top:1px dashed var(--line)}
.jauge-frais .jf-titre{font-size:11px;letter-spacing:.05em;color:var(--mut);font-weight:700;text-transform:uppercase;margin-bottom:6px;display:flex;justify-content:space-between;align-items:baseline}
.jauge-frais .jf-pct{font-size:14px;font-weight:800}
.jauge-frais .jf-barre{height:10px;border-radius:6px;background:#e8eef5;overflow:hidden}
.jauge-frais .jf-fill{height:100%;border-radius:6px;background:linear-gradient(90deg,var(--green-line-soft),var(--green));transition:width .3s ease}
.jauge-frais .jf-sub{font-size:10.5px;color:var(--mut2);margin-top:5px}
/* encart "projet de financement credit SCPI" : accent orange pour se
   distinguer visuellement des produits reguliers (assurance vie/SCPI/parts
   sociales) -- un projet transverse, pas un produit de plus. */
.fin-card{border:1px solid rgba(242,153,74,.25)}
.fin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px;margin:14px 0 4px}
@media (max-width:700px){.fin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* jauge "couvert par les loyers / effort d'epargne" a cote de la phrase de
   rendement necessaire (meme principe que .simi-hero-row du simulateur
   Impots) -- les deux se repondent (le meme effort d'epargne y figure),
   demande explicite pour ne plus les separer par le graphique. */
.fin-hero-row{display:flex;align-items:flex-start;gap:24px;flex-wrap:wrap;margin-top:14px}
/* carte de financement des fiches, modele du simulateur (19/10/2026) */
.fin-pret-dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px 14px;margin:0;font-size:14px}
.fin-pret-dl dt{color:var(--mut)}
.fin-pret-dl dd{margin:0;text-align:right;font-weight:600;color:var(--navy);font-variant-numeric:tabular-nums}
.fin-pret-dl dd span{font-weight:400;color:var(--mut)}
.fin-pret-scpi{padding:10px 0;border-top:1px solid var(--line)}
.fin-pret-scpi:first-of-type{border-top:0;padding-top:0}
.fin-pret-scpi-nom{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--navy)}
.fin-pret-scpi-val{font-size:14px;font-weight:600;color:var(--navy);margin-top:4px;font-variant-numeric:tabular-nums}
.fin-card-x .simx-reglages .simx-aide{margin-top:2px}
.fin-jauge-wrap{flex:1 1 320px}
.fin-recit-side{flex:1 1 280px}
.fin-recit-side .sime-recit-encart{margin:0}
@media (max-width:640px){.fin-hero-row{flex-direction:column}}
/* ---------- Simulateur "Impots" ---------- */
.simi-hero-row{display:flex;align-items:center;gap:32px;flex-wrap:wrap}
.simi-gauge-wrap{flex:1 1 320px;max-width:400px}
.simi-gauge{width:100%;height:auto;display:block}
/* remplissage anime de chaque secteur a chaque recalcul (revenu, situation,
   niches...) : le SVG entier est reconstruit a chaque frappe, donc une
   transition CSS classique n'aurait rien a partir de quoi s'animer -- un
   @keyframes demarre en revanche automatiquement des l'insertion d'un
   nouvel element, ce qui donne l'effet de jauge qui se remplit a chaque
   validation. Chaque tranche a un animation-delay (pose en JS, cf.
   simiJaugeSVG) egal a rang * duree -- elle attend la fin complete du
   remplissage de la precedente avant de demarrer le sien, jamais simultane.
   .55s ici DOIT rester egal a SIMI_DUREE_SEG dans le JS. */
.simi-jauge-seg{stroke-dasharray:100;stroke-dashoffset:100;
  animation:simi-jauge-remplir .55s cubic-bezier(.4,0,.2,1) both}
.simi-jauge-seg.simi-jauge-instant{animation:none;stroke-dashoffset:0}
@keyframes simi-jauge-remplir{
  from{stroke-dashoffset:100}
  to{stroke-dashoffset:0}
}
@media (prefers-reduced-motion:reduce){
  .simi-jauge-seg{animation:none}
}
.simi-recit-side{flex:1 1 280px}
.simi-recit-side .sime-recit-encart{margin-top:0}
.simi-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}
.simi-stat{background:#fbf7f1;border:1px solid rgba(242,153,74,.18);border-radius:14px;padding:12px 10px;text-align:center}
.simi-stat-val{font-size:1.3rem;font-weight:800;color:var(--navy)}
.simi-stat-lbl{font-size:10.5px;color:var(--mut);letter-spacing:.02em;margin-top:2px}
.simi-revenu-field{flex:1 1 220px}
.simi-revenu-field input[type=number]{width:100%;font-size:1.05rem;font-weight:700;text-align:right}
.simi-revenu-input{display:flex;align-items:center;gap:8px}
.simi-revenu-input span{color:var(--mut);font-weight:700;font-size:.92rem;flex:none}
/* encart qui entoure les 3 lignes de parametres (travail / foncier / niches) :
   un vrai conteneur visuel plutot que des champs flottant librement dans la
   carte, pour bien signaler "ceci est un bloc de saisie coherent". */
.simi-params-encart{border:1px solid var(--line);border-radius:14px;background:#faf9fc;padding:18px 20px 20px}
.simi-params-titre{font-size:11px;letter-spacing:.05em;color:var(--mut);font-weight:700;text-transform:uppercase;margin-bottom:14px}
/* seg + infobulle ⓘ cote a cote plutot qu'en colonne (le .sim-field parent
   est flex-direction:column) -- sinon l'icone tombe sous les boutons et
   la ligne foncier/niches devient plus haute que la ligne travail (sans
   icone), ce qui decale la grille partagee d'une ligne a l'autre. */
.simi-seg-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
/* questions Oui / Non (16/10/2026) : une ligne par question, la reponse a
   droite ; un "Oui" deplie ses champs juste dessous, en retrait derriere un
   filet vert -- on lit d'un coup d'oeil ce qui depend de quoi. */
.simi-q-liste{display:flex;flex-direction:column}
.simi-q{padding:12px 0;border-top:1px solid var(--line)}
.simi-q:first-child{border-top:0;padding-top:0}
.simi-q-tete{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap}
.simi-q-texte{font-size:13.5px;font-weight:600;color:var(--ink);line-height:1.4}
.simi-q-aide{display:block;font-size:12px;font-weight:400;color:var(--mut);margin-top:1px}
.simi-q-tete-champ input[type=number]{font-size:1.05rem;font-weight:700;text-align:right}
.simi-q-detail{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 18px;margin:12px 0 2px 2px;
  padding-left:14px;border-left:2px solid var(--green-line-soft)}
.simi-q-detail .simi-revenu-field{flex:0 0 auto}
.simi-q-detail [hidden]{display:none}
/* infobulle personnalisee (un title natif ne se stylise pas) : courte, un
   exemple par dispositif + la seule regle qui compte. */
/* le SVG ICONE_INFO_SVG est deja un cercle+i autonome (cf. plus haut) : plus
   besoin du cercle CSS que ce span dessinait lui-meme derriere le glyphe
   texte (ⓘ), qui aurait sinon double le cercle. */
.simi-info{position:relative;display:inline-flex;align-items:center;justify-content:center;
  color:var(--mut);cursor:help;flex:none}
.simi-tooltip{position:absolute;bottom:calc(100% + 9px);left:50%;transform:translateX(-50%) translateY(4px);
  display:flex;align-items:flex-start;gap:12px;width:340px;text-align:left;
  background:rgba(255,255,255,.96);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);
  border:1px solid var(--glass-brd);border-radius:12px;box-shadow:var(--glass-shadow-hover);
  padding:10px 12px;font-size:11.5px;line-height:1.55;font-weight:400;color:var(--ink);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;z-index:50}
.simi-tooltip::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);
  border:6px solid transparent;border-top-color:rgba(255,255,255,.96)}
.simi-tooltip b{color:var(--navy)}
/* la regle se place a droite des exemples (colonne verticale, pas un bloc en
   dessous) pour une infobulle plus large mais moins haute -- plus lisible
   d'un coup d'oeil qu'un long empilement vertical. */
.simi-tooltip-exemples{flex:1 1 50%}
.simi-tooltip-regle{display:block;flex:1 1 50%;padding-left:12px;border-left:1px dashed var(--line);color:var(--mut)}
@media (max-width:480px){
  .simi-tooltip{width:260px;flex-direction:column}
  .simi-tooltip-regle{border-left:none;padding-left:0;padding-top:7px;border-top:1px dashed var(--line)}
}
.simi-info:hover .simi-tooltip,.simi-info:focus-visible .simi-tooltip{
  opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:auto}
@media (prefers-reduced-motion:reduce){
  .simi-tooltip{transition:opacity .18s ease,visibility .18s ease}
}
@media (max-width:640px){
  .simi-hero-row{flex-direction:column}
  .simi-gauge-wrap{max-width:320px}
  .simi-stats{grid-template-columns:1fr 1fr 1fr;gap:8px}
}
.fin-info{display:flex;flex-direction:column;gap:2px}
.fin-info .fin-lbl{font-size:10.5px;letter-spacing:.04em;color:var(--mut);text-transform:uppercase}
.fin-info .fin-val{font-size:14px;font-weight:700;color:var(--navy)}
.fin-repartition{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:14px}
.fin-scpi{background:#fbf7f1;border:1px solid rgba(242,153,74,.18);border-radius:14px;padding:12px 14px}
.fin-scpi-nom{font-weight:800;color:var(--navy);font-size:13px;margin-bottom:8px;display:flex;align-items:center;gap:8px}
.fin-scpi-row{display:flex;justify-content:space-between;font-size:12px;padding:2px 0}
.fin-scpi-row .v{font-weight:700;color:var(--navy)}
.jauge-frais .jf-barre.jf-barre-split{display:flex}
/* legende 2 postes (loyers / effort d'epargne) au-dessus de la jauge de
   mensualite : chaque segment de la barre est identifie par une puce de
   couleur + son montant/part, avant meme de lire le sous-texte. */
.fin-jauge-legende{display:flex;gap:22px;flex-wrap:wrap;margin-bottom:8px}
.fin-jauge-item{display:flex;align-items:baseline;gap:7px;font-size:12.5px}
.fin-jauge-dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex:none;position:relative;top:-1px}
.fin-jauge-lbl{color:var(--mut)}
.fin-jauge-val{font-weight:800;color:var(--navy)}
.fin-jauge-val b{font-weight:800}
.jauge-frais .jf-barre.jf-barre-split{height:20px;position:relative}
.jf-barre-split .jf-seg{display:flex;align-items:center;justify-content:center;height:100%;
  font-size:10px;font-weight:800;color:#fff;overflow:hidden;white-space:nowrap;text-shadow:0 1px 1.5px rgba(0,0,0,.25)}
/* formulaire du simulateur de financement : champs neumorphiques (meme
   langage visuel que .filtres select), disposes en grille responsive. */
/* "autofit" : chaque champ prend la largeur de son propre contenu (label +
   controle) plutot que des colonnes forcees a largeur egale -- une case
   "Durée (en mois)" reste compacte, "Rendement locatif simulé (%)" prend
   l'espace que son libelle plus long necessite. Wrap naturel en flex plutot
   qu'un CSS Grid a colonnes fixes/minmax. */
.sim-row{display:flex;flex-wrap:wrap;gap:14px 20px;margin-bottom:16px;align-items:end}
.sim-field{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.sim-field label{font-size:10.5px;letter-spacing:.04em;color:var(--mut);font-weight:700;text-transform:uppercase;white-space:nowrap}
/* code couleur : vert tres pale = case a remplir (tout champ actif), gris
   pale = case volontairement verrouillee (ex. "Gestionnaire" quand une SCPI
   de reference est choisie -- la valeur vient alors de SIM_REFERENCE_SCPI,
   pas de la saisie). */
.sim-field input, .sim-field select{padding:8px 12px;border:none;border-radius:12px;
  background:rgba(31,171,111,.08);color:var(--ink);font:inherit;font-size:13.5px;
  box-shadow:var(--neu-in);transition:box-shadow var(--t-fast);min-width:64px}
/* champs numeriques/texte : largeur basee sur le nombre de caracteres
   attendus (ch = largeur du "0" dans la police courante), pas la largeur
   par defaut du navigateur (~170-200px, beaucoup trop large pour "4,5" ou
   "240") -- le <select> garde sa largeur naturelle (le contenu des options,
   ex. noms de gestionnaires, varie trop pour un dimensionnement en ch). */
.sim-field input[type=number]{width:11ch}
/* 16ch et pas 13 : "28/07/2026" + l'icone calendrier du navigateur ne
   tenaient pas (annee tronquee "28/07/20[icone]", bug reel sur capture). */
.sim-field input[type=date]{width:16ch}
.sim-field input[type=text]{width:11ch}
.sim-field input:focus, .sim-field select:focus{outline:none;box-shadow:var(--neu-in), 0 0 0 2px rgba(31,171,111,.35)}
.sim-field input:disabled, .sim-field select:disabled{background:rgba(3,60,32,.06);color:var(--mut2);cursor:not-allowed}
.sim-scpi-titre{font-size:11px;letter-spacing:.05em;color:var(--mut);font-weight:700;text-transform:uppercase;margin-bottom:8px}
.sim-scpi-rows{display:flex;flex-direction:column;gap:10px}
.sim-scpi-row{display:flex;flex-direction:column;gap:10px;
  background:#fbf7f1;border:1px solid rgba(242,153,74,.18);border-radius:14px;padding:12px 14px}
.sim-scpi-row .sim-row{margin-bottom:0}
.sim-remove{border:none;background:transparent;color:var(--red-ink);font-size:17px;font-weight:700;
  cursor:pointer;line-height:1;padding:8px;border-radius:8px;align-self:center}
.sim-remove:hover{background:rgba(224,69,90,.1)}
/* selecteur de SCPI en "chips" (logo + nom) : un <select> ne peut pas
   afficher d'image dans ses options, on utilise donc des boutons. */
.sime-scpi-chips{display:flex;gap:8px;flex-wrap:wrap}
.sime-scpi-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 10px;
  border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);
  font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:box-shadow var(--t-fast),border-color var(--t-fast)}
.sime-scpi-chip:hover{box-shadow:var(--neu-out-sm)}
.sime-scpi-chip.on{border-color:var(--grad1);background:rgba(31,171,111,.08);color:var(--navy);box-shadow:var(--neu-in)}
.sime-scpi-chip .src-logo{margin:0}
/* groupe de boutons pour un choix ferme de chiffres (differe, revalorisation,
   reinvestissement, TMI, frais...) plutot qu'un champ number libre -- meme
   hauteur que les autres champs pour rester aligne sur la meme ligne. */
.sim-choix-group{display:flex;gap:6px;height:40px;align-items:center}
.sim-choix-btn{min-width:40px;height:40px;padding:0 12px;
  border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--mut);
  font:inherit;font-size:14px;font-weight:700;cursor:pointer;
  transition:box-shadow var(--t-fast),border-color var(--t-fast),color var(--t-fast),transform 140ms ease-out}
.sim-choix-btn:hover{box-shadow:var(--neu-out-sm)}
.sim-choix-btn:active{transform:scale(.96)}
.sim-choix-btn.on{border-color:var(--grad1);background:rgba(31,171,111,.08);color:var(--navy);box-shadow:var(--neu-in)}
/* phrase narrative recapitulative, en remplacement de la grille de chiffres --
   encart borde et teinte, comme sur avpatrimoine.fr (pas une simple citation). */
.sime-recit-encart{margin:18px 0;padding:16px 20px;border:1px solid rgba(146,196,97,.4);
  border-radius:14px;background:rgba(146,196,97,.10)}
.sime-recit .sime-recit-detail{font-size:.82em;color:var(--mut2);font-weight:400;font-style:normal}
.sime-recit{font-size:1.02rem;line-height:1.65;color:var(--ink);text-align:left}
.sime-recit b{color:inherit;font-weight:700}
/* depli des tiroirs (sim-collapse-body : liens du cabinet, tableaux des
   fiches ; la page Simulateurs n'a plus d'encarts repliables depuis le
   classeur du 26/10/2026) : ouverture/fermeture animee sans mesurer la
   hauteur en JS : le conteneur grid passe de 0fr a 1fr (anime), le contenu
   reel vit dans un enfant
   overflow:hidden qui se redimensionne avec sa piste de grille. margin-top
   n'est applique qu'a l'etat ouvert (sinon il resterait un espace visible
   sous l'entete meme replie). */
.sim-collapse-body{display:grid;grid-template-rows:0fr;margin-top:0;
  transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1), margin-top .3s cubic-bezier(.4,0,.2,1)}
.sim-collapse-body.open{grid-template-rows:1fr;margin-top:16px}
.sim-collapse-body-inner{overflow:hidden;min-height:0}
/* ---------- Simulateurs, modèle simplifié (même CSS qu'avpatrimoine.fr) : jetons du site
   traduits dans la gamme du Relevé, posés sur la page Simulateurs (.fc-flat) ----------
   Familles : la même paire que le site (piste 3), par ses quatre jetons --font-* ;
   Radio Canada pour les étiquettes, l'interface et le texte (--font-body, comme sur le
   site : petit texte du chiffre-phare, axes des graphiques), Source Serif 4 pour le
   chiffre-phare. Les graisses et tailles fines du site sont arrivées avec le port du
   22/10/2026 ; --on-accent (texte sur le vert, pastilles du simulateur Donation et
   démembrement) manquait : sans lui, « vous » héritait de --mut (2,75:1). */
.fc-flat{--accent-ink:var(--fc-gain);--color-primary:#92C461;--color-primary-dark:var(--fc-gain);
  --color-border:var(--fc-filet);--sim-barre-bg:var(--fc-papier-2);--sim-on-bg:rgba(46,125,56,.10);
  --sim-veil:var(--fc-papier-2);--font-eyebrow:var(--police-corps);--font-ui:var(--police-corps);
  --font-body:var(--police-corps);--font-heading:var(--fc-serif);--ease:cubic-bezier(.4,0,.2,1);
  --green-txt:var(--fc-gain);--orange-txt:#8a5a1d;--mut2-txt:var(--mut2);--red-txt:var(--red-ink);
  --sim-encart-bg:rgba(168,130,60,.07);--serie-retrait-txt:#7a5a23;--on-accent:var(--fc-encre)}
.fc-flat .simx-champ select,.fc-flat .simx-champ input[type=number],.fc-flat .simx-champ input[type=text]{box-shadow:none}
.fc-flat .simi-revenu-input input[type=number],.fc-flat .simi-revenu-input input[type=text]{box-shadow:none;border:1px solid var(--fc-filet);background:#fff;border-radius:10px}
/* texte vert POSE sur le fond vert pale (--sim-on-bg) : sur le lavis transparent
   du site (vert des gains a 10 %), l'encre du gain #2e7d38 ne tenait que 4,48:1
   sur le blanc du resultat, moins encore sous le verdict (fond de carte teinte,
   3,95:1) et dans les champs de « Est-ce une bonne idee ? » pendant la saisie
   (3,76 a 4,25:1), sous le seuil AA de 4,5 (mesure au pixel le 22/10/2026).
   Choix d'Antoine (option C) : un seul vert d'ecriture, le vert des gains,
   partout ; le fond devient OPAQUE et plus clair, #f2f7f3 (6 % de #2e7d38 sur
   blanc) : 4,72:1 partout, quel que soit le fond de la carte dessous (Lecture,
   tranche « vous », tuile « Le moins cher », verdict, pastille, champs actifs,
   puces de profil). Limite aux cartes de la page Simulateurs (.sim-collapse) :
   la carte financement des fiches garde le lavis. Remplace l'emeraude posee le
   meme jour sur Lecture, « vous », verdict et pastille. Hors zone recopiee :
   survit aux ports. */
.fc-flat .sim-collapse{--sim-on-bg:#f2f7f3}
/* encart du recit de « Est-ce une bonne idee ? » (22/10/2026) : son beige
   transparent (--sim-encart-bg, 7 %) laissait passer le lavis de la carte ;
   les valeurs vertes du recit (« Nous declarons », revenu, enfants, niches,
   montants) n'y tenaient que 4,25 a 4,5:1 au repos, sous le seuil AA. Beige
   OPAQUE un peu plus clair, meme principe que le vert pale de l'option C :
   4,73:1. Hors zone recopiee : survit aux ports. */
.fc-flat .sim-collapse .simb-recit{background:#f9f6ee}
/* colonne de resultat etroite (22/10/2026) : de 900 a 1180 px, la barre laterale
   ne laisse a #simt-resultat que 218 a 452 px ; les trois tuiles du simulateur
   Donation et demembrement s'y chevauchaient (montants insecables de 106 px dans
   des tuiles de 49 a 115 px), les barres tombaient a 0 px. Meme repli que sous
   700 px de fenetre (zone recopiee), mais sur la largeur reelle de la colonne :
   tuiles empilees, nom de la barre au-dessus, ages sur 4 colonnes (3 sous 220 px). */
.fc-flat #simt-resultat{container-type:inline-size}
@container (max-width:440px){
  .fc-flat .simt-trio,.fc-flat .simt-trio.simt-n2{grid-template-columns:minmax(0,1fr);gap:14px}
  .fc-flat .simt-tuile .simd-camp-eti{min-height:0}
  .fc-flat .simt-barre{grid-template-columns:minmax(0,1fr) auto;row-gap:4px}
  .fc-flat .simt-barre-nom{grid-column:1/-1}
  .fc-flat .simt-ages{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:14px}
}
@container (max-width:220px){.fc-flat .simt-ages{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* simulateurs a deux colonnes, place insuffisante (22/10/2026, choix d'Antoine,
   option B) : avec le menu lateral ouvert, la colonne de resultat tombait a
   218 px a 900 px de fenetre ; montants, jauges et onglets y debordaient ou se
   chevauchaient, les libelles d'axe se touchaient. Regle generale, propre a
   MIKASA (le site n'a pas de menu lateral) : chaque carte de la page
   Simulateurs devient conteneur ; quand la grille reglages + resultat fait
   859 px ou moins (colonne de resultat sous 532 px, seuil impose par les deux
   jauges du simulateur « Versement unique ou versements mensuels ? »),
   reglages au-dessus, resultat dessous. En pratique : jusqu'a 1213 px de
   fenetre menu ouvert, 1057 px menu replie, et de 861 a 899 px sans menu
   (en dessous, la regle mobile de la zone recopiee met deja une colonne,
   resultat en tete). Les graphiques sont redessines apres chaque repli ou
   depli du menu (replanifierAjusteursApresBascule). Hors zone recopiee :
   survit aux ports. */
.fc-flat .sim-collapse > .sim-collapse-body > .sim-collapse-body-inner{container:simx-carte/inline-size}
@container simx-carte (max-width:859px){.fc-flat .simx{grid-template-columns:minmax(0,1fr);gap:20px}}
/* « Est-ce une bonne idee ? », titre d'une hypothese sous 560 px (23/10/2026) :
   le titre prenait toute sa largeur de texte et passait a la ligne, laissant le
   chevron seul sur la sienne ; il se loge desormais a cote du chevron (7 px,
   bordure 2 px, ecart 8 px) et la pastille s'aligne dessous, a 17 px. La meme
   correction reste a porter dans style.css du site (zone recopiee) ; une fois
   portee, cette regle sera redondante. Hors zone recopiee : survit aux ports. */
@media (max-width:560px){
  .fc-flat .simb-hypo-titre{flex:1 1 calc(100% - 17px);min-width:0}
  .fc-flat .simb-pastille{margin-left:17px}
}
/* ---------- Simulateur de financement SCPI, version simplifiée (19 octobre
   2026) : réglages à gauche, résultat à droite, un chiffre-phare, un
   graphique à la fois. Quatre paliers de texte : 11 px (étiquettes en
   capitales), 12 px (aides, légendes), 14 px (texte et commandes), 20 px
   (titre), plus le chiffre-phare. Jetons existants seulement : ils ont déjà
   leur pendant de nuit. ---------- */
.simx { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 28px; align-items: start; }
.simx-titre, .simx-eyebrow {
  font-family: var(--font-eyebrow); font-size: 11px; font-weight: 600; letter-spacing: .12em; line-height: 1.35;
  text-transform: uppercase; color: var(--accent-ink); margin: 0 0 12px;
}
.simx-eyebrow { color: var(--mut); margin-bottom: 0; }
.simx-champ { margin-bottom: 18px; }
.simx-champ > label, .simx-lab {
  display: flex; justify-content: space-between; align-items: baseline; gap: 10px;
  font-size: 14px; font-weight: 500; color: var(--navy); margin-bottom: 6px;
  text-transform: none; letter-spacing: 0; white-space: normal;
}
.simx-champ output { font-weight: 700; color: var(--accent-ink); font-variant-numeric: tabular-nums lining-nums; text-align: right; }
.simx-champ input[type=range] { width: 100%; height: 28px; margin: 0; accent-color: var(--color-primary-dark); cursor: pointer; }
.simx-champ select, .simx-champ input[type=number], .simx-champ input[type=text] {
  width: 100%; height: 40px; padding: 8px 12px; font: inherit; font-size: 14px; color: var(--navy);
  background: var(--card); border: 1.5px solid var(--color-border); border-radius: 10px;
}
.simx-champ select:focus, .simx-champ input:focus { outline: none; border-color: var(--color-primary-dark); box-shadow: 0 0 0 3px rgba(146,196,97,.25); }
.simx-aide { font-size: 12px; color: var(--mut); margin: 6px 0 0; line-height: 1.45; }
.simx-perso { margin-top: 10px; }
.simx-perso .simx-champ { margin-bottom: 10px; }
.simx-ligne2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 12px; }
.simx-ajout {
  border: 0; background: none; padding: 4px 0; font-family: var(--font-ui); font-size: 14px; font-weight: 600;
  color: var(--accent-ink); cursor: pointer; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(146,196,97,.6);
}
@media (hover: hover) and (pointer: fine) { .simx-ajout:hover { text-decoration-color: currentColor; } }
.simx-avance { border-top: 1px solid var(--line); padding-top: 12px; margin-top: 4px; }
.simx-avance summary, .simx-detail summary {
  cursor: pointer; list-style: none; display: flex; align-items: center; gap: 8px;
  font-family: var(--font-ui); font-size: 14px; font-weight: 600; color: var(--accent-ink);
}
.simx-avance summary::-webkit-details-marker, .simx-detail summary::-webkit-details-marker { display: none; }
.simx-avance summary::before, .simx-detail summary::before {
  content: ""; width: 7px; height: 7px; flex: none;
  border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
  transform: rotate(-45deg); transition: transform .2s var(--ease);
}
.simx-avance[open] summary::before, .simx-detail[open] summary::before { transform: rotate(45deg); }
.simx-avance > div { padding-top: 14px; }
.simx-avance .sim-choix-group { height: auto; flex-wrap: wrap; }

.simx-resultat { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 20px 22px; }
.simx-phare { font-family: var(--font-heading); font-weight: 400; font-size: clamp(34px, 3.6vw, 44px); line-height: 1.02; letter-spacing: -.015em; color: var(--accent-ink); margin: 6px 0 6px; font-variant-numeric: tabular-nums lining-nums; }
.simx-phare small { font-family: var(--font-body); font-size: 14px; font-weight: 500; letter-spacing: 0; color: var(--mut); }
.simx-phrase { margin: 0 0 14px; font-size: 14px; line-height: 1.5; color: var(--navy); font-variant-numeric: proportional-nums lining-nums; }
.simx-phrase b { color: var(--accent-ink); font-weight: 700; }
.simx-phrase b.o { color: var(--orange-txt); }
.simx-barre { height: 10px; border-radius: 999px; background: var(--sim-barre-bg); overflow: hidden; display: flex; }
.simx-barre i { display: block; height: 100%; background: var(--color-primary); }
.simx-barre em { display: block; height: 100%; background: var(--orange); }
.simx-legende { display: flex; flex-wrap: wrap; gap: 6px 18px; justify-content: flex-start; font-size: 12px; color: var(--mut); margin: 8px 0 0; }
.simx-legende span::before { content: ""; display: inline-block; width: 9px; height: 9px; border-radius: 3px; margin-right: 6px; background: var(--color-primary); }
.simx-legende span.o::before { background: var(--orange); }
.simx-legende span.v::before { background: var(--color-primary); opacity: .4; }
.simx-legende span.h::before { background: repeating-linear-gradient(45deg, var(--color-primary) 0 2px, transparent 2px 4px); border: 1px dashed var(--color-primary-dark); box-sizing: border-box; }
.simx-legende b { color: var(--navy); }
.simx-onglets { display: flex; gap: 4px; border-bottom: 1px solid var(--line); margin: 22px 0 12px; }
.simx-onglets button {
  border: 0; background: none; padding: 8px 12px; margin-bottom: -1px; cursor: pointer;
  font-family: var(--font-ui); font-size: 14px; font-weight: 600; color: var(--mut);
  border-bottom: 2px solid transparent; transition: color .18s ease, border-color .18s ease;
}
.simx-onglets button.on { color: var(--accent-ink); border-bottom-color: var(--color-primary); }
.simx-resultat svg text { font-family: var(--font-body); font-variant-numeric: tabular-nums lining-nums; }
.simx-detail { margin-top: 18px; border-top: 1px solid var(--line); padding-top: 10px; }
.simx-detail dl { display: grid; grid-template-columns: fit-content(46%) minmax(0, 1fr); gap: 8px 20px; margin: 12px 0 0; font-size: 14px; }
.simx-detail dt { color: var(--mut); }
.simx-detail dd { margin: 0; font-weight: 600; text-align: right; color: var(--navy); font-variant-numeric: tabular-nums lining-nums;
  display: flex; align-items: baseline; justify-content: flex-end; gap: 10px; }
/* pointillé de conduite entre le libellé et sa valeur : sur un encart large,
   l'œil ne retrouvait plus quelle valeur allait avec quel libellé */
.simx-detail dd::before { content: ""; flex: 1 1 24px; min-width: 24px; border-bottom: 1px dotted var(--mut2); opacity: .55; transform: translateY(-.3em); }
.simx-detail dd.o { color: var(--orange-txt); }
.simx-detail dd.g { color: var(--accent-ink); }

/* bandeau mobile du chiffre-phare : monte sur <body> (position fixe, un
   ancetre transforme en ferait sinon le repere), cf. simMiniBarre */
.simx-mini {
  display: none; position: fixed; left: 0; right: 0; z-index: 40;
  justify-content: space-between; align-items: baseline; gap: 12px;
  padding: 8px 16px; background: var(--accent-ink); color: #fff; font-size: 14px;
}
.simx-mini b { font-family: var(--font-heading); font-size: 1.25rem; font-weight: 400; font-variant-numeric: tabular-nums lining-nums; }
@media (max-width: 860px) {
  .simx { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .simx-resultat { order: -1; padding: 16px; }
  .simx-mini.on { display: flex; }
  .simx-phare small { display: block; margin-top: 6px; }
  .simx-detail dl { grid-template-columns: minmax(0, 1fr); gap: 2px 0; }
  .simx-detail dd { text-align: left; margin-bottom: 8px; justify-content: flex-start; }
  .simx-detail dd::before { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .simx-avance summary::before, .simx-detail summary::before, .simx-onglets button { transition: none; }
}

/* ---------- compléments du modèle simplifié pour les simulateurs frais,
   rendement et impôt (19 octobre 2026) ---------- */
.simx-phare-orange { color: var(--orange-txt); }
/* profils à comparer : pastilles à bascule, chacune portant la couleur de sa
   courbe (--c en style inline), même teinte que la légende du graphique */
.simx-profils { display: flex; flex-wrap: wrap; gap: 6px; }
.simx-profil {
  display: inline-flex; align-items: center; gap: 7px; padding: 7px 12px 7px 9px;
  border: 1.5px solid var(--color-border); border-radius: 10px; background: var(--card);
  font: inherit; font-size: 14px; font-weight: 600; color: var(--mut); cursor: pointer;
  transition: border-color .18s ease, background .18s ease, color .18s ease;
}
.simx-profil::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--c); opacity: .35; flex: none; }
.simx-profil.on { border-color: var(--c); background: var(--sim-on-bg); color: var(--navy); }
.simx-profil.on::before { opacity: 1; }
@media (hover: hover) and (pointer: fine) { .simx-profil:hover { border-color: var(--mut2); } }
.simx-legende span.c::before { background: var(--c); }
/* impôt : les questions oui/non dans la colonne de réglages ; la jauge au
   centre de la colonne de résultat */
.simx .simi-q-liste { display: flex; flex-direction: column; gap: 10px; }
.simx .simi-q-tete { flex-wrap: wrap; gap: 8px 12px; }
.simx .simi-q-liste .sim-field, .simx .simi-revenu-field { width: 100%; }
.simx .simi-revenu-input input[type=number], .simx .simi-revenu-input input[type=text] { width: 100%; }
.simx-jauge { max-width: 380px; margin: 4px auto 0; }
.simx-champ .sim-choix-group { height: auto; flex-wrap: wrap; }
/* impôt, liste à cocher : case dessinée, libellé en première personne, aide
   dessous ; les champs d'une case cochée s'ouvrent en retrait */
.simx .simi-q { padding: 7px 0; border-top: 0; }
.simx .simi-q-liste { gap: 2px; }
.simx-case { position: relative; display: flex; align-items: flex-start; gap: 10px; cursor: pointer; }
.simx-case input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.simx-case-boite {
  flex: none; width: 20px; height: 20px; margin-top: 1px; border-radius: 6px; position: relative;
  border: 1.5px solid var(--color-border); background: var(--card);
  transition: background .15s ease, border-color .15s ease;
}
.simx-case-boite::after {
  content: ""; position: absolute; left: 6px; top: 2px; width: 5px; height: 10px;
  border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg) scale(0); transition: transform .15s var(--ease);
}
.simx-case:has(input:checked) .simx-case-boite { background: var(--color-primary-dark); border-color: var(--color-primary-dark); }
.simx-case:has(input:checked) .simx-case-boite::after { transform: rotate(45deg) scale(1); }
.simx-case:has(input:focus-visible) .simx-case-boite { outline: 2px solid rgba(146,196,97,.6); outline-offset: 2px; }
@media (hover: hover) and (pointer: fine) { .simx-case:hover .simx-case-boite { border-color: var(--color-primary-dark); } }
.simx-case-texte { font-size: 14px; font-weight: 500; color: var(--navy); line-height: 1.4; }
.simx-case-texte .simi-q-aide { font-weight: 400; }
.simx .simi-q-detail { margin-left: 30px; }
/* champs ouverts sous une case : discrets, à l'échelle du texte */
.simx .simi-q-detail { gap: 10px 14px; padding-top: 8px; }
.simx .simi-q-detail .sim-field label { font-size: 13px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--mut); }
.simx .simi-q-detail .simi-revenu-input input[type=number], .simx .simi-q-detail .simi-revenu-input input[type=text] { width: 110px; height: 34px; padding: 5px 10px; font-size: 14px; font-weight: 600; text-align: right; }
.simx .simi-q-detail .simi-revenu-input span { font-size: 13px; }
.simx .simi-q-detail .seg button { padding: 5px 11px; font-size: 13px; }
.simx .simi-q-detail .simi-revenu-field { width: auto; }
@media (prefers-reduced-motion: reduce) { .simx-case-boite, .simx-case-boite::after { transition: none; } }

/* ---------- « Est-ce une bonne idée ? » : texte à trous (19 octobre 2026).
   Les champs sont des blancs soulignés dans la phrase ; les nombres calculés
   sont en gras vert ; le verdict est un encart teinté. ---------- */
.simb-texte { font-size: 17px; line-height: 2; color: var(--navy); margin: 0 0 14px; }
.simb-trou { display: inline-flex; align-items: baseline; gap: 2px; white-space: nowrap; }
.simb-trou input, .simb-choix {
  font: inherit; font-size: 17px; font-weight: 700; color: var(--accent-ink); text-align: center;
  background: transparent; border: 0; border-bottom: 2px solid var(--color-primary); border-radius: 0;
  padding: 0 2px; margin: 0; height: 1.5em; line-height: 1.5; font-variant-numeric: tabular-nums;
  -moz-appearance: textfield;
}
.simb-trou input::-webkit-outer-spin-button, .simb-trou input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.simb-choix { -webkit-appearance: none; appearance: none; text-align: left; cursor: pointer; padding-right: 16px;
  background-image: linear-gradient(45deg, transparent 50%, var(--accent-ink) 50%), linear-gradient(135deg, var(--accent-ink) 50%, transparent 50%);
  background-position: calc(100% - 9px) 55%, calc(100% - 4px) 55%; background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; }
.simb-trou input:focus, .simb-choix:focus { outline: none; border-bottom-color: var(--accent-ink); background-color: var(--sim-on-bg); }
.simb-unite { font-weight: 700; color: var(--accent-ink); }
.simb-val { color: var(--accent-ink); font-weight: 700; font-variant-numeric: tabular-nums lining-nums; white-space: nowrap; }
.simb-val-fort { font-size: 1.15em; }

/* recit du foyer (19/10/2026) : la phrase a trous se lit comme la situation
   ETUDIEE (un exemple a adapter), pas comme une consigne : encart sable a
   lisere laiton, grand guillemet, etiquette + aide en tete. */
.simb-recit { position: relative; margin: 0 0 6px; padding: 14px 22px 12px 60px; background: var(--sim-encart-bg);
  border-left: 3px solid var(--serie-retrait-txt); border-radius: 0 14px 14px 0; }
.simb-recit::before { content: "\00AB"; position: absolute; left: 18px; top: 8px; font-family: var(--font-heading); font-weight: 400;
  font-size: 56px; line-height: 1; color: var(--serie-retrait-txt); opacity: .5; pointer-events: none; }
.simb-recit-tete { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 2px 16px; margin: 0 0 2px; }
.simb-recit-tete .simx-titre { margin: 0; color: var(--serie-retrait-txt); }
.simb-recit-aide { font-size: 12px; color: var(--mut); }
.simb-recit .simb-texte { margin: 0; }
@media (max-width: 560px) {
  /* sur un petit écran, le guillemet coûtait 24 px de largeur à une phrase
     déjà serrée : on le retire, le liseré laiton suffit à poser l'encart */
  .simb-recit { padding: 12px 14px 10px 16px; }
  .simb-recit::before { display: none; }
}
.simb-mieux { color: var(--green-txt); }
.simb-pire { color: var(--orange-txt); }
.simb-note { font-size: 14px; color: var(--mut); }
.simb-hypo { margin-top: 22px; padding-top: 14px; border-top: 1px solid var(--line); }
.simb-hypo > summary { font-size: 15px; flex-wrap: wrap; row-gap: 6px; }
.simb-hypo-titre { flex: 1 1 auto; }
/* pastille de verdict sur la ligne de titre : le résultat se lit sans ouvrir */
.simb-pastille { margin-left: auto; font-family: var(--font-ui); font-size: 12px; font-weight: 700; letter-spacing: .01em;
  padding: 4px 11px; border-radius: 999px; white-space: nowrap; background: var(--sim-on-bg); color: var(--green-txt); }
.simb-pastille-non { background: rgba(242,153,74,.14); color: var(--orange-txt); }
.simb-pastille-neutre { background: var(--sim-veil); color: var(--mut); }
.simb-hypo-corps { padding-top: 14px; }
.simb-info { margin: 14px 0 0; padding: 10px 14px; border-left: 3px solid var(--line); background: var(--sim-veil); border-radius: 0 10px 10px 0; }
.simb-info-eti { display: block; font-family: var(--font-eyebrow); font-size: 11px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--mut); margin-bottom: 6px; }
.simb-info .simb-regles { margin-bottom: 0; }
.simb-regles { margin: 0 0 16px; padding-left: 18px; font-size: 14px; line-height: 1.55; color: var(--mut); }
.simb-regles li { margin: 0 0 4px; }
.simb-verdict { display: flex; gap: 14px; align-items: flex-start; padding: 14px 16px; border-radius: 12px; margin: 6px 0 12px; background: var(--sim-on-bg); border-left: 4px solid var(--color-primary); }
.simb-verdict-non { background: rgba(242,153,74,.12); border-left-color: var(--orange); }
.simb-verdict-neutre { background: var(--sim-veil); border-left-color: var(--mut2); }
.simb-verdict-eti { flex: none; font-family: var(--font-eyebrow); font-size: 11px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--accent-ink); padding-top: 3px; }
.simb-verdict-non .simb-verdict-eti { color: var(--orange-txt); }
.simb-verdict-neutre .simb-verdict-eti { color: var(--mut); }
.simb-verdict p { margin: 0; font-size: 14px; line-height: 1.5; color: var(--navy); }
.simb-verdict b { color: inherit; }
@media (max-width: 560px) {
  .simb-texte, .simb-trou input, .simb-choix { font-size: 16px; }
  .simb-verdict { flex-direction: column; gap: 6px; }
  /* la flèche ne reste plus seule sur sa ligne (320-414 px, mesure de la session MIKASA, 23/10/2026) */
  .simb-hypo-titre { flex: 1 1 calc(100% - 17px); min-width: 0; }
  .simb-pastille { margin-left: 17px; white-space: normal; } /* sous le titre, alignée sur lui */
}


/* ---------- « Versement unique ou versements mensuels ? » (20 octobre 2026,
   refait autour du rendement le 23 octobre 2026) : deux camps en vis-à-vis
   (rendement annuel moyen, vert / orange, unité « par an » en ligne),
   valeur en euros mois par mois avec les sommes versées en pointillé et les
   zones sous ces sommes, jauges « mois dans le rouge », encart de lecture. ---------- */
.simd-duel { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 8px 0 12px; }
.simd-camp { padding: 12px 14px 10px; border-radius: 12px; background: var(--sim-veil); border: 1px solid var(--line); min-width: 0; }
.simd-camp-o { background: rgba(242,153,74,.08); border-color: rgba(242,153,74,.35); }
.simd-camp-eti { display: block; font-family: var(--font-eyebrow); font-size: 11px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--mut); }
.simd-camp .simx-phare { font-size: 32px; margin: 4px 0 2px; white-space: nowrap; }
.simd-camp .simx-aide { margin: 0; }
.simd-camp .simx-phare small { display: inline; margin: 0 0 0 2px; }
.simd-jauges { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; margin: 8px 0 4px; }
.simd-jauge-t { display: flex; justify-content: space-between; gap: 10px; font-size: 12.5px; font-weight: 600; color: var(--navy); margin-bottom: 5px; font-variant-numeric: tabular-nums lining-nums; }
.simd-jauge-t span:first-child { white-space: nowrap; }
.simd-jauge-t span:last-child { color: var(--mut); font-weight: 500; white-space: nowrap; }
.simd-jauge-b { display: flex; height: 10px; border-radius: 5px; background: var(--sim-barre-bg); overflow: hidden; }
.simd-jauge-b i { display: block; height: 100%; background: var(--orange); transition: width .45s var(--ease); }
.simd-jauge-b em { display: block; height: 100%; flex: 1; background: var(--color-primary); }
.simd-lecture { margin: 14px 0 6px; padding: 12px 14px; border-radius: 12px; background: var(--sim-on-bg); border-left: 4px solid var(--color-primary); font-size: 14px; line-height: 1.5; color: var(--navy); }
.simd-lecture-eti { display: block; font-family: var(--font-eyebrow); font-size: 11px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--accent-ink); margin-bottom: 4px; }
.simd-lecture b { color: var(--accent-ink); }
.simd-lecture b.o { color: var(--orange-txt); }
.simx-mention { margin: 12px 0 2px; font-style: italic; }
.simd-conseil { margin: 14px 0 0; padding: 12px 16px; border-left: 3px solid var(--line); background: var(--sim-veil); border-radius: 0 12px 12px 0; }
.simd-conseil-eti { display: block; font-family: var(--font-eyebrow); font-size: 11px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--mut); margin-bottom: 6px; }
.simd-conseil ul { margin: 0; padding-left: 18px; font-size: 14px; line-height: 1.55; color: var(--navy); }
.simd-conseil li { margin: 0 0 6px; }
.simd-conseil li:last-child { margin-bottom: 0; }
/* bandeau mobile du site (#simd-mini, monté sur <body> par le montage) :
   la valeur « 12,0 % / 12,8 % » reste sur une ligne (à 320 px elle se
   coupait et le bandeau passait de 51 à 86 px de haut). En sombre, son fond
   --accent-ink devient le vert de marque clair, où le blanc ne tient que
   2,04:1 : encre --on-accent (8,4:1), le jeton prévu pour l'encre posée sur
   ce vert. Pas de pendant @media (prefers-color-scheme) : le bandeau n'existe
   qu'avec JavaScript, et le script de <head> pose alors toujours data-theme.
   Les six autres bandeaux .simx-mini ont le même défaut en sombre. */
#simd-mini b { white-space: nowrap; }
:root[data-theme="dark"] #simd-mini { color: var(--on-accent); }

/* 8. Donation et démembrement (21/10/2026) : trois chemins en tuiles (le
   moins cher en vert, « ne rien faire » en orange), barres des droits,
   barème de l'usufruit en pastilles d'âge (la vôtre entourée, la suivante
   en pointillés). */
.simt-trio { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 14px 0 12px; }
.simt-trio.simt-n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.simt-tuile { position: relative; padding: 14px 14px 10px; border-radius: 12px; background: var(--sim-veil); border: 1px solid var(--line); min-width: 0; }
.simt-rien { background: rgba(242,153,74,.08); border-color: rgba(242,153,74,.35); }
.simt-mieux { background: var(--sim-on-bg); border-color: var(--color-primary); box-shadow: inset 0 0 0 1px var(--color-primary); }
.simt-badge { position: absolute; top: -10px; left: 12px; padding: 4px 9px; border-radius: 999px; background: var(--color-primary); color: var(--on-accent); font: 600 11px/1 var(--font-eyebrow); letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
.simt-tuile .simd-camp-eti { min-height: 2.7em; }
.simt-tuile .simx-phare { font-size: 28px; margin: 4px 0 2px; white-space: nowrap; }
.simt-tuile .simx-aide { margin: 0; }
.simt-barres { display: flex; flex-direction: column; gap: 9px; margin: 8px 0 4px; }
.simt-barre { display: grid; grid-template-columns: minmax(0, 15em) minmax(0, 1fr) 6.5em; gap: 12px; align-items: center; font-size: 13px; color: var(--navy); }
.simt-barre-nom { font-weight: 600; }
.simt-barre-piste { display: block; height: 10px; border-radius: 5px; background: var(--sim-barre-bg); overflow: hidden; }
.simt-barre-piste i { display: block; height: 100%; border-radius: 5px; background: var(--color-primary); transition: width .45s var(--ease); }
.simt-barre-piste i.o { background: var(--orange); }
.simt-barre-val { font-weight: 700; text-align: right; font-variant-numeric: tabular-nums lining-nums; white-space: nowrap; }
.simt-ages { list-style: none; margin: 14px 0 4px; padding: 0; display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; }
.simt-age { position: relative; margin: 0; padding: 9px 4px 8px; border-radius: 10px; border: 1px solid var(--line); background: var(--sim-veil); text-align: center; font-size: 12px; color: var(--mut); }
.simt-age::before { content: none; }
.simt-age-t { display: block; font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums lining-nums; }
.simt-age b { display: block; margin-top: 2px; font: 700 14px/1.2 var(--font-eyebrow); font-variant-numeric: tabular-nums lining-nums; color: var(--navy); }
.simt-ici { border-color: var(--color-primary); background: var(--sim-on-bg); box-shadow: inset 0 0 0 1px var(--color-primary); }
.simt-ici b { color: var(--accent-ink); }
.simt-ici em { position: absolute; top: -9px; left: 50%; transform: translateX(-50%); padding: 3px 7px; border-radius: 999px; background: var(--color-primary); color: var(--on-accent); font: 600 11px/1 var(--font-eyebrow); font-style: normal; letter-spacing: .06em; text-transform: uppercase; }
.simt-apres { border-style: dashed; border-color: rgba(242,153,74,.6); }
@media (max-width: 700px) {
  .simt-trio, .simt-trio.simt-n2 { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .simt-tuile .simd-camp-eti { min-height: 0; }
  .simt-barre { grid-template-columns: minmax(0, 1fr) auto; row-gap: 4px; }
  .simt-barre-nom { grid-column: 1 / -1; }
  .simt-ages { grid-template-columns: repeat(4, minmax(0, 1fr)); row-gap: 14px; }
}
.simx-legende span.z::before { background: rgba(242,153,74,.28); border: 1px solid var(--orange); }
@media (max-width: 420px) {
  .simd-duel, .simd-jauges { grid-template-columns: minmax(0, 1fr); }
  .simd-jauge-t { flex-direction: column; gap: 0; }
}

tr.ligne-repere td {
  border-top: 2px solid var(--line);
  background: var(--repere-bg);
  border-bottom: none;
}
tr.ligne-repere td:first-child { border-radius: 8px 0 0 8px; }
tr.ligne-repere td:last-child { border-radius: 0 8px 8px 0; }
.repere-tag {
  display: inline-block; margin-left: 8px; padding: 1px 7px; border-radius: 20px;
  background: var(--repere-tag-bg); color: var(--repere-ink);
  font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
  vertical-align: 1px;
}
.simr-bar-annuel { transition: opacity .25s ease; }
.simr-bar-annuel.dim { opacity: .3; }
@media (prefers-reduced-motion: reduce) {
  .simr-bar-annuel { transition: none; }
}

/* ============ page Simulateurs en « classeur » (26/10/2026) ==============
   Le « classeur blanc » de la page Outils d'avpatrimoine.fr (choix d'Antoine
   du 25/10/2026), aux couleurs du Releve : quatre themes en onglets-
   intercalaires (icone dans un carre blanc, titre en Radio Canada 700, ni
   serif ni Sriracha) ; les inactifs portent le fond de leur rubrique, l'actif
   prend la carte du Releve et se soude au panneau (carte a filet, angles de
   6 px, sans ombre : Regle du Papier a Plat), qui porte les pastilles du
   theme puis le simulateur, sans cadre. Trois roles par theme (--c vive qui
   dessine, --c-encre qui ecrit, --c-fond qui teinte), poses en ligne depuis
   SIM_COULEUR_CATEGORIE (classeurVarsTheme). Sans choix, une silhouette qui
   charge. Telephone : onglets d'un mot, sous-onglets soulignes, cibles de
   44 px. Focus a l'encre du theme (5:1 au moins sur la carte). */
.cl-tete{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 18px;
  min-height:20px;margin:6px 0 16px}
.cl-tete .fc-eyebrow{color:var(--fc-laiton-txt)}
/* conteneur : les onglets suivent la largeur du classeur (barre laterale
   ouverte ou repliee), comme les paliers du releve */
.classeur{container:classeur/inline-size;scroll-margin-top:16px}
.cl-court{display:none}
.cl-onglets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;position:relative;z-index:1}
.cl-q{--cl-pb:16px;display:flex;align-items:flex-start;gap:10px;min-width:0;margin:0;padding:14px 16px var(--cl-pb);text-align:left;
  border:1px solid transparent;border-top:4px solid var(--c);border-bottom:0;border-radius:6px 6px 0 0;
  background:var(--c-fond);color:var(--c-encre);font:inherit;cursor:pointer;
  transition:background-color .2s cubic-bezier(.4,0,.2,1)}
.cl-q-ico{flex:none;display:grid;place-items:center;width:32px;height:32px;box-sizing:border-box;
  border:1px solid var(--fc-filet);border-radius:4px;background:#fff;color:var(--c-encre)}
.cl-q-texte{display:flex;flex-direction:column;gap:4px;min-width:0}
.cl-q-titre{font:700 clamp(15px,1.25vw,17px)/1.25 var(--police-corps);color:var(--c-encre);text-wrap:balance}
.cl-q-nb{font:500 12.5px/1.3 var(--police-corps);color:var(--mut)}
/* l'onglet choisi prend la carte et se soude au panneau : il descend d'un
   pixel, juste assez pour couvrir le filet du haut du panneau sur sa
   largeur, ses filets de cote rejoignant celui du panneau */
.cl-q[aria-selected="true"]{background:var(--fc-carte);border-color:var(--fc-filet);border-top-color:var(--c);
  padding-bottom:calc(var(--cl-pb) + 1px);margin-bottom:-1px}
.cl-q[aria-selected="true"] .cl-q-ico{background:var(--c-fond);border-color:transparent}
@media (hover:hover) and (pointer:fine){
  .cl-q[aria-selected="false"]:hover{background:color-mix(in srgb,var(--c-fond) 55%,var(--fc-carte))}
  .cl-p:hover{border-color:var(--c)}
}
.cl-q:focus-visible,.cl-p:focus-visible{outline:2px solid var(--c-encre);outline-offset:2px}
.cl-panneau{position:relative;padding:18px 24px 26px;background:var(--fc-carte);
  border:1px solid var(--fc-filet);border-radius:0 0 6px 6px}
.classeur:not(.cl-ouvert) .cl-panneau{margin-top:8px;border-radius:6px}
/* pastilles du theme : pilules a filet sur la carte, comme les puces de
   produits ; la choisie au fond de sa rubrique, contour a la vive, icone
   d'encre sur la vive (3,7 a 7,1:1) */
.cl-pastilles{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}
.cl-pastilles[hidden]{display:none}
.cl-p{display:inline-flex;align-items:center;gap:9px;min-height:44px;margin:0;padding:6px 16px 6px 7px;
  border:1px solid var(--fc-filet);border-radius:999px;background:transparent;color:var(--fc-encre);
  font:600 14px/1.2 var(--police-corps);text-align:left;cursor:pointer;
  transition:border-color .2s cubic-bezier(.4,0,.2,1),background-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1)}
.cl-p-ico{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;
  background:var(--c-fond);color:var(--c-encre)}
.cl-p[aria-selected="true"]{border-color:var(--c);background:var(--c-fond);color:var(--c-encre)}
.cl-p[aria-selected="true"] .cl-p-ico{background:var(--c);color:var(--fc-encre)}
.cl-p:active{transform:scale(.97);transition:transform .15s cubic-bezier(.4,0,.2,1)}
/* le simulateur, pose sans cadre dans le panneau ; son en-tete n'est lu que
   par les lecteurs d'ecran (classeurCarteHTML) ; corps toujours ouvert */
.fc-flat .classeur .card.cl-carte{margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.fc-flat .classeur .cl-carte[hidden]{display:none}
.fc-flat .classeur .cl-carte:not([hidden]){animation:cl-apparait .28s cubic-bezier(.4,0,.2,1)}
.fc-flat .classeur .sim-collapse > .sim-collapse-body.open{margin:0;padding:18px 0 2px;background:none;border-radius:0;transition:none}
@keyframes cl-apparait{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
/* sans simulateur choisi : silhouette de simulateur (pastilles, reglages,
   resultat sur blanc, graphique) en formes d'encre a 7 %, un reflet a 14 %
   qui balaie et une courbe qui pulse, decales pour ne pas clignoter d'un
   bloc ; une seule indication */
.cl-attente{padding:6px 0 2px;color:var(--fc-encre)}
.cl-attente[hidden]{display:none}
.cl-att-formes span{display:block;border-radius:999px;
  --cl-fond:color-mix(in srgb,var(--fc-encre) 7%,transparent);
  --cl-reflet:color-mix(in srgb,var(--fc-encre) 14%,transparent);
  background:linear-gradient(100deg,var(--cl-fond) 30%,var(--cl-reflet) 50%,var(--cl-fond) 70%) 0 0/300% 100%;
  animation:cl-reflet 1.6s ease-in-out infinite}
@keyframes cl-reflet{from{background-position:100% 0}to{background-position:0% 0}}
@keyframes cl-pouls{0%,100%{opacity:.55}50%{opacity:1}}
.cl-att-resultat span{animation-delay:.15s}
.cl-att-graphe svg{display:block;width:100%;height:150px;animation:cl-pouls 1.6s ease-in-out .3s infinite}
.cl-att-pastilles{display:flex;gap:8px;margin-bottom:18px}
.cl-att-pastilles span{width:170px;height:44px}
.cl-att-pastilles span:nth-child(2){width:130px}
.cl-att-pastilles span:nth-child(3){width:210px}
.cl-att-formes .cl-att-sous{width:min(560px,80%);height:12px;margin-bottom:22px}
.cl-att-corps{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);gap:28px}
.cl-att-reglages{display:flex;flex-direction:column;gap:10px;padding-top:4px}
.cl-att-formes .cl-att-eti{width:46%;height:10px;margin-top:8px}
.cl-att-formes .cl-att-curseur{height:6px}
.cl-att-formes .cl-att-champ{height:40px;border-radius:10px}
.cl-att-resultat{min-width:0;padding:18px;background:#fff;border:1px solid var(--fc-filet);border-radius:16px}
.cl-att-tuiles{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 16px}
.cl-att-formes .cl-att-tuiles span{height:74px;border-radius:12px}
.cl-att-indice{display:flex;align-items:center;justify-content:center;gap:8px;margin:22px 0 0;
  font:600 14px/1.3 var(--police-corps);color:var(--mut)}
.cl-att-indice svg{flex:none;color:var(--fc-laiton)}
/* la mention, sous le panneau ; sur une seule ligne des que la largeur le
   permet (Antoine, sur le site) */
.cl-mention{margin:14px auto 0;text-align:center;font:italic 400 13px/1.45 var(--fc-serif);color:var(--mut);text-wrap:balance}
@container classeur (min-width:600px){.cl-mention{white-space:nowrap}}
@media (prefers-reduced-motion:reduce){
  .cl-q,.cl-p{transition:none}
  .cl-p:active{transform:none}
  .fc-flat .classeur .cl-carte:not([hidden]){animation:none}
  .cl-att-formes span,.cl-att-graphe svg{animation:none}
}
@media (max-width:899.98px){.classeur{scroll-margin-top:70px}}
@media (max-width:860px){
  .cl-onglets{gap:6px}
  .cl-q{--cl-pb:14px;padding:12px 12px var(--cl-pb)}
  .cl-panneau{padding:16px 18px 22px}
}
/* classeur etroit sur grand ecran (de 900 a 1000 px environ, barre laterale
   ouverte : onglets de 140 a 170 px) : l'icone passe au-dessus du titre,
   titres longs gardes ; sous 640 px de fenetre, la regle du telephone,
   plus bas, l'emporte (onglets d'un mot) */
@container classeur (max-width:699.98px){
  .cl-q{flex-direction:column;align-items:center;gap:8px;padding:12px 8px var(--cl-pb);text-align:center}
  .cl-q-texte{align-items:center;max-width:100%}
  .cl-q-titre{font-size:14px}
}
/* telephone : onglets d'un mot sous leur icone, sous-onglets soulignes
   (defilant dans leur rangee), silhouette sur une colonne */
@media (max-width:640px){
  .cl-long{display:none}
  .cl-court{display:inline}
  .cl-onglets{gap:4px}
  .cl-q{--cl-pb:12px;flex-direction:column;align-items:center;gap:6px;padding:10px 0 var(--cl-pb);text-align:center;border-top-width:3px}
  .cl-q-texte{align-items:center;max-width:100%}
  .cl-q-titre{font-size:13px;letter-spacing:-.02em}
  .cl-q-nb{display:none}
  .cl-panneau{padding:4px 14px 18px}
  .cl-pastilles{flex-wrap:nowrap;gap:18px;margin:0 -14px 4px;padding:0 14px;overflow-x:auto;scrollbar-width:none;
    border-bottom:1px solid var(--fc-filet)}
  .cl-pastilles::-webkit-scrollbar{display:none}
  .cl-p{flex:none;justify-content:center;min-width:44px;min-height:44px;margin-bottom:-1px;padding:12px 0 10px;gap:0;border:0;
    border-bottom:3px solid transparent;border-radius:0;background:none;color:var(--mut);font-size:14px}
  .cl-p-ico{display:none}
  .cl-p[aria-selected="true"]{background:none;color:var(--c-encre);border-bottom-color:var(--c)}
  .cl-p:active{transform:none}
  .cl-p:focus-visible{outline-offset:-2px}
  .fc-flat .classeur .sim-collapse > .sim-collapse-body.open{padding-top:14px}
  .cl-att-pastilles{gap:18px;margin:4px 0 16px;padding-bottom:12px;border-bottom:1px solid var(--fc-filet)}
  .cl-att-pastilles span{width:70px;height:12px}
  .cl-att-pastilles span:nth-child(2){width:46px}
  .cl-att-pastilles span:nth-child(3){width:96px}
  .cl-att-corps{grid-template-columns:minmax(0,1fr);gap:18px}
  .cl-att-graphe svg{height:90px}
  .cl-att-reglages > span:nth-child(n+5){display:none}
  .cl-att-formes .cl-att-tuiles span{height:56px}
  .cl-att-formes .cl-att-sous{margin-bottom:14px}
}
/* petits telephones (320 px) : « Transmettre » tient dans son onglet sans
   descendre sous le plancher de 12 px (le classeur prend 6 px de chaque
   gouttiere, qui garde 14 px) */
@media (max-width:359.98px){
  .classeur{margin-left:-6px;margin-right:-6px}
  .cl-onglets{gap:2px}
  .cl-q-titre{font-size:12px}
}

/* ============ Bibliotheque « catalogue » (monde papier du Releve) ========
   Remplace les etageres bento et leurs badges verts pleins (jugees "tape a
   l'oeil", demande explicite) : en-tete editorial + recherche instantanee,
   sections numerotees a filets (reutilise .fc-section/.fc-sec-head), un
   GROUPE = une carte --fc-carte a filets, un DOCUMENT = une ligne de
   registre (marque du partenaire dans le carre .fc-mono, titre, periode,
   bouton "Consulter" laiton) dont le resume s'ouvre en tiroir 0fr->1fr. */
.bib-entete{margin:26px 0 6px}
.bib-titre-page{font:400 clamp(30px,4vw,44px)/1.1 var(--fc-serif-d);color:var(--fc-encre);margin:10px 0 6px}
.bib-sous-titre{font:italic 400 13.5px var(--fc-serif);color:var(--mut);margin:0 0 20px}
.bib-recherche{width:100%;max-width:460px;background:var(--fc-carte);border:1px solid var(--fc-filet);
  border-radius:3px;padding:11px 14px;font:400 13.5px var(--police-corps);color:var(--fc-encre)}
.bib-recherche:focus{outline:none;border-color:var(--fc-laiton)}
.bib-recherche::placeholder{font-style:italic;color:var(--mut2)}
.bib-section{margin-top:34px}
.bib-groupe{background:var(--fc-carte);border:1px solid var(--fc-filet);border-radius:6px;
  padding:4px 18px 8px;margin-top:14px}
.bib-groupe-head{display:flex;align-items:baseline;gap:12px;padding:12px 0 9px;
  border-bottom:1px solid var(--fc-filet-fort)}
.bib-groupe-head h3{font:400 16px var(--fc-serif);color:var(--fc-encre);margin:0;letter-spacing:.005em}
.bib-cpt{font:italic 400 11.5px var(--fc-serif);color:var(--mut)}
.bib-ligne{border-bottom:1px solid var(--fc-filet)}
.bib-ligne:last-child{border-bottom:none}
.bib-tete{display:flex;align-items:center;gap:14px;padding:13px 2px;cursor:pointer;transition:background .2s}
.bib-tete:hover{background:var(--fc-papier-2)}
.bib-id{flex:1;min-width:0}
.bib-titre{font-weight:700;font-size:13.5px;color:var(--fc-encre)}
.bib-sub{font-size:11px;color:var(--mut);margin-top:2px}
.bib-conf{display:inline-block;margin-left:8px;padding:2px 8px;border:1px solid var(--fc-perte);
  border-radius:3px;color:var(--fc-perte);font:700 9.5px/1.4 var(--police-corps);
  letter-spacing:.08em;text-transform:uppercase;vertical-align:1px}
.bib-ouvrir{flex:none;border:1px solid var(--fc-laiton);color:var(--fc-laiton);border-radius:3px;
  padding:7px 14px;font:700 10.5px/1 var(--police-corps);letter-spacing:.1em;text-transform:uppercase;
  transition:background var(--t-fast),color var(--t-fast),transform var(--t-fast)}
.bib-ouvrir:hover{background:var(--fc-laiton);color:#fff;text-decoration:none}
.bib-ouvrir:active{transform:scale(.97)}
/* boutons-logos externes (Quantalys/Boursorama) : petit carre a filet de la
   meme famille que .bib-ouvrir, le logo 16px dedans. */
.bib-ext{flex:none;display:inline-flex;align-items:center;justify-content:center;
  width:30px;height:30px;border:1px solid var(--fc-filet);border-radius:3px;
  background:#fff;font:700 12px var(--police-corps);color:var(--fc-encre);
  transition:border-color var(--t-fast),transform var(--t-fast)}
.bib-ext img{width:16px;height:16px;object-fit:contain}
.bib-ext:hover{border-color:var(--fc-laiton);text-decoration:none}
.bib-ext:active{transform:scale(.94)}
.bib-det{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1)}
.bib-ligne.open .bib-det{grid-template-rows:1fr}
.bib-ligne.open .bib-tete .chev{transform:rotate(180deg)}
.bib-det-inner{overflow:hidden;min-height:0}
.bib-resume{margin:0;padding:8px 0 16px 22px;font-size:12.5px;line-height:1.65;color:var(--ink);max-width:820px}
.bib-vide{color:var(--mut);font-size:12.5px;padding:6px 0 14px}
@media (max-width:640px){
  .bib-tete{flex-wrap:wrap}
  .bib-ouvrir{margin-left:54px}
}
/* ============== sidebar / nav au vocabulaire du Releve ==================
   (demande explicite -- couleurs, police, icones, carte blanche) : la barre
   quitte le verre depoli et les pastilles neumorphiques pour une colonne de
   papier clair a filet. Les icones SVG inline (currentColor, cf.
   icone_ou_emoji) suivent le texte sans retouche des fichiers : encre au
   repos, laiton sur l'onglet actif. Ces surcharges tombent APRES les regles
   de base dans la cascade et s'appliquent aussi a la barre horizontale et
   au tiroir mobile (memes classes). */
.topbar{background:var(--fc-carte);backdrop-filter:none;-webkit-backdrop-filter:none;
  border-right-color:var(--fc-filet-fort)}
.topbar.is-scrolled{box-shadow:0 10px 26px rgba(21,38,29,.08)}
#topbar-signature{color:var(--fc-encre)}
#topbar-signature i{color:var(--fc-laiton)}
.tab{color:var(--fc-encre);font-weight:600;border-radius:4px;background:transparent;box-shadow:none}
.tab:hover{color:var(--fc-encre);background:var(--fc-papier-2);box-shadow:none}
.tab.on{color:var(--fc-encre);font-weight:700;background:var(--fc-papier-2);
  box-shadow:inset 2px 0 0 var(--fc-laiton)}
/* icone de l'onglet ACTIF au vert du logo AVP (--green-line, le meme que la
   mosaique de la landing -- demande explicite), la barre laterale reste
   laiton. */
.tab.on .tab-ic{color:var(--green-line)}
.tab-glow{background:rgba(168,130,60,.12);border-radius:4px}
.tab-sousmenu-ind{color:var(--fc-laiton)}
.topbar .brand{font:italic 400 11px/1.5 var(--fc-serif);color:var(--mut)}
.btn-sidebar-toggle{color:var(--fc-laiton)}
.btn-sidebar-toggle:hover{background:var(--fc-papier-2);color:var(--fc-laiton)}
.sim-flyout{background:var(--fc-carte);border:1px solid var(--fc-filet-fort);
  border-radius:6px;box-shadow:0 14px 34px rgba(21,38,29,.14);padding:6px 8px 8px}
/* contenu du volet Simulateurs au meme registre (demande explicite) :
   entetes de categorie en eyebrow laiton a filet, fleches laiton, pastilles
   carrees dans la gamme du Releve (cf. SIM_COULEUR_FLYOUT). */
.sim-flyout .subnav-groupe{font-size:11px;letter-spacing:.14em;color:var(--fc-laiton);
  margin:8px 0 3px;padding:6px 10px 5px;border-bottom:1px solid var(--fc-filet)}
.sim-flyout .subnav-groupe:first-child{margin-top:0}
.sim-flyout .subnav-item .subnav-fleche{color:var(--fc-laiton)}
.sim-flyout .subnav-puce{width:7px;height:7px;border-radius:2px}
/* volet aux quatre themes du classeur (26/10/2026) : chaque entete reprend
   son onglet, icone dans un carre blanc a filet et titre en casse de phrase
   a l'encre du theme (5 a 6,5:1 sur la carte), le filet reste dessous ; le
   simulateur affiche dans la page porte le dessin de l'onglet actif. Au
   toucher, chaque lien fait 44 px de haut ; le volet, plus haut, defile
   s'il depasse la fenetre (telephone a l'horizontale). */
.sim-flyout .sim-flyout-theme{display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0;
  font:700 12.5px/1.3 var(--police-corps);color:var(--c-encre);white-space:nowrap}
.sim-flyout-ico{flex:none;display:grid;place-items:center;width:22px;height:22px;box-sizing:border-box;
  border:1px solid var(--fc-filet);border-radius:3px;background:#fff;color:var(--c-encre)}
.sim-flyout .subnav-item.on .tab-lbl{color:var(--fc-encre)}
.sim-flyout .subnav-item:focus-visible{outline:2px solid var(--fc-encre);outline-offset:-2px}
@media (max-width:899.98px),(pointer:coarse){
  .sim-flyout{max-height:calc(100vh - 16px);overflow-y:auto}
  .sim-flyout .subnav-item{min-height:44px}
}
.nav-drawer .fiche-subnav .tab{border-radius:4px}
@media (max-width:899.98px){
  .nav-drawer{background:var(--fc-carte);backdrop-filter:none;-webkit-backdrop-filter:none;
    border-left:1px solid var(--fc-filet-fort)}
}
.chart-tip .t-prod{border-top:1px dashed var(--line);margin-top:5px;padding-top:5px;color:var(--mut);font-size:11px}
/* hauteur reduite (10px -> 4px) : a 10px de haut, les 3 segments de 6px de
   large du degrade repetitif (legende d'une courbe en pointilles, cf.
   "Capital place cumule") sont presque carres et se lisaient comme 3 pastilles
   pleines disjointes plutot qu'un trait pointille -- bug visuel reel signale
   sur capture. Un trait plus fin (4px) redonne la bonne proportion largeur/
   hauteur a chaque tiret. */
.legende .sw{display:inline-block;width:26px;height:4px;border-radius:2px;
  vertical-align:middle;margin-right:6px}

/* ---- contrats ---- */
.ctr{background:var(--card);border:none;
  border-radius:var(--radius-s);padding:14px 18px;margin-bottom:10px;
  box-shadow:var(--neu-out-sm);
  transition:box-shadow var(--t-base), transform var(--t-base), background var(--t-base)}
.ctr:hover{box-shadow:var(--neu-out);background:#fff}
@media (hover:hover) and (pointer:fine){.ctr:hover{transform:translateY(-1px)}}
.ctr.exclu{opacity:.6}
/* "Investi/Encours/Evolution" alignes d'un produit a l'autre : .top est une
   grille a colonnes FIXES (pas "auto", sinon chaque .ctr, etant sa propre
   grille, retrouverait des largeurs de colonne dependantes de son propre
   contenu et rien n'alignerait plus rien) -- .mets passe en display:contents
   pour que ses .met (et le chevron) deviennent des enfants directs de cette
   grille, chacun epingle a une colonne fixe via .met-xxx quel que soit le
   sous-ensemble de metriques reellement affiche sur cette ligne (primes
   parrainage/frais observes optionnels n'existent pas sur tous les contrats).
   Sur mobile, on repasse en flex empile (comportement d'origine). */
.ctr .top{display:grid;grid-template-columns:minmax(140px,1fr) 100px 100px 106px 130px 108px 20px;
  column-gap:16px;row-gap:6px;align-items:center;cursor:pointer}
.ctr .nomc{font-weight:800;color:var(--navy);font-size:15px}
.ctr .ssc{color:var(--mut);font-size:12px;margin-top:1px}
.ctr .mets{display:contents}
.ctr .met.met-investi{grid-column:2}
.ctr .met.met-encours{grid-column:3}
.ctr .met.met-evol{grid-column:4}
.ctr .met.met-frais{grid-column:5}
.ctr .met.met-primes{grid-column:6}
.ctr .met .lab{font-size:10px;letter-spacing:.06em;color:var(--mut);font-weight:700;text-transform:uppercase;text-align:right}
.ctr .met .val{font-weight:800;color:var(--navy);font-size:15px;text-align:right}
.ctr .met .val.pos{color:var(--green-ink)}
.ctr .met .val.neg{color:var(--red-ink)}
.ctr .chev{grid-column:7;color:var(--navy);font-size:11px;justify-self:end}
@media (max-width:760px){
  .ctr .top{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
  .ctr .mets{display:flex;gap:16px 26px;align-items:center;flex-wrap:wrap}
  .ctr .chev{justify-self:auto}
}
/* ouverture animee du detail de contrat : meme recette 0fr->1fr que les
   encarts .sim-collapse (le chevron tournait deja, le contenu apparaissait
   d'un bloc sec) -- le filet pointille suit en fondu via border-color. */
.ctr .det{display:grid;grid-template-rows:0fr;border-top:1px dashed transparent;
  transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1), margin-top .3s cubic-bezier(.4,0,.2,1),
    padding-top .3s cubic-bezier(.4,0,.2,1), border-color .3s}
.ctr .det > .det-inner{overflow:hidden;min-height:0}
.ctr.open .det{grid-template-rows:1fr;border-top-color:var(--line);margin-top:12px;padding-top:12px}
.badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;
  padding:3px 9px;border-radius:20px;background:#f1eefb;color:var(--mut);
  margin-left:8px;vertical-align:2px}
.pill{display:inline-block;font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px}
/* une pastille par partenaire : registre (partenaires.py) */
.pill.SWISSLIFE{background:#e3edfa;color:#1d4ed8}
.pill.CORUM{background:#fdeadd;color:#c2410c}
.pill.COLONNES3{background:#f2e9fb;color:#7c3aed}
.pill.ALDERAN{background:#e6f5ea;color:#1a7f37}
.pill.ERES{background:#e0f2ef;color:#0f6b5c}
.pill.INTERINVEST{background:#f6e7e4;color:#ae3a28}
/* MESURE / ATTENDU (16/10/2026) : un montant qui compte une part pas encore
   constatee par le partenaire (versement programme projete, operation
   annoncee en attente) se lit en italique discret, detail au survol ou au
   toucher. Meme famille que les estimations deja grisees ("~ date"). */
.a-venir{font-style:italic;color:var(--mut);cursor:help;border-bottom:1px dotted currentColor}
.a-venir:focus-visible{outline:2px solid var(--fc-laiton);outline-offset:2px}
.note-a-venir{font-size:11px;color:var(--mut);margin-top:6px;font-style:italic}
.t-row.t-prev{font-style:italic;color:#8896a8}
/* simulateur SCPI : bandeau du delai de jouissance (tableau mois par mois),
   hachure laiton discrete ; les lignes du delai portent un filet laiton a
   gauche pour se lire comme un groupe. Titre en encre (contraste), le laiton
   reste decoratif. */
/* .tbl-centre td (texte a droite) et th,td (nowrap) l'emportaient : texte
   pousse a droite et coupe -- selecteur plus precis, retour a la ligne permis */
.tbl-centre td.sime-jouissance,td.sime-jouissance{
  background:repeating-linear-gradient(135deg,rgba(168,130,60,.09) 0 6px,rgba(168,130,60,.025) 6px 12px);
  text-align:center;vertical-align:middle;white-space:normal;padding:12px 18px}
.sime-jouissance-titre{display:block;font:700 10.5px/1.3 var(--police-corps);letter-spacing:.1em;
  text-transform:uppercase;color:var(--ink)}
.sime-jouissance-txt{display:block;margin:5px auto 0;max-width:340px;font-size:12px;line-height:1.45;color:var(--mut)}
tr.sime-en-jouissance td:first-child{box-shadow:inset 3px 0 0 var(--fc-laiton-clair)}
/* Taille de base multipliee par --ech, l'echelle propre a chaque logo (cf.
   echelles_logos() cote Python, injectee en img[data-src="ALDERAN"]{--ech:1.4}
img[data-src="COLONNES3"]{--ech:1.0}
img[data-src="CORUM"]{--ech:1.011}
img[data-src="ERES"]{--ech:0.821}
img[data-src="SWISSLIFE"]{--ech:0.961} juste apres).
   Sans elle, une boite fixe + object-fit:contain donnait des surfaces d'encre
   dans un rapport de 5,7 entre eres (large et dense) et Alderan (presque carre
   et tres aere) : le premier ecrasait la colonne, le second y disparaissait. */
.src-logo{width:calc(46px*var(--ech,1));height:calc(16px*var(--ech,1));
  object-fit:contain;object-position:center;
  vertical-align:middle;background:#fff;border:1px solid var(--line);
  border-radius:7px;padding:2px 7px;box-sizing:content-box}
/* colonne "Solution" du tableau Historique des mouvements : largeur FIXE,
   sans --ech -- la correction de densite d'encre (pensee pour la colonne
   Partenaires, plus large) donnait ici des vignettes trop inegales d'une
   ligne a l'autre (CORUM nettement plus large que SwissLife/Alderan),
   genant pour scanner la colonne de haut en bas. Demande explicite. */
.td-solution .src-logo{width:56px;height:20px}
/* logo de la colonne Societe du tableau "Detail par partenaire" */
.tbl-logo-src{height:calc(22px*var(--ech,1));width:auto;max-width:104px;
  object-fit:contain;vertical-align:middle}
img[data-src="ALDERAN"]{--ech:1.4}
img[data-src="COLONNES3"]{--ech:1.0}
img[data-src="CORUM"]{--ech:1.011}
img[data-src="ERES"]{--ech:0.821}
img[data-src="SWISSLIFE"]{--ech:0.961}
/* logo agrandi + nom en dessous, sur l'encart d'identite d'un produit (1er
   encart de la fiche produit) ; .p-nom recoit une taille de police ajustee
   par ajusterTailleNomsProduits() (JS) si le nom deborde de cette largeur,
   et cette taille devient la reference commune a tous les produits affiches. */
.src-logo-lg{width:88px;height:30px}
.p-nom{color:var(--navy);display:block;max-width:140px;font-size:14.5px;text-align:center;line-height:1.2}
.p-titre-bloc{color:var(--navy);font-size:13px;line-height:1.2}

/* ---- versements ---- */
.vers-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:var(--gap);margin-bottom:16px}
.vkpi{background:var(--card);border:none;
  border-top:4px solid var(--green-line);border-radius:var(--radius-s);padding:12px 16px;
  box-shadow:var(--neu-out-sm);transition:box-shadow var(--t-base), background var(--t-base)}
.vkpi:hover{box-shadow:var(--neu-out);background:#fff}
.vkpi.or{border-top-color:var(--orange)}.vkpi.vi{border-top-color:var(--grad2)}
.vkpi .lab{font-size:10.5px;letter-spacing:.06em;color:var(--mut);font-weight:700;text-transform:uppercase}
.vkpi .val{font-size:20px;font-weight:800;color:var(--navy)}
.vkpi .sub{font-size:11.5px;color:var(--mut)}
.filtres{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.filtres select{padding:7px 12px;border:none;
  border-radius:12px;background:var(--card);color:var(--ink);font:inherit;font-size:13px;
  box-shadow:var(--neu-in);transition:box-shadow var(--t-fast)}
.filtres select:focus{outline:none;box-shadow:var(--neu-in), 0 0 0 2px rgba(31,171,111,.35)}
/* pas de backdrop-filter (meme raison que .voir-suite ci-dessus) : --btn-bg
   est un hex opaque, rien a flouter derriere. */
.seg{position:relative;display:inline-flex;border:1px solid var(--glass-brd);border-radius:12px;overflow:hidden;
  background:var(--btn-bg);
  box-shadow:var(--glass-shadow)}
.seg button{position:relative;z-index:1;border:0;background:transparent;padding:7px 14px;font:inherit;font-size:13px;
  border-radius:9px;cursor:pointer;color:var(--mut);
  box-shadow:var(--neu-in);
  transition:box-shadow var(--t-fast), color var(--t-fast), background var(--t-fast), transform 140ms ease-out}
/* retour tactile a la pression : meme convention que .copy-btn/.voir-suite,
   les seuls pressables qui en etaient encore depourvus. */
.seg button:active{transform:scale(.96)}
.seg button:hover{box-shadow:var(--glass-shadow-hover);color:var(--navy);background:rgba(255,255,255,.5)}
/* fond plein (pas le degrade --grad) : le texte blanc dessus tombait a
   2.95:1 au niveau le plus clair du degrade (--grad2), sous le seuil de
   4.5:1 -- --green-ink (deja fonce pour rester lisible en texte) reste
   suffisant en fond uni avec du blanc par-dessus (4.69:1). */
.seg button.on{background:var(--green-ink);color:#fff;font-weight:700;box-shadow:none}
.seg button.on:hover{background:var(--green-ink);box-shadow:none}
.note{border-left:4px solid var(--orange);background:#fff8ef;border-radius:12px;
  padding:8px 12px;font-size:12.5px;color:#8a5a17;margin:8px 0}
th.sortable{cursor:pointer;user-select:none}
th.sortable .arr{color:var(--mut2);font-size:9px}
.st-ok{color:var(--green-ink);font-weight:600}
.st-att{color:var(--red-ink);font-weight:600}
.st-ann{color:var(--mut2);text-decoration:line-through}
tr.info-op td{color:var(--mut);font-style:italic;background:rgba(3,60,32,.03)}
tr.op-cout td{color:var(--red-ink)}
tr.op-gain td{color:var(--green-ink);font-weight:700;font-style:normal}
tr.totrow td{font-weight:800;color:var(--navy);border-top:2px solid #f1eefb}
tr.grp-mois td{background:rgba(91,110,232,.04)}
tr.grp-mois.info-op td{background:rgba(91,110,232,.06)}

/* ================= page recherche : meme theme que le reste de l'app ================= */
body.landing .topbar{display:none}
/* min-height:100vh + colonne flex : .landing-top (barre du haut) garde sa
   hauteur naturelle, .landing-center (flex:1, cf. plus bas) se centre alors
   VRAIMENT dans l'espace restant. Remplace un ancien "margin-top:11vh" qui
   n'etait qu'une approximation -- juste au bon endroit tant que le contenu
   (mosaique clients) faisait une certaine hauteur, visiblement plus au
   centre du tout des que le nombre de clients (donc la mosaique) grandit. */
body.landing .wrap{max-width:none;padding:0;min-height:100vh;display:flex;flex-direction:column}
.landing-top{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:18px 24px}
/* pas de backdrop-filter (meme raison que .voir-suite plus haut). */
.btn-dash{display:inline-block;background:var(--btn-bg);
  border:1px solid var(--glass-brd);border-radius:14px;
  padding:9px 20px;font-weight:700;color:var(--navy);box-shadow:var(--glass-shadow);
  transition:box-shadow var(--t-fast), background var(--t-fast), transform var(--t-fast)}
.btn-dash:hover{text-decoration:none;background:var(--btn-bg-hover);box-shadow:var(--glass-shadow-hover)}
@media (hover:hover) and (pointer:fine){.btn-dash:hover{transform:translateY(-1px)}}
/* retour de pression, comme .voir-suite/.copy-btn : ces boutons de la
   landing etaient les seuls pressables de l'app sans feedback tactile. */
.btn-dash:active{transform:scale(.97)}
/* "Mode Decouverte" (fiche fictive) : au vu des autres boutons du bandeau
   (Liste clients / Exporter couples.json / Envoyer l'acces...), rien ne le
   distinguait -- meme fond, meme forme -- alors que c'est la seule action
   qui n'ouvre PAS de vraies donnees client. Pilule en verre + contour vert,
   meme traitement que sur la page PIN (dashboard_v2.php), pour une identite
   coherente du bouton ou qu'il apparaisse. */
.btn-decouverte{background:rgba(255,255,255,.55);
  border:1.5px solid var(--grad2);color:var(--grad1)}
.btn-decouverte:hover{background:rgba(255,255,255,.85)}
/* align-self:center (pas align-items:center sur le parent .wrap, qui
   affecterait AUSSI .landing-top et casserait son justify-content:flex-end)
   -- en flex-direction:column, un enfant reste en align-items:stretch par
   defaut : avec un max-width mais sans stretch limite par lui, l'enfant
   occupe la largeur DISPONIBLE avant d'appliquer son plafond et margin:auto
   ne suffit plus a le recentrer (constate au rendu : logo/recherche colles
   a gauche). align-self cible ce SEUL enfant, sans toucher .landing-top. */
.landing-center{max-width:640px;margin:0 auto;padding:0 20px;text-align:center;
  flex:1;align-self:center;display:flex;flex-direction:column;justify-content:center}
/* align-self:center : .landing-center est devenu un conteneur flex en
   colonne (centrage vertical) et ses enfants a largeur fixe (le logo) se
   calent alors a gauche -- text-align:center ne centre pas un flex item. */
.landing-logo{width:min(300px,68%);height:auto;margin-bottom:38px;align-self:center}
.landing-title{font-size:36px;font-weight:800;color:var(--green-ink);margin-bottom:34px}
.gbox{position:relative;z-index:1}
.gghost{position:absolute;top:0;left:0;right:0;bottom:0;z-index:3;pointer-events:none;
  padding:17px 28px;border:1px solid transparent;font-size:16.5px;line-height:normal;
  text-align:left;white-space:pre;overflow:hidden}
.gghost .gt{color:transparent}
.gghost .gn{color:var(--rch-vert-action);font-weight:600}
.gsearch{width:100%;padding:17px 28px;font:inherit;font-size:16.5px;color:var(--ink);
  border:none;
  border-radius:32px;background:var(--card);
  box-shadow:none;transition:box-shadow var(--t-fast)}
.gsearch::placeholder{color:var(--rch-doux)}
.gsearch:focus{outline:none;box-shadow:var(--neu-in), 0 0 0 2px rgba(31,171,111,.35)}
.landing-note{margin-top:28px;color:var(--rch-doux-fond);font-size:13px}
/* mosaique : verre depoli flottant au-dessus du fond degrade de la page
   Recherche. position/z-index superieurs a .gbox pour passer AU-DESSUS de
   l'ombre de la barre de recherche (sinon celle-ci empietait visuellement
   sur la mosaique). */
.carres-card{position:relative;z-index:2;margin-top:26px;
  background:var(--card);border:none;border-radius:var(--radius);
  padding:18px;box-shadow:var(--neu-out);text-align:left;
  transition:box-shadow var(--t-base), background var(--t-base)}
.carres-card:hover{box-shadow:var(--neu-out-hover);background:#fff}
.carres{display:grid;grid-template-columns:repeat(30,1fr);gap:6px}
.carre{aspect-ratio:1;border-radius:5px;background:var(--green-line);
  transition:background .25s ease}
.carre.off{display:none}
.carre.vide{background:var(--rch-carre-vide)}
/* pulse ponctuel sur l'unique carre restant quand la recherche identifie un
   seul client (cf. initRecherche/filtrer) -- reprend le vert de la mosaique,
   pas de nouvelle couleur ; desactive si prefers-reduced-motion. */
@media (prefers-reduced-motion:no-preference){
  .carre.carre-trouve{animation:carreTrouve .5s ease}
}
@keyframes carreTrouve{
  0%, 100%{transform:scale(1)}
  45%{transform:scale(1.4)}
}
.carres-note{margin-top:12px;color:var(--rch-doux);font-size:12px;text-align:center}
/* ---- Recherche, 25/10/2026 (propositions R1 a R3, piste C « l'actuel plus
   vivant ») : liste de resultats sous le champ (R1), textes d'aide lisibles
   et carres vides sans lavande (R2), champ nomme et boutons a 44 px (R3).
   La matiere de la page ne bouge pas (fond anime, pilule, carte blanche,
   mosaique verte). Jetons en tete :
   - gris des aides = --mut (5,6:1 sur blanc) au lieu de --mut2 (3:1) ;
     sur le fond anime (etiquette, date du bilan), --mut tombe a 4,4:1 au
     pire pixel : un gris plus fonce, #46524c (6,4:1), y ecrit ;
   - vert d'action #2f6b37 (blanc dessus 6,4:1), celui de la piste C ;
   - lavis du vert du logo : survol .08, choix au clavier .14, pastille .16. */
body.landing{--rch-texte:var(--ink);--rch-doux:var(--mut);--rch-doux-fond:#46524c;
  --rch-vert-action:#2f6b37;--rch-vert-action-survol:#275a2e;
  --rch-lavis:rgba(90,175,101,.08);--rch-lavis-choix:rgba(90,175,101,.14);
  --rch-lavis-pastille:rgba(90,175,101,.16);--rch-carre-vide:rgba(90,175,101,.16);
  --rch-filet:rgba(3,60,32,.12)}
.rch-etiquette{display:block;margin:0 0 10px;text-align:center;
  font:600 11px/1.3 var(--police-corps);letter-spacing:.14em;text-transform:uppercase;color:var(--rch-doux-fond)}
/* R1 : lignes de 52 px (56 au telephone) dans la carte blanche, au-dessus de
   la mosaique ; survol au lavis, ligne choisie au lavis plus marque avec un
   trait du vert du logo a gauche (la couleur ne porte pas seule l'etat :
   « Ouvrir » s'affiche sur cette ligne). */
.rch-res{margin:-4px -4px 14px;padding:0 0 10px;border-bottom:1px solid var(--rch-filet);text-align:left}
.rch-res[hidden],.rch-plus[hidden]{display:none}
.rch-ligne{display:flex;align-items:center;gap:12px;min-height:52px;padding:6px 12px;border-radius:10px;
  box-sizing:border-box;color:var(--rch-texte);text-decoration:none;transition:background var(--t-fast)}
.rch-ligne + .rch-ligne{margin-top:2px}
.rch-ligne:hover{background:var(--rch-lavis);text-decoration:none}
.rch-ligne[aria-selected="true"]{background:var(--rch-lavis-choix);box-shadow:inset 3px 0 0 var(--green-line)}
.rch-pastille{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;
  background:var(--rch-lavis-pastille);color:var(--rch-vert-action)}
.rch-ic{display:block;flex:none;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round}
.rch-txt{flex:1;min-width:0}
.rch-nom{display:block;font:400 15.5px/1.3 var(--police-corps);color:var(--rch-texte)}
.rch-nom b{font-weight:700;letter-spacing:.02em}
.rch-sous{display:block;margin-top:1px;font:400 12.5px/1.4 var(--police-corps);color:var(--rch-doux)}
.rch-ouvrir{flex:none;display:inline-flex;align-items:center;gap:4px;font:600 13px/1 var(--police-corps);color:var(--rch-vert-action)}
.rch-ligne:not([aria-selected="true"]) .rch-ouvrir-mot{display:none}
.rch-plus,.rch-aide{padding:8px 12px 0;font:400 12.5px/1.45 var(--police-corps);color:var(--rch-doux)}
.rch-aide kbd{font:600 12px/1 var(--police-corps);color:var(--rch-texte);background:var(--bg);
  border:1px solid var(--rch-filet);border-radius:4px;padding:2px 5px}
@media (max-width:600px){
  .rch-aide{display:none}
  .rch-ligne{min-height:56px}
}
/* ---- landing : seuls les BOUTONS du haut passent au vocabulaire du Releve
   ("Entrer" contour laiton, "Mode Découverte" contour filet encre, boussole
   SVG) -- le reste de la page (shader, pilule de verre, mosaique vert vif)
   garde son habillage d'origine : un restyle papier complet a ete essaye
   puis annule (demande explicite "reviens sur la version d'avant pour le
   reste"). */
/* 16/10/2026, demande explicite ("je n'aime pas le fond transparent") : les
   deux boutons passent dans la MATIERE de la page plutot que dans celle du
   Releve -- surface blanche pleine, pilule de la barre de recherche (32 px),
   ombre douce de la carte mosaique, vert du logo. "Entrer", l'action
   principale, porte l'accent : contour vert logo, texte emeraude (6,4:1 sur
   blanc), rempli d'emeraude au survol. "Mode Decouverte" reste neutre. */
/* 25/10/2026 (R3, piste C) : 44 px de haut et 12 px ; "Entrer", l'action
   principale, passe au vert d'action plein (texte blanc 6,4:1), "Mode
   Decouverte" reste blanc. Pilule et ombre gardees. */
body.landing .btn-dash{display:inline-flex;align-items:center;gap:8px;
  background:var(--rch-vert-action);border:1.5px solid var(--rch-vert-action);color:#fff;
  border-radius:32px;box-shadow:var(--neu-out);font:700 12px/1.4 var(--police-corps);
  letter-spacing:.12em;text-transform:uppercase;padding:0 20px;min-height:44px;box-sizing:border-box}
/* icones au trait de 1,8 ; l'ecart vient du gap (marges en ligne des SVG neutralisees) */
body.landing .btn-dash svg{width:16px;height:16px;stroke-width:1.8;margin-right:0!important}
body.landing .btn-dash:hover{background:var(--rch-vert-action-survol);border-color:var(--rch-vert-action-survol);color:#fff;
  box-shadow:var(--neu-out-hover)}
body.landing .btn-dash:focus-visible{outline:2px solid var(--rch-vert-action);outline-offset:3px}
@media (max-width:420px){body.landing .btn-dash{letter-spacing:.06em;padding:0 14px;gap:6px}}
body.landing .btn-decouverte{background:var(--card);border-color:transparent;color:var(--fc-encre)}
body.landing .btn-decouverte:hover{background:var(--card);border-color:var(--line);color:var(--fc-encre)}
/* infobulle du Mode Découverte : carton emeraude a fleche (l'ancien title
   natif, gris et technique, ne donnait envie de rien -- demande explicite
   d'un texte accueillant et d'une bulle qui donne envie de cliquer).
   Apparition en fondu + glisse courte au survol/focus ; accent laiton sur
   "l'espace client". Decorative : rien d'essentiel n'y vit (tactile sans
   survol = bouton inchange). */
.btn-decouverte{position:relative}
.decouverte-tip{position:absolute;top:calc(100% + 10px);right:0;width:238px;z-index:5;
  background:var(--fc-emeraude);color:var(--fc-ivoire);text-align:left;
  font:400 12.5px/1.55 var(--police-corps);letter-spacing:0;text-transform:none;
  padding:12px 15px;border-radius:6px;box-shadow:0 12px 30px rgba(21,38,29,.28);
  opacity:0;transform:translateY(-4px);pointer-events:none;
  transition:opacity .18s ease-out, transform .18s ease-out}
.decouverte-tip b{color:var(--fc-laiton-clair);font-weight:700}
.decouverte-tip::before{content:"";position:absolute;top:-5px;right:26px;width:10px;height:10px;
  background:var(--fc-emeraude);transform:rotate(45deg)}
.btn-decouverte:hover .decouverte-tip, .btn-decouverte:focus-visible .decouverte-tip{
  opacity:1;transform:translateY(0)}

/* "Liens declares" (couples et foyers saisis a la main, Dashboard) : REPLIES
   par defaut, ouverts au clic (demande explicite, 16/10/2026) -- avec
   l'unique mecanisme de depli de l'app (toggleSimCollapse) ; l'etat survit
   aux re-rendus (tri du tableau, retrait d'un lien). */
.liens-declares{margin-bottom:12px;border:1px solid var(--line);border-radius:var(--radius-s);padding:2px 14px}
.liens-tete{display:flex;align-items:center;gap:10px;width:100%;padding:9px 0;background:none;border:0;
  font:inherit;color:var(--ink);cursor:pointer;text-align:left}
.liens-titre{font-weight:700;font-size:12.5px}
.liens-nb{font-size:12px;color:var(--mut)}
.liens-tete:focus-visible{outline:2px solid var(--green-ink);outline-offset:2px;border-radius:6px}
#sim-collapse-body-liens .sim-collapse-body-inner{display:flex;flex-wrap:wrap;gap:6px}
#sim-collapse-body-liens.open{margin-top:2px;margin-bottom:10px}
/* ===== LISTE CLIENTS (#/dashboard) : propositions L1 a L7 du 25/10/2026,
   habillage « piste C » (l'actuel plus vivant). Classes prefixees lc- : les
   regles communes (.chip, tr.frow, .footer, .voir-suite) servent aussi a
   Stats AVP et restent intactes. Toutes les teintes passent par ces
   variables. */
:root{
  --lc-action:#2f6b37; --lc-action-survol:#275a2e;   /* bouton principal, texte blanc */
  --lc-lavis:rgba(90,175,101,.16); --lc-lavis-fort:rgba(90,175,101,.28);
  --lc-lavis-ligne:rgba(90,175,101,.08);             /* survol d'une ligne */
  --lc-icone:#2f6b37;                                 /* icone d'une pastille */
  --lc-icone-nom:#3f7a3a;                             /* personne ou couple devant le nom */
  --lc-gerer-txt:#24502a;
  /* pastille d'evolution : lavis a .08 (et non .10) pour que le vert des
     gains y tienne 4,6:1 en 12 px */
  --lc-evol-fond:rgba(46,125,56,.08); --lc-evol-fond-neg:rgba(165,68,42,.10);
  --lc-doux:#545455;
  --lc-ease:cubic-bezier(.23,1,.32,1);
}
/* --red-ink passe a la terracotta pour le cabinet (L2, S3) ; les pages
   remises aux clients (fiche, simulateurs : .fc-flat) gardent leur rouge
   d'avant tant qu'Antoine n'a pas tranche (5 textes de la page Simulateurs,
   via --red-txt). Retirer cette ligne pour les aligner aussi. */
.fc-flat{--red-ink:#dc2b43}
.lc-ic{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;
  stroke-linejoin:round;flex:none;vertical-align:-3px}
.lc-tete .sur{color:var(--mut)}
.lc-alerte{display:flex;align-items:flex-start;gap:8px}
/* tuiles : carte, lisere vert et camemberts d'aujourd'hui ; pastille d'icone
   devant l'etiquette, evolutions en pastille, soulevement de 2 px au survol
   (regle commune .chip:hover), coupe si l'utilisateur reduit les animations */
.lc-tuiles .chip{transition:transform .2s var(--lc-ease), box-shadow .2s ease, background var(--t-base)}
@media (prefers-reduced-motion:reduce){.lc-tuiles .chip:hover{transform:none}}
.lc-tuiles .chip .lab{display:flex;align-items:center;gap:8px;font-size:12px}
.lc-badge{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;flex:none;
  background:var(--lc-lavis);color:var(--lc-icone)}
.lc-badge .lc-ic{width:16px;height:16px}
.lc-tuiles .chip .val{font-weight:700}
/* legende et pastille sans dependance a la tuile : ajusterLargeursDashboard
   les mesure sur un clone detache, qui doit avoir la meme taille */
.chip-pie-leg.lc-pie-leg{font-size:12px;line-height:1.45;min-width:96px}
.chip-pie-leg.lc-pie-leg .sub{font-size:12px;color:var(--mut)}
.chip-pie-leg.lc-pie-leg .sub b{color:var(--ink)}
.lc-leg{white-space:nowrap}
.lc-tuiles .chip-stat-row{gap:14px}
.lc-tuiles .chip-stat-row .pie-slice{stroke-width:1.5}
.lc-evol{display:inline-block;padding:3px 10px;border-radius:999px;background:var(--lc-evol-fond);
  color:var(--green-ink);font-size:12px;font-weight:600;line-height:1.4;text-align:left}
.lc-evol.lc-neg{background:var(--lc-evol-fond-neg);color:var(--red-ink)}
.lc-tuiles .chip > .lc-evol{align-self:flex-start;margin-top:auto}
.lc-panier-note{margin-top:6px;font-size:12px;line-height:1.4;color:var(--mut);text-align:left}
/* barre d'actions (L5) : la demonstration a gauche, l'envoi seul a droite */
.lc-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.lc-actions .lc-sep{flex:1}
.voir-suite.lc-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px}
.voir-suite.lc-btn-action{background:var(--lc-action);border-color:var(--lc-action);color:#fff;font-weight:700;box-shadow:none}
.voir-suite.lc-btn-action:hover{background:var(--lc-action-survol);border-color:var(--lc-action-survol);box-shadow:none}
.voir-suite.lc-btn-action:disabled{opacity:.55;cursor:default;transform:none}
.lc-btn-action .lc-nb{margin-left:4px;font-weight:500;color:rgba(255,255,255,.88);white-space:nowrap}
.lc-btn:focus-visible,.lc-tri:focus-visible,.lc-nom:focus-visible,.lc-gerer:focus-visible,.lc-lien:focus-visible,
.lc-retirer:focus-visible,.lc-ap-nav:focus-visible,.lc-ap-adr button:focus-visible,.lc-copier:focus-visible,
.lc-dlg-actions .voir-suite:focus-visible,button.lien-item:focus-visible{outline:2px solid var(--green-ink);outline-offset:2px}
/* tableau (L3) : en-tetes en boutons, nom en lien, un seul bouton Gerer */
.lc-table thead th{border-bottom:1px solid rgba(3,60,32,.12)}
.lc-table th.lc-th{padding-top:0;padding-bottom:0;vertical-align:middle}
.lc-tri{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:4px;min-height:44px;
  padding:0 4px;margin:0 -4px;border:0;border-radius:6px;background:none;cursor:pointer;
  font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit}
.lc-tri:hover{background:var(--lc-lavis-ligne);color:var(--ink)}
.lc-tri .lc-ic{width:12px;height:12px;color:var(--mut)}
th[aria-sort="ascending"] .lc-tri .lc-ic,th[aria-sort="descending"] .lc-tri .lc-ic{color:var(--green-ink)}
tr.lc-ligne > td{height:56px;padding-top:4px;padding-bottom:4px;box-sizing:border-box}
tr.frow.lc-ligne:hover > td{background:var(--lc-lavis-ligne)}
.lc-nom{display:inline-flex;align-items:center;gap:7px;min-height:44px;color:var(--ink);font-weight:600;
  letter-spacing:-.005em;text-decoration:none}
a.lc-nom:hover{text-decoration:underline;text-underline-offset:3px}
.lc-nom .lc-ic{color:var(--lc-icone-nom)}
.lc-membres{display:block;margin:-10px 0 4px 24px;font-size:12px;color:var(--mut);white-space:normal}
.lc-membres a{color:inherit}
.lc-td-gerer{width:1%;text-align:right;white-space:nowrap}
.lc-gerer{-webkit-appearance:none;appearance:none;position:relative;display:inline-flex;align-items:center;gap:4px;
  min-height:34px;padding:0 10px 0 13px;border:0;border-radius:999px;background:var(--lc-lavis);color:var(--lc-gerer-txt);
  font:600 13px/1 var(--police-corps);cursor:pointer;transition:background var(--t-fast), transform var(--t-fast)}
.lc-gerer::before{content:"";position:absolute;inset:-5px -2px}
.lc-gerer:hover,.lc-gerer[aria-expanded="true"]{background:var(--lc-lavis-fort)}
.lc-gerer:active{transform:scale(.97)}
.lc-gerer .lc-ic{width:14px;height:14px;transition:transform .2s var(--lc-ease)}
.lc-gerer[aria-expanded="true"] .lc-ic{transform:rotate(180deg)}
/* menu Gerer : flotte au-dessus de la page (position fixe, pose par JS) */
.lc-menu{position:fixed;z-index:70;min-width:250px;padding:6px;background:#fff;border:1px solid var(--line);
  border-radius:14px;box-shadow:var(--neu-out-hover);text-align:left}
.lc-menu button{-webkit-appearance:none;appearance:none;display:flex;align-items:center;gap:10px;width:100%;min-height:44px;
  padding:0 12px;border:0;border-radius:9px;background:none;color:var(--ink);font:500 14px/1.2 var(--police-corps);
  text-align:left;cursor:pointer}
.lc-menu button:hover,.lc-menu button:focus{background:var(--lc-lavis-ligne);outline:none}
.lc-menu button:focus-visible{outline:2px solid var(--green-ink);outline-offset:-2px}
.lc-menu button .lc-ic{color:var(--lc-icone-nom)}
.lc-menu-sep{height:1px;margin:5px 6px;background:var(--line)}
@media (prefers-reduced-motion:no-preference){
  .lc-menu{animation:lcMenu .16s var(--lc-ease)}
  @keyframes lcMenu{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
}
/* identifiants par partenaire (ligne depliee depuis le menu) */
tr.lc-det > td{padding-top:4px;padding-bottom:4px}
.copy-btn.lc-copier{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;font-size:12px;text-align:left}
.lc-copier .lc-ic{width:14px;height:14px}
/* note, export, pied (L1, L2) : mousse sourde, 12 px au moins */
.lc-note{margin:10px 0 0;font-size:12px;line-height:1.5;color:var(--mut);white-space:normal}
.lc-export{margin:6px 0 0}
.lc-lien{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;min-height:32px;padding:0;border:0;
  background:none;font:inherit;font-size:12.5px;color:var(--lc-doux);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.lc-lien:hover{color:var(--ink)}
.footer.lc-pied{color:var(--mut);font-size:12px}
/* liens declares (L6) : pastille nommee, bouton Retirer de 44 px */
.lc-puce{display:inline-flex;align-items:center;gap:8px;min-height:44px;box-sizing:border-box;padding:0 0 0 12px;
  border:1px solid var(--line);border-radius:999px;background:#fff;font-size:13px;font-weight:600;color:var(--ink)}
.lc-puce > .lc-ic{color:var(--lc-icone-nom)}
.lc-retirer{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;align-self:stretch;gap:5px;
  min-height:44px;padding:0 12px;margin:0;border:0;border-left:1px solid var(--line);border-radius:0 999px 999px 0;
  background:none;font:500 12.5px/1 var(--police-corps);color:var(--red-ink);cursor:pointer}
.lc-retirer:hover{background:var(--lc-evol-fond-neg)}
.lc-retirer .lc-ic{width:13px;height:13px}
#sim-collapse-chev-liens .lc-ic{width:14px;height:14px;display:block}
/* fenetre Lier : propositions en vrais boutons */
button.lien-item{display:flex;align-items:center;gap:6px;width:100%;min-height:44px;border:0;background:none;
  font:inherit;font-size:14px;color:inherit;text-align:left}
button.lien-item:hover{background:var(--lc-lavis-ligne)}
.lien-boite h2.sec .lc-ic,.lien-boite .seg .lc-ic{margin-right:4px}
.lc-acces-msg{margin:8px 0 0;font-size:12.5px;color:var(--mut)}
.lc-acces-msg:empty{display:none}
/* telephone (L4) : sous 760 px, une ligne par foyer au lieu du tableau */
.lc-tel{display:none}
.lc-tri-tel{display:flex;align-items:center;gap:10px;margin:2px 0 8px}
.lc-tri-tel label{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.lc-tri-tel select{flex:1;min-width:0;min-height:44px;padding:0 12px;border:1px solid rgba(3,60,32,.18);border-radius:12px;
  background:#fff;color:var(--ink);font:500 15px/1.2 var(--police-corps)}
.lc-tel-liste{list-style:none;margin:0;padding:0}
.lc-tel-l{padding:10px 0 12px;border-top:1px solid var(--line)}
.lc-tel-tete{display:flex;align-items:center;gap:10px}
.lc-tel-tete .lc-nom{flex:1;min-width:0;font-size:15px}
.lc-tel-tete .lc-gerer{flex:none}
.lc-tel .lc-membres{margin:-6px 0 2px 24px;font-size:12.5px}
.lc-tel .lc-membres a{display:inline-flex;align-items:center;min-height:44px}
.lc-tel-part{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 10px}
.lc-tel-part .src-marque{width:18px;height:18px}
.lc-tel-part .src-marque + .src-marque{margin-left:0}
.lc-tel-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:0}
.lc-tel-grille div{min-width:0}
.lc-tel-grille dt{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.lc-tel-grille dd{margin:2px 0 0;font-size:15px;font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.lc-tel-grille dd.pos{color:var(--green-ink)} .lc-tel-grille dd.neg{color:var(--red-ink)}
.lc-tel-ids{margin-top:10px;padding:8px 10px;border-radius:12px;background:rgba(3,60,32,.035);font-size:12.5px}
.lc-tel-ids > div{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:2px 0}
@media (max-width:760px){
  .lc-zone{display:none}
  .lc-tel{display:block}
  .lc-tuiles .chip-stat-row{flex-wrap:wrap;row-gap:10px}
  .lc-tuiles .chip-stat-row > svg{margin-left:auto}
  .lc-actions{flex-direction:column;align-items:stretch}
  .lc-actions .lc-sep{display:none}
  .lc-actions .voir-suite.lc-btn{min-height:44px;white-space:normal;flex-wrap:wrap;row-gap:2px}
  .lc-gerer,.lc-lien,.copy-btn.lc-copier{min-height:44px}
  .lc-gerer::before{display:none}
}
/* fenetre d'envoi a tous (L5) : carte blanche au lisere vert des tuiles */
#lc-envoi{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-start;justify-content:center;
  padding:6vh 16px 24px;overflow:auto;background:rgba(22,33,28,.38);opacity:0;transition:opacity .22s ease}
#lc-envoi.on{opacity:1}
#lc-envoi[hidden]{display:none}
.lc-dlg{position:relative;width:min(640px,100%);box-sizing:border-box;padding:20px 24px 20px;background:#fff;
  border-top:4px solid var(--green-line);border-radius:var(--radius);box-shadow:var(--neu-out-hover);color:var(--ink);
  transform:translateY(-8px) scale(.98);transition:transform .15s ease-out}
#lc-envoi.on .lc-dlg{transform:none;transition:transform .3s var(--ease-overshoot)}
@media (prefers-reduced-motion:reduce){.lc-dlg,#lc-envoi.on .lc-dlg{transform:none;transition:none}}
.lc-dlg-sur{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--mut)}
.lc-dlg h2{margin:6px 0 0;font-size:21px;font-weight:700;line-height:1.2;color:var(--navy)}
.lc-dlg-chiffres{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 12px}
.lc-dlg-chiffres > div{min-width:0;padding:10px 12px;border-radius:14px;background:rgba(3,60,32,.04)}
.lc-dlg-chiffres b{display:block;font-size:24px;font-weight:700;line-height:1.15;color:var(--navy);font-variant-numeric:tabular-nums}
.lc-dlg-chiffres span{display:block;margin-top:2px;font-size:12.5px;line-height:1.35;color:var(--mut)}
.lc-dlg p{margin:0 0 8px;font-size:14px;line-height:1.5}
.lc-dlg p.lc-ignores{font-size:13px;color:var(--mut)}
.lc-apercu{margin:14px 0 4px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.lc-ap-tete{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 14px;background:rgba(3,60,32,.04);
  border-bottom:1px solid var(--line)}
.lc-ap-titre{flex:1;min-width:0;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.lc-ap-qui{display:block;margin-top:2px;font-size:12.5px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--mut)}
.lc-ap-nav{-webkit-appearance:none;appearance:none;display:inline-grid;place-items:center;width:44px;height:44px;padding:0;
  border:1px solid var(--glass-brd);border-radius:12px;background:#fff;color:var(--ink);cursor:pointer}
.lc-ap-nav:hover{background:var(--lc-lavis-ligne)}
.lc-ap-nav:disabled{opacity:.4;cursor:default;background:#fff}
.lc-ap-nav[hidden]{display:none}
.lc-ap-corps:focus-visible{outline:2px solid var(--green-ink);outline-offset:-2px}
.lc-ap-meta{padding:8px 14px;font-size:13px;line-height:1.5;color:var(--mut);border-bottom:1px solid var(--line)}
.lc-ap-meta b{color:var(--ink);font-weight:600}
.lc-ap-adr{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.lc-ap-adr button{-webkit-appearance:none;appearance:none;min-height:44px;padding:0 12px;border:1px solid var(--line);
  border-radius:999px;background:#fff;color:var(--ink);font:500 13px/1.2 var(--police-corps);cursor:pointer}
.lc-ap-adr button[aria-pressed="true"]{background:var(--lc-lavis);border-color:transparent;color:var(--lc-gerer-txt);font-weight:600}
.lc-ap-corps{max-height:340px;overflow:auto;background:#fff}
.lc-ap-etat{margin:0;padding:18px 16px;font-size:13.5px;line-height:1.5;color:var(--mut)}
.lc-masse-resultat:empty{display:none}
.lc-masse-resultat{margin-top:12px;font-size:13px;line-height:1.5}
.lc-masse-resultat .lc-ok{display:flex;align-items:flex-start;gap:8px;margin:0;color:var(--green-ink)}
.lc-masse-resultat .lc-ok span{color:var(--ink)}
.lc-masse-resultat .lc-ko{margin:6px 0 0;color:var(--red-ink)}
.lc-dlg-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;flex-wrap:wrap}
.lc-dlg-actions .voir-suite{min-height:44px}
@media (max-width:600px){
  #lc-envoi{padding:10px}
  .lc-dlg{padding:16px 14px}
  .lc-dlg h2{font-size:19px}
  .lc-dlg-chiffres{gap:6px}
  .lc-dlg-chiffres > div{padding:8px}
  .lc-dlg-chiffres b{font-size:20px}
  .lc-dlg-actions .voir-suite{flex:1 1 100%}
  .lc-ap-corps{max-height:300px}
}

/* ---- accueil : bandeau de tuiles ---- */
.stats-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:var(--gap);margin-bottom:var(--gap);grid-auto-flow:dense}
/* bandeau Dashboard (Clients/Contrats actifs/Capitaux confies/Panier moyen) :
   un ratio de largeur FIXE entre les 4 cartes (essaye plusieurs fois : 1:3:3:1
   puis 1:2:4:1) est retombe juste a chaque fois -- le besoin reel de chaque
   carte depend du contenu de SA legende (nombre de types SCPI/AV/Autres/PER,
   longueur de leurs montants), qui varie d'un bilan a l'autre et d'un cabinet
   a l'autre. Pas de bon ratio unique a coder en dur. Bascule donc en flex
   (pas grid) : chaque carte recoit un flex-grow calcule en JS a partir de sa
   largeur de contenu REELLEMENT mesuree (cf. ajusterLargeursDashboard),
   recalcule a chaque rendu -- s'adapte automatiquement, plus besoin de
   retoucher ce ratio a la main a chaque nouveau bilan. */
.stats-strip-dashboard{display:flex;flex-wrap:nowrap;gap:var(--gap)}
.stats-strip-dashboard > .chip{flex:1 1 0;min-width:0}
@media (max-width:900px){.stats-strip-dashboard{flex-wrap:wrap}
  .stats-strip-dashboard > .chip{flex:1 1 45%}}
@media (max-width:560px){.stats-strip-dashboard > .chip{flex:1 1 100%}}
/* meme vert que le logo AVP (cf. .carre, mosaique de la page Recherche) sur
   toutes les tuiles, uniformement -- pas de cycle de couleurs par position. */
.chip{background:var(--card);border:none;
  border-top:4px solid var(--green-line);
  border-radius:var(--radius);padding:14px 18px;box-shadow:var(--neu-out-sm);
  transition:box-shadow var(--t-base), transform var(--t-base), background var(--t-base)}
.chip:hover{box-shadow:var(--neu-out);background:#fff}
@media (hover:hover) and (pointer:fine){.chip:hover{transform:translateY(-2px)}}
.chip .lab{font-size:10.5px;letter-spacing:.06em;color:var(--mut);font-weight:700;text-transform:uppercase}
.chip .val{font-size:26px;font-weight:800;color:var(--navy)}
.chip .val.val-grand{font-size:30px}
/* unite accolee a un chiffre de chip ("13 052 € /mois") : nettement plus
   petite que le montant pour ne pas lui voler la vedette. */
.chip .val .val-unite{font-size:13px;font-weight:700;color:var(--mut)}
.chip .sub{font-size:11px;color:var(--mut)}
/* un chip simple (ni .chip-split ni .chip-double) s'etire par defaut a la
   hauteur de la ligne de grille (les encarts doubles voisins, plus hauts,
   a cause de leurs 2 sous-encarts) -- sans le centrage ci-dessous son
   contenu restait ancre en haut, avec un grand vide en dessous : constate
   visuellement, le chiffre paraissait "perdu" a cote d'un encart double.
   Seul le CHIFFRE (.val) doit se centrer dans cet espace -- le libelle
   (.lab), lui, doit rester ancre en haut a gauche comme partout ailleurs.
   Le libelle RESTE dans le flux normal (contrairement a un essai precedent
   en position:absolute, qui le sortait du calcul de hauteur -- un libelle
   long sur 2 lignes, ex. "Versements programmes mensuels", debordait alors
   du bas de l'encart, constate visuellement). Les marges auto sur .val
   captent tout l'espace libre restant apres le libelle (et avant .sub s'il
   y en a un) pour le centrer, sans jamais toucher a la hauteur du libelle. */
.chip:not(.chip-double){display:flex;flex-direction:column;text-align:center}
.chip:not(.chip-double) > .lab{text-align:left}
.chip:not(.chip-double) > .val{margin:auto 0}
/* note d'evolution "vs mois precedent"/"sur 3 mois" (Clients, Contrats
   actifs, Capitaux confies) : demande explicite qu'elle tombe a la MEME
   hauteur sur les 3 encarts, centree. Comme .val ci-dessus se centre deja
   par marges auto, un .sub place APRES un .chip-stat-row (Contrats
   actifs/Capitaux confies) ne suivait pas le meme calcul et flottait plus
   haut que celui de Clients (juste apres .val). Un margin-top:auto sur le
   .sub lui-meme l'ancre systematiquement au bord bas de la carte -- fixe et
   identique sur les 3, quel que soit ce qu'il y a au-dessus. */
.chip:not(.chip-double) > .sub{margin-top:auto;text-align:center}
/* chiffre / legende / camembert ALIGNES sur une meme ligne (demande
   explicite). Le chiffre (.val-grand) est dimensionne par ajusterValGrand()
   -- desormais calcule comme UN SEUL plafond partage par les 4 chiffres du
   bandeau (Clients/Contrats actifs/Capitaux confies/Panier moyen), pour
   qu'ils fassent tous EXACTEMENT la meme taille (contrainte explicite),
   quelle que soit la largeur de leur propre carte. La legende, elle, peut
   se reduire/passer a la ligne sans consequence (le detail complet reste au
   survol du camembert). */
.chip-stat-row{display:flex;align-items:center;gap:22px;margin-top:6px}
.chip-stat-row .val{flex:none;white-space:nowrap}
.chip-pie-leg{font-size:10px;line-height:1.5;text-align:left;flex:1;min-width:88px}
/* .chip .sub (11px, plus haut dans la feuille) gagnerait sinon sur ces
   lignes de legende malgre le font-size deja pose sur le conteneur --
   memes classes comptees (2), donc c'est l'ORDRE dans la feuille qui
   tranche : cette regle doit rester APRES .chip .sub pour l'emporter. */
.chip-pie-leg .sub{font-size:9.5px}
.chip-stat-row svg{flex:none}
/* encart double : 1 gros chip (largeur des 2 anciens combines) contenant 2
   sous-encarts distincts -- pattern generique reutilise par "Chiffres du
   trimestre" (Nouveaux clients/Montant investi) ET "Encours sous gestion"
   (Capital investi/Encours total), les deux fusionnes sur la meme demande
   (des chips qui se serraient dans la largeur d'un seul chip standard). */
.chip-double{grid-column:span 2}
@media (max-width:560px){.chip-double{grid-column:span 1}}
.chip-annotation{font-size:9px;font-weight:600;letter-spacing:normal;text-transform:none;color:var(--mut2)}
.chip-sous-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-top:10px}
.chip-sous{background:rgba(31,171,111,.06);border:1px solid rgba(31,171,111,.16);
  border-radius:14px;padding:12px 16px}
@media (max-width:480px){
  .stats-strip{gap:10px}
  .chip{padding:11px 14px}
  .chip .val{font-size:20px}
}
/* les tuiles KPI (souvent le tout 1er contenu visible d'une page : accueil,
   dashboard, tete de fiche) arrivent en cascade legere plutot qu'en bloc figé
   -- rejoue a chaque navigation puisque .chip est recree par innerHTML a
   chaque render(), une animation CSS sur un noeud fraichement insere se joue
   d'elle-meme, aucun JS de re-declenchement necessaire. */
@media (prefers-reduced-motion:no-preference){
  /* .35s + delais courts : la cascade rejoue a CHAQUE navigation (dizaines de
     fois par jour pour le conseiller) -- une entree plus longue deviendrait
     une attente repetee, pas un plaisir. */
  .stats-strip .chip{opacity:0;animation:chipEntree .35s cubic-bezier(.16,1,.3,1) forwards}
  .stats-strip .chip:nth-child(1){animation-delay:.015s}
  .stats-strip .chip:nth-child(2){animation-delay:.04s}
  .stats-strip .chip:nth-child(3){animation-delay:.07s}
  .stats-strip .chip:nth-child(4){animation-delay:.1s}
  .stats-strip .chip:nth-child(5){animation-delay:.13s}
  .stats-strip .chip:nth-child(n+6){animation-delay:.15s}
  @keyframes chipEntree{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px;vertical-align:1px}
/* .sbox/.sghost : meme principe que .gbox/.gghost (page d'accueil) mais aux
   dimensions de .search, pour la recherche nom+prenom de l'Annuaire. */
.sbox{position:relative;max-width:420px;margin-bottom:6px}
.sghost{position:absolute;top:0;left:0;right:0;bottom:0;z-index:3;pointer-events:none;
  padding:9px 16px;border:1px solid transparent;font:inherit;line-height:normal;
  text-align:left;white-space:pre;overflow:hidden}
.sghost .gt{color:transparent}
.sghost .gn{color:var(--mut2);font-weight:600}
.search-note{font-size:12px;color:var(--mut2);margin:-4px 0 10px}
.search{width:100%;max-width:420px;padding:9px 16px;
  border:none;
  border-radius:14px;font:inherit;margin-bottom:12px;background:var(--card);
  box-shadow:none;transition:box-shadow var(--t-fast)}
.sbox .search{margin-bottom:0}
.search:focus{outline:none;box-shadow:var(--neu-in), 0 0 0 2px rgba(31,171,111,.35)}
tr.frow{cursor:pointer}
tr.frow td{transition:background .12s ease}
tr.frow:hover td{background:rgba(91,110,232,.05)}
.alerte{border-left:4px solid var(--red);background:#fdf1f2;border-radius:12px;
  padding:8px 12px;font-size:12.5px;color:#8a3410;margin-bottom:14px}
.bar{height:9px;border-radius:5px;background:var(--grad)}
/* fenetre "Lier" (Annuaire) : declare un couple ou un lien parent/enfant */
#lien-overlay,#acces-overlay{position:fixed;inset:0;z-index:60;background:rgba(40,45,60,.35);
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;
  opacity:0;transition:opacity .22s ease}
#lien-overlay.on,#acces-overlay.on{opacity:1}
/* timing asymetrique : l'ouverture (geste delibere) merite le .3s avec
   overshoot ; la fermeture est une reponse systeme qui doit claquer -- la
   regle de base (etat ferme) porte le .15s ease-out du retour, l'etat .on
   porte le .3s de l'aller (rejouer l'overshoot a l'envers ferait "flotter"
   la boite au moment ou l'utilisateur veut juste passer a autre chose). */
#lien-overlay .lien-boite,#acces-overlay .lien-boite{width:min(500px,92vw);margin:0;
  transform:scale(.95) translateY(-8px);transition:transform .15s ease-out}
/* l'Acces temporaire peut porter l'apercu du courriel : la boite defile
   plutot que de deborder de l'ecran */
#acces-overlay .lien-boite{max-height:calc(100vh - 32px);overflow:auto}
#lien-overlay.on .lien-boite,#acces-overlay.on .lien-boite{transform:scale(1) translateY(0);
  transition:transform .3s var(--ease-overshoot)}
.lien-item{padding:9px 12px;border-radius:10px;cursor:pointer;font-size:14px;
  transition:background var(--t-fast)}
.lien-item:hover{background:rgba(91,110,232,.08)}
/* pas de backdrop-filter (meme raison que .voir-suite plus haut). */
.copy-btn{border:1px solid var(--glass-brd);background:var(--btn-bg);
  border-radius:10px;box-shadow:var(--glass-shadow);
  cursor:pointer;font-size:11px;padding:2px 8px;vertical-align:middle;margin-left:2px;
  transition:background var(--t-fast), box-shadow var(--t-fast), transform var(--t-fast)}
.copy-btn:hover{background:var(--btn-bg-hover);box-shadow:var(--glass-shadow-hover)}
.copy-btn:active{transform:scale(.95)}
.footer{color:var(--mut2);font-size:11px;text-align:center;margin-top:30px}
tr.acc-det td{background:rgba(3,60,32,.03)}
.chev{display:inline-block;margin-left:7px;color:var(--mut2);font-size:10px;
  /* meme courbe ET meme duree que les accordeons 0fr->1fr (.3s, .4,0,.2,1) :
     le chevron tourne vraiment en phase avec l'ouverture qu'il accompagne
     (a .2s il finissait avant le tiroir), au lieu du "ease" natif. */
  transition:transform .3s cubic-bezier(.4,0,.2,1)}
.chev.open{transform:rotate(180deg)}
.hm-cache{display:none}

@media print{
  /* on garde les couleurs, degrades, ombres neumorphiques et le fond aurora
     tels quels (le PDF doit ressembler a l'app, pas a un document a plat) --
     seule la chrome fonctionnelle (nav, recherche, filtres) est retiree.
     print-color-adjust force Chrome/Firefox a respecter les couleurs/fonds
     exactement (sans desaturation ni suppression automatique). */
  *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  /* le canvas WebGL sort noir/vide a l'impression : on le masque, le degrade
     statique de repli (body::before, memes couleurs) prend le relais. */
  #gradient-bg{display:none!important}
  .topbar,.filtres,.search,.seg{display:none!important}
  .card,.chip,.ctr,.vkpi{break-inside:avoid}
  .wrap{max-width:none;padding:0}
}
