/*
 * FORME « CONTEMPORAINE » — direction graphique du socle, CDC § 21.10.
 *
 * Contemporaine — essai, pensée, maisons à forte identité. Noir et blanc, un vert franc en aplat (en-tête, bandeau de fiche), titres en 800 serrés, grille serrée.
 *
 * Chargée par le parent après main.css et accueil.css quand la direction est
 * choisie à l'écran (functions.php). Elle ne porte NI COULEUR NI FAMILLE : la
 * palette « sapin », le duo « contemporain » et les quatre couleurs de fond et
 * d'encre viennent de la couche « direction » (ekdotis-core, directions.php)
 * et du style en ligne, comme pour tout site. Composition d'accueil conseillée
 * par la direction : « b ». Les règles communes aux trois directions
 * (filets, soulignés) sont dans main.css depuis le 13 octobre.
 *
 * Source : maquette de Claude Design du 12 octobre, validée par Phil ; la
 * partie « LA DIRECTION » de direction-contemporaine.css, moins les jetons de
 * palette et de duo. Le texte atténué du pied se dérive du socle en
 * `color-mix()` (trois quarts de texte sur accent, un quart d'accent) au lieu
 * d'une valeur en dur ; contrastes au suivi § 2.44.
 */

:root {
	--livre-bandeau-fond: var(--accent);
	--list-title-color: var(--text);
	--list-title-weight: 700;
	--list-author-color: var(--text-faint);
	--focus-ring: 2px solid var(--text);

	--font-size-m: 1rem;
	--font-size-l: 1.1875rem;
	--font-size-xl: 1.75rem;
	--font-size-2xl: 2.5rem;
	--font-size-3xl: 3.5rem;
	--leading-tight: 1.02;
	--leading-normal: 1.55;

	--section-title-family: var(--font-editorial);
	--section-title-weight: 800;
	--section-title-size: 2.25rem;
	--section-title-spacing: -0.03em;

	--entete-marque-corps: 24px;
	--entete-marque-corps-compact: 20px;
	--entete-menu-corps: 16px;

	--block-gap: 6rem;
	--livre-bandeau-haut: 32px;
	--livre-bandeau-bas: 56px;
	--livre-zones-ecart: 64px;
	--cover-base: 17rem;

	--radius-s: 0;
	--radius-m: 0;
	--pastille-rayon: 0;
	--shadow-raised: 0 2px 8px color-mix(in srgb, var(--text) 14%, transparent);
	--shadow-couverture: 0 16px 40px color-mix(in srgb, var(--text) 28%, transparent);
}

/* La prose longue en un seul corps (2 novembre, W7 ter, suivi § 2.164) : la
   présentation de la fiche livre, début et suite, et la biographie de la
   fiche auteur. 19 px, le cran --font-size-l de la forme, interligne 1,6.
   Posé là où le parent pose le jeton ; le réglage d'écran de la fiche livre,
   écrit sur `.livre` après la forme, garde le dernier mot. */
.livre,
.rubriques-socle {
	--livre-presentation-corps: 1.1875rem;
	--livre-presentation-interligne: 1.6;
}

/* En-tête : aplat d'accent (variante du parent), marque en grasse serrée. */
.bandeau-site__marque { font-weight: 800; letter-spacing: -0.02em; }
.navigation__liste > .navigation__entree > a { font-weight: 500; }
.bandeau-site__bascule { background: var(--text-on-accent); color: var(--accent); }
/* L'en-tête est sur l'accent : le contour de focus du champ passe en texte
   sur accent, sinon il se confondrait avec l'aplat (13 octobre). */
.bandeau-site { --recherche-focus: var(--text-on-accent); }

/* Pied : aplat d'encre. */
.pied-site {
	--accent: var(--text);
	--text-on-accent-muted: color-mix(in srgb, var(--text-on-accent) 74%, var(--accent));
	padding-block: var(--space-l) 0;
}
.pied-site__marque { font-weight: 800; font-size: var(--font-size-l); letter-spacing: -0.02em; }

/* Le fil d'Ariane sur fond de page : la seule bande est celle de la fiche. */
.fil-ariane-bande { background: var(--surface); }

