/*
Theme Name: Iconic One Pro Child
Description: Theme enfant de Iconic One Pro
Author: JMF
Author URI: http://www.mathprepa.fr
Version: 1.
Template: iconic-one-pro
*/

/* Nettoyage local : cascade et réglages actifs conservés. */

/* Encadrés du cours : propositions, définitions, exercices et axiomes */
.propo {
	width: auto;
	background-color: #D0FFFF;
	font-size: 1em;
	color: #600020;
	margin: 0;
	padding: 15px;
	border: 1px solid #8daac4;
	border-radius: 8px;
}

.propo-titre {
	margin-bottom: 0.7em;
	font-size: 110%;
}

.propo-contenu,
.propo-contenu p,
.propo-contenu li {
	line-height: 1.85;
}

.propo-contenu p {
	margin-top: 0;
	margin-bottom: 0.7em;
}

.propo-contenu > :first-child {
	margin-top: 0;
}

.propo-contenu > :last-child {
	margin-bottom: 0;
}

.defi {
	width: auto;
	background-color: #FFFFF4;
	font-size: 1em;
	color: #600020;
	margin: 0;
	padding: 15px;
	border: 1px solid #8daac4;
	border-radius: 8px;
}

.defi-titre {
	margin-bottom: 0.7em;
	font-size: 110%;
}

.defi-contenu > :first-child {
	margin-top: 0;
}

.defi-contenu > :last-child {
	margin-bottom: 0;
}

.defi .defi-contenu > p:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
}

.defi {
	padding-bottom: 8px;
}

.exo {
	width: auto;
	background-color: rgba(240,248,240,0.8);
	color: #600020;
	font-size: 100%;
	margin-bottom: -1em;
	padding: 0.5em;
	line-height: 175%;
}

.axiome {
	background-color: #f5f5f5;
	border: 1px solid #c8c8c8;
	border-radius: 8px;
	padding: 15px 20px;
	margin: 1em 0;
}

.entry-content .axiome > p:first-child {
	margin-top: 0;
	margin-bottom: 0.6em;
}

.entry-content .axiome > p:last-child {
	margin-bottom: 0;
}

.site-header {
	width: 100%;
}

.searchandfilter li {
	list-style: none;
	display: inline-block;
	padding-right: 10px;
	margin-left: 0;
}

.themonic-logo {
	padding: 17px;
	float: left;
	margin: 10px 0;
}

.themonic-logo h1 a {
	float: right;
	text-shadow: 0.1px 1px 2px #888888;
	font-size: 34px;
	text-decoration: none;
	font-weight: normal;
	padding-bottom: 0.2em;
	color: #555;
}

.logo-title a.site-description {
	color: #555;
	text-shadow: 0.1px 1px 2px #CCCCCC;
	line-height: 2;
	padding-left: 1px;
}

.logo-title a.site-description:hover {
	text-decoration: none;
	color: #555;
}

.logo-title h1 a {
	float: right;
	text-shadow: 0.1px 1px 2px #888888;
	font-size: 34px;
	text-decoration: none;
	font-weight: normal;
	padding-bottom: 0.2em;
	color: #555;
}

.logo-title {
	float: right;
	padding-left: 0;
	padding-top: 10px;
	padding-bottom: 10px;
	color: #555;
}

/* Archives — masquage du titre conservé */
.archive-title {
	line-height: 1.75;
	font-weight: normal;
	text-transform: none;
	color: #757575;
}

.page-title {
	font-size: 13px;
	line-height: 2.181818182;
	font-weight: bold;
	text-transform: none;
	color: #636363;
}

.entry-header .entry-title {
	font-weight: normal;
}

.site-content article {
	border-bottom: 4px double #F3F3F3;
	margin-top: 14px;
	margin-bottom: 20px;
	padding-bottom: 10px;
	word-wrap: break-word;
	-webkit-hyphens: none;
	-moz-hyphens: none;
	hyphens: none;
}

.archive-header,
.page-header {
	margin-bottom: 48px;
	padding-bottom: 22px;
	border-bottom: 1px solid #ededed;
}

/* Catégories et étiquettes — premiers réglages conservés */
.categories {
	float: left;
	margin-right: 3px;
	margin-bottom: 0;
}

.categories a {
	background: #00A1E0;
	color: #FFFFFF;
	display: inline-block;
	margin-bottom: 3px;
	margin-left: 0;
	padding: 1px 7px;
	text-decoration: none;
	transition: all 0.3s ease 0s;
}

.categories a:hover {
	background: #0061A0;
	color: #FFFF00;
}

.entry-header .entry-title {
	padding-top: 12px;
	line-height: 1.25;
}

ol {
	counter-reset: item;
}

/* Formulaires de recherche */
#searchsubmit {
	border: 1px solid #f1f1f1;
	box-shadow: 0.01em .1em 0.9em 0.01em #d9d9d9;
	color: #f1f1f1;
	height: 35px;
	padding-bottom: 5px;
	width: 25%;
	margin-bottom: 0;
}

#searchform {
	background: none repeat scroll 0 0 #FFF;
	border: 0px solid #ddd;
	padding: 0 0 0;
}

#searchform #s {
	width: 240px;
	height: 30px;
	font-size: 15px;
	background-color: rgb(255, 249, 184, 0.35);
	border: 1px solid #757575;
	border-radius: 5px;
}

.maison {
	display: inline-block;
	padding: 0;
	margin: 0;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	vertical-align: middle;
	transform: scale(1.5);
	transform-origin: center;
	font-size: 18px !important;
}

.taxonomy_dropdown_widget_dropdown {
	width: 100%;
	max-width: 350px;
	height: 42px;
	font-size: 16px;
	padding: 6px 10px;
	color: #757575;
	background-color: rgb(255, 249, 184, 0.35);
}

#searchform #searchsubmit {
	width: 40px;
	height: 40px;
	padding: 0;
	overflow: hidden;
	box-sizing: border-box;
	color: transparent;
	font-size: 0;
	text-indent: -9999px;
	background-color: #cf8cbe;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10' cy='10' r='6' fill='none' stroke='white' stroke-width='2'/%3E%3Cpath d='M14.5 14.5 L21 21' fill='none' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 24px 24px;
	border: 1px solid #0D3F6B;
	border-radius: 5px;
	cursor: pointer;
}

/* Titres personnalisés */
.h2jm {
	margin-top: 0;
	padding-bottom: 0;
	margin-bottom: 0;
	font-size: 14px;
	color: #757575;
}

.h2jm::before {
	content: "❏ ";
}

h4bis {
	font-size: 14px;
	line-height: 1.846153846;
	font-weight: bold;
}

.h2min {
	margin-top: 0;
	padding-bottom: 0;
	margin-bottom: 0;
	font-weight: normal;
	line-height: 175% !important;
	font-size: 15px !important;
	color: #333;
}

.h3jm {
	margin-top: 1.5em !important;
	padding-bottom: 0;
	margin-bottom: -0.75em !important;
	font-size: 18px !important;
	color: #757575;
}

.h3jm::before {
	content: "❏ ";
}

.h3jmbis {
	margin-top: 1.5em !important;
	padding-bottom: 0;
	margin-bottom: 0 !important;
	font-size: 18px !important;
	color: #757575;
}

.h4jm {
	margin-top: 0;
	padding-bottom: 0;
	margin-bottom: 1em !important;
	font-size: 16px !important;
	color: #757575;
}

.h3jmbis::before,
.h4jm::before {
	content: "✓ ";
}

.h5jm {
	margin-top: 0;
	padding-bottom: 0;
	margin-bottom: 0;
	font-size: 14px !important;
	color: #333;
}

/* Adaptation des titres aux petits écrans */
@media screen and (max-width: 767px) {
	.entry-header .entry-title {
		font-size: 16px;
	}

}

/* Accordéons, spoilers et démonstrations */
.su-accordion .su-spoiler {
	margin-bottom: 0.0em;
}

.su-accordion {
	margin-bottom: 0;
}

.su-spoiler.content > .su-spoiler-title,
.su-spoiler.perso > .su-spoiler-title {
	background: rgba(240,248,240,0.5);
	color: #555;
}

.su-spoiler.perso > .su-spoiler-title:hover {
	background: rgba(210,218,210,0.5);
	color: rgba(80,80,200,0.75);
}

.su-spoiler.perso2 > .su-spoiler-title > .su-spoiler-icon {
	color: #555;
}

.su-spoiler.flash > .su-spoiler-title {
	background: rgba(240,248,240,0.75);
	color: #00A1E0;
}

.su-spoiler.flash > .su-spoiler-title:hover {
	background: rgba(210,218,210,0.5);
	color: rgba(80,80,200,0.75);
}

.su-spoiler.perso2 > .su-spoiler-title {
	background: rgba(230,238,230,0.4);
	color: #555;
}

.su-spoiler.perso3 > .su-spoiler-title {
	background: rgba(100,150,100,0.15);
	color: #555;
	margin-top: 0;
	margin-bottom: 0;
}

.su-spoiler.perso2 > .su-spoiler-content {
	background: rgba(240,248,240,0.2);
	color: #444;
}

.su-spoiler.perso3 > .su-spoiler-content {
	background: rgba(240,248,240,0.2);
	color: #444;
	margin-top: 0;
	padding-left: 6px;
	padding-right: 0;
}

.su-spoiler.demo > .su-spoiler-title,
.su-spoiler.demo > .su-spoiler-content {
	background: rgba(240,248,240,0.3);
	color: #555;
}

.su-spoiler.qcm {
	margin: 0.3em;
	padding-bottom: 0.3em;
}

.su-spoiler.headqcm > .su-spoiler-title {
	background: rgba(230,238,230,0.8);
	color: #555;
	margin: 0;
	font-size: 110%;
}

.su-spoiler.headqcm > .su-spoiler-content {
	color: #555;
	padding: 0;
}

.su-spoiler.qcm > .su-spoiler-content {
	color: #66A;
	padding: 0;
	margin-left: 6px;
	margin-top: 6px;
	margin-bottom: 0;
}

.su-spoiler.qcm > .su-spoiler-title {
	font-size: 100%;
	color: #999;
	background: rgba(230,238,230,0.);
	outline: none;
}

.su-spoiler.cours > .su-spoiler-content {
	color: #333;
	padding: 6px;
	margin-left: 6px;
	margin-top: 6px;
	margin-bottom: 0;
	line-height: 175%;
	background: rgba(230,238,230,0.15);
	font-size: 95%;
	border: 1px solid #ccc;
	border-radius: 10px;
}

.su-spoiler.cours > .su-spoiler-title > .su-spoiler-icon {
	display: none;
}

.su-spoiler.cours > .su-spoiler-title {
	margin-left: -1.6em;
	margin-top: -0.2em;
	font-size: 90%;
	color: rgba(0,80,140,0.8);
}

.su-spoiler.cours > .su-spoiler-title:hover {
	background: rgba(240,248,240,0.8);
	color: #444;
}

.su-spoiler.outside > .su-spoiler-title {
	font-size: 100%;
	margin-left: 4px;
	color: #999;
}

.su-spoiler.outside > .su-spoiler-content {
	color: #66A;
	margin-left: -1em;
}

.su-spoiler.inside > .su-spoiler-title {
	font-size: 100%;
	margin-top: 1em;
	margin-bottom: 3px;
	margin-left: -0.4em;
	color: #999;
}

.su-spoiler.inside > .su-spoiler-content {
	color: #66A;
	padding: 0;
	margin-left: 1px;
	margin-bottom: -1em;
}

.su-spoiler .lideb {
	margin-left: 20px;
	margin-top: -1.5em;
	margin-bottom: 6px;
}

.su-spoiler .limed {
	margin-left: 20px;
	margin-bottom: 6px;
}

.su-spoiler .lifin {
	margin-left: 20px;
	margin-bottom: -1em;
}

.su-spoiler .licdeb {
	list-style-type: circle;
	margin-left: 20px;
	margin-top: -0.5em;
	margin-bottom: 6px;
}

