
/* style-revue.css — typographie de lecture longue pour les revues.
   Colonne unique, largeur de lecture confortable, interlignage généreux.
   Inclus en plus de style.css sur les pages /revues/* uniquement. */

main.wrap{max-width:1080px;}
.revue-wrap,main:has(.revue-hero),main:has(.article-head),main:has(.dossier){max-width:42rem;}

/* dossiers — récits de cas (magazine) */
.dossier .crumb{font-family:-apple-system,system-ui,sans-serif;font-size:.85rem;margin:.2rem 0 1rem;}
.dossier-head{margin:.4rem 0 1.2rem;}
.dossier-head h1{font-size:2.3rem;line-height:1.18;margin:.1rem 0 .4rem;}
.dossier-sous{font-size:1.2rem;color:var(--muted);font-style:italic;line-height:1.5;margin:.2rem 0;}
.dossier-meta{font-family:-apple-system,system-ui,sans-serif;font-size:.85rem;color:var(--faint);margin:.3rem 0;}
.dossier-chapeau{font-size:1.25rem;line-height:1.55;color:var(--ink);
 border-left:3px solid var(--terra-dk);padding-left:1rem;margin:1.2rem 0;font-weight:500;}
.dossier-fiche{background:var(--beige);border-radius:var(--radius);padding:.7rem 1rem;
 margin:1.2rem 0;display:flex;gap:.6rem;align-items:baseline;flex-wrap:wrap;
 font-family:-apple-system,system-ui,sans-serif;font-size:.9rem;}
.dossier-fiche .df-txt{color:var(--muted);}
.dossier-corps.prose-long{font-size:1.08rem;line-height:1.72;}
.dossier-corps.prose-long p{margin:1rem 0;}
.dossier-corps.prose-long h2{font-size:1.5rem;margin:2rem 0 .6rem;}
.dossier-corps.prose-long h3{font-size:1.2rem;margin:1.5rem 0 .4rem;}
.dossier-corps.prose-long blockquote{border-left:3px solid var(--muted);
 padding-left:1rem;font-style:italic;color:var(--muted);margin:1.2rem 0;}

.revue-hero{padding:2.6rem 0 1.6rem;border-bottom:1px solid var(--line);
 margin-bottom:1.6rem;}
.revue-hero .hero-kicker{font-size:.78rem;text-transform:uppercase;
 letter-spacing:.14em;color:var(--terra-dk);font-weight:700;margin:0 0 .5rem;
 font-family:-apple-system,system-ui,"Segoe UI",sans-serif;}
.revue-hero h1{font-size:2.4rem;line-height:1.18;max-width:22ch;
 margin:.2rem 0 .5rem;}
.revue-hero .revue-soustitre{font-size:1.18rem;color:var(--muted);
 max-width:46ch;margin:.2rem 0 .8rem;line-height:1.5;font-style:italic;}
.revue-hero .revue-meta{font-family:-apple-system,system-ui,"Segoe UI",sans-serif;
 font-size:.88rem;color:var(--faint);margin:.2rem 0;}
.revue-hero .revue-meta strong{color:var(--ink);font-weight:600;}

.statut-chip{display:inline-block;padding:.12rem .55rem;border-radius:var(--radius-pill);
 font-family:-apple-system,system-ui,"Segoe UI",sans-serif;font-size:.74rem;
 font-weight:600;text-transform:uppercase;letter-spacing:.06em;
 background:var(--beige);color:var(--muted);border:1px solid var(--line);}