/* Titres : 800, interlettrage négatif, interligne serré. */
h1, h2 { font-weight: 800; letter-spacing: -0.02em; }
.archive-intro__titre, .auteur__nom { font-size: var(--font-size-3xl); letter-spacing: -0.035em; }
.actualite-tuile__titre, .bandeau__titre { font-weight: 800; letter-spacing: -0.015em; }
.bloc__intitule { line-height: var(--leading-tight); }
.livre, .rubriques-socle {
	--livre-titre-graisse: 800;
	--livre-titre-interlettrage: -0.035em;
	--livre-titre-interligne: 0.98;
	--livre-sous-titre-graisse: 400;
	--rubrique-corps: 1.5rem;
	--rubrique-graisse: 800;
	--rubrique-casse: none;
	--rubrique-interlettrage: -0.02em;
	--rubrique-interligne: 1;
}
.livre .livre__titre-rubrique--sous,
.rubriques-socle .livre__titre-rubrique--sous { font-size: var(--font-size-m); color: var(--text-faint); }
.livre__sous-titre { font-style: normal; color: var(--text-muted); }

/* Catalogue : grille serrée, tri en segments. */
.liste-entrees--grille { grid-template-columns: repeat(auto-fill, minmax(10.5rem, 1fr)); gap: 40px var(--space-m); }
.archive-tri { align-items: center; gap: var(--space-s); }
.archive-tri__liste { gap: 2px; }
.archive-tri__entree + .archive-tri__entree::before { content: none; margin: 0; }
.archive-tri__courant, .archive-tri a { display: inline-flex; align-items: center; min-height: var(--cible); padding: 0 var(--space-s); font-weight: 600; }
.archive-tri__courant { background: var(--text); color: var(--surface); }
.archive-tri a { background: var(--surface-alt); color: var(--text); }
.archive-tri a:hover, .archive-tri a:focus-visible { text-decoration: none; background: var(--accent-soft); }
.livre-vignette__titre, .livre-tuile__titre { font-size: var(--font-size-s); letter-spacing: -0.01em; }
.livre-vignette__contributeurs, .livre-tuile__signature { font-size: var(--font-size-s); }
.pagination__entree .current { background: var(--text); color: var(--surface); padding: 0.2em 0.6em; }

/* Fiche livre : le bandeau est l'aplat d'accent, titraille blanche, la
   couverture déborde avec une ombre forte. */
/* Le fond du bandeau est le jeton `--livre-bandeau-fond`, posé à l'accent au :root ; ici la couleur du texte. */
.livre__haut { color: var(--text-on-accent); }
/* Le fil d'Ariane de la fiche est sur le même aplat (29 octobre, décision de
   Phil) : texte et liens en texte sur accent, séparateurs en atténué. La
   liste est visée, pas `.fil-ariane` : `.fil-ariane__liste` pose son propre
   `--text-muted` (main.css), dont ses entrées héritaient — #4a4a4a sur
   l'accent, de 1,01:1 (vert-sombre) à 1,77:1 (terre). */
.single-catalogue .fil-ariane__liste { color: var(--text-on-accent); }
.single-catalogue .fil-ariane__entree + .fil-ariane__entree::before { color: var(--text-on-accent-muted); }
.livre__haut .livre__collection, .livre__haut .livre-caracteristiques__etiquette, .livre__haut .livre-caracteristiques__separateur,
.livre__haut .livre-caracteristiques__intitule, .livre__haut .livre__rayon, .livre__haut .livre-contributeurs__mention,
.livre__haut .livre-contributeurs__roles, .livre__haut .livre-contributeurs__separateur, .livre__haut .fichiers__intitule,
.livre__haut .fichiers__mesure, .livre__haut .couverture-hd__mesure,
.livre__haut .livre-contributeurs__complement { color: var(--text-on-accent-muted); }
/* `__complement` (les autres contributeurs en texte, 29 octobre) restait en
   --text-muted sur l'aplat : 1,68:1 sur l'ardoise, vu sur Pascal (128). */
.livre__haut .livre__titre, .livre__haut .livre__sous-titre, .livre__haut .livre-caracteristiques__ligne, .livre__haut .livre-caracteristiques__phrase,
.livre__haut .livre-caracteristiques__liste, .livre__haut a, .livre__haut .fichiers__lien, .livre__haut .livre-caracteristiques__valeur { color: var(--text-on-accent); }
.livre__haut .livre__etat { background: var(--text-on-accent); color: var(--accent); }
.livre__haut .livre__actions .feuilletage__lien { background: var(--text-on-accent); color: var(--accent); }
.livre__haut .livre__actions .feuilletage__lien:hover, .livre__haut .livre__actions .feuilletage__lien:focus-visible { background: var(--text); color: var(--text-on-accent); }
.livre__haut :focus-visible { outline-color: var(--text-on-accent); }
.livre__haut .livre-caracteristiques__ligne[data-cle="prix"] { font-weight: 800; font-size: var(--font-size-xl); }
.livre__couverture .couverture__substitut { background: var(--surface); }
.livre-onglets--barre .onglets__onglet { font-weight: 600; }
.bouton, .livre .bouton { background: var(--text); }