.su-spoiler .licmed {
	list-style-type: circle;
	margin-left: 20px;
	margin-bottom: 6px;
}

.su-spoiler .licfin {
	list-style-type: circle;
	margin-left: 20px;
	margin-bottom: -1em;
}

.entry-content .su-spoiler.demo {
	margin-bottom: 0.2em;
}

.entry-content .su-spoiler.demo + .propo {
	margin-top: 0;
}

/* Infobulles */
.su-tooltip-content {
	background: #FDFD96;
	margin: -1.3em;
	padding: 1.5em;
	color: #555;
	border-radius: 1.5em;
	font-size: 0.8em;
	text-align: left;
	line-height: 1.5;
}

.jmlifinal {
	margin-left: 10px;
	margin-bottom: -9px;
}

.jmlidebut {
	margin-left: 10px;
	margin-top: 0;
	margin-bottom: 0.4em;
}

.jmlimixte {
	margin-left: 10px;
	margin-bottom: 9px;
}

/* Listes personnalisées */
.jmli {
	margin-left: 10px;
	margin-bottom: 1em;
	margin-top: 9px;
}

/* Séparateurs */
.jmsep {
	width: 100%;
	background-color: #ccc;
	height: 0.5px;
	margin-left: 0;
	margin-top: 0.06em;
	margin-bottom: 0.12em;
	border: 0;
}

.jmsep2 {
	width: 100%;
	background-color: #ccc;
	height: 3px;
	margin-left: 0;
	margin-top: 1em;
	margin-bottom: 1em;
	border: 0;
}

/* Navigation et bandeau supérieur */
.themonic-nav li a:after {
	font-style: normal;
	speak: none;
	font-weight: normal;
	content: "▾";
	margin-left: 5px;
	-webkit-font-smoothing: antialiased;
}

.top-header {
	text-align: left;
	margin-bottom: 0;
	margin-top: 0;
	padding-top: 1em;
	padding-left: 1em;
	padding-bottom: 1em;
	background-color: rgba(100,150,220,0.3);
	width: 98.5%;
}

.site-header {
	margin: 0;
	padding: 0;
}

.site-description {
	margin-top: 0.5em;
}

.entry-header .entry-title {
	font-size: 20px;
	margin-bottom: 1em;
	margin-top: -1em;
	color: #757575;
}

/* Titre de l'accueil : agrandissement de 10 %, sans modifier les autres pages. */
body.home .entry-header .entry-title {
	font-size: 24px;
	margin-top: -20px;
	margin-bottom: 20px;
	color: #102653;
}

/* Le fil d'Ariane reste visible sur les pages intérieures. */
body.home .mathprepa-breadcrumb {
	visibility: hidden;
	height: 12px;
	overflow: hidden;
}

body.home .mathprepa-home-title-mobile {
	display: none;
}

@media screen and (max-width: 767px) {
	body.home .entry-header .entry-title {
		font-size: clamp(16px, 5.625vw, 20px);
	}
	body.home .mathprepa-home-title-desktop {
		display: none;
	}
	body.home .mathprepa-home-title-mobile {
		display: inline;
	}
}

.entry-summary {
	padding: 0.5em;
	background: rgba(224,240,255,0.4);
	border: 1px solid #ccc;
	border-radius: 10px;
}

body p:empty:before {
	content: none;
}

.archive-meta {
	background: #ffffff;
	color: #757575;
	line-height: 1.75;
	margin-top: 6px;
	padding: 0;
}

/* Étiquettes — règles finales */
.tags {
	float: left;
	margin-right: 1%;
	margin-bottom: 4px;
}

.tags a {
	background: rgba(240,248,240,0.5);
	color: rgba(0,161,224,1);
	border: 1px solid #ccc;
	border-radius: 10px;
	display: inline-block;
	margin-bottom: 3px;
	margin-left: 0;
	padding: 1px 7px;
	text-decoration: none;
	transition: all 0.3s ease 0s;
}

.tags a:hover {
	background: #A0A0A0;
	color: #F0F000;
}

/* Divers */
.photo {
	display: block;
	height: 50%;
	width: 50%;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	overflow: hidden;
}

.bulle {
	line-height: 175%;
	background: rgba(240,248,240,0.5);
}

.flotte {
	float: left;
}

.extrait {
	background-color: #f0f0f0;
}

.author-info {
	display: none;
}

/* Structure, logo et affichage général */
.pms-billing-details {
	display: none !important;
}

h1 {
	font-weight: bold;
}

p#backtoblog a {
	display: none;
}

/* Fil d’Ariane Yoast */
.mathprepa-breadcrumb {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 0 20px 0 !important;
	font-size: 12px;
	line-height: 1.6;
	color: #64748b;
}

.mathprepa-breadcrumb a {
	color: #0073AA !important;
	text-decoration: none;
}

.mathprepa-breadcrumb a:hover {
	color: #005177 !important;
	text-decoration: underline;
}

.mathprepa-breadcrumb .breadcrumb_last {
	font-weight: 700;
	color: #64748b;
}

/* Listes d’exercices et QCM */
ul .licdeb {
	list-style-type: none;
	margin-left: 20px;
	margin-top: -1em;
	margin-bottom: 6px;
}

ul .licmed {
	list-style-type: none;
	margin-left: 20px;
	margin-bottom: 6px;
}

ul .licfin {
	list-style-type: none;
	margin-left: 20px;
	margin-bottom: -0.5em;
}

ul .qcmli {
	list-style-type: circle;
	padding: 0;
	margin-bottom: 1em;
	margin-left: 0;
	background-color: rgba(240,248,240,0.5);
}

ol .qcmli {
	padding: 0;
	margin-bottom: 1em;
	margin-left: 0;
	background-color: rgba(240,248,240,0.5);
}

.qcmdiv {
	margin: 6px;
	background: rgba(230,238,230,0.3);
	line-height: 175%;
	padding: 3px;
}

.entry-content ul > li::marker {
	font-size: 0.75em;
}

/* Listes du contenu : puces et retraits conservés */
.entry-content ul {
	list-style: none !important;
	margin-left: 0 !important;
	padding-left: 0 !important;
}

.entry-content ul > li {
	list-style: none !important;
	margin-left: 0 !important;
	padding-left: 1.1em !important;
	position: relative;
}

.entry-content ul > li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.7em;
	width: 0.35em;
	height: 0.35em;
	border: none;
	border-radius: 50%;
	background: currentColor;
}

.entry-content ul ul > li::before {
	background: transparent;
	border: 1px solid currentColor;
	box-sizing: border-box;
}

/* Souscription : pas de puce décorative devant les choix PMS. */
body.page-id-17238 .entry-content li.pms-field-subscriptions::before {
	content: none;
}

.archive-title {
	font-size: 0px;
}

.archive-meta {
	font-size: 20px !important;
}

/* Règles transférées du CSS additionnel : priorité finale dans ce fichier. */
/* body renforce la règle du menu actif face aux feuilles chargées ensuite. */

body .themonic-nav .current-menu-item a,
body .themonic-nav .current-menu-ancestor a,
body .themonic-nav .current_page_item a,
body .themonic-nav .current_page_ancestor a {
	font-weight: normal;
}

.cours2 {
	font-weight: bold;
	font-size: 140%;
	margin-bottom: 1em;
}

.flashy {
	font-weight: bold;
}

.listin {
	margin-top: -1.2em;
	margin-left: 0.5em;
	line-height: 200%;
}

.button:hover {
	background-color: #cf8cbe;
	color: white;
}

.button:active {
	background-color: #cf8cbe;
	box-shadow: 0 5px #666;
	transform: translateY(4px);
}

.entry-content code,
.comment-content code {
	font-family: Consolas, Monaco, "Lucida Console", monospace;
	font-size: 14px;
	line-height: 2;
}

.mondiv {
	min-width: 25%;
	max-width: 85%;
	width: max-content;
	margin: 0 auto;
}

.themonic-nav li {
	font-size: 12px;
	padding: 0;
}

/* Code en ligne : présentation distincte des blocs pre > code. */
.entry-content :not(pre) > code {
	color: #173b65;
	font-weight: 600;
	background-color: #eef3f8;
	padding: 0.1em 0.3em;
	border-radius: 3px;
}

/* Encadrés Brume pastel réutilisables : titres, paragraphes et survol. */
.entry-content .mathprepa-accueil-brume {
	box-sizing: border-box;
	max-width: 100%;
	border: 1px solid var(--accueil-bordure);
	border-radius: 14px;
	padding: 21px 23px;
	margin: 0 0 18px;
	background: var(--accueil-fond);
}

.entry-content .mathprepa-accueil-titre {
	margin: 0 0 6px;
	padding-bottom: 0;
	font-size: 16px;
	font-weight: 700;
	color: #193b6c;
}

.entry-content .mathprepa-accueil-brume > p {
	margin: 0 0 12px;
}

.entry-content .mathprepa-accueil-brume > p:last-of-type {
	margin-bottom: 0;
}

.entry-content .mathprepa-accueil-bleu,
body.home .entry-content .mathprepa-accueil-lavande,
body.home .entry-content .mathprepa-accueil-rose {
	--accueil-fond: rgba(202, 226, 241, .38);
	--accueil-survol: rgba(202, 226, 241, .52);
	--accueil-bordure: #c8dce7;
}

.entry-content .mathprepa-accueil-sauge,
body.home .entry-content .mathprepa-accueil-sable {
	--accueil-fond: rgba(208, 230, 218, .38);
	--accueil-survol: rgba(208, 230, 218, .52);
	--accueil-bordure: #cfdfd5;
}

.entry-content .mathprepa-accueil-lavande {
	--accueil-fond: rgba(221, 215, 239, .35);
	--accueil-survol: rgba(221, 215, 239, .49);
	--accueil-bordure: #dad3e8;
}

.entry-content .mathprepa-accueil-sable {
	--accueil-fond: rgba(242, 225, 197, .35);
	--accueil-survol: rgba(242, 225, 197, .49);
	--accueil-bordure: #e5dbc7;
}

.entry-content .mathprepa-accueil-rose {
	--accueil-fond: rgba(238, 214, 219, .32);
	--accueil-survol: rgba(238, 214, 219, .46);
	--accueil-bordure: #e8d6da;
}

/* Pas de déplacement, ni de survol sur téléphone ou écran tactile. */
@media screen and (min-width: 768px) and (hover: hover) and (pointer: fine) {
	.entry-content .mathprepa-accueil-brume {
		transition: background-color 200ms ease, box-shadow 200ms ease;
	}

	.entry-content .mathprepa-accueil-brume:hover {
		background-color: var(--accueil-survol);
		box-shadow: 0 5px 18px rgba(25, 59, 108, .10);
	}
}

@media (prefers-reduced-motion: reduce) {
	.entry-content .mathprepa-accueil-brume {
		transition: none;
	}
}

/* Figures des cours : classes explicites, sans effet sur les autres images. */
.entry-content img.mathprepa-figure-image {
	max-width: 100%;
	height: auto;
}

/* Les largeurs propres aux figures sont portées par l'attribut HTML width. */
.entry-content img.mathprepa-figure-largeur-auto {
	width: auto;
}

.entry-content img.mathprepa-figure-alignee {
	vertical-align: middle;
}

.entry-content .mathprepa-figure-centree {
	text-align: center;
}

.entry-content .mathprepa-figure-defilante {
	overflow-x: auto;
}

