/* Forge Dragon Yield 1 — charte A « Encre de nuit » */

/* Caractères servis par le site lui-même. Ils venaient d'un tiers jusqu'à la
   version 21 : chaque visite d'un investisseur lui apprenait alors l'adresse
   et l'heure de la consultation. Sept fichiers, 450 Kio, mis en cache un an —
   et plus personne sur le trajet d'un lecteur. */
@font-face{font-family:"IBM Plex Sans";font-weight:400;font-style:normal;font-display:swap;
  src:url(/assets/fonts/plex-sans-400.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-weight:500;font-style:normal;font-display:swap;
  src:url(/assets/fonts/plex-sans-500.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-weight:600;font-style:normal;font-display:swap;
  src:url(/assets/fonts/plex-sans-600.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Serif";font-weight:400;font-style:normal;font-display:swap;
  src:url(/assets/fonts/plex-serif-400.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Serif";font-weight:400;font-style:italic;font-display:swap;
  src:url(/assets/fonts/plex-serif-400i.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-weight:400;font-style:normal;font-display:swap;
  src:url(/assets/fonts/plex-mono-400.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-weight:500;font-style:normal;font-display:swap;
  src:url(/assets/fonts/plex-mono-500.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-weight:400;font-style:italic;font-display:swap;
  src:url(/assets/fonts/plex-sans-400i.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-weight:400;font-style:italic;font-display:swap;
  src:url(/assets/fonts/plex-mono-400i.woff2) format("woff2")}

:root{
  --nuit:#14171C; --panneau:#1E232B; --encre:#E6E2D8; --encre2:#9AA0A8; --encre3:#6E757E;
  --or:#C4A35A; --filet:rgba(196,163,90,.30); --jade:#3D9A78; --sceau:#B8503F;
  --sans:"IBM Plex Sans",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --serif:"IBM Plex Serif",Georgia,"Times New Roman",serif;
  --mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;
}
/* Thème clair : les mêmes rôles, d'autres valeurs. L'or et le jade sont
   assombris pour rester lisibles sur fond blanc — un doré de nuit vire au
   jaune illisible dès qu'on le pose sur du papier. */
:root[data-theme="clair"]{
  --nuit:#FAF9F6; --panneau:#FFFFFF; --encre:#1A1D22; --encre2:#4A5058; --encre3:#767C85;
  --or:#8A6A2B; --filet:rgba(138,106,43,.34); --jade:#1F7A5A; --sceau:#A33B2A;
}
:root[data-theme="clair"] .chrome{background:rgba(250,249,246,.94)}
:root[data-theme="clair"] .card{border-color:rgba(26,29,34,.10);
  box-shadow:0 1px 2px rgba(26,29,34,.04)}
:root[data-theme="clair"] .grid{stroke:rgba(26,29,34,.10)}
:root[data-theme="clair"] .grid-strong{stroke:rgba(26,29,34,.22)}
:root[data-theme="clair"] .ax{fill:#767C85}
:root[data-theme="clair"] .mk-t{fill:#4A5058}
:root[data-theme="clair"] .bnd-fond{fill:rgba(26,29,34,.04)}
:root[data-theme="clair"] .bnd-hors{fill:rgba(250,249,246,.72)}
:root[data-theme="clair"] .vis-l{stroke:rgba(26,29,34,.30)}
:root[data-theme="clair"] input,:root[data-theme="clair"] select{
  background:#FFFFFF;border-color:rgba(26,29,34,.20)}
:root[data-theme="clair"] th{border-bottom-color:rgba(138,106,43,.38)}
:root[data-theme="clair"] td{border-bottom-color:rgba(26,29,34,.09)}
:root[data-theme="clair"] .formule{background:rgba(138,106,43,.07)}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;min-height:100vh;background:var(--nuit);color:var(--encre);
  font-family:var(--sans);font-size:15px;line-height:1.55;
  display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;
}

/* ---------------------------------------------------------- barre haute */
.chrome{position:sticky;top:0;z-index:20;background:rgba(20,23,28,.94);
  backdrop-filter:blur(8px);border-bottom:1px solid var(--filet)}
.chrome-in{max-width:1120px;margin:0 auto;padding:11px 24px;
  display:flex;align-items:center;justify-content:space-between;gap:14px}
.brand{display:flex;align-items:center;gap:11px;color:var(--or);
  font-weight:600;letter-spacing:.06em;font-size:14px;text-decoration:none}
.brand svg{display:block}
.tools{display:flex;align-items:center;gap:8px}
.hit{font-family:var(--sans);font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--encre2);background:none;border:1px solid var(--filet);border-radius:5px;
  padding:9px 14px;cursor:pointer;min-height:38px;text-decoration:none;display:inline-flex;
  align-items:center;transition:border-color .15s,color .15s}
.hit:hover{border-color:var(--or);color:var(--or)}
.hit:focus-visible{outline:2px solid var(--or);outline-offset:2px}

/* ---------------------------------------------------------- structure */
.wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 24px 96px}
main.center{flex:1;display:grid;place-items:center;padding:48px 24px}
.box{width:100%;max-width:400px}
nav.tabs{display:flex;gap:26px;padding:22px 0 0;flex-wrap:wrap;
  border-bottom:1px solid rgba(230,226,216,.08);margin-bottom:26px}
nav.tabs a{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--encre3);
  text-decoration:none;padding-bottom:12px;border-bottom:2px solid transparent}
nav.tabs a:hover{color:var(--encre2)}
nav.tabs a.on{color:var(--or);border-bottom-color:var(--or)}

/* ---------------------------------------------------------- typographie */
.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--encre3);margin:0 0 18px}
h1{font-size:30px;font-weight:600;line-height:1.15;letter-spacing:-.01em;margin:0 0 14px;text-wrap:balance}
h1 em{font-style:normal;color:var(--or);display:block}
h2{font-size:23px;font-weight:600;margin:0 0 6px;letter-spacing:-.01em}
.lede{font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.62;
  letter-spacing:-.005em;color:var(--encre2);margin:0 0 30px}
.hint{font-size:12.5px;color:var(--encre3);margin:0 0 16px;max-width:78ch}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:13px;white-space:nowrap}

/* ---------------------------------------------------------- formulaires */
label{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--encre3);margin:0 0 8px}
input[type=email],input[type=password],input[type=text],input[type=search],select{
  width:100%;background:var(--panneau);border:1px solid rgba(230,226,216,.13);border-radius:6px;
  padding:13px 14px;color:var(--encre);font-family:var(--sans);font-size:15.5px;min-height:48px}
input:focus,select:focus{outline:none;border-color:var(--or);box-shadow:0 0 0 3px rgba(196,163,90,.14)}
.field{margin-bottom:20px}
.submit{width:100%;background:none;border:1px solid var(--or);border-radius:6px;color:var(--or);
  font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;
  padding:15px;cursor:pointer;min-height:50px;transition:background .15s}
.submit:hover{background:rgba(196,163,90,.09)}
.submit:focus-visible{outline:2px solid var(--or);outline-offset:2px}
.alt{text-align:center;margin:20px 0 0}
.alt a{font-size:13px;color:var(--encre3);text-decoration:none;border-bottom:1px solid transparent}
.alt a:hover{color:var(--or);border-bottom-color:var(--filet)}
.rule{height:1px;background:rgba(230,226,216,.09);margin:30px 0 22px}
.note{font-size:12.5px;color:var(--encre3);line-height:1.6;text-align:center}

/* ---------------------------------------------------------- messages */
.flash{border-radius:6px;padding:12px 15px;margin:0 0 20px;font-size:14px;line-height:1.5}
.flash.err{border:1px solid rgba(184,80,63,.45);color:#E8A99C;background:rgba(184,80,63,.08)}
.flash.ok{border:1px solid rgba(61,154,120,.42);color:#8FD3B8;background:rgba(61,154,120,.07)}

/* ---------------------------------------------------------- tableaux */
.card{background:var(--panneau);border:1px solid rgba(230,226,216,.07);border-radius:8px;
  padding:20px 22px 18px;margin-bottom:22px}
.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
table{width:100%;border-collapse:collapse;font-size:14px}
th{text-align:left;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--encre3);
  padding:0 14px 9px 0;border-bottom:1px solid var(--filet);white-space:nowrap}
td{padding:11px 14px 11px 0;border-bottom:1px solid rgba(230,226,216,.055);color:var(--encre2);
  vertical-align:middle}
td:first-child{color:var(--encre)}
tr:last-child td{border-bottom:none}
/* colonnes de montants : alignées à droite, chiffres de même chasse, jamais coupées */
th.num,td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
tr.tot td{border-top:1px solid var(--filet);border-bottom:none;color:var(--encre);padding-top:13px}
.sub{display:block;font-size:11.5px;line-height:1.45;color:var(--encre3);margin-top:3px;
  max-width:44ch;white-space:normal}
.pill{display:inline-block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  border-radius:99px;padding:3px 10px;border:1px solid}
.pill.active{color:var(--jade);border-color:rgba(61,154,120,.42)}
.pill.invited{color:var(--or);border-color:var(--filet)}
.pill.revoked{color:var(--sceau);border-color:rgba(184,80,63,.42)}
.mini{font-family:var(--sans);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--encre3);border:1px solid var(--filet);border-radius:4px;padding:5px 9px;
  background:none;cursor:pointer;text-decoration:none;display:inline-block}
.mini:hover{color:var(--or);border-color:var(--or)}
/* une adresse se lit en minuscules, même dans un bouton composé en capitales */
.mini .brut{text-transform:none;letter-spacing:.02em;font-family:var(--mono);font-size:10.5px}
.mini.danger:hover{color:var(--sceau);border-color:rgba(184,80,63,.6)}
.row-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}

footer.foot{padding:20px 24px 30px;text-align:center;font-size:11.5px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--encre3)}

@media (max-width:620px){
  .chrome-in{padding:10px 16px}
  .wrap{padding:0 16px 72px}
  h1{font-size:26px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* ---------------------------------------------------------- desk */
.top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;
  gap:20px;margin-bottom:22px}
.top h1{font-size:26px;margin:0 0 5px}
.or{color:var(--or)}
.sub{color:var(--encre3);font-size:13.5px;margin:0}
.fresh{display:flex;align-items:center;gap:9px;border:1px solid rgba(61,154,120,.36);
  border-radius:6px;padding:9px 13px;font-size:12px;color:var(--encre2)}
.fresh-ko{border-color:rgba(184,80,63,.45)}
.dot{width:7px;height:7px;border-radius:50%;background:var(--jade);flex:none;
  box-shadow:0 0 0 3px rgba(61,154,120,.16)}
.fresh-ko .dot{background:var(--sceau);box-shadow:0 0 0 3px rgba(184,80,63,.16)}

.lecture{font-family:var(--sans);font-size:17px;font-weight:400;line-height:1.66;
  letter-spacing:-.005em;color:var(--encre);border-left:1px solid var(--filet);
  padding:2px 0 2px 20px;margin:0 0 30px;max-width:74ch}
.lecture b{font-weight:500;color:#F3EFE5}
.lecture sup{font-size:.65em;vertical-align:super}

/* Chiffres clés : quatre colonnes, deux rangées pleines. Une grille libre
   laissait sept cases sur la première ligne et une orpheline sur la seconde.
   Les hauteurs de titre et de note sont réservées, si bien que toutes les
   valeurs s'alignent sur la même ligne quelle que soit la longueur des mots. */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:rgba(230,226,216,.08);border:1px solid rgba(230,226,216,.08);
  border-radius:8px;overflow:hidden;margin-bottom:30px}
.kpis-3{grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){.kpis,.kpis-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:420px){.kpis,.kpis-3{grid-template-columns:1fr}}
.kpi{background:var(--panneau);padding:15px 16px 17px;display:flex;flex-direction:column}
.kpi .k{font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--encre3);
  margin-bottom:9px;line-height:1.35;min-height:2.7em}
.kpi .v{font-family:var(--mono);font-size:20px;font-variant-numeric:tabular-nums;letter-spacing:-.02em;
  line-height:1.15}
.kpi .n{font-size:11.5px;line-height:1.4;color:var(--encre3);margin-top:6px;min-height:2.4em}
@media (max-width:420px){.kpi .k,.kpi .n{min-height:0}}
.v-jade{color:var(--jade)} .v-or{color:var(--or)} .v-sceau{color:var(--sceau)}

/* ---------------------------------------------------------- estimations
   Convention de tout le site : un chiffre que le desk a calculé, et que le
   courtier n'a jamais énoncé, s'écrit en italique. Le lecteur distingue alors
   d'un coup d'œil ce qui est reçu de ce qui est déduit, sans avoir à lire la
   note qui l'accompagne. Les fontes italiques sont chargées pour cela : une
   oblique synthétisée par le navigateur déforme les chiffres tabulaires. */
.est{font-style:italic}

.card-h{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:4px}
.card-h h2{font-size:15.5px;font-weight:600;margin:0}
.card-h h3{font-size:14px;font-weight:600;margin:0}
.duo h3{font-size:14px;font-weight:600;margin:0 0 6px}
/* voyants d'exploitation : des mots, pas des montants — la chasse fixe et la
   taille du monospace des chiffres y seraient illisibles */
.kpi .v.vs{font-size:14.5px;letter-spacing:0;font-family:var(--sans);font-weight:600}
/* filtres du journal : l'onglet retenu se distingue sans changer de forme */
.mini.on{color:var(--or);border-color:var(--or)}
/* blocs repliés : réglages et notices, ouverts seulement quand on les cherche */
details.pliant{margin:26px 0 22px}
details.pliant>summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:12px;
  padding:12px 0;border-top:1px solid var(--filet);flex-wrap:wrap}