/* Accueil : intitulés très grands, actualités en gras, citations serrées. */
.presse-citation__texte { font-style: normal; font-weight: 500; font-size: var(--font-size-l); line-height: 1.4; }
.presse-citation__source, .actualite-tuile__date, .livre-tuile__meta { font-size: var(--font-size-3xs); font-weight: 600; }

/* Mot trop long dans un titre (main.css, `.titre-ajuste`, 26 octobre) : les
   chasses de la police de titre de la forme, Public Sans 800, le plus large de
   chaque classe, mesurées de 16 à 120 px. Interlettrage non compté. */
.titre-ajuste {
	--chasse-fines: 0.389;
	--chasse-etroites: 0.498;
	--chasse-demi: 0.584;
	--chasse-moyennes: 0.642;
	--chasse-larges: 0.893;
	--chasse-capfines: 0.407;
	--chasse-capitales: 0.786;
	--chasse-caplarges: 0.925;
	--chasse-treslarges: 1.142;
	--chasse-chiffres: 0.68;
	--chasse-ponctuation: 0.788;
}

/* -------------------------------------------------------------------------
 * HABILLAGE DU 29 OCTOBRE — maquettes de Phil pour les Éditions Pascal
 * (`import-recette\pascal\habillage\`, accueil et fiche Tekhnê à 1 280),
 * suivi § 2.114. Tout est en jetons de palette : la carte des
 * caractéristiques et la pilule de collection sont des voiles d'ENCRE sur
 * l'aplat, pas de blanc — un voile blanc fait tomber le blanc du texte sous
 * 4,5:1 sur un accent moyen (5,28:1 nu sur l'ardoise de Pascal, 4,29:1 sous
 * 10 % de blanc). Aucun filet, aucune capitale, aucun texte ajouté.
 * ---------------------------------------------------------------------- */

/* Intitulés de rubrique : éditoriale, ~36 px, précédés d'une pastille carrée
   de 12 px en accent, rayon 3 px. Les rubriques de la fiche et des pages
   adoptées lisent leurs propres jetons (`--rubrique-*`, main.css) : ils sont
   posés ici aux mêmes valeurs, et le tiret du parent (`::before`, en bloc
   avec sa marge) devient la pastille. */
:root {
	--section-title-size: 2.25rem;
	--section-title-weight: 700;
	--section-title-spacing: -0.01em;
}
.livre,
.rubriques-socle {
	--rubrique-famille: var(--font-editorial);
	--rubrique-corps: 2.25rem;
	--rubrique-graisse: 700;
	--rubrique-interlettrage: -0.01em;
	--rubrique-interligne: 1.15;
}
.livre .livre__titre-rubrique::before,
.rubriques-socle .livre__titre-rubrique::before { margin-bottom: 0; }

/* L'accueil qui ouvre sur l'aplat des nouveautés le colle à l'en-tête. */
.accueil-flux:has(> .bloc--nouveautes:first-child) { padding-block-start: 0; }
.bloc__intitule,
.livre__titre-rubrique {
	font-family: var(--font-editorial);
	font-size: var(--section-title-size);
	font-weight: var(--section-title-weight);
	letter-spacing: var(--section-title-spacing);
	line-height: 1.15;
}
.livre .livre__titre-rubrique--sous,
.rubriques-socle .livre__titre-rubrique--sous { font-family: var(--font-ui); font-size: var(--font-size-m); }
.bloc__intitule::before,
.livre__titre-rubrique:not(.livre__titre-rubrique--sous)::before,
.rubriques-socle .derniere-parution__surtitre::before {
	background: var(--accent);
	border-radius: 3px;
	content: "";
	display: inline-block;
	height: 12px;
	margin-inline-end: 0.6em;
	vertical-align: 0.25em;
	width: 12px;
}