/* Signature de l'auteur : présentation complète sur ordinateur, courte sur mobile. */
#masthead .mathprepa-personalized-header {
	box-sizing: border-box;
	width: 100%;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	column-gap: 24px;
	row-gap: 0;
	align-items: center;
	padding: 18px 17px 17px;
}
#masthead .mathprepa-personalized-header > a:not(.site-description),
#masthead .mathprepa-personalized-header > h2 {
	grid-column: 1;
	grid-row: 1;
	float: none;
	align-self: end;
	margin: 0;
}
#masthead .mathprepa-personalized-header > .site-description {
	grid-column: 1;
	grid-row: 2;
	float: none;
	margin: 5px 0 0;
	padding: 0;
	font-size: 12px;
	line-height: 1.5;
}
#masthead .mathprepa-header-credit {
	grid-column: 2;
	grid-row: 1 / span 2;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-end;
	justify-self: end;
	gap: 10px;
	max-width: 470px;
	min-width: 0;
	text-align: right;
}
#masthead .mathprepa-header-author {
	margin: 0;
	color: #c7d7e9;
	font-size: 11.5px;
	line-height: 1.6;
}
body #page #masthead .mathprepa-header-author .mathprepa-author-email {
	display: inline; color: inherit !important; font: inherit; line-height: inherit;
	margin: 0; padding: 0; text-decoration: none;
}
#masthead .mathprepa-header-author .mathprepa-author-email:hover,
#masthead .mathprepa-header-author .mathprepa-author-email:focus-visible {
	color: inherit; text-decoration: underline; text-underline-offset: 3px;
}
#masthead .mathprepa-header-author strong {
	display: block;
	color: #ffd65a;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
}
#masthead .mathprepa-author-full {
	display: block;
}
#masthead .mathprepa-author-short {
	display: none;
}
#masthead .mathprepa-header-account {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
}
#masthead .mathprepa-header-account a {
	font-size: 12px;
	line-height: 1.45;
	text-decoration: none;
}
#masthead .mathprepa-header-account input {
	padding: 0;
	margin: 0;
	font-size: 1rem;
	background-color: transparent;
}
@media screen and (max-width: 767px) {
	#masthead .mathprepa-personalized-header {
		grid-template-columns: minmax(0, 1fr) auto;
		column-gap: 8px;
		row-gap: 8px;
		padding: 14px 12px 11px;
	}
	#masthead .mathprepa-personalized-header > a:not(.site-description),
	#masthead .mathprepa-personalized-header > h2 {
		grid-column: 1 / -1;
		justify-self: start;
	}
	#masthead .mathprepa-personalized-header > .site-description { display: none; }
	#masthead .mathprepa-header-credit { display: contents; }
	#masthead .mathprepa-header-author {
		grid-column: 1;
		grid-row: 2;
		justify-self: start;
		text-align: left;
		min-width: 0;
		font-size: 10.5px;
		line-height: 1.55;
	}
	#masthead .mathprepa-header-author strong {
		display: block;
		color: #f3f7fc;
		font-size: inherit;
		font-weight: 600;
		line-height: inherit;
	}
	#masthead .mathprepa-header-author strong::after { content: ","; }
	#masthead .mathprepa-author-full { display: none; }
	#masthead .mathprepa-author-short { display: block; }
	#masthead .mathprepa-header-account {
		position: static;
		grid-column: 2;
		grid-row: 2;
		align-self: start;
		gap: 6px;
	}
	#masthead .mathprepa-header-account a {
		font-size: 10.5px;
		max-width: 100px;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
}

/* Nom du site : proposition 2 sur ordinateur, sans changement de hauteur. */
@media screen and (min-width: 768px) {
	#masthead .mathprepa-personalized-header > a:not(.site-description),
	#masthead .mathprepa-personalized-header > h2 > a {
		font-size: 38px;
		line-height: 34px;
		position: relative;
		top: -5px;
	}
}




/* Aperçu : barre latérale réduite de 25 % sur ordinateur.
 * Largeur extérieure : (28,8 % + 4 % de padding) × 0,75 = 24,6 %.
 * Le contenu principal récupère les 8,2 points gagnés.
 */
@media screen and (min-width: 768px) {
	body:not(.full-width):not(.no-sidebar) #main:has(> #secondary) > #secondary {
		box-sizing: border-box;
		width: 24.6%;
		padding-right: clamp(10px, 1.1vw, 16px);
		padding-left: clamp(10px, 1.1vw, 16px);
	}
	body:not(.full-width):not(.no-sidebar) #main:has(> #secondary) > #primary.site-content {
		width: 71.2%;
	}
	/* Liens des widgets : mots entiers et interligne plus compact. */
	body:not(.full-width):not(.no-sidebar) #secondary,
	body:not(.full-width):not(.no-sidebar) #secondary a {
		-webkit-hyphens: none;
		hyphens: none;
	}
	body:not(.full-width):not(.no-sidebar) #secondary div:has(> hr.jmsep) {
		line-height: 1.65 !important;
	}
	body:not(.full-width):not(.no-sidebar) #secondary div:has(> hr.jmsep) hr.jmsep {
		margin-top: 4px;
		margin-bottom: 4px;
	}
	body:not(.full-width):not(.no-sidebar) #secondary select.taxonomy_dropdown_widget_dropdown {
		height: 34px;
		min-height: 0;
		padding: 3px 10px;
		font-size: 14px;
		box-sizing: border-box;
	}
	body:not(.full-width):not(.no-sidebar) #secondary #searchform > div {
		display: flex;
		margin-top: 7px;
	}
	body:not(.full-width):not(.no-sidebar) #secondary #searchform #s {
		flex: 1 1 0;
		width: 0;
		min-width: 0;
		height: 34px;
		font-size: 14px;
		box-sizing: border-box;
		margin: 0;
	}
	body:not(.full-width):not(.no-sidebar) #secondary #searchform #searchsubmit {
		flex: 0 0 34px;
		height: 34px;
		background-size: 18px 18px;
		background-position: center;
		margin: 0;
	}
}

/* Sommaires des cours : styles partagés par le shortcode SOMMAIRE_COURS. */
.entry-content ol.sommaire-cours {
    line-height: 220%;
    margin-left: -1em;
    margin-bottom: 1.6em;
}
.entry-content p.sommaire-cours-aide {
    margin: 0 0 1em;
}

/* Icône d'accueil : même couleur que le texte du bouton. */
#site-navigation .mathprepa-menu-home-icon {
    display: inline-block; width: 20px; height: 20px;
    vertical-align: -4px; fill: currentColor;
}
/* Menu supérieur : bleu nuit, texte clair et entrée active jaune. */
@media screen and (min-width: 768px) {
    #site-navigation.themonic-nav > ul.nav-menu {
        background: linear-gradient(120deg, #193b6c, #142d5b);
        border-bottom: 0;
    }
    #site-navigation #menu-top > li > a {
        background-color: transparent;
        color: #f4f8ff;
        font-weight: 500;
    }
    #site-navigation #menu-top > li:hover > a,
    #site-navigation #menu-top > li:focus-within > a {
        background-color: transparent;
        color: #ffd65a;
        text-shadow: 0 0 8px rgba(255, 214, 90, .22);
    }
    #site-navigation #menu-top > li.menu-item-has-children > a::after {
        font-size: 16px;
        font-weight: 700;
        margin-left: 7px;
        opacity: 1;
        color: currentColor;
        vertical-align: middle;
    }
    #site-navigation #menu-top .sub-menu {
        width: max-content;
        min-width: 240px;
        max-width: calc(100vw - 24px);
        background: #f1f5f9;
        border: 1px solid #cad7e5;
        border-radius: 0 0 10px 10px;
        box-shadow: 0 12px 28px rgba(10, 25, 50, .24);
    }
    #site-navigation #menu-top .sub-menu > li {
        display: block;
        float: none;
        width: auto;
        border: 0;
    }
    #site-navigation #menu-top .sub-menu > li + li {
        border-top: 1px solid #c7d3e1;
    }
    #site-navigation #menu-top .sub-menu > li > a {
        box-sizing: border-box;
        border: 0;
        width: auto;
        min-width: 100%;
        white-space: nowrap;
        background: #f1f5f9;
        color: #193b6c;
        font-family: inherit;
        font-size: 14px;
        font-weight: 500;
        text-transform: none;
        text-shadow: none;
    }
    #site-navigation #menu-top .sub-menu > li:last-child > a {
        border-radius: 0 0 9px 9px;
    }
    #site-navigation #menu-top .sub-menu > li:hover > a,
    #site-navigation #menu-top .sub-menu > li > a:focus-visible {
        background: #e2eaf3;
        color: #193b6c;
    }
    #site-navigation #menu-top > li:is(.current-menu-item, .current-menu-ancestor, .current_page_item, .current_page_ancestor) > a,
    #site-navigation #menu-top > li:is(.current-menu-item, .current-menu-ancestor, .current_page_item, .current_page_ancestor):hover > a,
    #site-navigation #menu-top > li:is(.current-menu-item, .current-menu-ancestor, .current_page_item, .current_page_ancestor):focus-within > a,
    #site-navigation #menu-top .sub-menu > li:is(.current-menu-item, .current-menu-ancestor, .current_page_item, .current_page_ancestor) > a,
    #site-navigation #menu-top .sub-menu > li:is(.current-menu-item, .current-menu-ancestor, .current_page_item, .current_page_ancestor):hover > a {
        background: #ffd65a;
        color: #142d5b;
        text-shadow: none;
    }
    #site-navigation #menu-top a:focus-visible {
        outline: 2px solid currentColor;
        outline-offset: -4px;
    }
}

/* Grands écrans : barre latérale resserrée, contenu principal élargi. */
@media screen and (min-width: 1100px) {
    body:not(.full-width):not(.no-sidebar) #main:has(> #secondary) > #secondary {
        width: 21.4%;
    }
    body:not(.full-width):not(.no-sidebar) #main:has(> #secondary) > #primary.site-content {
        width: 74.4%;
    }
    body:not(.full-width):not(.no-sidebar) #secondary .widget-title {
        padding-left: 6px;
        padding-right: 6px;
    }
}

/* Concours : chaque lien et ses annotations restent dans une même entrée. */
.entry-content p.liens-concours-aide {
    margin: 0 0 0.4em;
}
.entry-content ul.liens-concours {
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: 1.65;
}
.entry-content ul.liens-concours > li {
    display: block;
    list-style: none;
    margin: 0;
    padding: 0.275em 0;
}
.entry-content ul.liens-concours > li::before {
    content: none;
}
.entry-content ul.liens-concours > li > p {
    margin: 0;
}

/* Listes d'accès aux exercices et aux planches, sans puces. */
body.page-id-634 .entry-content .su-spoiler-content ul > li,
body.page-id-16261 .entry-content .su-spoiler-content ul > li,
body.page-id-20263 .entry-content .su-spoiler-content ul > li,
body.page-id-50758 .entry-content ul > li,
body.page-id-50760 .entry-content ul > li {
    list-style: none;
}
body.page-id-634 .entry-content .su-spoiler-content ul > li::before,
body.page-id-16261 .entry-content .su-spoiler-content ul > li::before,
body.page-id-20263 .entry-content .su-spoiler-content ul > li::before,
body.page-id-50758 .entry-content ul > li::before,
body.page-id-50760 .entry-content ul > li::before {
    content: none;
}

/* Exercices de première année : respiration sous le titre de l'accordéon. */
body.page-id-634 .entry-content .h3jmbis + .su-accordion {
    margin-top: 16px;
}

/* Panneaux de résumés cliquables : archives d'étiquettes et de catégories. */
body:is(.tag, .category, .search) #main article .entry-summary {
    position: relative;
    isolation: isolate;
    cursor: pointer;
    background-color: #f0f5ee;
    border-color: #c0ceba;
}
body:is(.tag, .category, .search) #main article .entry-summary .mathprepa-resume,
body:is(.tag, .category, .search) #main article .entry-summary .mathprepa-read-more-wrapper {
    position: static !important;
}
body:is(.tag, .category, .search) #main article .entry-summary .mathprepa-read-more::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: inherit;
}
body:is(.tag, .category, .search) #main article .entry-summary .mathprepa-read-more img {
    display: none;
}
body:is(.tag, .category, .search) #main article .entry-summary a:not(.mathprepa-read-more) {
    position: relative;
    z-index: 2;
}
body:is(.tag, .category, .search) #main article .entry-summary {
    transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}