details.pliant>summary::-webkit-details-marker{display:none}
details.pliant>summary::before{content:'+';font-family:var(--mono);color:var(--or);font-size:15px}
details.pliant[open]>summary::before{content:'–'}
details.pliant>summary h2{font-size:15.5px;font-weight:600;margin:0}
details.pliant>summary .hint{margin:0}
details.pliant.mince{margin:0 0 16px}
details.pliant.mince>summary{font-size:12.5px;color:var(--encre3);border-top:none;padding:6px 0}
/* case à cocher : la phrase qui l'accompagne se lit en minuscules, à côté et
   non au-dessus — une étiquette en capitales espacées y serait illisible */
label.case{display:flex;align-items:flex-start;gap:10px;text-transform:none;letter-spacing:0;
  font-size:13px;line-height:1.55;color:var(--encre2);margin:0}
label.case input{margin:2px 0 0;flex:0 0 auto;accent-color:var(--or)}
.csv{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:var(--encre3);
  border:1px solid var(--filet);border-radius:4px;padding:3px 7px;text-decoration:none;flex:none}
.csv:hover{color:var(--or);border-color:var(--or)}

.chart{width:100%;height:auto;display:block}
.grid{stroke:rgba(230,226,216,.07);stroke-width:1}
.grid-strong{stroke:rgba(230,226,216,.18);stroke-width:1}
.ax{fill:#6E757E;font-family:"IBM Plex Mono",monospace;font-size:10px}
.ax-r{text-anchor:end} .ax-c{text-anchor:middle} .ax-e{text-anchor:end}
.ln-or{fill:none;stroke:#C4A35A;stroke-width:1.6}
.ln-jade{fill:none;stroke:#3D9A78;stroke-width:1.6}
.ln-sceau{fill:none;stroke:#B8503F;stroke-width:1.4}
.bar-jade{fill:#3D9A78;opacity:.85} .bar-sceau{fill:#B8503F;opacity:.85}
.mk-or{fill:#C4A35A} .mk-sc{fill:#B8503F} .mk-jade{fill:#3D9A78}
/* glossaire des méthodes : deux colonnes, une définition par carte */
.grp{font-family:var(--sans);font-size:11px;letter-spacing:.15em;text-transform:uppercase;
  color:var(--encre3);margin:30px 0 12px;font-weight:500}
.glossaire{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:820px){.glossaire{grid-template-columns:1fr}}
.def h3{font-size:15px;margin:0}
.def p{font-size:13.5px;line-height:1.62;color:var(--encre2);margin:10px 0 0;max-width:60ch}
.formule{font-family:var(--mono);font-size:11.5px;line-height:1.7;color:var(--or);
  background:rgba(196,163,90,.06);border-left:2px solid rgba(196,163,90,.4);
  padding:10px 12px;margin:14px 0 0;white-space:pre-wrap;overflow-x:auto}
.def .valeur{display:flex;gap:10px;align-items:baseline;margin-top:12px;font-size:12.5px}
.def .valeur .k{font-family:var(--sans);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--encre3)}
#q{width:100%}

/* choix de la fenêtre temporelle, au-dessus des graphiques */
.periodes{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 18px}
.periodes a{font-family:var(--sans);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--encre3);border:1px solid var(--filet);border-radius:4px;padding:5px 10px;text-decoration:none}
.periodes a:hover{color:var(--or);border-color:var(--or)}
.periodes a.on{color:var(--or);border-color:var(--or);background:rgba(196,163,90,.08)}
.outils{display:inline-flex;align-items:center;gap:10px}

/* ------------------------------------------------ graphique manipulable */
.vif-hote{touch-action:pan-y}
.vif-hote.vif{cursor:grab}
.vif-hote.glisse{cursor:grabbing}
.vif-hote [data-role="plot"]{cursor:crosshair}
.mode-emploi{display:block;margin-top:6px;color:var(--encre3);opacity:.85}
.vis-l{stroke:rgba(230,226,216,.28);stroke-width:1;stroke-dasharray:3 3}
.bnd-fond{fill:rgba(230,226,216,.03)}
.bnd-ligne{fill:none;stroke:rgba(196,163,90,.55);stroke-width:1}
.bnd-hors{fill:rgba(20,23,28,.62)}
.bnd-fenetre{fill:rgba(196,163,90,.10);stroke:rgba(196,163,90,.55);stroke-width:1;cursor:grab}
.bnd-poignee{fill:rgba(196,163,90,.75);cursor:ew-resize;rx:2}
.legend-vif{align-items:baseline;flex-wrap:wrap;gap:18px}
.legend-vif b{color:var(--encre);font-family:var(--mono);font-weight:500}
.legend-vif .lg-d{color:var(--encre2);font-family:var(--mono)}
.legend-vif .lg-n{color:var(--encre3);margin-left:auto;font-size:11px}
.compte{color:var(--encre3)}
.attente{font-size:12.5px;color:var(--encre3);padding:22px 0;text-align:center}
.origine{font-size:12px;margin-top:7px;max-width:72ch;color:var(--encre3)}
.fil{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--encre3);margin:0 0 10px}
.fil a{color:var(--encre3);text-decoration:none}
.fil a:hover{color:var(--or)}
.lien-sj{color:var(--encre);text-decoration:none;border-bottom:1px solid var(--filet)}
.lien-sj:hover{color:var(--or);border-bottom-color:var(--or)}
.mk-t{fill:#9AA0A8;font-family:"IBM Plex Mono",monospace;font-size:10px}

.legend{display:flex;gap:20px;margin-top:12px;font-size:11.5px;color:var(--encre3)}
.legend i{display:inline-block;width:14px;height:2px;margin-right:7px;vertical-align:middle}
.i-or{background:#C4A35A} .i-jade{background:#3D9A78}

.duo{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media(max-width:820px){.duo{grid-template-columns:1fr}}
.attente{border:1px dashed var(--filet);border-radius:6px;padding:16px 18px;
  color:var(--encre3);font-size:13.5px;line-height:1.6}
tr.last td{color:var(--encre)}
th:not(:first-child),td:not(:first-child){text-align:right}
/* le journal se lit en colonnes alignées à gauche : ce sont des mots, pas des
   montants — seule l'origine, en bout de ligne, reste à droite */
table.journal th,table.journal td{text-align:left;vertical-align:top}
table.journal th:last-child,table.journal td:last-child{text-align:right}
table.journal td:nth-child(2){color:var(--encre3)}


/* ---------------------------------------------------------- rapport */
.rapport{max-width:1000px}
.rap-actions{margin:0 0 30px;max-width:560px}
.rap-actions .submit{max-width:280px}
.rap-tete{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;
  border-bottom:1px solid var(--filet);padding-bottom:20px;margin-bottom:26px}
.rap-tete h1{font-size:27px;margin:0 0 6px}
.rap-eyebrow{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--encre3);margin:0 0 8px}
.rap-sous{color:var(--encre2);font-size:13.5px;margin:0}
.rap-meta{text-align:right;font-size:11.5px;color:var(--encre3);line-height:1.5}
.rap-meta p{margin:0 0 8px}
.rap-meta b{color:var(--encre);font-family:var(--mono);font-size:12.5px}
.rap-conf{color:var(--or);letter-spacing:.09em;text-transform:uppercase;font-size:10px}
.rapport section{margin:0 0 30px;break-inside:avoid}
.rapport h2{font-size:14px;letter-spacing:.13em;text-transform:uppercase;color:var(--or);
  font-weight:500;margin:0 0 14px;padding-bottom:7px;border-bottom:1px solid var(--filet)}
.rapport h3{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--encre3);
  font-weight:500;margin:22px 0 10px}
.rap-cles{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--filet);
  border:1px solid var(--filet)}
.rap-ref{font-family:var(--mono);font-size:9.5px;color:var(--encre3);margin:10px 0 0;
  letter-spacing:0;text-transform:none}
.rap-cles div{background:var(--panneau);padding:14px 16px}
.rap-cles span{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--encre3);margin-bottom:6px}
.rap-cles b{font-family:var(--mono);font-size:18px;font-variant-numeric:tabular-nums;font-weight:500}
.rap-table{width:100%;border-collapse:collapse;font-size:12.5px}
.rap-table th{font-size:9.5px;letter-spacing:.1em;padding:0 10px 7px 0;white-space:nowrap}
.rap-table td{padding:8px 10px 8px 0;font-size:12.5px}
.rap-table tbody td:first-child{white-space:nowrap}
.rap-table .mono{font-size:12px}
.rap-mois td{text-align:right;padding:6px 6px}
.rap-mois th{text-align:right;padding-right:6px}
.rap-mois td:first-child,.rap-mois th:first-child{text-align:left}
.rap-mois .vide{color:var(--encre3)}
.rap-note{font-size:11px;color:var(--encre3);line-height:1.6;margin:12px 0 0;max-width:88ch}
.rap-texte{font-size:12.5px;color:var(--encre2);line-height:1.68;margin:0 0 12px;max-width:88ch}
.rap-avert p{font-size:11px;color:var(--encre3);line-height:1.65;margin:0;max-width:96ch}
.rap-pied{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--filet);
  padding-top:12px;font-size:10px;letter-spacing:.06em;color:var(--encre3);text-transform:uppercase}
@media(max-width:820px){.rap-cles{grid-template-columns:1fr 1fr}
  .rap-tete{flex-direction:column}.rap-meta{text-align:left}}

/* ------------------------------------------------------- impression */
@media print{
  @page{size:A4 portrait;margin:11mm 12mm}
  .rapport section{margin:0 0 16px}
  .rapport h2{font-size:11.5px;margin:0 0 9px;padding-bottom:5px}
  .rapport h3{font-size:10.5px;margin:14px 0 7px}
  .rap-tete{padding-bottom:12px;margin-bottom:16px}
  .rap-tete h1{font-size:22px}
  .rap-sous{font-size:11.5px}
  .rap-cles div{padding:9px 11px}
  .rap-cles b{font-size:15px}
  .rap-cles span{font-size:8.5px;margin-bottom:4px}
  .rap-table td{padding:5px 8px 5px 0;font-size:10.5px}
  .rap-table th{font-size:8.5px;padding:0 8px 5px 0}
  .rap-table .mono{font-size:10px}
  .rap-mois td{padding:4px 5px}
  .rap-note{font-size:9px;margin-top:8px}
  .rap-texte{font-size:10.5px;line-height:1.55;margin:0 0 8px}
  .rap-avert p{font-size:8.8px;line-height:1.5}
  .rap-pied{font-size:8.5px;padding-top:9px}
  :root{--nuit:#FFFFFF;--panneau:#FFFFFF;--encre:#111418;--encre2:#3A4048;--encre3:#6B7178;
        --or:#7A5E26;--filet:rgba(122,94,38,.45);--jade:#1B6E51;--sceau:#963527}
  html,body{background:#FFFFFF!important;color:#111418!important}
  .chrome,nav.tabs,footer.foot,.rap-actions,.periodes,.mode-emploi,.csv,.outils{display:none!important}
  .wrap{max-width:none;padding:0}
  .rapport{max-width:none}
  .card{box-shadow:none;border:1px solid rgba(17,20,24,.18)}
  .rap-cles div{background:#FFFFFF}
  .rap-page{break-before:page}
  .rapport section{break-inside:avoid}
  .rap-pied{position:relative}
  .grid{stroke:rgba(17,20,24,.14)}
  .grid-strong{stroke:rgba(17,20,24,.3)}
  .ax{fill:#6B7178}
  .mk-t{fill:#3A4048}
  a{text-decoration:none;color:inherit}
}