/* Ombre portée sur les couvertures des vignettes (accueil, listes, fiche). */
.bloc-couverture,
.livre-vignette .couverture__image { box-shadow: var(--shadow-couverture); }

/* Accueil — les nouveautés sur l'aplat d'accent, par la bande du parent
   (accueil.css, `--accueil-nouveautes-fond`), texte clair, titre ~56 px,
   vignettes de ~200 px ; l'intitulé n'y a pas de pastille (elle serait de la
   couleur de l'aplat). */
.bloc--nouveautes {
	--accueil-nouveautes-fond: var(--accent);
	--accueil-nouveautes-retrait: var(--space-2xl);
	--cover-col-min: 12.5rem;
	--focus-ring: 2px solid var(--text-on-accent);
	color: var(--text-on-accent);
}
.bloc--nouveautes .bloc__intitule { font-size: clamp(2.5rem, 2.5vw + 1.5rem, 3.5rem); }
.bloc--nouveautes .bloc__intitule::before { content: none; }
.bloc--nouveautes .bloc-grille--couvertures { gap: var(--space-l) var(--space-xl); }
.bloc--nouveautes .livre-tuile__titre,
.bloc--nouveautes .livre-tuile__lien { color: var(--text-on-accent); }
.bloc--nouveautes .livre-tuile__signature,
.bloc--nouveautes .livre-tuile__meta { color: var(--text-on-accent-muted); }
.bloc--nouveautes .bloc-couverture { box-shadow: 0 16px 40px color-mix(in srgb, var(--text) 40%, transparent); }
@media (max-width: 47.99rem) {
	.bloc--nouveautes .bloc-grille--couvertures { gap: var(--space-m) var(--space-s); }
}

/* Les liens « tout voir » des sections en pilule : claire sur l'aplat des
   nouveautés (accent sur blanc, 5,28:1), fond d'accent ailleurs (4,53:1). */
.bloc__debordement .lien-action {
	background: var(--accent-soft);
	border-radius: 999px;
	color: var(--accent);
	display: inline-flex;
	align-items: center;
	font-size: var(--font-size-s);
	font-weight: 600;
	min-height: var(--cible);
	padding: 0 var(--space-m);
}
.bloc--nouveautes .bloc__debordement .lien-action { background: var(--text-on-accent); color: var(--accent); }
.bloc__debordement .lien-action:hover,
.bloc__debordement .lien-action:focus-visible { text-decoration: underline; text-underline-offset: 3px; }

/* Fiche livre — la titraille. */
.livre {
	--livre-titre-corps: clamp(2.5rem, 2.5vw + 1.75rem, 3.75rem);
	--livre-titre-graisse: 700;
	--livre-titre-interlettrage: -0.01em;
	--livre-titre-interligne: 1.05;
}
.livre__haut .livre__collection {
	background: color-mix(in srgb, var(--text) 22%, transparent);
	border-radius: 999px;
	color: var(--text-on-accent);
	display: inline-block;
	font-weight: 600;
	padding: 0.2em 0.75em;
}
.livre__haut .livre__collection a { color: inherit; }
.livre__haut .livre__sous-titre {
	color: var(--text-on-accent);
	font-family: var(--font-editorial);
	font-size: clamp(1.25rem, 1vw + 1rem, 1.75rem);
	font-style: italic;
	font-weight: 400;
}

/* Les caractéristiques et le prix dans une carte translucide arrondie ; le
   bouton d'achat en pilule claire, pleine largeur de la carte. */
.livre__haut .livre__mesures {
	background: color-mix(in srgb, var(--text) 18%, transparent);
	border-radius: 16px;
	padding: var(--space-m);
}
.livre__haut .livre-commande__lien,
.livre .livre__haut .livre-commande__lien {
	background: var(--text-on-accent);
	border-radius: 999px;
	color: var(--accent);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	min-height: var(--cible);
	width: 100%;
}

/* La présentation : une seule taille, début et suite (2 novembre, W7 ter,
   décision de Phil) — le premier paragraphe n'est plus un chapô plus grand
   que la suite dépliée. */
.livre__presentation .livre-apropos,
.livre__presentation .livre-apropos__texte {
	line-height: var(--livre-presentation-interligne);
}

/* La biographie en carte de fond d'accent, rayon 16 px. */
.livre .rubrique--biographie {
	background: var(--accent-soft);
	border-radius: 16px;
	padding: var(--space-l);
}