body:is(.tag, .category, .search) #main article .entry-summary:hover,
body:is(.tag, .category, .search) #main article .entry-summary:focus-within {
    background-color: #d9e8d3;
    border-color: #718e64;
    box-shadow: 0 4px 14px rgba(71, 99, 61, 0.26), inset 0 0 0 1px rgba(113, 142, 100, 0.16);
}
@media (prefers-reduced-motion: reduce) {
    body:is(.tag, .category, .search) #main article .entry-summary {
        transition: none;
    }
}
body:is(.tag, .category, .search) #main article .entry-summary .mathprepa-read-more:focus-visible {
    outline: none;
}
body:is(.tag, .category, .search) #main article .entry-summary .mathprepa-read-more:focus-visible::after {
    outline: 2px solid #173b65;
    outline-offset: 2px;
}
body:is(.tag, .category, .search) #main article .entry-summary .mathprepa-read-more-wrapper {
    height: 0;
    font-size: 0;
    line-height: 0;
}
body:is(.tag, .category, .search) #main article .entry-summary .mathprepa-read-more {
    display: block;
    font-size: 0;
    line-height: 0;
}
body:is(.tag, .category, .search) #main article .entry-summary .mathprepa-read-more img {
    display: none !important;
}

/* Page Quiz : une colonne par année lorsque la place le permet. */
.mathprepa-quiz-columns {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 2em;
}
.mathprepa-quiz-year {
    min-width: 0;
    box-sizing: border-box;
    padding: 21px 20px;
    background: rgba(208, 230, 218, .14);
    border: 1px solid #cfdfd5;
    border-radius: 14px;
}
.entry-content .mathprepa-quiz-year > ul {
    margin-left: 0;
    padding-left: 0;
}
.entry-content .mathprepa-quiz-year > ul > li {
    list-style: none;
    margin-left: 0;
    padding: 5px 0;
    line-height: 1.65;
}
.entry-content .mathprepa-quiz-year > ul > li::before {
    content: none;
}
.entry-content .mathprepa-quiz-year > ul a {
    color: #193b6c;
    font-weight: 500;
    text-decoration: none;
}
.entry-content .mathprepa-quiz-year > ul a:hover,
.entry-content .mathprepa-quiz-year > ul a:focus-visible {
    color: #193b6c;
    text-decoration: underline;
    text-underline-offset: 0.18em;
    text-decoration-thickness: 1px;
}

/* Liens de lecture : bleu profond, hors menus et boutons. */
#main a:where(:not(.button, .button *, .su-button, .su-button *, [role="button"], [role="button"] *)),
#colophon a:where(:not(.button, .button *, .su-button, .su-button *, [role="button"], [role="button"] *)),
.mathprepa-breadcrumb a {
    color: #193b6c;
}
#main a:where(:not(.button, .button *, .su-button, .su-button *, [role="button"], [role="button"] *)):hover,
#main a:where(:not(.button, .button *, .su-button, .su-button *, [role="button"], [role="button"] *)):focus-visible,
#colophon a:where(:not(.button, .button *, .su-button, .su-button *, [role="button"], [role="button"] *)):hover,
#colophon a:where(:not(.button, .button *, .su-button, .su-button *, [role="button"], [role="button"] *)):focus-visible,
.mathprepa-breadcrumb a:hover,
.mathprepa-breadcrumb a:focus-visible {
    color: #0f294c;
}

/* Pied de page : bleu nuit assorti au bandeau supérieur. */
body #page #colophon {
    background: linear-gradient(120deg, #193b6c, #142d5b);
    color: #f0f5fc;
    border-top: 1px solid rgba(220, 233, 250, 0.20);
    padding-left: 0;
    padding-right: 0;
}
body #page #colophon .site-info {
    background: transparent;
    color: inherit;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}
body #page #colophon .footercopy,
body #page #colophon .footercredit {
    float: none;
    margin: 0;
    padding: 0;
}
body #page #colophon .footercopy {
    flex: 1 1 auto;
    min-width: 0;
    text-align: left;
}
body #page #colophon .footercredit {
    flex: 0 0 auto;
    text-align: right;
    white-space: nowrap;
}
body #page #colophon .site-info > .clear {
    display: none;
}
@media screen and (min-width: 768px) {
    body.mathprepa-night-background #page #colophon {
        background: transparent;
        border-bottom: 0;
    }
}
body #page #colophon .footercopy,
body #page #colophon .footercredit {
    color: inherit;
}
body #page #colophon a,
body #page #colophon a font {
    color: #c8e2ff;
}
body #page #colophon a:hover,
body #page #colophon a:focus-visible,
body #page #colophon a:hover font,
body #page #colophon a:focus-visible font {
    color: #ffffff;
    text-decoration: underline;
    text-underline-offset: 0.18em;
}
body #page #colophon a:focus-visible {
    outline: 2px solid #c8e2ff;
    outline-offset: 3px;
}
body #page #colophon .footercopy a[href="mailto:jmf@mathprepa.fr"],
body #page #colophon .footercopy a[href="mailto:jmf@mathprepa.fr"]:hover,
body #page #colophon .footercopy a[href="mailto:jmf@mathprepa.fr"]:focus-visible {
    color: #ffd65a;
}
/* Retirer les 20 pixels de remplissage du bloc vide sous le pied de page. */
body #page > .site-wordpress {
    padding: 0;
    background: transparent;
}
/* Pages et articles : retirer le filet décoratif sous le lien de modification. */
body:is(.page, .single) #primary #content > article {
    border-bottom: 0;
}

/* Bas du contenu : supprimer les marges superflues avant le pied de page. */
body:is(.page, .single) #primary #content > article:last-of-type {
    margin-bottom: 0;
    padding-bottom: 0;
}
body:is(.page, .single) #primary #content > article:last-of-type > .entry-meta:not(:has(*)) {
    margin-top: 0;
}
body #main > #primary,
body #main > #secondary {
    padding-bottom: 12px;
}
body #secondary > .widget:last-child {
    margin-bottom: 0;
}
body #secondary > .widget:last-child .textwidget {
    padding-bottom: 0;
}


/* Abrégé de première année : encadrés assortis à la page Quiz. */
body.page-id-44644 .entry-content > .su-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 2em;
    margin-top: 1.5em;
}
body.page-id-44644 .entry-content > .su-row::before,
body.page-id-44644 .entry-content > .su-row::after {
    display: none;
}
body.page-id-44644 .entry-content > .su-row > .su-column {
    float: none;
    width: auto !important;
    margin: 0 !important;
    min-width: 0;
}
body.page-id-44644 .entry-content > .su-row > .su-column > .su-column-inner {
    box-sizing: border-box;
    padding: 21px 20px;
    background: rgba(208, 230, 218, .14);
    border: 1px solid #cfdfd5;
    border-radius: 14px;
}
body.page-id-44644 .su-column-inner > p:empty {
    display: none;
}
body.page-id-44644 .su-column-inner > .h4jm {
    margin-top: 0;
}
body.page-id-44644 .su-column-inner > ol {
    margin: 14px 0 0 !important;
    padding: 0;
}
body.page-id-44644 .su-column-inner > ol > li {
    list-style: none;
    margin-left: 0;
    padding: 5px 0;
    line-height: 1.65;
}
body.page-id-44644 .su-column-inner > ol > li::before {
    content: none;
}
body.page-id-44644 .su-column-inner > ol a {
    font-weight: 500;
}
body.page-id-44644 .su-column-inner > ol a:hover,
body.page-id-44644 .su-column-inner > ol a:focus-visible {
    text-decoration: underline;
    text-underline-offset: 0.18em;
    text-decoration-thickness: 1px;
}
@media (min-width: 1100px) {
    body.page-id-44644 .entry-content > .su-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Abrégé de seconde année : même encadré que les quiz, sur une colonne. */
body.page-id-42892 .entry-content > ol {
    box-sizing: border-box;
    margin: 1.5em 0 1em !important;
    padding: 21px 20px;
    background: rgba(208, 230, 218, .14);
    border: 1px solid #cfdfd5;
    border-radius: 14px;
}
body.page-id-42892 .entry-content > ol > li {
    list-style: none;
    margin: 0 !important;
    padding: 5px 0;
    line-height: 1.65;
}
body.page-id-42892 .entry-content > ol > li::before {
    content: none;
}
body.page-id-42892 .entry-content > ol a {
    font-weight: 500;
}
body.page-id-42892 .entry-content > ol a:hover,
body.page-id-42892 .entry-content > ol a:focus-visible {
    text-decoration: underline;
    text-underline-offset: 0.18em;
    text-decoration-thickness: 1px;
}
@media (min-width: 1100px) {
    body.page-id-42892 .entry-content > ol {
        width: calc((100% - 2em) / 2);
    }
}




.mathprepa-quiz-year > p:first-child:has(> a[id]:only-child) {
    margin: 0;
}
.mathprepa-quiz-year > .h2jm {
    margin-top: 0;
}
.mathprepa-quiz-year > ul {
    margin-bottom: 0;
}
@media (min-width: 1100px) {
    .mathprepa-quiz-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 2em;
    }
}

