/* ============================================================
   Lecture : mise en page d'un chapitre
   ============================================================ */

.chapter-hero{padding-block:clamp(2rem,5vw,4rem) 1.5rem;border-bottom:1px solid var(--rule)}
.breadcrumb{font-family:var(--sans);font-size:.74rem;color:var(--ink-3);margin-bottom:1.1rem;
  display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}
.breadcrumb a{color:var(--ink-3);text-decoration:none}
.breadcrumb a:hover{color:var(--accent)}
.breadcrumb .sep{opacity:.5}
.chapter-hero h1{margin-bottom:.4rem}
.chapter-meta{font-family:var(--sans);font-size:.8rem;color:var(--ink-3);display:flex;
  flex-wrap:wrap;gap:.4rem 1.1rem;margin-top:1rem}
.argument{margin-top:1.6rem;padding:1.1rem 1.3rem;background:var(--paper-2);
  border-left:2px solid var(--accent);border-radius:0 var(--r) var(--r) 0;font-size:.98rem;color:var(--ink-2)}
.argument b{font-family:var(--sans);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--accent);display:block;margin-bottom:.5rem;font-weight:600}

.reading{display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding-block:2.5rem 4rem}
@media (min-width:1180px){
  .reading{grid-template-columns:15rem minmax(0,1fr);gap:3rem;align-items:start}
  .chapter-nav{position:sticky;top:5rem;max-height:calc(100vh - 7rem);overflow:auto;
    font-family:var(--sans);font-size:.8rem;padding-right:.5rem}
}
@media (max-width:1179px){.chapter-nav{display:none}}
.chapter-nav h4{font-family:var(--sans);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink-3);margin-bottom:.8rem}
.chapter-nav ol{list-style:none;margin:0;padding:0;display:grid;gap:.1rem}
.chapter-nav a{display:block;padding:.34rem .55rem;color:var(--ink-3);text-decoration:none;
  border-left:2px solid transparent;border-radius:0 var(--r) var(--r) 0;line-height:1.35}
.chapter-nav a:hover{background:var(--paper-2);color:var(--ink)}
.chapter-nav a.active{border-left-color:var(--accent);color:var(--ink);background:var(--paper-2)}

.prose{max-width:var(--measure);font-size:1.145rem;line-height:1.72;hyphens:auto;
  -webkit-hyphens:auto;hyphenate-limit-chars:7 3 3;text-align:justify;text-wrap:pretty}
@media (max-width:640px){.prose{text-align:left;font-size:1.08rem}}
.prose p{margin:0 0 .15rem;text-indent:1.4em}
.prose p:first-of-type,.prose .section + p,.prose h2 + p,.prose .plate + p{text-indent:0}
.prose p::first-letter{}
.prose .dropcap::first-letter{float:left;font-size:3.6em;line-height:.82;padding:.06em .1em 0 0;
  color:var(--accent);font-weight:500}

.section-mark{display:flex;align-items:center;gap:1rem;margin:2.6rem 0 1.4rem;
  font-family:var(--sans);font-size:.7rem;letter-spacing:.2em;color:var(--accent);font-weight:600}
.section-mark::after{content:"";flex:1;height:1px;background:var(--rule)}

/* manchette : titre marginal, comme dans l'original */
.manchette{font-family:var(--sans);font-size:.66rem;font-weight:600;letter-spacing:.11em;
  text-transform:uppercase;color:var(--ink-3);line-height:1.35;margin:1.5rem 0 .4rem;
  padding-left:.7rem;border-left:2px solid var(--rule-2);text-indent:0}
@media (min-width:1500px){
  .manchette{position:absolute;left:calc(-1 * (13rem + 1.5rem));width:13rem;text-align:right;
    margin:.25rem 0 0;padding-left:0;padding-right:.8rem;border-left:0;border-right:2px solid var(--rule-2)}
  .prose{position:relative}
}

/* pagination originale */
.folio{float:left;margin-left:-3.6rem;width:2.6rem;text-align:right;font-family:var(--sans);
  font-size:.62rem;color:var(--ink-3);opacity:.55;text-decoration:none;padding-top:.45em;
  letter-spacing:.04em;scroll-margin-top:6rem}
.folio:hover{opacity:1;color:var(--accent)}
@media (max-width:1100px){
  .folio{float:none;display:inline-block;margin:0 .4rem 0 0;width:auto;text-align:left;
    border:1px solid var(--rule);border-radius:2px;padding:.05rem .3rem;vertical-align:.15em}
}