/* « Du même auteur » sur une bande pleine largeur en fond secondaire, même
   mécanique que la bande des nouveautés : un pseudo-élément de la hauteur de
   la section, étalé par son ombre et coupé à sa hauteur, sans défilement. */
.livre__large > .rubrique--biblio {
	padding-block: var(--space-xl);
	position: relative;
	z-index: 0;
}
.livre__large > .rubrique--biblio::before {
	background: var(--surface-alt);
	box-shadow: 0 0 0 100vmax var(--surface-alt);
	clip-path: inset(0 -100vmax);
	content: "";
	inset: 0;
	position: absolute;
	z-index: -1;
}

/* -------------------------------------------------------------------------
 * SUITE DE L'HABILLAGE — recette de Phil du 29 octobre, 19h46 (suivi
 * § 2.115).
 * ---------------------------------------------------------------------- */

/* LE TEXTE COURANT EN FAMILLE D'INTERFACE — exception au CDC § 19.5, décidée
   par Phil le 29 octobre pour la contemporaine. Le CSS généré du duo pose
   `--font-body: var(--font-editorial)` sur `:root`, après cette feuille ;
   `html:root` l'emporte par la spécificité, sans `!important`. L'éditoriale
   reste aux titres, aux intitulés et à la titraille, qui la nomment. Avec le
   duo conseillé (« contemporain »), les deux familles sont Public Sans :
   rien ne change. */
html:root { --font-body: var(--font-ui); }

/* Le filet bas de l'en-tête : un pixel de blanc à 22 % sur l'accent, au lieu
   du gris clair du parent, qui se lisait blanc plein sur l'aplat. */
.bandeau-site { --entete-filet: color-mix(in srgb, var(--text-on-accent) 22%, var(--accent)); }

/* Les titres de page et le nom de la fiche auteur en grand corps
   éditorial, comme le titre de la fiche livre. */
.archive-intro__titre,
.page-standard__titre,
.introuvable__titre,
.auteur__nom {
	font-family: var(--font-editorial);
	font-size: clamp(2.5rem, 2.5vw + 1.75rem, 3.75rem);
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 1.05;
}

/* Les liens de section sur la ligne de l'intitulé, à droite, en pilule ; à
   moins de 48 rem, sous l'intitulé. Le lien reste après la grille dans le
   balisage : seule la grille de la section le place. La flèche du parent
   (`.lien-action::after`, « → » précédé d'une espace) perdait son espace dans
   la boîte flexible de la pilule : elle prend une espace insécable. */
.bloc--livres:has(> .bloc__debordement) {
	align-items: center;
	column-gap: var(--space-m);
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	/* Les écarts verticaux sont les marges de chaque rangée, pas l'écart
	   hérité du bloc. */
	row-gap: 0;
}
.bloc--livres:has(> .bloc__debordement) > * { grid-column: 1 / -1; }
.bloc--livres:has(> .bloc__debordement) > .bloc__intitule { grid-column: 1; grid-row: 1; }
.bloc--livres:has(> .bloc__debordement) > .bloc__debordement { grid-column: 2; grid-row: 1; margin: 0; }
.bloc--livres:has(> .bloc__debordement) > :not(.bloc__intitule, .bloc__accroche, .bloc__debordement) { margin-top: var(--space-l); }
@media (max-width: 47.99rem) {
	.bloc--livres:has(> .bloc__debordement) { grid-template-columns: minmax(0, 1fr); }
	.bloc--livres:has(> .bloc__debordement) > .bloc__debordement { grid-column: 1; grid-row: 2; justify-self: start; margin-top: var(--space-s); }
}
.bloc__debordement .lien-action::after { content: "\00a0→"; }

/* « Du même auteur » touche le pied : quand la bande est la dernière section
   de la fiche, l'écart avant le pied et le remplissage bas de la fiche
   tombent (jetons du parent, `--pied-ecart` et `--fin-de-page`, comme en
   Affiche) ; la bande respire par son propre remplissage. */
body:has(.livre .livre__large > .rubrique--biblio:last-child) {
	--pied-ecart: 0;
	--fin-de-page: 0;
}

/* -------------------------------------------------------------------------
 * RECETTE DE 20H00 (29 octobre, suivi § 2.116).
 * ---------------------------------------------------------------------- */

/* L'accroche sous l'intitulé (socle, `.bloc__accroche`) : atténuée sur
   l'aplat des nouveautés (4,62:1). Dans la grille de section, elle tient la
   deuxième ligne de la colonne du titre, et la pilule se centre sur les
   deux. */