/* Cinq pages de planches : thèmes et filières, lignes alternées. */
.entry-content .mathprepa-planches-cadre {
    border: 1px solid #d9dfe5;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    margin: 0 0 1em;
}
.entry-content table.mathprepa-planches-table {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    border-spacing: 0;
    border: 0;
    margin: 0;
    font-size: 18px;
    line-height: 1.5;
}
.entry-content .mathprepa-planches-col-filieres {
    width: 275px;
}
.entry-content .mathprepa-planches-table th,
.entry-content .mathprepa-planches-table td {
    padding: 13px 20px;
    border: 0;
    text-align: left;
    vertical-align: middle;
    text-transform: none;
    letter-spacing: normal;
}
.entry-content .mathprepa-planches-table thead th {
    background: #e8edf3;
    color: #193b6c;
    font-size: 16px;
    font-weight: 600;
}
.entry-content .mathprepa-planches-table tbody td {
    border-top: 1px solid #e5e8ec;
}
.entry-content .mathprepa-planches-table tbody tr:nth-child(odd) {
    background: #fff;
}
.entry-content .mathprepa-planches-table tbody tr:nth-child(even) {
    background: #f2f4f6;
}
.entry-content .mathprepa-planches-filieres {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.05em;
}
.entry-content .mathprepa-planches-filieres a {
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.entry-content .mathprepa-planches-filieres span {
    color: #737b83;
}
@media (max-width: 650px) {
    .entry-content table.mathprepa-planches-table {
        font-size: 15px;
    }
    .entry-content .mathprepa-planches-col-filieres {
        width: 45%;
    }
    .entry-content .mathprepa-planches-table th,
    .entry-content .mathprepa-planches-table td {
        padding: 11px 10px;
    }
    .entry-content .mathprepa-planches-filieres {
        font-size: 14px;
        gap: 7px;
    }
}









/* Lecture sur ordinateur : bandeau et menu fixes, pied de page dans le flux.
 * Menu 33 px, bandeau compact, pied de page compact.
 * Défilement classique sur mobile et petites fenêtres. */
@media (min-width: 1100px) and (min-height: 600px) {
  html:has(body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar) #main > #secondary) { overflow: auto; scroll-padding-top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--mathprepa-reading-header-height, 54px) + 33px + 16px); }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) { overflow: visible; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary).wpvibe-preview-active { --mathprepa-preview-bar-height: 50px; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #page {
    display: block; box-sizing: border-box; overflow: visible;
    height: auto;
    min-height: 0; margin-top: 0; margin-bottom: 0; padding-bottom: 0;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 30; background-color: #12294f; border: 0; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #page > #site-navigation { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--mathprepa-reading-header-height, 54px)); z-index: 20; background: #12294f; }
  /* Le bandeau conserve les dimensions et la typographie du site public. */
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #site-navigation { height: 33px; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #site-navigation #menu-top {
    box-sizing: border-box; height: 33px;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #site-navigation #menu-top > li {
    height: 33px; line-height: 33px; vertical-align: top;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #site-navigation #menu-top > li > a {
    box-sizing: border-box; height: 33px; line-height: 33px;
    padding-top: 0; padding-bottom: 0;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main {
    display: grid; grid-template-columns: minmax(0, 1fr) 21.4%;
    align-items: start; min-height: 0; overflow: visible;
    width: 100%; margin: 0; padding: 0; box-sizing: border-box;
    background: #fff;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main::before,
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main::after { display: none; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main > #primary.site-content,
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main > #secondary {
    box-sizing: border-box; float: none; width: auto !important;
    min-width: 0; min-height: 0; max-height: none; height: auto;
    margin: 0; overflow: visible;
    overscroll-behavior-y: contain; scrollbar-gutter: stable;
    scrollbar-width: thin; scrollbar-color: #b1bfcd #f4f6f8;
    -webkit-overflow-scrolling: touch;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main > #primary.site-content {
    padding: 22px 26px 26px; border: 0; scroll-padding-top: 20px;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main > #secondary {
    padding: 20px 14px 22px; border: 0; border-left: 1px solid #e3e8ed;
    position: sticky;
    top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--mathprepa-reading-header-height, 54px) + 33px);
    max-height: var(--mathprepa-reading-sidebar-height, calc(100dvh - var(--wp-admin--admin-bar--height, 0px) - var(--mathprepa-reading-header-height, 54px) - 33px - var(--mathprepa-preview-bar-height, 0px) - 10px));
    overflow-y: auto; overflow-x: hidden;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #primary:focus-visible,
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #secondary:focus-visible {
    outline: 2px solid #8daac4; outline-offset: -3px;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #page #colophon {
    flex: 0 0 auto; box-sizing: border-box; padding: 7px 0;
    margin: 0; border-top: 1px solid #365173;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #colophon .site-info,
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #colophon .footercopy,
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #colophon .footercredit {
    font-size: 11px; line-height: 1.5; margin-top: 0; margin-bottom: 0; padding: 0;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #colophon p { margin: 0; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #page > .site-wordpress,
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #page > .clear { display: none; }
}


/* Variante d'aperçu : signature compacte et connexion à la place du contact. */
.mathprepa-author-desktop-line { display: none; }
@media (min-width: 1100px) and (min-height: 600px) {
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-personalized-header {
    padding-top: 10px; padding-bottom: 10px; padding-left: 0; padding-right: 0;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-header-credit {
    align-self: start; padding-top: 1px; gap: 0; max-width: none;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-header-author > .mathprepa-author-desktop-line {
    display: block; white-space: nowrap; font-size: 12px; line-height: 1.6;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-author-desktop-line > strong {
    display: inline; font-size: inherit; line-height: inherit;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-header-author > .mathprepa-author-original-name,
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-header-author > .mathprepa-author-full,
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-header-author > .mathprepa-author-short { display: none; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #secondary > .mathprepa-contact-replaced { display: none; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #secondary > .mathprepa-sidebar-account {
    display: flex; align-items: center; justify-content: space-between;
    gap: 10px; margin: 0 0 12px; padding: 0 0 12px;
    border-bottom: 1px solid #e3e8ed;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #secondary > .mathprepa-sidebar-account a {
    font-size: 12.74px; line-height: 1.65; color: #193b6c; text-decoration: none;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #secondary > .mathprepa-sidebar-account a:hover { text-decoration: underline; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #secondary > .mathprepa-sidebar-account input {
    box-sizing: border-box; flex: 0 0 24px; width: 24px; height: 24px;
    margin: 0; padding: 0; font-size: 16px; line-height: 22px;
    color: #193b6c; background: transparent; border: 1px solid #c9d6e4; border-radius: 3px;
    cursor: pointer;
  }
}


/* Le nom du compte connecté : badge jaune, en accord avec le bandeau. */
body #page :is(#masthead, #secondary) .mathprepa-header-account.is-connected > a {
    display: inline-block;
    margin-left: auto;
    box-sizing: border-box;
    max-width: 100%;
    padding: 4px 11px;
    border: 1px solid #e1bb45;
    border-radius: 7px;
    background: #ffd65a;
    color: #142d5b !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.5;
    text-shadow: none;
    text-decoration: none;
    overflow-wrap: anywhere;
}
body #page :is(#masthead, #secondary) .mathprepa-header-account.is-connected > a:hover {
    background: #ffe28a;
    text-decoration: none !important;
}
body .mathprepa-header-account.is-connected > a:focus-visible {
    outline: 2px solid #496386;
    outline-offset: 3px;
}

/* Liens dans les paragraphes : repère discret, indépendant de la seule couleur. */
body :is(.entry-content, .comment-content) :is(p, dd) a[href]:not(:where(li a, .button, .wp-element-button, .su-button, .mathprepa-read-more, [role="button"])):not(:has(img, svg)) {
    text-decoration-line: underline;
    text-decoration-color: rgba(25, 59, 108, .45);
    text-decoration-thickness: 1px;
    text-underline-offset: .18em;
    text-decoration-skip-ink: auto;
}
body :is(.entry-content, .comment-content) :is(p, dd) a[href]:not(:where(li a, .button, .wp-element-button, .su-button, .mathprepa-read-more, [role="button"])):not(:has(img, svg)):is(:hover, :focus-visible) {
    text-decoration-color: currentColor;
}

/* Description du site au survol de la marque, dans la variante ordinateur. */
.mathprepa-brand-tooltip { display: none; }
@media (min-width: 1100px) and (min-height: 600px) {
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-personalized-header { position: relative; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-personalized-header > a:not(.site-description),
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-personalized-header > h2 > a { width: fit-content; max-width: 100%; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-personalized-header > .site-description { display: none; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-author-prefix { color: #c7d7e9; font-weight: normal; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-brand-tooltip {
    display: block; position: absolute; z-index: 50; left: 0; top: 0;
    box-sizing: border-box; width: max-content; max-width: calc(100vw - 48px);
    padding: 10px 14px; margin: 0; border: 1px solid #b8c9db; border-radius: 8px;
    background: #fffde6; color: #193b6c; box-shadow: 0 5px 16px rgba(10, 30, 55, .18);
    font-size: 12px; font-weight: normal; line-height: 1.6; text-align: left; letter-spacing: normal;
    opacity: 0; visibility: hidden; pointer-events: none;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-brand-tooltip.is-open {
    opacity: 1; visibility: visible; pointer-events: auto;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-brand-tooltip::before {
    content: ""; position: absolute; top: calc(var(--mathprepa-brand-arrow-y, 50%) - 5px); left: -6px;
    width: 10px; height: 10px; background: #fffde6;
    border-bottom: 1px solid #b8c9db; border-left: 1px solid #b8c9db; transform: rotate(45deg);
  }
}


/* Stable initial layout and stable document height while the sidebar resizes. */
.mathprepa-server-account { display: none; }
@media (min-width: 1100px) and (min-height: 600px) {
  html:has(body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar) #main > #secondary) {
    overscroll-behavior-y: none;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead .mathprepa-header-account { display: none; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #secondary:has(> .mathprepa-server-account) > #custom_html-10 { display: none; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main {
    min-height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px) - var(--mathprepa-reading-header-height, 54px) - var(--mathprepa-preview-bar-height, 0px) - 10px);
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #secondary { overflow-anchor: none; }
}
@media (min-width: 768px) and (max-width: 1099px), (min-width: 768px) and (max-height: 599px) {
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #page > #site-navigation { background: #12294f; }
}

/* Bulles de description Mathprepa, pour les balises su_tooltip existantes. */
body #primary .mathprepa-tip-wrap {
    display: inline; margin-right: .35em;
}
body #primary button.mathprepa-tip-trigger {
    display: inline-flex; align-items: center; justify-content: center;
    box-sizing: border-box; width: auto; min-height: 28px;
    padding: 0 2px; margin: 0; border: 0; border-radius: 5px;
    background: transparent; color: #193b6c; box-shadow: none;
    font: inherit; line-height: 1; text-shadow: none;
    vertical-align: middle; cursor: pointer; touch-action: manipulation;
}
body #primary button.mathprepa-tip-trigger:hover,
body #primary button.mathprepa-tip-trigger[aria-expanded="true"] {
    background: #eef3f8;
}
body #primary button.mathprepa-tip-trigger:focus-visible {
    outline: 2px solid #8daac4; outline-offset: 2px;
}
body .mathprepa-tip-panel {
    display: block; position: fixed; z-index: 100100;
    box-sizing: border-box; width: min(420px, calc(100vw - 24px));
    max-height: 320px; overflow-y: auto; overscroll-behavior: contain;
    padding: 11px 15px; border: 1px solid #b8c9db; border-radius: 8px;
    background: #fffde6; color: #193b6c;
    box-shadow: 0 5px 16px rgba(10,30,55,.18);
    font: 13px/1.65 Arial, sans-serif; text-align: left;
    letter-spacing: normal; overflow-wrap: break-word;
}
body .mathprepa-tip-panel[hidden] { display: none !important; }
body .mathprepa-tip-panel p { margin: 0 0 .65em; }
body .mathprepa-tip-panel p:last-child { margin-bottom: 0; }
body .mathprepa-tip-panel sup,
body .mathprepa-tip-panel sub { font-size: .8em; }

body #primary button.mathprepa-tip-icon { width: 28px; height: 28px; padding: 0; }
body #primary button.mathprepa-tip-text { text-align: inherit; white-space: normal; }


/* Accordions et volets autonomes : mêmes classes et réglages historiques. */
:where(body.mathprepa-accordions) .mathprepa-accordion { margin-bottom: 1.5em; }
:where(body.mathprepa-accordions) .mathprepa-accordion .mathprepa-disclosure { margin-bottom: .5em; }
:where(body.mathprepa-accordions) .mathprepa-spacer { display: block; clear: both; overflow: hidden; }
:where(body.mathprepa-accordions) .mathprepa-disclosure { margin-bottom: 1.5em; }
:where(body.mathprepa-accordions) .mathprepa-disclosure-title {
 position: relative; cursor: pointer; min-height: 20px; line-height: 20px;
 padding: 7px 7px 7px 34px; font-weight: 700; font-size: 13px;
}
:where(body.mathprepa-accordions) .su-spoiler-style-default > .mathprepa-disclosure-title { padding-left: 27px; padding-right: 0; }
:where(body.mathprepa-accordions) .su-spoiler-style-default > .mathprepa-disclosure-content { padding: 1em 0 1em 27px; }
:where(body.mathprepa-accordions) .mathprepa-disclosure-content { box-sizing: border-box; padding: 14px; transition: none; }
body.mathprepa-accordions .mathprepa-disclosure-content[hidden] { display: none !important; }
:where(body.mathprepa-accordions) .su-spoiler-style-fancy { border: 1px solid #ccc; border-radius: 10px; background: #fff; color: #333; }
:where(body.mathprepa-accordions .su-spoiler-style-fancy) > .mathprepa-disclosure-title { border-bottom: 1px solid #ccc; border-radius: 10px; background: #f0f0f0; font-size: .9em; }
:where(body.mathprepa-accordions) .su-spoiler-style-fancy.su-spoiler-closed > .mathprepa-disclosure-title { border: none; }
:where(body.mathprepa-accordions .su-spoiler-style-fancy) > .mathprepa-disclosure-content { border-radius: 10px; }
:where(body.mathprepa-accordions) .su-spoiler-style-simple { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
:where(body.mathprepa-accordions .su-spoiler-style-simple) > .mathprepa-disclosure-title { padding: 5px 10px; background: #f0f0f0; color: #333; font-size: .9em; }
:where(body.mathprepa-accordions .su-spoiler-style-simple) > .mathprepa-disclosure-content { padding: 1em 10px; background: #fff; color: #333; }
body.mathprepa-accordions .mathprepa-disclosure .su-spoiler-icon {
 position: absolute; display: flex; width: 20px; height: 20px; left: 7px; top: 7px;
 align-items: center; justify-content: center; font: inherit; color: inherit;
}
body.mathprepa-accordions .su-spoiler-style-default > .mathprepa-disclosure-title > .su-spoiler-icon { left: 0; }
body.mathprepa-accordions .su-spoiler-style-simple > .mathprepa-disclosure-title > .su-spoiler-icon,
body.mathprepa-accordions .su-spoiler.cours > .mathprepa-disclosure-title > .su-spoiler-icon,
body.mathprepa-accordions .su-spoiler-icon-none > .mathprepa-disclosure-title > .su-spoiler-icon { display: none; }
body.mathprepa-accordions .mathprepa-disclosure .su-spoiler-icon::before,
body.mathprepa-accordions .mathprepa-disclosure .su-spoiler-icon::after { content: none; }
body.mathprepa-accordions .mathprepa-disclosure .su-spoiler-icon svg { display: block; width: 14px; height: 14px; }
body.mathprepa-accordions .mathprepa-disclosure:not(.su-spoiler-closed):not([class*="su-spoiler-icon-plus"]):not([class*="su-spoiler-icon-folder"]) > .mathprepa-disclosure-title .su-spoiler-icon svg { transform: rotate(90deg); }
body.mathprepa-accordions .mathprepa-disclosure:not(.su-spoiler-closed) > .mathprepa-disclosure-title .mathprepa-icon-plus-vertical { display: none; }
:where(body.mathprepa-accordions) .mathprepa-disclosure-title:focus { outline: thin dotted; }
:where(body.mathprepa-accordions) .mathprepa-accordion > :first-child,
:where(body.mathprepa-accordions) .mathprepa-disclosure-content > :first-child { margin-top: 0; }
:where(body.mathprepa-accordions) .mathprepa-disclosure-content::before,
:where(body.mathprepa-accordions) .mathprepa-disclosure-content::after { display: table; content: ""; }
:where(body.mathprepa-accordions) .mathprepa-disclosure-content::after { clear: both; }
:where(body.mathprepa-accordions) .mathprepa-disclosure-content > .mathprepa-disclosure:last-child { margin-bottom: 0; }

body.mathprepa-planches-accordions .mathprepa-disclosure.perso3 > .mathprepa-disclosure-title {
    background: rgba(100,150,100,.15); color: #555; margin-top: 0; margin-bottom: 0;
}
body.mathprepa-planches-accordions .mathprepa-disclosure.perso3 > .mathprepa-disclosure-content {
    background: rgba(240,248,240,.2); color: #444; margin-top: 0; padding-left: 6px; padding-right: 0;
}
body.mathprepa-planches-accordions .mathprepa-disclosure.perso2 > .mathprepa-disclosure-title {
    background: rgba(230,238,230,.4); color: #555;
}
body.mathprepa-planches-accordions .mathprepa-disclosure.perso2 > .mathprepa-disclosure-content {
    background: rgba(240,248,240,.2); color: #444;
}
body.mathprepa-planches-accordions .mathprepa-disclosure-content > .mathprepa-disclosure:last-child { margin-bottom: 0; }
body.mathprepa-planches-accordions #primary .entry-content > h2.h2jm { margin-bottom: 12px; }
body.mathprepa-planches-accordions .mathprepa-accordion { margin-bottom: 0; }
body.mathprepa-planches-accordions .mathprepa-accordion > .mathprepa-disclosure:last-child { margin-bottom: 0; }
body.mathprepa-planches-accordions #primary .entry-content > h3.h3jm:has(a[href*="/planches-par-theme"]) { margin-top: 14px !important; margin-bottom: 0 !important; }
body.mathprepa-planches-accordions #primary .entry-content > p:empty,
body.mathprepa-planches-accordions #primary .entry-content > br { display: none; }

/* Aperçu : contenu central défilant dans un cadre fixe sur ordinateur. */
@media (min-width: 1100px) and (min-height: 600px) {
  html:has(body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main > #secondary) { overflow: hidden; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) { overflow: hidden; }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #page {
    display: flex; flex-direction: column;
    height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px) - var(--mathprepa-preview-bar-height, 0px));
    min-height: 0; margin-top: 0; margin-bottom: 0;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #masthead {
    position: relative; top: auto; flex: 0 0 auto;
    background: transparent;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #page > #site-navigation {
    position: relative; top: auto; flex: 0 0 33px;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main {
    flex: 1 1 0; min-height: 0; height: auto;
    grid-template-rows: minmax(0, 1fr); align-items: stretch;
    overflow: hidden;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main > #primary.site-content {
    height: 100%; min-height: 0; max-height: 100%;
    overflow-y: scroll; overflow-x: auto;
    overscroll-behavior: contain; overflow-anchor: auto;
    scroll-padding-top: 20px;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #main > #secondary {
    position: static; top: auto;
    height: 100%; min-height: 0; max-height: 100%;
    overflow-y: auto; overflow-x: hidden;
  }
  body.mathprepa-fixed-reading:not(.full-width):not(.no-sidebar):has(#main > #secondary) #page #colophon { flex: 0 0 auto; }
}

/* Colonnes et tableaux autonomes, compatibles avec les anciens shortcodes SU. */
.mathprepa-layout-row { margin-bottom: 1.5em; }
.mathprepa-layout-row::after,
.mathprepa-column-inner::after { display: table; clear: both; content: ""; }
.mathprepa-column-inner > :first-child { margin-top: 0; }
.mathprepa-column-inner > :last-child { margin-bottom: 0; }
.su-row .mathprepa-layout-column { display: block; float: left; box-sizing: border-box; margin: 0 0 0 4%; }
.su-row .mathprepa-layout-column:first-child { margin-left: 0; }
.su-row .mathprepa-layout-column.su-column-size-1-1 { margin-right: 0; margin-left: 0; }
.su-row .mathprepa-layout-column.su-column-centered { float: none; margin-right: auto; margin-left: auto; }
.su-row .su-column-size-1-1 { width: 100%; }
.su-row .su-column-size-1-2 { width: 48%; }
.su-row .su-column-size-1-3 { width: 30.66%; }
.su-row .su-column-size-2-3 { width: 65.33%; }
.su-row .su-column-size-1-4 { width: 22%; }
.su-row .su-column-size-3-4 { width: 74%; }
.su-row .su-column-size-1-5 { width: 16.8%; }
.su-row .su-column-size-2-5 { width: 37.6%; }
.su-row .su-column-size-3-5 { width: 58.4%; }
.su-row .su-column-size-4-5 { width: 79.2%; }
.su-row .su-column-size-1-6 { width: 13.33%; }
.su-row .su-column-size-5-6 { width: 82.66%; }
.su-row .mathprepa-layout-column :is(embed, iframe, img, object) { max-width: 100%; }
@media only screen and (max-width: 767px) {
 .su-row .mathprepa-layout-column { float: none; width: 100%; margin: 0; }
 .su-row .mathprepa-layout-column + .mathprepa-layout-column { margin: 1.5rem 0 0; }
}
.mathprepa-layout-table { width: 100%; margin-bottom: 1.5em; }
.mathprepa-layout-table table { width: 100% !important; margin: 0 !important; border-collapse: collapse !important; font-size: 1em !important; border: 1px solid #ccc !important; table-layout: auto !important; }
.mathprepa-layout-table table th { text-align: center !important; padding: 1em !important; font-size: 1em !important; font-weight: 700 !important; color: #333 !important; border: 1px solid #ccc !important; background: #f0f0f0 !important; }
.mathprepa-layout-table table td { padding: .5em 1em !important; border: 1px solid #ccc !important; background: #fff !important; }
.mathprepa-layout-table.su-table-responsive { overflow-x: auto; }
.mathprepa-layout-table.su-table-responsive table { width: auto !important; min-width: 100% !important; }
.mathprepa-layout-table.su-table-responsive :is(td, th) { word-break: initial !important; }
.mathprepa-layout-table.su-table-alternate tr:nth-child(even) td { background-color: #f7f7f7 !important; }
.mathprepa-layout-table.su-table-fixed table { table-layout: fixed !important; }

/* Login à droite sur ordinateur ; le menu mobile conserve son propre ordre. */
@media screen and (min-width: 768px) {
    body #site-navigation.themonic-nav #menu-top {
        display: flex !important; flex-wrap: nowrap; width: 100%;
    }
    #site-navigation #menu-top > li { flex: 0 0 auto; }
    body #site-navigation.themonic-nav #menu-top > #menu-item-17857 {
        margin-left: auto !important; position: relative;
    }
    #site-navigation #menu-top > #menu-item-17857 > .sub-menu {
        left: auto; right: 0;
    }
}

/* Le badge remplace Login uniquement sur ordinateur ; mobile inchangé. */
.mathprepa-login-mobile-label { display: none; }
@media (min-width: 1100px) and (min-height: 600px) {
    body #page .mathprepa-header-account { display: none !important; }
}
.mathprepa-login-name {
    display: block; min-width: 0; max-width: 140px;
    overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
}
#site-navigation #menu-top > #menu-item-17857 > a.mathprepa-login-badge {
    box-sizing: border-box; background: #ffd65a !important;
    border: 1px solid #e1bb45; border-radius: 6px;
    color: #142d5b !important; font-weight: 700 !important;
    text-transform: none !important; text-shadow: none !important;
}
#site-navigation #menu-top > #menu-item-17857 > a.mathprepa-login-badge:hover {
    background: #ffe28a !important;
}
@media screen and (min-width: 768px) {
    body #site-navigation.themonic-nav #menu-top > #menu-item-17857 {
        display: flex; align-items: center; flex: 0 1 auto; min-width: 0;
    }
    #site-navigation #menu-top > #menu-item-17857 > a.mathprepa-login-badge {
        display: inline-flex; align-items: center; min-width: 0; max-width: 180px;
        height: 26px !important; padding: 0 10px !important;
        font-size: 12px; line-height: 24px !important;
    }
    #site-navigation #menu-top > #menu-item-17857 > a.mathprepa-login-badge::after {
        flex: 0 0 auto;
    }
}
:is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-login-name { display: none; }
:is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-login-mobile-label { display: inline; }

/* Recherche du menu : les deux widgets de la barre latérale sont conservés. */
#site-navigation #menu-top > .mathprepa-menu-search {
    position: relative;
}
.mathprepa-menu-search-toggle {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    box-sizing: border-box; height: 33px; margin: 0; padding: 0 20px;
    border: 0; border-radius: 0; background: transparent; box-shadow: none;
    color: #f4f8ff; font-family: inherit; font-size: 12px;
    line-height: 33px; font-weight: 500; text-shadow: none; text-transform: uppercase;
    cursor: pointer;
}
#site-navigation .mathprepa-menu-search-toggle:hover,
#site-navigation .mathprepa-menu-search-toggle:focus-visible,
#site-navigation .mathprepa-menu-search.is-open > .mathprepa-menu-search-toggle {
    background: transparent; color: #ffd65a; box-shadow: none;
}
.mathprepa-menu-search-toggle:focus-visible { outline: 2px solid #ffd65a; outline-offset: -3px; }
.mathprepa-menu-search-chevron {
    width: 0; height: 0; border-left: 5px solid transparent;
    border-right: 5px solid transparent; border-top: 5px solid currentColor;
}
.mathprepa-menu-search-panel {
    position: absolute; top: 100%; right: 0; z-index: 100200;
    box-sizing: border-box; width: 340px; max-width: calc(100vw - 24px);
    padding: 22px; border: 1px solid #cad7e5; border-radius: 0 0 10px 10px;
    background: #f1f5f9; color: #193b6c; text-align: left;
    box-shadow: 0 12px 28px rgba(10, 25, 50, .24);
    font-size: 14px; line-height: 1.5; text-transform: none;
}
.mathprepa-menu-search-panel[hidden] { display: none !important; }
.mathprepa-menu-search-panel .mathprepa-menu-search-label {
    display: block; margin: 0 0 8px; padding: 0; color: #193b6c;
    font-size: 14px; line-height: 1.5; font-weight: 600; text-transform: none;
}
.mathprepa-menu-search-panel .mathprepa-menu-search-label label { color: inherit; font: inherit; }
.mathprepa-menu-search-panel .mathprepa-category-select,
.mathprepa-menu-search-panel input[type="search"] {
    display: block; box-sizing: border-box; width: 100%; min-width: 0;
    height: 40px; margin: 0; padding: 7px 10px; border: 1px solid #9faab8;
    border-radius: 6px; background: rgba(255,249,184,.35);
    color: #24364d; font-family: inherit; font-size: 14px; line-height: 24px;
    box-shadow: none;
}
.mathprepa-menu-search-panel select:focus,
.mathprepa-menu-search-panel input:focus { outline: 2px solid #496386; outline-offset: 2px; }
.mathprepa-menu-search-form { margin: 22px 0 0; padding: 0; }
.mathprepa-menu-search-field { display: flex; align-items: stretch; gap: 0; }
.mathprepa-menu-search-panel .mathprepa-menu-search-field input { border-radius: 6px 0 0 6px; }
.mathprepa-menu-search-field button {
    display: flex; flex: 0 0 42px; align-items: center; justify-content: center;
    width: 42px; height: 40px; padding: 0; margin: 0; border: 1px solid #193b6c;
    border-radius: 0 6px 6px 0; background: #193b6c; color: #fff;
    box-shadow: none; text-shadow: none; cursor: pointer;
}
.mathprepa-menu-search-field button:hover { background: #496386; }
:is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-menu-search-mobile { display: block; list-style: none; margin: 0; padding: 0; }
:is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-menu-search-toggle {
    width: 100%; height: 44px; justify-content: space-between; padding: 0 20px;
    font-size: 14px; line-height: 44px; text-align: left;
    background: #e6edf5; color: #193b6c; font-weight: 600;
}
:is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-menu-search-form { margin: 18px 0 0; }
:is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-menu-search-panel {
    position: static; width: 100%; max-width: none; border-radius: 0;
    padding: 18px; box-shadow: none;
}
:is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-menu-search-panel :is(select,input) { font-size: 16px; }

/* Mobile : bandeau compact et contenu défilant dans sa propre fenêtre. */
@media screen and (max-width: 767px) {
    html:has(body.mathprepa-mobile-reading),
    body.mathprepa-mobile-reading {
        width: 100%; height: 100%; min-height: 0; overflow: hidden !important;
        overscroll-behavior: none;
    }
    body.mathprepa-mobile-reading #page {
        position: fixed !important;
        top: var(--mathprepa-mobile-admin-height, 0px) !important;
        left: 0; right: 0; bottom: var(--mathprepa-mobile-preview-height, 0px);
        display: flex !important; flex-direction: column;
        box-sizing: border-box;
        width: 100% !important; max-width: none !important;
        height: calc(100vh - var(--mathprepa-mobile-admin-height, 0px) - var(--mathprepa-mobile-preview-height, 0px));
        height: calc(100dvh - var(--mathprepa-mobile-admin-height, 0px) - var(--mathprepa-mobile-preview-height, 0px));
        margin: 0 !important; padding: 0 !important; border: 0; overflow: hidden;
    }
    body.mathprepa-mobile-reading #masthead {
        flex: 0 0 auto; position: relative; z-index: 30;
        width: 100%; margin: 0; padding: 0; border: 0;
        background: linear-gradient(120deg, #193b6c, #142d5b);
    }
    body.mathprepa-mobile-reading #masthead .mathprepa-personalized-header {
        position: relative; padding: 4px 12px 6px;
        grid-template-columns: minmax(0, 1fr);
        column-gap: 0; row-gap: 1px;
    }
    body.mathprepa-mobile-reading #masthead .mathprepa-personalized-header > a:not(.site-description),
    body.mathprepa-mobile-reading #masthead .mathprepa-personalized-header > h2 {
        grid-column: 1; grid-row: 1; align-self: start;
        max-width: calc(100% - 160px); margin: 0; padding: 0;
        font-size: clamp(26px, 8vw, 32px); line-height: 32px;
    }
    body.mathprepa-mobile-reading #masthead .mathprepa-header-author {
        grid-column: 1; grid-row: 2; align-self: start;
        margin: 0; font-size: 10.5px; line-height: 14px;
    }
    body.mathprepa-mobile-reading #masthead .mathprepa-header-author strong {
        font-size: inherit; line-height: inherit;
    }
    body.mathprepa-mobile-reading #masthead .mathprepa-author-short {
        display: none;
    }
    body.mathprepa-mobile-reading #masthead .mathprepa-author-original-name::after {
        content: none;
    }
    body.mathprepa-mobile-reading #masthead .mathprepa-header-account {
        display: flex; position: absolute; grid-area: auto; align-self: auto; justify-self: auto;
        right: 66px; top: 26px;
        transform: translateY(-50%);
        width: max-content; max-width: min(110px, calc(100vw - 230px));
        margin: 0; padding: 0; gap: 0;
    }
    body.mathprepa-mobile-reading #masthead .mathprepa-header-account > a {
        max-width: 100%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
    }
    body.mathprepa-mobile-reading #page #masthead .mathprepa-header-account.is-connected > a {
        max-width: 100%; padding: 2px 8px;
        font-size: 12px !important; line-height: 18px;
    }
    body.mathprepa-mobile-reading .mathprepa-mobile-scroll {
        display: block; flex: 1 1 auto; min-height: 0; width: 100%;
        box-sizing: border-box; padding: 0 10px env(safe-area-inset-bottom, 0px);
        overflow-y: auto; overflow-x: hidden;
        overscroll-behavior-y: contain;
        -webkit-overflow-scrolling: touch;
        background: #fff; scroll-padding-top: 12px;
    }
    body.mathprepa-mobile-reading .mathprepa-mobile-scroll:focus-visible {
        outline: 2px solid #8daac4; outline-offset: -2px;
    }
    body.mathprepa-mobile-reading .mathprepa-mobile-scroll #main {
        width: 100%; margin: 0; min-height: 0;
    }
    body.mathprepa-mobile-reading .entry-content :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
        box-sizing: border-box; max-width: 100%;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-button, #rmp_menu_trigger-59994) {
        position: fixed !important;
        top: var(--mathprepa-mobile-admin-height, 0px) !important;
        right: 0 !important; left: auto !important;
        width: 54px !important; height: 57px !important;
        display: flex !important; flex-direction: column; align-items: center;
        justify-content: center; gap: 0; box-sizing: border-box;
        margin: 0 !important; padding: 0 !important;
        border: 1px solid #6d86aa; border-radius: 0;
        background: #193b6c; box-shadow: none; transform: none !important;
        z-index: 100001;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-button, #rmp_menu_trigger-59994):not(.is-active) {
        background: #193b6c !important;
        border-color: #6d86aa;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-button, #rmp_menu_trigger-59994) :is(.responsive-menu-pro-label, .rmp-trigger-label) {
        display: block; height: 12px; margin: 0; padding: 0; line-height: 12px;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-button, #rmp_menu_trigger-59994) :is(.responsive-menu-pro-button-text, .rmp-trigger-text) {
        color: #f4f8ff; font-size: 10px; line-height: 12px;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-button, #rmp_menu_trigger-59994) :is(.responsive-menu-pro-box, .rmp-trigger-box) {
        transform: scale(.7); transform-origin: center center;
        flex: 0 0 30px;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-button, #rmp_menu_trigger-59994) :is(.responsive-menu-pro-inner, .rmp-trigger-inner),
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-button, #rmp_menu_trigger-59994) :is(.responsive-menu-pro-inner, .rmp-trigger-inner)::before,
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-button, #rmp_menu_trigger-59994) :is(.responsive-menu-pro-inner, .rmp-trigger-inner)::after {
        background-color: #f4f8ff;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-container, #rmp-container-59994) {
        top: var(--mathprepa-mobile-admin-height, 0px) !important;
        max-height: calc(100dvh - var(--mathprepa-mobile-admin-height, 0px) - var(--mathprepa-mobile-preview-height, 0px));
    }
    body.mathprepa-mobile-reading #wpadminbar { position: fixed !important; }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-menu-search-field input[type="search"] {
        padding-left: 12px !important;
        padding-right: 10px !important;
    }
    body.mathprepa-mobile-reading #page > #colophon {
        flex: 0 0 auto; box-sizing: border-box;
        width: 100%; margin: 0; border: 0;
        padding: 8px 10px;
        padding-bottom: max(8px, env(safe-area-inset-bottom, 0px));
    }
    body.mathprepa-mobile-reading #colophon .site-info {
        display: flex; flex-wrap: nowrap; align-items: center; gap: 7px;
        padding: 0; margin: 0;
    }
    body.mathprepa-mobile-reading #colophon :is(.site-info, .footercopy, .footercredit, a) {
        font-size: clamp(9px, 2.6vw, 11px) !important;
        line-height: 1.5; white-space: nowrap;
    }
    body.mathprepa-mobile-reading #colophon .footercopy { flex: 1 1 auto; }
    body.mathprepa-mobile-reading #colophon .footercredit { flex: 0 0 auto; }
}

