/*
 * Fichier : intemporris-personnes.css
 * Emplacement : designs/intemporris/assets/css/
 *
 * Responsabilité :
 * Les pages des personnes : l'archive (voix, plumes, invités, présentateurs)
 * et la fiche d'une personne. Une voix ou une plume travaille pour tous les
 * domaines : ces pages ne prennent la couleur d'aucun domaine, mais une
 * couleur neutre par famille de personnes, le violet ardoise pour les
 * plumes, le bleu ardoise pour les voix, l'ardoise du site pour les autres.
 * Les vignettes d'initiales gardent les six teintes que l'extension leur
 * donne. Les portraits gardent leur format : aucun n'est recadré.
 * La fenêtre de revendication d'une fiche prend le même verre.
 *
 * Dépendance :
 *   Cette feuille suit intemporris.css.
 *
 * Accessibilité : WCAG 2.1 niveau AA strict.
 *   - L'ordre de lecture reste celui du balisage.
 *   - La lettre choisie porte sa surface, son contour et sa graisse.
 *   - Ce qui répond au pointeur répond au focus clavier.
 */

:is(.abs-personnes, .abs-personne:has(> .abs-charpente)) {
	--intemporris-or: var(--intemporris-accent-personne, color-mix(in srgb, #3a5cab 30%, #7e8693));
}

/* Le violet ardoise des plumes, le même que l'accent neutre du lecteur ; le
   bleu ardoise des voix. */
:is(.abs-personnes-abs_plume, .abs-personne-abs_plume:has(> .abs-charpente)) {
	--intemporris-or: var(--intemporris-accent-plume, #6f63a6);
}

:is(.abs-personnes-abs_voix, .abs-personne-abs_voix:has(> .abs-charpente)) {
	--intemporris-or: var(--intemporris-accent-voix, #5677a8);
}

/* L'extension tire les six teintes des vignettes de son accent : il prend
   ici la couleur de la famille, et les vignettes gardent leurs six
   nuances. */
.abs-personnes {
	--abs-accent: var(--intemporris-or);
}


/* L'archive des personnes */

.abs-personnes .abs-personnes-entete {
	position: relative;
	margin: 0 0 var(--discovery-space-6, 1.5rem);
	padding-block-end: var(--discovery-space-5, 1.25rem);
}

.abs-personnes .abs-personnes-entete::after {
	content: "";
	position: absolute;
	inset-inline: 0;
	inset-block-end: 0;
	block-size: var(--intemporris-filet-epaisseur, 1px);
	background: linear-gradient(90deg, var(--intemporris-accent), var(--intemporris-filet-accent) 40%, transparent 85%);
}

.abs-personnes .abs-personnes-titre {
	margin: 0;
	font-size: var(--discovery-text-4xl, 2.5rem);
	font-weight: var(--discovery-weight-bold, 700);
	letter-spacing: var(--intemporris-approche-titre);
	line-height: 1.05;
}

/* Le bouton qui montre ou masque l'alphabet : une capsule de verre. */
.abs-personnes .abs-personnes-divulgation:not([hidden]) {
	display: inline-flex;
	align-items: center;
	min-block-size: var(--intemporris-cible);
	margin-block-end: var(--discovery-space-3, 0.75rem);
	padding-inline: var(--discovery-space-5, 1.25rem);
	border: 1px solid var(--intemporris-filet-accent);
	border-radius: var(--intemporris-rond);
	background:
		linear-gradient(180deg, color-mix(in srgb, var(--discovery-color-text, #ffffff) 10%, transparent), transparent 46%),
		color-mix(in srgb, var(--intemporris-accent) 8%, var(--intemporris-verre-fume));
	color: var(--discovery-color-text, #ffffff);
	font-size: var(--discovery-text-sm, 0.875rem);
	transition: border-color var(--intemporris-duree), box-shadow var(--intemporris-duree);
}

.abs-personnes .abs-personnes-divulgation:is(:hover, :focus-visible) {
	border-color: var(--intemporris-verre-bord-vif);
	box-shadow: 0 0 var(--discovery-space-8, 2rem) var(--intemporris-verre-halo);
}

/* L'alphabet : une plaque de verre, chaque lettre une touche. La lettre
   choisie porte sa surface, son contour et sa graisse ; une lettre sans
   personne s'efface. */
.abs-personnes .abs-personnes-alphabet {
	display: flex;
	flex-wrap: wrap;
	gap: var(--discovery-space-1, 0.25rem);
	inline-size: fit-content;
	max-inline-size: 100%;
	margin: 0;
	padding: var(--discovery-space-1, 0.25rem);
	border: 1px solid var(--intemporris-filet);
	border-radius: var(--intemporris-rond);
	background:
		linear-gradient(180deg, var(--intemporris-verre-reflet), transparent 42%),
		var(--intemporris-verre-fume-clair);
	list-style: none;
}

.abs-personnes .abs-personnes-touche {
	min-inline-size: 2.25rem;
	min-block-size: 2.25rem;
	padding-inline: var(--discovery-space-2, 0.5rem);
	border: 1px solid transparent;
	border-radius: var(--intemporris-rond);
	background: none;
	color: var(--discovery-color-text, #ffffff);
	font-size: var(--discovery-text-sm, 0.875rem);
	transition: background-color var(--intemporris-duree), border-color var(--intemporris-duree);
}

.abs-personnes .abs-personnes-touche[aria-pressed="true"] {
	color: var(--discovery-color-text, #ffffff);
}

.abs-personnes .abs-personnes-touche:hover,
.abs-personnes .abs-personnes-touche:focus-visible {
	background-color: color-mix(in srgb, var(--discovery-color-text, #ffffff) 8%, transparent);
}

.abs-personnes .abs-personnes-touche[aria-pressed="true"] {
	border-color: var(--intemporris-filet-accent);
	background-color: color-mix(in srgb, var(--intemporris-accent) 26%, transparent);
	font-weight: var(--discovery-weight-semibold, 600);
}

.abs-personnes .abs-personnes-touche[disabled] {
	color: color-mix(in srgb, var(--discovery-color-muted, #b3b3b3) 55%, transparent);
	background: none;
}

.abs-personnes .abs-personnes-compte {
	margin: var(--discovery-space-4, 1rem) 0 var(--discovery-space-6, 1.5rem);
	color: var(--discovery-color-muted, #b3b3b3);
	font-size: var(--discovery-text-sm, 0.875rem);
}

/* La carte d'une personne : le portrait ou la vignette se tient seul, dans
   son format, sans dalle ; aucun portrait n'est recadré. Le nom se lit
   dessous, tenu par un filet court qui s'allonge au passage de la main ou
   au focus. À défaut de portrait, les initiales se tiennent au centre, en
   clair, sur la teinte que l'extension leur donne. */
.abs-personnes .abs-personnes-grille {
	row-gap: var(--discovery-space-8, 2rem);
}

.abs-personnes .abs-personne-lien {
	display: grid;
	gap: var(--discovery-space-3, 0.75rem);
	color: var(--discovery-color-text, #ffffff);
	text-decoration: none;
}

.abs-personnes .abs-personne-portrait {
	border-radius: var(--intemporris-rayon);
	box-shadow: 0 0 0 1px var(--intemporris-filet);
	transition: box-shadow var(--intemporris-duree);
}

.abs-personnes .abs-personne-lien:is(:hover, :focus-visible) .abs-personne-portrait {
	box-shadow:
		0 0 0 1px var(--intemporris-filet-accent),
		0 1.5rem 2.5rem -1.75rem color-mix(in srgb, var(--intemporris-accent) 80%, transparent);
}

.abs-personnes .abs-personne-initiales {
	display: grid;
	place-items: center;
	background-image: radial-gradient(ellipse 80% 70% at 50% 35%, color-mix(in srgb, var(--intemporris-blanc, #ffffff) 6%, transparent), transparent 70%);
}

.abs-personnes .abs-personne-initiales-texte {
	color: color-mix(in srgb, var(--intemporris-blanc, #ffffff) 90%, transparent);
	font-size: clamp(1.4rem, 1rem + 1.4vw, 2.1rem);
	font-weight: var(--discovery-weight-medium, 500);
	letter-spacing: 0.12em;
}

.abs-personnes .abs-personne-texte {
	position: relative;
	display: grid;
	gap: var(--discovery-space-1, 0.25rem);
	padding-block-start: var(--discovery-space-3, 0.75rem);
}

.abs-personnes .abs-personne-texte::before {
	content: "";
	position: absolute;
	inset-block-start: 0;
	inset-inline-start: 0;
	inline-size: 1.5rem;
	block-size: 1px;
	background: var(--intemporris-filet-accent);
	transition: inline-size calc(var(--intemporris-duree) * 2);
}

.abs-personnes .abs-personne-lien:is(:hover, :focus-visible) .abs-personne-texte::before {
	inline-size: 100%;
}

.abs-personnes .abs-personne-nom {
	margin: 0;
	color: var(--discovery-color-text, #ffffff);
	font-size: var(--discovery-text-base, 1rem);
	font-weight: var(--discovery-weight-medium, 500);
	line-height: var(--discovery-line-tight, 1.2);
}


/* La mention d'une personne décédée : de petites capitales grises, sous le
   nom. Elle se lit, elle ne signale pas par la couleur. */
.abs-personnes .abs-personne-statut {
	color: var(--discovery-color-muted, #b3b3b3);
	font-size: var(--discovery-text-xs, 0.75rem);
	letter-spacing: var(--intemporris-approche-etiquette);
	text-transform: uppercase;
}

.abs-personnes .abs-personnes-aucune {
	margin: var(--discovery-space-6, 1.5rem) 0;
	color: var(--discovery-color-muted, #b3b3b3);
}


/* La fiche d'une personne */

/* Sans portrait, le bloc du visuel garde la place d'un portrait, au même
   format, en verre sombre, avec une lumière basse de la couleur de la
   famille : la colonne de tête ne reste pas vide. Un portrait garde son
   format et prend le cadre fin de la dalle. */
/* La bande des onglets prend l'air qui la sépare de la tête de la fiche. */
.abs-personne:has(> .abs-charpente) .abs-charpente-zone-bande {
	margin-block-start: var(--discovery-space-10, 2.5rem);
}

.abs-personne:has(> .abs-charpente) .abs-personne-visuel:not(:has(img)) {
	inline-size: min(100%, 20rem);
	aspect-ratio: 4 / 5;
	border: 1px solid var(--intemporris-filet);
	border-radius: var(--intemporris-rayon);
	background:
		radial-gradient(ellipse 80% 45% at 50% 100%, color-mix(in srgb, var(--intemporris-accent) 26%, transparent), transparent 75%),
		linear-gradient(180deg, color-mix(in srgb, var(--intemporris-blanc, #ffffff) 4%, transparent), transparent 40%),
		var(--intemporris-dalle-bas, #0a0a0c);
}

.abs-personne:has(> .abs-charpente) .abs-personne-visuel img {
	display: block;
	max-inline-size: 100%;
	block-size: auto;
	border-radius: var(--intemporris-rayon);
	box-shadow:
		0 0 0 1px var(--intemporris-filet-accent),
		0 1.5rem 3rem -1.5rem color-mix(in srgb, var(--intemporris-accent) 60%, transparent);
}

/* Le crédit de la photo : une ligne grise sous le portrait. */
.abs-personne:has(> .abs-charpente) .abs-personne-credit {
	margin: var(--discovery-space-2, 0.5rem) 0 0;
	color: var(--discovery-color-muted, #b3b3b3);
	font-size: var(--discovery-text-xs, 0.75rem);
}

/* L'introduction : le nom, le nom officiel et l'identifiant ISNI quand ils
   existent, puis les dates et la nationalité en gris sur une ligne, la
   mention de statut, et la présence en ligne. */
.abs-personne:has(> .abs-charpente) .abs-personne-officiel {
	margin: 0 0 var(--discovery-space-2, 0.5rem);
	color: color-mix(in srgb, var(--discovery-color-text, #ffffff) 86%, var(--discovery-color-muted, #b3b3b3));
	font-size: var(--discovery-text-base, 1rem);
	font-style: italic;
}

.abs-personne:has(> .abs-charpente) .abs-personne-isni {
	margin: 0 0 var(--discovery-space-2, 0.5rem);
	color: var(--discovery-color-muted, #b3b3b3);
	font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
	font-size: var(--discovery-text-xs, 0.75rem);
	letter-spacing: 0.04em;
}

.abs-personne:has(> .abs-charpente) .abs-personne-statut {
	margin: var(--discovery-space-2, 0.5rem) 0 0;
	color: var(--discovery-color-muted, #b3b3b3);
	font-size: var(--discovery-text-xs, 0.75rem);
	letter-spacing: var(--intemporris-approche-etiquette);
	text-transform: uppercase;
}

.abs-personne:has(> .abs-charpente) .abs-personne-titre {
	margin: 0 0 var(--discovery-space-3, 0.75rem);
	font-size: clamp(2rem, 1.4rem + 2vw, 2.9rem);
	letter-spacing: var(--intemporris-approche-titre);
	line-height: 1.05;
	text-align: start;
}

.abs-personne:has(> .abs-charpente) :is(.abs-personne-dates, .abs-personne-nationalite) {
	display: inline;
	margin: 0;
	color: var(--discovery-color-muted, #b3b3b3);
	font-size: var(--discovery-text-sm, 0.875rem);
}

.abs-personne:has(> .abs-charpente) .abs-personne-dates + .abs-personne-nationalite::before {
	content: "\b7";
	margin-inline: var(--discovery-space-2, 0.5rem);
}

.abs-personne:has(> .abs-charpente) .abs-personne-presence {
	margin-block-start: var(--discovery-space-5, 1.25rem);
}

.abs-personne:has(> .abs-charpente) .abs-personne-liens:not([hidden]) {
	display: flex;
	flex-wrap: wrap;
	gap: var(--discovery-space-3, 0.75rem);
	margin: var(--discovery-space-4, 1rem) 0 0;
	padding: 0;
	list-style: none;
}

.abs-personne:has(> .abs-charpente) .abs-personne-lien a,
.abs-personne:has(> .abs-charpente) .abs-personne-divulgation:not([hidden]) {
	display: inline-flex;
	align-items: center;
	gap: var(--discovery-space-2, 0.5rem);
	min-block-size: var(--intemporris-cible);
	padding-inline: var(--discovery-space-4, 1rem);
	border: 1px solid var(--intemporris-filet-accent);
	border-radius: var(--intemporris-rond);
	background:
		linear-gradient(180deg, color-mix(in srgb, var(--discovery-color-text, #ffffff) 10%, transparent), transparent 46%),
		color-mix(in srgb, var(--intemporris-accent) 8%, var(--intemporris-verre-fume));
	color: var(--discovery-color-text, #ffffff);
	font-size: var(--discovery-text-sm, 0.875rem);
	text-decoration: none;
	transition: border-color var(--intemporris-duree), box-shadow var(--intemporris-duree);
}

.abs-personne:has(> .abs-charpente) :is(.abs-personne-lien a, .abs-personne-divulgation):is(:hover, :focus-visible) {
	border-color: var(--intemporris-verre-bord-vif);
	box-shadow: 0 0 var(--discovery-space-8, 2rem) var(--intemporris-verre-halo);
}

/* Un média de présentation, vidéo ou audio, garde le lecteur tel qu'il est ;
   la feuille ne pose que l'air autour : entre le portrait et le premier
   média, puis entre deux médias. */
.abs-personne:has(> .abs-charpente) .abs-personne-presentation:not(.abs-personne-vide) {
	margin-block-start: var(--discovery-space-8, 2rem);
}

.abs-personne:has(> .abs-charpente) .abs-personne-media + .abs-personne-media {
	margin-block-start: var(--discovery-space-6, 1.5rem);
}

/* Les onglets et leurs panneaux : la plaque de verre des fiches. */
.abs-personne:has(> .abs-charpente) .abs-onglets {
	display: flex;
	flex-wrap: nowrap;
	gap: var(--discovery-space-1, 0.25rem);
	inline-size: fit-content;
	max-inline-size: 100%;
	margin: 0 0 var(--discovery-space-6, 1.5rem);
	padding: var(--discovery-space-1, 0.25rem);
	overflow-x: auto;
	border: 1px solid var(--intemporris-filet);
	border-radius: var(--intemporris-rond);
	background:
		linear-gradient(180deg, var(--intemporris-verre-reflet), transparent 42%),
		var(--intemporris-verre-fume-clair);
	scrollbar-width: none;
	list-style: none;
}

.abs-personne:has(> .abs-charpente) .abs-onglets > li {
	flex: 0 0 auto;
	margin: 0;
}

.abs-personne:has(> .abs-charpente) .abs-onglet {
	min-block-size: var(--intemporris-cible);
	padding-inline: var(--discovery-space-5, 1.25rem);
	border: 0;
	border-radius: var(--intemporris-rond);
	background: none;
	color: var(--discovery-color-muted, #b3b3b3);
	font-size: var(--discovery-text-sm, 0.875rem);
	white-space: nowrap;
	transition: color var(--intemporris-duree), background-color var(--intemporris-duree);
}

.abs-personne:has(> .abs-charpente) .abs-onglet:hover {
	color: var(--discovery-color-text, #ffffff);
	background-color: color-mix(in srgb, var(--discovery-color-text, #ffffff) 6%, transparent);
}

.abs-personne:has(> .abs-charpente) .abs-onglet[aria-selected="true"] {
	color: var(--discovery-color-text, #ffffff);
	font-weight: var(--discovery-weight-semibold, 600);
	background-color: color-mix(in srgb, var(--intemporris-accent) 26%, transparent);
}

.abs-personne:has(> .abs-charpente) .abs-panneau-titre {
	display: flex;
	align-items: center;
	gap: var(--discovery-space-3, 0.75rem);
	margin: 0 0 var(--discovery-space-4, 1rem);
	color: var(--intemporris-accent-texte);
	font-size: var(--discovery-text-sm, 0.875rem);
	font-weight: var(--discovery-weight-semibold, 600);
	letter-spacing: var(--intemporris-approche-etiquette);
	text-transform: uppercase;
}

.abs-personne:has(> .abs-charpente) .abs-panneau-titre::before {
	content: "";
	flex: none;
	inline-size: var(--discovery-space-8, 2rem);
	block-size: 1px;
	background: var(--intemporris-filet-accent);
}

.abs-personne:has(> .abs-charpente) :is(.abs-personne-presentation, .abs-panneau-corps:not(:has(.abs-grille, .abs-personne-grille))) {
	max-inline-size: 46rem;
	color: color-mix(in srgb, var(--discovery-color-text, #ffffff) 88%, var(--discovery-color-muted, #b3b3b3));
	line-height: 1.7;
}

.abs-personne:has(> .abs-charpente) :is(.abs-personne-presentation, .abs-panneau-corps) p {
	margin: 0 0 var(--discovery-space-4, 1rem);
}

/* Un paragraphe vide laissé par l'éditeur ne prend pas de place. */
.abs-personne:has(> .abs-charpente) .abs-panneau-corps p:empty {
	display: none;
}

/* Les œuvres de la personne : des cartes, avec la forme de base que la page
   ne pose pas et la dalle du socle. */
.abs-personne:has(> .abs-charpente) .abs-carte-lien {
	display: flex;
	flex-direction: column;
	inline-size: 100%;
	text-decoration: none;
}

.abs-personne:has(> .abs-charpente) :is(.abs-carte-image, .abs-carte-couverture) {
	display: block;
	inline-size: 100%;
}

.abs-personne:has(> .abs-charpente) .abs-carte-couverture {
	block-size: auto;
}

.abs-personne:has(> .abs-charpente) .abs-carte-titre {
	margin: 0;
	color: inherit;
	font-size: var(--discovery-text-base, 1rem);
	line-height: var(--discovery-line-tight, 1.2);
}

.abs-personne:has(> .abs-charpente) .abs-carte .abs-meta {
	margin: 0;
	color: var(--discovery-color-muted, #b3b3b3);
	font-size: var(--discovery-text-sm, 0.875rem);
}

/* La même personne, sous d'autres rôles : un titre à filet, une phrase
   grise, puis chaque fiche liée en petite plaque de verre, le nom en clair
   et le rôle en petites capitales. */
.abs-personne:has(> .abs-charpente) .abs-personne-profils:not(.abs-personne-vide) {
	margin-block-start: var(--discovery-space-10, 2.5rem);
}

.abs-personne:has(> .abs-charpente) .abs-personne-profils-titre {
	display: flex;
	align-items: center;
	gap: var(--discovery-space-3, 0.75rem);
	margin: 0 0 var(--discovery-space-3, 0.75rem);
	color: var(--intemporris-accent-texte);
	font-size: var(--discovery-text-sm, 0.875rem);
	font-weight: var(--discovery-weight-semibold, 600);
	letter-spacing: var(--intemporris-approche-etiquette);
	text-transform: uppercase;
}

.abs-personne:has(> .abs-charpente) .abs-personne-profils-titre::before {
	content: "";
	flex: none;
	inline-size: var(--discovery-space-8, 2rem);
	block-size: 1px;
	background: var(--intemporris-filet-accent);
}

.abs-personne:has(> .abs-charpente) .abs-personne-profils-intro {
	margin: 0 0 var(--discovery-space-4, 1rem);
	color: var(--discovery-color-muted, #b3b3b3);
	font-size: var(--discovery-text-sm, 0.875rem);
}

.abs-personne:has(> .abs-charpente) .abs-personne-profils-liste {
	display: flex;
	flex-wrap: wrap;
	gap: var(--discovery-space-3, 0.75rem);
	margin: 0;
	padding: 0;
	list-style: none;
}

.abs-personne:has(> .abs-charpente) .abs-personne-profil a {
	display: grid;
	gap: var(--discovery-space-1, 0.25rem);
	min-inline-size: 12rem;
	padding: var(--discovery-space-3, 0.75rem) var(--discovery-space-4, 1rem);
	border: 1px solid var(--intemporris-filet);
	border-radius: var(--intemporris-rayon);
	background: color-mix(in srgb, var(--discovery-color-text, #ffffff) 3.5%, transparent);
	box-shadow: inset 0 1px 0 color-mix(in srgb, var(--intemporris-accent) 32%, transparent);
	color: var(--discovery-color-text, #ffffff);
	text-decoration: none;
	transition: border-color var(--intemporris-duree);
}

.abs-personne:has(> .abs-charpente) .abs-personne-profil a:is(:hover, :focus-visible) {
	border-color: var(--intemporris-filet-accent);
}

.abs-personne:has(> .abs-charpente) .abs-personne-profil-nom {
	color: var(--discovery-color-text, #ffffff);
	font-weight: var(--discovery-weight-medium, 500);
}

.abs-personne:has(> .abs-charpente) .abs-personne-profil-type {
	color: color-mix(in srgb, var(--discovery-color-muted, #b3b3b3) 82%, var(--intemporris-accent));
	font-size: var(--discovery-text-xs, 0.75rem);
	letter-spacing: var(--intemporris-approche-etiquette);
	text-transform: uppercase;
}

/* Revendiquer la fiche : une action seconde, en capsule discrète, au bas de
   la page. Les messages qui l'accompagnent se lisent en gris. */
.abs-personne:has(> .abs-charpente) .abs-personne-revendication:not(.abs-personne-vide) {
	margin-block-start: var(--discovery-space-10, 2.5rem);
	padding-block-start: var(--discovery-space-5, 1.25rem);
	border-block-start: 1px solid var(--intemporris-filet);
}

.abs-personne:has(> .abs-charpente) .abs-personne-revendiquer {
	min-block-size: var(--intemporris-cible);
	padding-inline: var(--discovery-space-5, 1.25rem);
	border: 1px solid var(--intemporris-filet);
	border-radius: var(--intemporris-rond);
	background: none;
	color: color-mix(in srgb, var(--discovery-color-text, #ffffff) 86%, var(--discovery-color-muted, #b3b3b3));
	font-size: var(--discovery-text-sm, 0.875rem);
	transition: border-color var(--intemporris-duree), color var(--intemporris-duree);
}

.abs-personne:has(> .abs-charpente) .abs-personne-revendiquer:is(:hover, :focus-visible) {
	border-color: var(--intemporris-filet-accent);
	color: var(--discovery-color-text, #ffffff);
}

.abs-personne:has(> .abs-charpente) .abs-personne-revendication-mention {
	margin: 0 0 var(--discovery-space-3, 0.75rem);
	color: var(--discovery-color-muted, #b3b3b3);
	font-size: var(--discovery-text-sm, 0.875rem);
}

/* La fenêtre de revendication : une plaque de verre sombre, posée sur un
   voile de nuit. Le titre prend le filet de la famille ; les engagements se
   lisent en liste aérée, chacun précédé d'un court tiret ; les deux issues
   sont deux capsules de même hauteur, "je continue" portée par la couleur
   de la famille, "j'annule" en retrait. L'ordre et le fonctionnement de la
   fenêtre restent ceux du thème. */
.abs-revendication-dialogue .discovery-dialogue-fond {
	background: var(--intemporris-fenetre-voile-nuit, rgb(3 4 8 / 0.78));
	backdrop-filter: blur(6px);
}

.abs-revendication-dialogue .discovery-dialogue-panneau {
	max-inline-size: 38rem;
	/* le panneau pose déjà un écart entre ses éléments : les marges propres
	   à chacun sont donc nulles, et l'écart se règle ici */
	gap: var(--discovery-space-5, 1.25rem);
	padding: clamp(var(--discovery-space-5, 1.25rem), 6vw, var(--discovery-space-8, 2rem));
	border: 1px solid color-mix(in srgb, var(--intemporris-accent, #6f63a6) 40%, transparent);
	border-radius: var(--intemporris-rayon-grand, 1.25rem);
	background:
		linear-gradient(180deg, color-mix(in srgb, var(--intemporris-blanc, #ffffff) 7%, transparent), transparent 30%),
		color-mix(in srgb, var(--intemporris-accent, #6f63a6) 7%, var(--intemporris-fenetre-plaque-nuit, #0c0c11));
	box-shadow: 0 2rem 5rem -1.5rem var(--intemporris-ombre-profonde, rgb(0 0 0 / 0.9));
	color: var(--discovery-color-text, #ffffff);
}

.abs-revendication-dialogue .abs-revendication-dialogue-titre {
	display: flex;
	align-items: center;
	gap: var(--discovery-space-3, 0.75rem);
	margin: 0;
	font-size: var(--discovery-text-xl, 1.25rem);
	letter-spacing: var(--intemporris-approche-titre, -0.02em);
}

.abs-revendication-dialogue .abs-revendication-dialogue-titre::before {
	content: "";
	flex: none;
	inline-size: var(--discovery-space-6, 1.5rem);
	block-size: 1px;
	background: var(--intemporris-filet-accent, #6f63a6);
}

.abs-revendication-dialogue .abs-revendication-dialogue-intro {
	margin: 0;
	color: color-mix(in srgb, var(--discovery-color-text, #ffffff) 88%, var(--discovery-color-muted, #b3b3b3));
	line-height: 1.6;
}

.abs-revendication-dialogue .abs-revendication-dialogue-liste {
	display: grid;
	gap: var(--discovery-space-3, 0.75rem);
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: var(--discovery-text-sm, 0.875rem);
	line-height: 1.55;
}

.abs-revendication-dialogue .abs-revendication-dialogue-liste li {
	position: relative;
	padding-inline-start: var(--discovery-space-6, 1.5rem);
	color: color-mix(in srgb, var(--discovery-color-text, #ffffff) 86%, var(--discovery-color-muted, #b3b3b3));
}

.abs-revendication-dialogue .abs-revendication-dialogue-liste li::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	inset-block-start: 0.7em;
	inline-size: 0.75rem;
	block-size: 1px;
	background: var(--intemporris-filet-accent, #6f63a6);
}

.abs-revendication-dialogue .abs-revendication-dialogue-issues {
	display: flex;
	flex-wrap: wrap;
	gap: var(--discovery-space-3, 0.75rem);
	padding-block-start: var(--discovery-space-2, 0.5rem);
}

.abs-revendication-dialogue :is(.abs-revendication-annuler, .abs-revendication-poursuivre) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	/* côte à côte quand la place le permet, l'une sous l'autre sinon, et
	   toujours sur toute la largeur */
	flex: 1 1 auto;
	min-block-size: var(--intemporris-cible, 2.75rem);
	padding: var(--discovery-space-2, 0.5rem) var(--discovery-space-5, 1.25rem);
	text-align: center;
	line-height: 1.3;
	border-radius: var(--intemporris-rond, 999px);
	font-size: var(--discovery-text-sm, 0.875rem);
	text-decoration: none;
	transition: border-color var(--intemporris-duree, 0.2s), background-color var(--intemporris-duree, 0.2s);
}

.abs-revendication-dialogue .abs-revendication-annuler {
	border: 1px solid var(--intemporris-filet, rgb(255 255 255 / 0.14));
	background: none;
	color: color-mix(in srgb, var(--discovery-color-text, #ffffff) 86%, var(--discovery-color-muted, #b3b3b3));
}

.abs-revendication-dialogue .abs-revendication-poursuivre {
	border: 1px solid color-mix(in srgb, var(--intemporris-accent, #6f63a6) 70%, transparent);
	background: color-mix(in srgb, var(--intemporris-accent, #6f63a6) 30%, transparent);
	color: var(--discovery-color-text, #ffffff);
	font-weight: var(--discovery-weight-semibold, 600);
}

.abs-revendication-dialogue .abs-revendication-annuler:is(:hover, :focus-visible) {
	border-color: var(--intemporris-filet-accent, #6f63a6);
	color: var(--discovery-color-text, #ffffff);
}

.abs-revendication-dialogue .abs-revendication-poursuivre:is(:hover, :focus-visible) {
	background: color-mix(in srgb, var(--intemporris-accent, #6f63a6) 44%, transparent);
}


/* Le fond des personnes */

/* Le fond des personnes : une chambre sobre. Trois lueurs très basses de la
   couleur de la famille, un rai de lampe oblique et très pâle qui tombe du
   haut à droite et s'éteint avant le milieu de la page, et un grain très
   fin sur le tout. Rien ne bouge et rien ne porte de texte ; le noir reste
   largement majoritaire. Noir sous l'en-tête. */
body:is(.post-type-archive-abs_voix, .post-type-archive-abs_plume, .post-type-archive-abs_invite, .post-type-archive-abs_presentateur, .single-abs_voix, .single-abs_plume, .single-abs_invite, .single-abs_presentateur) {
	overflow-x: clip;
}

:is(.abs-personnes, .abs-personne:has(> .abs-charpente)) {
	--intemporris-personnes-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23g)'/%3E%3C/svg%3E");
	position: relative;
	/* de l'air sous le dernier élément, le temps que le fond s'éteigne */
	padding-block-end: var(--discovery-space-16, 4rem);
}

:is(.abs-personnes, .abs-personne:has(> .abs-charpente))::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset-block: -6rem 0;
	inset-inline: calc(50% - 50vw);
	pointer-events: none;
	background:
		radial-gradient(ellipse 46rem 30rem at 12% 22rem, color-mix(in srgb, var(--intemporris-accent) 15%, transparent), transparent 72%),
		radial-gradient(ellipse 40rem 34rem at 96% 62rem, color-mix(in srgb, var(--intemporris-accent) 10%, transparent), transparent 72%),
		radial-gradient(ellipse 60rem 26rem at 40% 100%, color-mix(in srgb, var(--intemporris-accent) 8%, transparent), transparent 75%),
		/* le rai s'éteint dans la nuit avant le milieu de la page */
		linear-gradient(transparent 55%, var(--discovery-color-background, #000000)) 0 0 / 100% 60rem no-repeat,
		linear-gradient(118deg, transparent 52%, color-mix(in srgb, var(--intemporris-accent) 11%, transparent) 64%, color-mix(in srgb, var(--intemporris-accent) 5%, transparent) 72%, transparent 82%) 0 0 / 100% 60rem no-repeat;
	/* le fond naît sous l'en-tête et s'éteint avant le pied de page */
	-webkit-mask-image: linear-gradient(transparent, var(--intemporris-masque, #000) 16rem, var(--intemporris-masque, #000) calc(100% - 12rem), transparent);
	mask-image: linear-gradient(transparent, var(--intemporris-masque, #000) 16rem, var(--intemporris-masque, #000) calc(100% - 12rem), transparent);
}

@media (prefers-contrast: more) {

	:is(.abs-personnes, .abs-personne:has(> .abs-charpente))::before {
		display: none;
	}
}

/* Le grain de la chambre. */
:is(.abs-personnes, .abs-personne:has(> .abs-charpente))::after {
	content: "";
	position: absolute;
	z-index: -1;
	inset-block: -6rem 0;
	inset-inline: calc(50% - 50vw);
	background: color-mix(in srgb, var(--intemporris-accent) 34%, var(--intemporris-argent, #c8d0dc));
	opacity: 0.06;
	-webkit-mask-image: var(--intemporris-personnes-grain), linear-gradient(transparent, var(--intemporris-masque, #000) 18rem, var(--intemporris-masque, #000) calc(100% - 12rem), transparent);
	-webkit-mask-composite: source-in;
	mask-image: var(--intemporris-personnes-grain), linear-gradient(transparent, var(--intemporris-masque, #000) 18rem, var(--intemporris-masque, #000) calc(100% - 12rem), transparent);
	mask-composite: intersect;
	pointer-events: none;
}

@media (prefers-contrast: more) {

	:is(.abs-personnes, .abs-personne:has(> .abs-charpente))::after {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {

	.abs-personnes :is(.abs-personnes-divulgation, .abs-personnes-touche, .abs-personne-portrait),
	.abs-personnes .abs-personne-texte::before,
	.abs-personne:has(> .abs-charpente) :is(.abs-personne-lien a, .abs-personne-divulgation, .abs-onglet, .abs-personne-profil a, .abs-personne-revendiquer) {
		transition: none;
	}

	.abs-revendication-dialogue :is(.abs-revendication-annuler, .abs-revendication-poursuivre) {
		transition: none;
	}
}