/* figures */
figure.fig{margin:2rem 0;text-indent:0}
figure.fig img{display:block;width:100%;background:var(--paper-3);border-radius:2px}
figure.fig figcaption{font-family:var(--sans);font-size:.74rem;line-height:1.45;color:var(--ink-3);
  margin-top:.6rem;text-align:left}
figure.fig figcaption .n{color:var(--accent);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.66rem}
figure.fig.wide{max-width:none;width:min(100%,60rem)}
@media (min-width:1180px){
  figure.fig.side{float:right;width:16rem;margin:.4rem -8rem 1.2rem 1.6rem}
}
figure.plate{margin:2.5rem 0;text-indent:0}
figure.plate img{box-shadow:var(--shadow)}

/* notes */
.notes{margin-top:3rem;padding-top:1.2rem;border-top:1px solid var(--rule);font-size:.9rem;
  color:var(--ink-2);max-width:var(--measure)}
.notes h4{font-family:var(--sans);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink-3);margin-bottom:.7rem}
.notes ol{margin:0;padding-left:1.2rem;display:grid;gap:.4rem}
.notes li{text-indent:0;line-height:1.5}

/* citation / partage d'un paragraphe */
.prose p{position:relative}
.anchor-p{position:absolute;left:-1.5rem;top:.35em;opacity:0;font-family:var(--sans);font-size:.7rem;
  color:var(--ink-3);text-decoration:none;transition:opacity .15s}
.prose p:hover .anchor-p{opacity:.6}
.anchor-p:hover{opacity:1!important;color:var(--accent)}
:target{scroll-margin-top:6rem}
p:target{background:linear-gradient(transparent 62%,var(--sel) 0);border-radius:2px}

/* navigation bas de chapitre */
.chapter-foot{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));
  margin-top:3.5rem;padding-top:2rem;border-top:1px solid var(--rule)}
.chapter-foot a{display:block;padding:1rem 1.2rem;border:1px solid var(--rule);border-radius:var(--r);
  text-decoration:none;color:inherit;background:var(--paper-2);transition:border-color .2s,transform .2s}
.chapter-foot a:hover{border-color:var(--rule-2);transform:translateY(-2px)}
.chapter-foot .dir{font-family:var(--sans);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--accent);display:block;margin-bottom:.3rem}
.chapter-foot .t{font-size:1.02rem;line-height:1.35}
.chapter-foot .next{text-align:right}

/* barre de progression */
.progress{position:fixed;top:0;left:0;height:2px;background:var(--accent);z-index:60;width:0;
  transition:width .1s linear}

/* avertissement historiographique */
.caveat{font-family:var(--sans);font-size:.78rem;line-height:1.55;color:var(--ink-3);
  border:1px solid var(--rule);border-left:3px solid var(--gold);background:var(--paper-2);
  padding:.85rem 1.1rem;border-radius:0 var(--r) var(--r) 0;margin:1.5rem 0}
.caveat b{color:var(--ink-2)}
.caveat a{color:var(--gold)}

/* --- croisements en fin de chapitre --- */
.related{padding-block:2.5rem 0}
.related .band-title{margin-bottom:1.2rem}
.terrline{margin-bottom:1.2rem;display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.relgrid{display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));
  margin-bottom:1.6rem}
.relcol h3{font-family:var(--sans);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--accent);margin:0 0 .5rem}
.relgrid>*{min-width:0}
.relwords{margin:0;font-size:.92rem;line-height:1.85;color:var(--ink-2);overflow-wrap:break-word}
.relwords a{text-decoration:none}
.relwords a:hover{text-decoration:underline}
.relwords .dot{color:var(--rule-2)}
.relchrono{border:1px solid var(--rule);border-radius:var(--r);background:var(--paper-2);
  padding:.9rem 1.2rem;margin-bottom:1rem}
.relchrono summary{font-family:var(--sans);font-size:.8rem;color:var(--ink-2);cursor:pointer;font-weight:500}
.relchrono summary:hover{color:var(--accent)}
.timeline.mini{margin-top:1rem}
.timeline.mini li{grid-template-columns:3.4rem 1fr;padding:.45rem 0;font-size:.9rem}
.timeline.mini .tt{font-size:.9rem;line-height:1.5}