/* Catégories du menu mobile : liste compacte, indépendante du sélecteur d'iOS. */
.mathprepa-compact-categories { display: none; }
@media screen and (max-width: 767px) {
    :is(#responsive-menu-pro, #rmp-menu-59994) select.mathprepa-category-select[data-compact-picker] { display: none !important; }
    :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-compact-categories { display: block; }
    body :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-compact-categories-toggle {
        display: flex; align-items: center; justify-content: space-between; gap: 8px;
        box-sizing: border-box; width: 100%; min-height: 40px; height: auto;
        margin: 0; padding: 7px 10px; border: 1px solid #9faab8; border-radius: 6px;
        background: rgba(255,249,184,.35); color: #24364d;
        font-family: inherit; font-size: 16px; font-weight: 400; line-height: 24px;
        text-align: left; text-transform: none; text-shadow: none; box-shadow: none;
        cursor: pointer;
    }
    :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-compact-categories-toggle > span:first-child {
        min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
    }
    :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-compact-categories-toggle > span:last-child { flex: 0 0 auto; font-family: inherit; font-size: 16px; }
    body :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro, #rmp-menu-59994) ul.mathprepa-compact-categories-list {
        display: block; box-sizing: border-box; width: 100%; max-height: 260px;
        margin: 4px 0 0; padding: 3px 0; overflow-y: auto; overflow-x: hidden;
        overscroll-behavior: contain; -webkit-overflow-scrolling: touch;
        list-style: none; border: 1px solid #cad7e5; border-radius: 6px;
        background: #f1f5f9;
    }
    body :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro, #rmp-menu-59994) ul.mathprepa-compact-categories-list[hidden] { display: none !important; }
    body :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-compact-categories-list > li {
        display: block; height: auto; margin: 0; padding: 0; border: 0; list-style: none;
    }
    body :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-compact-categories-list > li > a {
        display: block; box-sizing: border-box; width: 100%; height: auto !important;
        margin: 0; padding: 5px 10px !important; border: 0;
        background: #f1f5f9 !important; color: #193b6c !important;
        font-family: inherit; font-size: 14px !important; font-weight: 400;
        line-height: 20px !important; text-indent: 0; text-decoration: none;
        text-transform: none; text-shadow: none;
        white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    }
    body :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-compact-categories-list > li + li > a {
        border-top: 1px solid #e0e7ee;
    }
    body :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-compact-categories-list > li > a:is(:hover, :focus-visible) {
        background: #e2eaf3 !important; outline: 2px solid #8daac4; outline-offset: -2px;
    }
    body :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-compact-categories-list > li > a[aria-current="page"] {
        background: #ffd65a !important; color: #142d5b !important;
    }
}