.bloc--nouveautes .bloc__accroche { color: var(--text-on-accent-muted); }
.bloc__accroche { font-size: clamp(1.125rem, 0.6vw + 0.95rem, 1.375rem); }
.bloc--livres:has(> .bloc__debordement) > .bloc__accroche { grid-column: 1; grid-row: 2; }
.bloc--livres:has(> .bloc__accroche):has(> .bloc__debordement) > .bloc__debordement { grid-row: 1 / span 2; }
@media (max-width: 47.99rem) {
	.bloc--livres:has(> .bloc__accroche):has(> .bloc__debordement) > .bloc__debordement { grid-row: 3; }
}

/* Les titres de vignettes : une seule police partout, la famille
   d'interface en semi-gras — les rangées de la fiche (`.biblio-ligne`)
   posaient l'éditoriale. Archivo n'est servie qu'en 400 et 700 : le 600 se
   rend en 700. */
.livre-vignette__titre,
.livre-tuile__titre,
.catalogue-tuile__titre,
.biblio-ligne .livre-vignette__titre {
	font-family: var(--font-ui);
	font-weight: 600;
}

/* Les boutons de tri en pilules : l'actif plein en accent (texte sur accent,
   5,28:1), l'inactif en fond d'accent (accent, 4,53:1) ; sur une seule ligne
   à 375 px. */
.archive-tri { align-items: center; flex-wrap: nowrap; gap: var(--space-xs); white-space: nowrap; }
.archive-tri__liste { flex-wrap: nowrap; gap: var(--space-2xs); }
.archive-tri__courant,
.archive-tri a {
	border-radius: 999px;
	font-weight: 600;
	min-height: var(--cible);
	padding: 0 var(--space-s);
}
.archive-tri__courant { background: var(--accent); color: var(--text-on-accent); }
.archive-tri a { background: var(--accent-soft); color: var(--accent); }
.archive-tri a:hover,
.archive-tri a:focus-visible { background: var(--accent-soft); text-decoration: underline; text-underline-offset: 3px; }
/* En mobile, pas de pilule (1er novembre, point 62, décision de Phil) : les
   segments droits du catalogue, mêmes couleurs. */
@media (max-width: 47.99rem) {
	/* Une ligne tant qu'elle tient ; à 320 px, « Ordre de la collection »
	   l'élargit : les segments passent à la ligne au lieu de déborder. */
	.archive-tri { flex-wrap: wrap; font-size: var(--font-size-xs); gap: var(--space-2xs); }
	.archive-tri__liste { flex-wrap: wrap; }
	.archive-tri__courant,
	.archive-tri a { border-radius: 0; padding: 0 var(--space-xs); }
}

/* -------------------------------------------------------------------------
 * FICHE AUTEUR (29 octobre, CORRECTIONS point 57, suivi § 2.117) : la
 * bibliographie sur une bande pleine largeur en fond secondaire, même
 * mécanique que « Du même auteur » ; elle touche le pied quand elle ferme la
 * page.
 * ---------------------------------------------------------------------- */
.auteur .rubrique--bibliographie {
	/* Le texte léger (#767676) fait 4,16:1 sur le fond secondaire : les
	   légendes de la bande prennent le texte secondaire. */
	--text-faint: var(--text-muted);
	--list-author-color: var(--text-muted);
	padding-block: var(--space-xl);
	position: relative;
	z-index: 0;
}
.auteur .rubrique--bibliographie::before {
	background: var(--surface-alt);
	box-shadow: 0 0 0 100vmax var(--surface-alt);
	clip-path: inset(0 -100vmax);
	content: "";
	inset: 0;
	position: absolute;
	z-index: -1;
}
body:has(.auteur .rubriques > .rubrique--bibliographie:last-child) {
	--pied-ecart: 0;
	--fin-de-page: 0;
}

/* Le sous-titre d'un homonyme sur l'aplat des nouveautés (29 octobre). */
.bloc--nouveautes .livre-tuile__sous-titre { color: var(--text-on-accent-muted); }

