/*
 * Vue imprimable des articles et des fiches (print.php).
 *
 * Seule feuille de la page avec fonts.css : ni le CSS du thème ni celui des
 * plugins ne sont chargés. Les blocs du contenu (Gutenberg, bloc ACF « boxed »
 * de plugin-post-scriptum) sont donc stylés ici, en version sobre.
 *
 * À l'écran : aperçu façon feuille A4 avec une barre d'outils.
 */

:root {
	--encre: #1a1a1a;
	--gris: #6b6b6b;
	--filet: #d0d0d0;
	--fond-encadre: #f4f4f4;
	--turquoise: #00b6c3;
}

html { background: #e8e8e8; }

body.ao-print {
	margin: 0;
	font-family: 'Poppins', Arial, Helvetica, sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: var(--encre);
	-webkit-text-size-adjust: 100%;
}

/* Barre d'outils (écran) */
.print-toolbar {
	position: sticky;
	top: 0;
	z-index: 10;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 0.75em 1.5em;
	padding: 0.75em max(1em, calc((100% - 210mm) / 2));
	background: #fff;
	border-bottom: 1px solid var(--filet);
}
.print-toolbar__retour { color: var(--encre); text-decoration: none; }
.print-toolbar__retour:hover { text-decoration: underline; }
.print-toolbar__imprimer {
	font: inherit;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: #fff;
	background: var(--turquoise);
	border: 0;
	border-radius: 2em;
	padding: 0.55em 1.6em;
	cursor: pointer;
}
.print-toolbar__imprimer:hover { filter: brightness(0.93); }

/* Feuille */
.print-doc {
	box-sizing: border-box;
	max-width: 210mm;
	margin: 2em auto;
	padding: 15mm;
	background: #fff;
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.12);
}

/* En-tête */
.print-doc__header {
	margin-bottom: 1.5em;
}
.print-doc__marque {
	padding-bottom: 5mm;
	margin-bottom: 7mm;
	border-bottom: 1px solid var(--filet);
}
.print-doc__logo {
	display: block;
	width: 45mm;
	height: auto;
}
.print-doc__cat {
	font-size: 0.8em;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--gris);
	margin-bottom: 0.6em;
}
.print-doc__title {
	font-size: 1.9em;
	line-height: 1.25;
	font-weight: 700;
	margin: 0;
}

/* Chapô */
.print-doc__intro {
	margin-bottom: 1.5em;
	font-weight: 600;
}
.print-doc__intro p { margin: 0; }

/* Contenu */
.print-doc__content > :first-child { margin-top: 0; }
.print-doc__content p,
.print-doc__content ul,
.print-doc__content ol { margin: 0 0 1em; }
.print-doc__content ul,
.print-doc__content ol { padding-left: 1.4em; }
.print-doc__content li { margin-bottom: 0.25em; }
.print-doc__content h2,
.print-doc__content h3,
.print-doc__content h4 {
	line-height: 1.3;
	margin: 1.6em 0 0.6em;
}
.print-doc__content h2 { font-size: 1.35em; }
.print-doc__content h3 { font-size: 1.15em; }
.print-doc__content h4 { font-size: 1em; }
.print-doc__content a { color: inherit; text-decoration: underline; }
.print-doc__content img {
	max-width: 100%;
	height: auto;
}
.print-doc__content figure { margin: 1.5em 0; }
.print-doc__content figcaption { font-size: 0.8em; color: var(--gris); margin-top: 0.4em; }

.print-doc__content blockquote,
.print-doc__content .wp-block-quote {
	margin: 1.5em 0;
	padding: 0 0 0 1.2em;
	border-left: 3px solid var(--encre);
	font-style: italic;
}
.print-doc__content blockquote cite { display: block; font-size: 0.85em; font-style: normal; color: var(--gris); }

/* Bloc ACF « boxed » : encadré jaune arrondi à l'écran, sobre ici. */
.print-doc__content .wp-block-boxed {
	margin: 1.5em 0;
	padding: 1em 1.2em 0.2em;
	background: var(--fond-encadre);
	border: 1px solid var(--filet);
	border-radius: 4px;
}

.print-doc__content table { width: 100%; border-collapse: collapse; margin: 1.5em 0; font-size: 0.9em; }
.print-doc__content th,
.print-doc__content td { border: 1px solid var(--filet); padding: 0.4em 0.6em; text-align: left; vertical-align: top; }

/* Rien d'interactif sur papier */
.print-doc__content iframe,
.print-doc__content video,
.print-doc__content audio,
.print-doc__content .wp-block-embed,
.print-doc__content .wp-block-buttons,
.print-doc__content .wp-element-button,
.print-doc__content .wp-block-file__button,
.print-doc__content .heateor_sss_sharing_container { display: none; }

/* Pied : lien et QR code */
.print-doc__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8mm;
	margin-top: 2.5em;
	padding: 5mm 6mm;
	border: 1px solid var(--filet);
	border-radius: 4px;
}
.print-doc__lien strong { display: block; margin-bottom: 0.2em; }
.print-doc__lien span { font-size: 0.85em; word-break: break-all; }
.print-doc__qr { flex: 0 0 30mm; width: 30mm; height: 30mm; }
.print-doc__qr svg { display: block; width: 100%; height: 100%; }

@media (max-width: 600px) {
	.print-doc { margin: 0; padding: 1.25em 1em; box-shadow: none; }
	.print-doc__footer { flex-direction: column; align-items: flex-start; }
}

/* Impression */
@page {
	size: A4;
	margin: 15mm 15mm 18mm;
}
@media print {
	html, body.ao-print { background: #fff; }
	body.ao-print { font-size: 11pt; line-height: 1.5; color: #000; }
	.print-toolbar { display: none; }
	.print-doc { max-width: none; margin: 0; padding: 0; box-shadow: none; }
	.print-doc__title { font-size: 20pt; }
	.print-doc__content h2 { font-size: 14pt; }
	.print-doc__content h3 { font-size: 12.5pt; }
	.print-doc__content h2,
	.print-doc__content h3,
	.print-doc__content h4 { break-after: avoid; page-break-after: avoid; }
	.print-doc__content p,
	.print-doc__content li { orphans: 3; widows: 3; }
	.print-doc__content img,
	.print-doc__content figure,
	.print-doc__content blockquote,
	.print-doc__content .wp-block-boxed,
	.print-doc__content table,
	.print-doc__footer { break-inside: avoid; page-break-inside: avoid; }
	.print-doc__content .wp-block-boxed { background: none; }
	.print-doc__footer { flex-direction: row; align-items: center; }
}