/* Menu mobile : palette commune au menu de l'ordinateur. */
@media screen and (max-width: 767px) {
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-container, #rmp-container-59994),
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-wrapper, #rmp-menu-wrap-59994) {
        background: #f1f5f9;
        color: #193b6c;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro-title, #rmp-menu-title-59994) {
        position: relative;
        display: flex; align-items: center; box-sizing: border-box;
        height: 57px !important; min-height: 57px;
        margin: 0; padding: 4px 66px 6px 12px !important;
        background: #193b6c !important;
        color: #f4f8ff;
        border-bottom: 1px solid #496386;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-title, #rmp-menu-title-59994) a {
        margin: 0; padding: 0; line-height: 1.2 !important;
        color: #f4f8ff !important;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro-title, #rmp-menu-title-59994) .mathprepa-mobile-menu-brand-link {
        display: block; margin: 0; padding: 0;
        font-family: inherit; font-size: clamp(26px, 8vw, 32px) !important;
        font-weight: 400; line-height: 32px !important;
        text-transform: none; letter-spacing: normal;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-title, #rmp-menu-title-59994) .mathprepa-brand-accent {
        color: #ffd65a !important;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-title, #rmp-menu-title-59994) .mathprepa-mobile-menu-credit {
        margin: 1px 0 0; padding: 0; color: #f4f8ff;
        font-size: 10.5px; line-height: 14px;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-title, #rmp-menu-title-59994) .mathprepa-mobile-menu-credit strong {
        display: inline; color: inherit; font-size: inherit; line-height: inherit; font-weight: 600;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro-title, #rmp-menu-title-59994) .mathprepa-mobile-menu-credit a {
        display: inline; color: inherit !important; font: inherit !important;
        margin: 0; padding: 0; text-decoration: none;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-title, #rmp-menu-title-59994) .mathprepa-mobile-menu-account {
        display: flex; position: absolute; right: 66px; top: 26px;
        transform: translateY(-50%);
        width: max-content; max-width: min(110px, calc(100vw - 230px));
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro-title, #rmp-menu-title-59994) .mathprepa-mobile-menu-account a {
        display: block; box-sizing: border-box; max-width: 100%;
        margin: 0; padding: 0; color: #c7d7e9 !important;
        font-family: inherit; font-size: 10.5px !important; font-weight: 400;
        line-height: 1.45 !important; text-decoration: none; text-shadow: none;
        overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro-title, #rmp-menu-title-59994) .mathprepa-mobile-menu-account.is-connected a {
        padding: 2px 8px; border: 1px solid #e1bb45; border-radius: 7px;
        background: #ffd65a; color: #142d5b !important;
        font-size: 12px !important; line-height: 18px !important; font-weight: 700;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-button, #rmp_menu_trigger-59994).is-active {
        background: #193b6c !important;
        border-color: #69809f;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) > li > a:is(.responsive-menu-pro-item-link, .rmp-menu-item-link),
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) > li > .mathprepa-menu-search-toggle {
        background: #193b6c !important;
        color: #f4f8ff !important;
        border-bottom: 1px solid #496386;
        text-shadow: none;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) > li > .mathprepa-menu-search-toggle {
        position: relative;
        padding-right: 50px;
        text-transform: none;
        font-weight: 400;
        font-size: 16px;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-menu-search-chevron {
        position: absolute; top: 0; right: 0;
        display: flex; align-items: center; justify-content: center;
        box-sizing: border-box; width: 50px; height: 100%;
        border: 0; border-left: 1px solid #69809f;
        color: inherit; font-family: inherit; font-size: 16px;
        line-height: normal;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-menu-search-chevron::before {
        content: "▼";
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) .is-open .mathprepa-menu-search-chevron::before {
        content: "▲";
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) :is(.responsive-menu-pro-submenu, .rmp-submenu) {
        background: #f1f5f9;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) :is(.responsive-menu-pro-submenu, .rmp-submenu) a:is(.responsive-menu-pro-item-link, .rmp-menu-item-link) {
        background: #f1f5f9 !important;
        color: #193b6c !important;
        border-bottom: 1px solid #c7d3e1;
        text-shadow: none;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) :is(.responsive-menu-pro-subarrow, .rmp-menu-subarrow) {
        background: transparent !important;
        color: inherit !important;
        border-left-color: #69809f !important;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) > li > a:is(.responsive-menu-pro-item-link, .rmp-menu-item-link):is(:hover, :focus-visible),
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) > li.is-open > .mathprepa-menu-search-toggle {
        background: #2c4b75 !important;
        color: #ffd65a !important;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) :is(.responsive-menu-pro-submenu, .rmp-submenu) a:is(.responsive-menu-pro-item-link, .rmp-menu-item-link):is(:hover, :focus-visible) {
        background: #e2eaf3 !important;
        color: #193b6c !important;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) li:is(.current-menu-item, .current-menu-ancestor, .current_page_item, .current_page_ancestor, :is(.responsive-menu-pro-current-item, .rmp-menu-current-item)) > a:is(.responsive-menu-pro-item-link, .rmp-menu-item-link) {
        background: #ffd65a !important;
        color: #142d5b !important;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) li:is(.current-menu-item, .current-menu-ancestor, .current_page_item, .current_page_ancestor, :is(.responsive-menu-pro-current-item, .rmp-menu-current-item)) > a > :is(.responsive-menu-pro-subarrow, .rmp-menu-subarrow) {
        border-left-color: #d6b34c !important;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro, #rmp-menu-59994) .mathprepa-menu-search-panel {
        background: #f1f5f9;
        border-color: #cad7e5;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-container, #rmp-container-59994) :is(#responsive-menu-pro-additional-content, #rmp-menu-additional-content-59994).mathprepa-mobile-menu-footer {
        box-sizing: border-box; width: 100%; margin: 0; padding: 8px 10px;
        padding-bottom: max(8px, env(safe-area-inset-bottom, 0px));
        background: #193b6c; color: #f4f8ff !important;
    }
    body.mathprepa-mobile-reading .mathprepa-mobile-menu-footer .site-info {
        display: flex; flex-wrap: nowrap; align-items: center; gap: 7px;
        margin: 0; padding: 0; border: 0;
    }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-additional-content, #rmp-menu-additional-content-59994).mathprepa-mobile-menu-footer :is(.site-info, .footercopy, .footercredit, a) {
        font-size: clamp(9px, 2.6vw, 11px) !important;
        line-height: 1.5; white-space: nowrap;
    }
    body.mathprepa-mobile-reading .mathprepa-mobile-menu-footer .footercopy { flex: 1 1 auto; text-align: left; }
    body.mathprepa-mobile-reading .mathprepa-mobile-menu-footer .footercredit { flex: 0 0 auto; text-align: right; }
    body.mathprepa-mobile-reading :is(#responsive-menu-pro-additional-content, #rmp-menu-additional-content-59994).mathprepa-mobile-menu-footer a { color: #ffd65a !important; }
    body.mathprepa-mobile-reading .mathprepa-mobile-menu-footer .clear { display: none; }
}






/* Migration Menu responsive 4 : mêmes couleurs et interactions que la version Pro. */
@media screen and (max-width: 767px) {
 body.mathprepa-mobile-reading #rmp-container-59994 {
  box-sizing: border-box; left: 0; right: 0; width: 100%; max-width: 100%; min-width: 0;
  height: calc(100dvh - var(--mathprepa-mobile-admin-height, 0px) - var(--mathprepa-mobile-preview-height, 0px));
  padding: 0; overflow-y: auto; overflow-x: hidden; z-index: 100000;
 }
 body.mathprepa-mobile-reading #rmp-container-59994 #rmp-menu-wrap-59994 { margin: 0; padding: 0; background: #f1f5f9; }
 body.mathprepa-mobile-reading #rmp-menu-59994 { margin: 0; padding: 0; }
 body.mathprepa-mobile-reading #rmp-menu-59994 > li { margin: 0; padding: 0; }
 body.mathprepa-mobile-reading #rmp-menu-59994 .rmp-menu-item-link {
  height: auto; min-height: 44px; padding: 10px 20px; line-height: 24px;
  text-indent: 0; font-family: inherit; font-size: 16px; text-decoration: none;
 }
 body.mathprepa-mobile-reading #rmp-menu-59994 .rmp-menu-item-has-children > .rmp-menu-item-link { padding-right: 64px; }
 body.mathprepa-mobile-reading #rmp-menu-59994 .rmp-submenu .rmp-menu-item-link { padding-left: 25px; }
 body.mathprepa-mobile-reading #rmp-menu-59994 .rmp-menu-subarrow {
  top: 0; right: 0; width: 50px; height: 45px; padding: 0; margin: 0;
  border: 0; border-left: 1px solid #69809f; border-bottom: 1px solid #496386;
  border-radius: 0; box-shadow: none; font: 16px/44px inherit; text-shadow: none;
  color: #f4f8ff; background: transparent;
 }
 body.mathprepa-mobile-reading #rmp-menu-59994 li:is(.current-menu-ancestor,.current-menu-item) > .rmp-menu-subarrow { color: #142d5b !important; border-left-color: #d6b34c; }
 body.mathprepa-mobile-reading #rmp-menu-title-59994 { position: sticky; top: 0; z-index: 3; }
 body.mathprepa-mobile-reading #rmp-menu-title-59994 .mathprepa-mobile-menu-brand { width: 100%; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994 { transition: none; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994 .rmp-trigger-box { width: 40px; height: 24px; flex: 0 0 24px; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994 .rmp-trigger-inner,
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994 .rmp-trigger-inner::before,
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994 .rmp-trigger-inner::after { width: 40px; height: 4px; border-radius: 4px; background: #f4f8ff; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994:not(.is-active) .rmp-trigger-inner { transform: none; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994 .rmp-trigger-text { font-size: 10px; line-height: 12px; }
 body.mathprepa-mobile-reading #rmp-menu-additional-content-59994 { padding: 0; }
 body.mathprepa-mobile-reading #rmp-menu-59994 > .mathprepa-menu-search > .mathprepa-menu-search-toggle { min-height: 45px; height: 45px; }
 body.mathprepa-mobile-reading #rmp-menu-59994 .mathprepa-menu-search-field input[type="search"] { padding-left: 12px !important; }
 body.mathprepa-mobile-reading #rmp-menu-59994 .mathprepa-menu-home-icon { width: 20px; height: 20px; vertical-align: middle; fill: currentColor; }
}

