/* Lecture des fiches (11/11, demande d'Exl) : police de texte sans empattement, plus simple à lire que Spectral, et
   image du lieu ou du personnage en fond, floutée et voilée (js/sheetbg.js pose .sheet-bg). Chargé après typo.css :
   seule la variable --body change, les titres gardent Cinzel et les étiquettes Barlow. */

#panel,#details,#xlTip,#page{--body:"Source Sans 3","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;}
/* La police de texte est un peu plus petite à corps égal : léger rattrapage, interligne un peu plus serré. */
#panel .prose,#details .dt-sec p,#panel .story p,#details .story p,#panel .tl p,#panel .lb-tl p,#panel .fac p,#panel .ev-txt p,
#panel .icard-txt p,#panel .evp-story p,#panel .lb-aff li{font-size:16.5px;line-height:1.62;letter-spacing:.005em;}
#details .dt-lead,#panel .lb-lede,#panel .evp-lead{font-size:18px;line-height:1.55;}
#panel .facts dd,#details .facts dd,#panel .lb-facts dd{font-size:15.5px;}
/* Titres d'éléments (étapes, cartes, récits) : graisse semi-grasse de la même famille. */
#details .dt-tl b,#details .dt-card b,#panel .story b,#details .story b,#panel .tl b,#panel .ev-txt h4,#panel .icard-txt h4,#panel .fac h4{font-weight:600;letter-spacing:.005em;}
/* Plus de lettrine décorative : elle gênait la lecture en police droite. */
#panel .prose:not(.more):not(.lb-bio) p:first-child::first-letter,#panel .evp-story p:first-child::first-letter{all:unset;}
/* Chapô et sous-titre : romain plutôt qu'italique. */
#details .dt-sub,#panel .psub{font-style:normal;color:var(--gold);}
body.panel-full #pbody .prose,body.panel-full #pbody .story p,body.panel-full #pbody .lb-tl p,body.panel-full #pbody .evp-story p{font-size:17.5px;line-height:1.65;}
@media (max-width:700px){#details .dt-sec p,#panel .prose{font-size:16px;}}

/* ---------- Image en fond, discrète ---------- */
.has-sheet-bg{isolation:isolate;}
#pbody.has-sheet-bg{overflow-x:hidden;}
.sheet-bg{position:sticky;top:0;display:block;height:100vh;margin-bottom:-100vh;z-index:-1;pointer-events:none;overflow:hidden;}
.sheet-bg::before{content:"";position:absolute;inset:-40px;background:var(--sb) center/cover no-repeat;filter:blur(14px) saturate(.85) brightness(.62);opacity:.36;}
/* Voile : plus dense au centre de la colonne de texte. */
.sheet-bg::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 90% at 50% 55%,rgba(5,11,22,.55),rgba(5,11,22,.15) 100%);}
/* Pleine page : le fond couvre tout l'écran, pas seulement la colonne. */
body.panel-full #pbody .sheet-bg{margin-left:min(0px,calc((780px - 100vw) / 2));width:100vw;}
/* (div vide : des règles :empty des fiches la masquaient) */
#pbody > .sheet-bg,#details .dt-sheet > .sheet-bg{display:block;}

/* ---------- Panneau latéral plus large (11/11, « le récit est trop étouffé ») ---------- */
#panel{width:min(620px,100vw);font-family:var(--body);}
#details{font-family:var(--body);}
body.panel-open #zoomCtl{right:calc(min(620px,100vw) + 16px);}
@media (min-width:861px){
  body.panel-open #topbar{padding-right:calc(min(620px,100vw) + 16px);}
  body.panel-open #topbar.fold #nav.open{right:calc(min(620px,100vw) + 16px);}
}
/* Grands titres : plus de casse sur trois lignes. */
#panel .ptitle{font-size:clamp(26px,3.2vw,34px);letter-spacing:.03em;}
#panel .phead,#panel .sec,#panel .lb-sec,#panel .prose{padding-left:34px;padding-right:34px;}
#panel .evp{padding-left:34px;padding-right:34px;}
#panel .lb-lede{margin-left:34px;margin-right:34px;}
@media (max-width:520px){#panel .phead,#panel .sec,#panel .lb-sec,#panel .prose,#panel .evp{padding-left:20px;padding-right:20px;}#panel .lb-lede{margin-left:20px;margin-right:20px;}}

/* ---------- Fiches sobres (js/concise.js) ---------- */
/* Sections repliées (Canon et sources) : seul le titre reste, cliquable. */
.cz-fold:not(.cz-open) > :not(h3){display:none;}
.cz-fold > h3{margin-bottom:0!important;}
.cz-fold.cz-open > h3{margin-bottom:14px!important;}
.cz-toggle{all:unset;display:flex;align-items:center;gap:10px;width:100%;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;}
.cz-toggle span{flex:none;}
.cz-toggle i{flex:none;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s;}
.cz-open .cz-toggle i{transform:rotate(225deg);}
.cz-toggle:hover,.cz-toggle:focus-visible{color:var(--gold-hi);}
/* Notices des cartes : trois lignes, puis « Lire la suite ». */
.dt-card > p.cz-clip:not(.cz-full){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;}
.cz-more{all:unset;display:inline-block;margin-top:6px;cursor:pointer;font-family:var(--ui);font-weight:600;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);}
.cz-more:hover,.cz-more:focus-visible{color:#fff;}
.evp-hint.cz-src{font-style:normal;font-size:13px;}
/* Sous-titre répété sous chaque zone concernée (« Fiche de la zone · à travers le temps ») : retiré. */
#panel .evp-zone small,#details .evp-zone small{display:none!important;}