.statut-chip.statut-vivant{background:#e7f0dc;color:var(--green-dk);
 border-color:#bcd29c;}
.statut-chip.statut-stabilise,.statut-chip.statut-stabilisee{background:#dfe9ee;
 color:var(--blue-dk);border-color:#a8c4cf;}
.statut-chip.statut-archive,.statut-chip.statut-archivee{background:var(--beige-dk);
 color:var(--faint);}

.revue-prose,.article-prose{font-size:1.08rem;line-height:1.72;color:var(--ink);}
.revue-prose p,.article-prose p{margin:.95rem 0;max-width:42rem;}
.revue-prose h2,.article-prose h2{font-size:1.5rem;font-family:inherit;
 font-weight:600;letter-spacing:-.005em;margin:2.2rem 0 .6rem;
 border-bottom:none;padding-bottom:0;color:var(--ink);}
.revue-prose h2::before,.article-prose h2::before{content:none;}
.revue-prose h3,.article-prose h3{font-size:1.18rem;font-weight:600;
 margin:1.6rem 0 .3rem;color:var(--ink);}
.revue-prose blockquote,.article-prose blockquote{border-left:3px solid var(--terra);
 padding:.3rem 0 .3rem 1rem;margin:1.1rem 0;color:var(--muted);font-style:italic;}
.revue-prose ul,.article-prose ul,.revue-prose ol,.article-prose ol{margin:.8rem 0;
 padding-left:1.5rem;}
.revue-prose li,.article-prose li{margin:.3rem 0;line-height:1.65;}
.revue-prose code,.article-prose code{font-family:"SFMono-Regular",Menlo,Consolas,
 monospace;font-size:.94em;background:var(--beige);padding:.05rem .3rem;
 border-radius:var(--radius-sm);}

.articles-liste{list-style:none;padding:0;margin:1.8rem 0;display:grid;gap:1.4rem;}
.articles-liste .article-item{border-top:1px solid var(--line);padding-top:1.2rem;}
.articles-liste .article-item:first-child{border-top:none;padding-top:0;}
.articles-liste h3{font-size:1.32rem;margin:0 0 .25rem;}
.articles-liste h3 a{color:var(--ink);text-decoration:none;}
.articles-liste h3 a:hover{color:var(--green-dk);text-decoration:underline;}
.articles-liste .article-meta{font-family:-apple-system,system-ui,"Segoe UI",sans-serif;
 font-size:.84rem;color:var(--faint);margin:.1rem 0 .4rem;}
.articles-liste .article-meta .sep{margin:0 .4rem;color:var(--line);}
.articles-liste .article-resume{margin:.3rem 0 0;color:var(--muted);
 line-height:1.55;}

.article-head{padding:1.6rem 0 1rem;border-bottom:1px solid var(--line);
 margin-bottom:1.4rem;}
.article-head .article-kicker{font-size:.78rem;text-transform:uppercase;
 letter-spacing:.12em;color:var(--terra-dk);font-weight:700;
 font-family:-apple-system,system-ui,"Segoe UI",sans-serif;margin:0 0 .4rem;}
.article-head .article-kicker a{color:var(--terra-dk);text-decoration:none;}
.article-head .article-kicker a:hover{text-decoration:underline;}
.article-head h1{font-size:2.2rem;line-height:1.18;max-width:24ch;
 margin:.2rem 0 .4rem;}
.article-head .article-soustitre{font-size:1.14rem;color:var(--muted);
 font-style:italic;line-height:1.5;margin:.2rem 0 .8rem;max-width:46ch;}
.article-head .article-meta{font-family:-apple-system,system-ui,"Segoe UI",sans-serif;
 font-size:.86rem;color:var(--faint);margin:.4rem 0;}
.article-head .article-meta .sep{margin:0 .4rem;color:var(--line);}
.article-head .article-meta strong{color:var(--ink);font-weight:600;}

.article-relations{margin:1.6rem 0;padding:.9rem 1rem;background:var(--card);
 border-left:3px solid var(--blue);border-radius:0 var(--radius) var(--radius) 0;}
.article-relations h4{font-family:-apple-system,system-ui,"Segoe UI",sans-serif;
 font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;
 color:var(--blue-dk);margin:0 0 .3rem;font-weight:700;}
.article-relations ul{list-style:none;padding:0;margin:0;display:flex;
 flex-wrap:wrap;gap:.3rem .7rem;font-family:-apple-system,system-ui,sans-serif;
 font-size:.9rem;}
.article-relations li{margin:0;}

.article-changelog{margin:2.4rem 0 1rem;border-top:1px solid var(--line);
 padding-top:1.2rem;}
.article-changelog h2{font-family:-apple-system,system-ui,"Segoe UI",sans-serif!important;
 font-size:.9rem!important;text-transform:uppercase;letter-spacing:.1em;
 color:var(--faint);font-weight:600;margin:0 0 .6rem!important;}
.article-changelog ol{list-style:none;padding:0;margin:0;
 font-family:-apple-system,system-ui,"Segoe UI",sans-serif;font-size:.88rem;
 color:var(--muted);}
.article-changelog li{margin:.35rem 0;line-height:1.55;}
.article-changelog .ch-date{color:var(--ink);font-weight:600;margin-right:.5rem;}
.article-changelog .ch-version{color:var(--terra-dk);font-weight:600;
 margin-right:.5rem;}

.revue-pdf{margin:2rem 0;padding:1.1rem 1.2rem;background:var(--card);
 border:1px solid var(--line);border-radius:var(--radius);}
.revue-pdf h4{font-family:-apple-system,system-ui,"Segoe UI",sans-serif;
 font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;
 color:var(--terra-dk);margin:0 0 .5rem;font-weight:700;}
.revue-pdf p{margin:.2rem 0;font-size:.95rem;color:var(--muted);}
.revue-pdf .cta-pdf{display:inline-block;margin-top:.6rem;
 background:var(--ink);color:var(--paper)!important;text-decoration:none;
 padding:.5rem 1rem;border-radius:var(--radius);font-weight:600;
 font-family:-apple-system,system-ui,"Segoe UI",sans-serif;font-size:.88rem;}
.revue-pdf .cta-pdf:hover{background:var(--green-dk);}

.revues-grid{display:grid;gap:1.6rem;
 grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:1.6rem 0;}
.revue-card{background:var(--card);border:1px solid var(--line);
 border-radius:var(--radius);padding:1.4rem 1.5rem;text-decoration:none;
 color:var(--ink);display:flex;flex-direction:column;gap:.4rem;
 transition:border-color .15s,box-shadow .15s;}
.revue-card:hover{border-color:var(--green);
 box-shadow:0 2px 8px rgba(0,0,0,.06);color:var(--ink);}
.revue-card h3{margin:0;font-size:1.32rem;line-height:1.22;color:var(--ink);}
.revue-card .revue-card-sous{color:var(--muted);font-style:italic;
 font-size:1rem;line-height:1.5;margin:.1rem 0 .4rem;}
.revue-card .revue-card-meta{font-family:-apple-system,system-ui,"Segoe UI",sans-serif;
 font-size:.82rem;color:var(--faint);margin-top:auto;}
.revue-card .revue-card-meta .sep{margin:0 .4rem;color:var(--line);}