@media screen and (max-width:767px) {
 body.mathprepa-mobile-reading #rmp-menu-59994 > li > .rmp-menu-subarrow { color:#f4f8ff !important; font-family:inherit; font-size:16px; line-height:44px; }
 body.mathprepa-mobile-reading #rmp-menu-59994 > li:is(.current-menu-item,.current-menu-ancestor) > .rmp-menu-subarrow { color:#142d5b !important; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994 .rmp-trigger-label { position:static; order:2; float:none; padding:0; margin:0; height:12px; line-height:12px; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994 .rmp-trigger-box { position:relative; order:1; padding:0; margin:0; }
}

@media screen and (max-width:767px) {
 body.mathprepa-mobile-reading #rmp-container-59994 { margin:0 !important; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994 .rmp-trigger-inner { left:0; top:10px; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994:not(.is-active) .rmp-trigger-inner::before { top:-9px; bottom:auto; opacity:1; transform:none; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994:not(.is-active) .rmp-trigger-inner::after { top:9px; bottom:auto; transform:none; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994.is-active .rmp-trigger-inner { top:10px; transform:rotate(45deg); }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994.is-active .rmp-trigger-inner::before { opacity:0; }
 body.mathprepa-mobile-reading #rmp_menu_trigger-59994.is-active .rmp-trigger-inner::after { top:0; bottom:auto; transform:rotate(90deg); }
}