/* -------------------------------------------------------------------------
 * FICHE AUTEUR, EN-TÊTE (2 novembre, W7 ter, décisions de Phil, suivi
 * § 2.164) : deux colonnes à 64 rem et plus seulement (le parent bascule à
 * 60) ; gouttière de 6 rem entre le portrait et le texte ; la biographie
 * à 26 px de la mention de rôle (la moitié des 52 d'avant), sur toute la
 * largeur de la colonne, au corps et à l'interligne de la présentation.
 * ---------------------------------------------------------------------- */
@media (min-width: 60rem) and (max-width: 63.99rem) {
	.fiche-auteur { grid-template-columns: minmax(0, 1fr); }
}
@media (min-width: 64rem) {
	.fiche-auteur { --author-columns-gap: 6rem; }
	.fiche-auteur__principal > .auteur__entete + .auteur__biographie { margin-top: calc(1.625rem - var(--fiche-ecart)); }
	.fiche-auteur__principal > .auteur__entete + .auteur__biographie .auteur__biographie-texte:first-child > :first-child { margin-top: 0; }
	/* Sans portrait, la biographie garde la mesure qu'elle a avec : la largeur
	   de la fiche moins le portrait et la gouttière, alignée à gauche (2
	   novembre, W7 ter, suivi § 2.167). */
	.fiche-auteur--sans-annexe .fiche-auteur__principal .auteur__biographie-texte { max-width: calc(100% - var(--book-aside-width) - var(--author-columns-gap)); }
}
.fiche-auteur__principal .auteur__biographie-texte {
	font-size: var(--livre-presentation-corps);
	line-height: var(--livre-presentation-interligne);
	max-width: none;
}

/* Rangées défilantes : la vignette de tête s'arrête à la largeur du dégradé
   de gauche, jamais dessous (2 novembre, W7 ter, décision de Phil, suivi
   § 2.165). Après « › », le dégradé ne voile plus que la gouttière et la fin
   de la vignette précédente ; en début de rangée, rien ne change. */
.liste-entrees--defilante.est-pilotee,
.biblio-ligne.est-pilotee,
.bloc-piste.est-pilotee {
	scroll-padding-inline-start: 4rem;
}

/* L'état d'un livre dans les listes (« Épuisé ») en texte simple, aligné à
   gauche sur le titre et l'année : ni fond ni retrait (2 novembre, W7 ter,
   décision de Phil, suivi § 2.166). « À la une » garde son aplat d'accent. */
.livre-etat:not(.livre-etat--epingle) {
	background: none;
	padding: 0;
}

/* -------------------------------------------------------------------------
 * RETOUCHES MOBILES (2 novembre, relevées par Phil sur www.auberon.fr à
 * 375 px, suivi § 2.170) : sous 48 rem seulement ; au-dessus, rien ne change.
 * ---------------------------------------------------------------------- */
@media (max-width: 47.99rem) {
	/* Les intitulés de section suivent la largeur de l'écran, puce comprise :
	   28 px à 375, 24 px à 320, 36 px dès 480. Les deux jetons : celui des
	   sections et celui des rubriques de fiche et de pages adoptées.
	   « Nouveautés » garde sa taille (règle propre, plus haut). */
	:root { --section-title-size: min(2.25rem, 7.5vw); }
	.livre,
	.rubriques-socle { --rubrique-corps: min(2.25rem, 7.5vw); }

	/* Les boutons ‹ › des rangées défilantes sont masqués : ils prenaient
	   92 px sur la ligne de l'intitulé. La rangée défile au doigt, ses
	   dégradés de suite restent. */
	.defilement__entete.a-defilement .defilement__commandes { display: none; }

	/* Accueil : la bande des nouveautés, quand elle ouvre la page, à moitié
	   de son retrait sous l'en-tête (40 px au lieu de 80). */
	.accueil-flux > .bloc--nouveautes:first-child { padding-block-start: calc(var(--accueil-nouveautes-retrait) / 2); }

	/* Fiche livre : la titraille à --space-s de la couverture (la pastille
	   de collection la touchait) ; l'encadré des caractéristiques à
	   --space-m du nom de l'auteur, la marge basse des contributeurs
	   retirée pour que l'écart soit exact ; la présentation à --space-l de
	   la fin de la bande. */
	.livre__haut .livre__texte { margin-top: var(--space-s); }
	.livre__haut .livre__titraille > :last-child,
	.livre__haut .livre__titraille > :last-child > :last-child { margin-bottom: 0; }
	.livre__haut .livre__mesures { margin-top: var(--space-m); }
	.livre__centre > .livre__presentation:first-child { margin-top: var(--space-l); }
}
