/* Le mode focus masque le logo sous 768px et laisse le titre à sa taille de bureau. */

@media (max-width: 768px) {
	.learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo {
		display: block;
		order: 2;
		flex: 1 1 auto;
		height: auto;
		padding: 0.6em 1em;
	}

	.learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo img {
		height: 30px;
	}

	.ld-in-focus-mode #ld-focus-content > h1 {
		font-size: 1.75rem;
		line-height: 1.2;
	}
}

.kognos-exercices {
	margin-top: 2.5em;
	padding: 1.5em;
	border-radius: 8px;
	background: var(--global-palette8, #e7eff6);
}

.kognos-exercices__titre {
	margin: 0 0 0.8em;
	font-size: 1.15rem;
	color: var(--global-palette3, #07294e);
}

.kognos-exercices__liste {
	margin: 0;
	padding: 0;
	list-style: none;
}

.kognos-exercices__liste li + li {
	margin-top: 0.5em;
}

/* Le cadre est porté par le li, pas par le lien : LearnDash efface la bordure
   basse de tous les liens de son gabarit et le fait en !important. */
.kognos-exercices__liste li {
	border: 1px solid var(--global-palette7, #eff0f5);
	border-radius: 6px;
	background: var(--global-palette9, #fff);
}

.kognos-exercices__liste li:hover,
.kognos-exercices__liste li:focus-within {
	border-color: var(--global-palette1, #038274);
}

.kognos-exercices__liste a {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1em;
	padding: 0.75em 1em;
	text-decoration: none;
}

.kognos-exercices__info {
	flex: 0 0 auto;
	font-size: 0.85em;
	color: var(--global-palette2, #136586);
}

@media (max-width: 480px) {
	.kognos-exercices__liste a {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.25em;
	}
}

/* LearnDash calcule un texte noir sur ses boutons turquoise. Trop faible.
   Même structure de sélecteur que la sienne pour passer devant. */
.learndash-wrapper .ld-button:not([disabled]):not(.ld-button-transparent):not(.ld--ignore-inline-css),
.learndash-wrapper .btn-join:not(.ld--ignore-inline-css),
.learndash-wrapper #btn-join:not(.ld--ignore-inline-css) {
	color: var(--global-palette9, #fff);
}

/* Connexion et Déconnexion de l'en-tête, en contour comme la maquette.
   Le raccourci porte la classe ld--ignore-inline-css, prévue par LearnDash
   pour qu'il n'impose pas ses couleurs — sauf la bordure basse, qu'il retire
   quand même sur tous ses liens. D'où le !important. */
.header-html .learndash-wrapper a.ld-login-text.ld-login-button.ld-button,
.mobile-html .learndash-wrapper a.ld-login-text.ld-login-button.ld-button {
	background-color: transparent;
	border: 1px solid var(--global-palette1, #038274) !important;
	color: var(--global-palette1, #038274);
}

.header-html .learndash-wrapper a.ld-login-text.ld-login-button.ld-button:hover,
.header-html .learndash-wrapper a.ld-login-text.ld-login-button.ld-button:focus,
.mobile-html .learndash-wrapper a.ld-login-text.ld-login-button.ld-button:hover,
.mobile-html .learndash-wrapper a.ld-login-text.ld-login-button.ld-button:focus {
	background-color: var(--global-palette1, #038274);
	color: var(--global-palette9, #fff);
}

/* LearnDash étale le bouton Déconnexion sur toute sa largeur et ne donne la
   marge de l'icône qu'à Connexion. Les deux boutons s'alignent pareil. */
.header-html .learndash-wrapper .ld-button.ld-login-button.ld-logout,
.mobile-html .learndash-wrapper .ld-button.ld-login-button.ld-logout {
	justify-content: flex-start;
}

.header-html .learndash-wrapper .ld-button.ld-login-button.ld-logout .ld-icon,
.mobile-html .learndash-wrapper .ld-button.ld-login-button.ld-logout .ld-icon {
	margin-right: 10px;
}

/* Page de recherche (extension kognos-learndash-search).
   Les couleurs de l'extension repointent vers la palette du site, et les
   résultats passent de grandes tuiles à des lignes compactes : la vignette
   identifie le logiciel, le titre porte la lecture. */

.kognos-lds-search {
	--kognos-lds-border: #dde5ec;
	--kognos-lds-ink: var(--global-palette3, #07294e);
	--kognos-lds-accent: var(--global-palette1, #038274);
	--kognos-lds-soft: var(--global-palette8, #e7eff6);
	--kognos-lds-lien: var(--global-palette2, #136586);
	--kognos-lds-second: #5a6675;
}

.kognos-lds-search__form {
	gap: 0.5rem;
	margin-bottom: 2rem;
}

.kognos-lds-search__form input[type="search"] {
	padding: 0.9rem 1.1rem;
	border-radius: 6px;
}

.kognos-lds-search__form input[type="search"]:focus-visible,
.kognos-lds-search__filters a:focus-visible,
.kognos-lds-search__group a:focus-visible {
	outline: 2px solid var(--kognos-lds-lien);
	outline-offset: 2px;
}

.kognos-lds-search__form button {
	padding: 0.9rem 1.5rem;
	border-radius: 6px;
}

/* Le liseré de 4 px devient un simple aplat, comme le bloc des exercices. */
.kognos-lds-search__intro,
.kognos-lds-search__message,
.kognos-lds-search__empty {
	padding: 1rem 1.25rem;
	border-left: 0;
	border-radius: 8px;
	color: var(--kognos-lds-ink);
}

.kognos-lds-search__summary {
	margin-bottom: 1.75rem;
}

.kognos-lds-search__summary h2 {
	font-size: 1.5rem;
}

.kognos-lds-search__summary p {
	color: var(--kognos-lds-second);
	font-size: 0.9375rem;
}

.kognos-lds-search__filters a {
	padding: 0.35rem 0.85rem;
	font-size: 0.875rem;
	transition: border-color 0.15s, background-color 0.15s, color 0.15s;
}

/* Trois colonnes posées directement sur la page : le panneau blanc du gabarit
   suffit, une carte de plus par colonne ferait un cadre dans un cadre. */
.kognos-lds-search__groups {
	gap: 2rem;
}

.kognos-lds-search__group {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
}

.kognos-lds-search__group-header {
	margin-bottom: 0.5rem;
	padding-bottom: 0.65rem;
	border-bottom: 1px solid var(--kognos-lds-border);
}

.kognos-lds-search__group h3 {
	font-size: 1.0625rem;
	letter-spacing: 0.01em;
}

.kognos-lds-search__group h3 span {
	color: var(--kognos-lds-second);
	font-size: 0.9em;
	font-weight: 500;
}

/* La grille LearnDash arrive en colonnes Bootstrap. On la remet à plat. */
.kognos-lds-search__native-list .ld-course-list-items,
.kognos-lds-search__native-list .ld_course_grid {
	display: block;
	width: 100%;
	float: none;
	margin: 0;
	padding: 0;
}

.kognos-lds-search__native-list .ld_course_grid + .ld_course_grid {
	border-top: 1px solid var(--kognos-lds-border);
}

.kognos-lds-search__native-list article {
	position: relative;
	display: grid;
	grid-template-columns: 52px minmax(0, 1fr);
	gap: 0.25rem 0.9rem;
	margin: 0;
	padding: 0.9rem 0.75rem;
	border-radius: 8px;
	transition: background-color 0.15s;
}

.kognos-lds-search__native-list article:hover {
	background: var(--kognos-lds-soft);
}

.kognos-lds-search__native-list article > a[aria-hidden="true"] {
	grid-area: 1 / 1 / 2 / 2;
	display: block;
}

.kognos-lds-search__native-list article img {
	width: 52px;
	height: 52px;
	border: 1px solid var(--kognos-lds-border);
	border-radius: 6px;
	background: #fff;
	object-fit: cover;
}

.kognos-lds-search__native-list .caption {
	grid-area: 1 / 2 / 2 / 3;
	min-width: 0;
}

.kognos-lds-search__native-list .entry-title {
	display: -webkit-box;
	overflow: hidden;
	margin: 0 0 0.2rem;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: var(--kognos-lds-ink);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
}

.kognos-lds-search__native-list .entry-content {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.kognos-lds-search__native-list .entry-content p {
	margin: 0;
	color: var(--kognos-lds-second);
	font-size: 0.875rem;
	line-height: 1.45;
}

.kognos-lds-search__native-list .ld_course_grid_button {
	margin-top: 0.35rem;
}

/* Le titre n'est pas un lien dans la grille LearnDash : ce bouton est le seul
   point d'entrée au clavier. Il garde son libellé et couvre toute la ligne. */
.kognos-lds-search__native-list .ld_course_grid_button a {
	display: inline-block;
	padding: 0;
	border: 0;
	background: none;
	color: var(--kognos-lds-lien);
	font-size: 0.8125rem;
	font-weight: 600;
	text-decoration: none;
}

.kognos-lds-search__native-list .ld_course_grid_button a::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 8px;
}

.kognos-lds-search__native-list .ld_course_grid_button a:hover,
.kognos-lds-search__native-list .ld_course_grid_button a:focus {
	text-decoration: underline;
}

.kognos-lds-search__more {
	margin-top: 1.25rem;
}

.kognos-lds-search__more a {
	color: var(--kognos-lds-lien);
	font-size: 0.875rem;
	font-weight: 600;
	text-decoration: none;
}

.kognos-lds-search__more a:hover,
.kognos-lds-search__more a:focus {
	text-decoration: underline;
}

/* Ressources : même rythme que les deux autres colonnes. */
.kognos-lds-search__resource-list {
	gap: 0;
}

.kognos-lds-search__resource {
	padding: 0.9rem 0.75rem;
	border-bottom: 1px solid var(--kognos-lds-border);
}

/* En pleine largeur la colonne des ressources s'étale : on borne la ligne. */
.kognos-lds-search__resource h4,
.kognos-lds-search__excerpt {
	max-width: 68ch;
}

.kognos-lds-search__resource-type {
	margin: 0 0 0.15rem;
	line-height: 1.4;
	color: var(--kognos-lds-second);
	font-size: 0.6875rem;
	letter-spacing: 0.06em;
}

.kognos-lds-search__resource h4 {
	margin: 0 0 0.3rem;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
}

.kognos-lds-search__resource h4 a {
	color: var(--kognos-lds-ink);
	text-decoration: none;
}

.kognos-lds-search__resource h4 a:hover,
.kognos-lds-search__resource h4 a:focus {
	color: var(--kognos-lds-lien);
	text-decoration: underline;
}

.kognos-lds-search__excerpt {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: var(--kognos-lds-second);
	font-size: 0.875rem;
	line-height: 1.45;
}

@media (max-width: 700px) {
	.kognos-lds-search__native-list article {
		grid-template-columns: 44px minmax(0, 1fr);
		padding: 0.8rem 0.5rem;
	}

	.kognos-lds-search__native-list article img {
		width: 44px;
		height: 44px;
	}

	.kognos-lds-search__resource {
		padding: 0.8rem 0.5rem;
	}
}

/* Invitation qui remplace la vidéo pour un visiteur non connecté. */
.kognos-invitation {
	margin: 0 0 1.5em;
	padding: 2em 1.6em;
	border: 1px solid var(--global-palette7, #eff0f5);
	border-radius: 10px;
	background: var(--global-palette8, #e7eff6);
	text-align: center;
}

.kognos-invitation__titre {
	margin: 0 0 0.4em;
	color: var(--global-palette3, #07294e);
	font-size: 1.25rem;
	font-weight: 700;
}

.kognos-invitation__texte {
	margin: 0 auto 1.4em;
	max-width: 34em;
}

.kognos-invitation__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.6em 1.4em;
	margin: 0;
}

.learndash-wrapper a.kognos-invitation__bouton,
.entry-content a.kognos-invitation__bouton {
	padding: 0.7em 1.6em;
	border-radius: 6px;
	background: var(--global-palette1, #038274);
	color: var(--global-palette9, #fff);
	font-weight: 600;
	text-decoration: none;
}

.learndash-wrapper a.kognos-invitation__bouton:hover,
.learndash-wrapper a.kognos-invitation__bouton:focus,
.entry-content a.kognos-invitation__bouton:hover,
.entry-content a.kognos-invitation__bouton:focus {
	background: var(--global-palette3, #07294e);
	color: var(--global-palette9, #fff);
}

.learndash-wrapper a.kognos-invitation__lien,
.entry-content a.kognos-invitation__lien {
	color: var(--global-palette2, #136586);
	text-decoration: underline;
}

/* Les liens de navigation de LearnDash mènent à des leçons verrouillées :
   sans compte, ils ne servent qu'à décevoir. Seul le retour au cours reste.
   Les sélecteurs reprennent la longueur de ceux de LearnDash : sous 960 px il
   redéclare `display` sur ces créneaux, et « Leçon Suivante » réapparaissait
   sur mobile. */
body:not(.logged-in) .learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .ld-content-actions:not(:has(.ld-course-step-back)) {
	display: none;
}

body:not(.logged-in) .learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .ld-content-actions .ld-content-action:not(:has(.ld-course-step-back)) {
	display: none;
}

/* Un seul lien dans la rangée : les marges du créneau le centrent. Passer par
   `justify-content` échouait, LearnDash impose le sien. */
body:not(.logged-in) .learndash-wrapper .ld-content-action:has(.ld-course-step-back) {
	margin: 0 auto;
}

.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .ld-content-actions .ld-content-action.ld-empty {
	display: none;
}

/* Niveau de difficulté, sous la barre d'état de la fiche de cours. */
.kognos-niveau {
	display: flex;
	align-items: center;
	gap: 0.6em;
	margin: 0 0 1.4em;
	font-size: 0.9rem;
}

.kognos-niveau__mot {
	color: var(--global-palette4, #07294e);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.kognos-niveau__valeur {
	padding: 0.25em 0.85em;
	border: 1px solid var(--global-palette1, #038274);
	border-radius: 999px;
	color: var(--global-palette1, #038274);
	font-weight: 600;
}

/* Dans la grille de cours comme dans les archives de Kadence, l'étiquette de
   niveau est déjà une classe de l'article : pas besoin d'y toucher côté PHP. */
.ld_course_grid article.course,
.kognos-archive-cours article.loop-entry[class*="ld_course_tag-"] {
	position: relative;
}

.ld_course_grid article.course[class*="ld_course_tag-"]::before,
.kognos-archive-cours article.loop-entry[class*="ld_course_tag-"]::before {
	position: absolute;
	z-index: 2;
	top: 0.7em;
	left: 0.7em;
	padding: 0.25em 0.8em;
	border: 1px solid var(--global-palette7, #eff0f5);
	border-radius: 999px;
	background: var(--global-palette9, #fff);
	box-shadow: 0 1px 3px rgba(7, 41, 78, 0.18);
	color: var(--global-palette3, #07294e);
	font-size: 0.78rem;
	font-weight: 600;
}

.ld_course_grid article.course.ld_course_tag-1-cafe::before,
.kognos-archive-cours article.loop-entry.ld_course_tag-1-cafe::before {
	content: "Niveau 1 · Café";
}

.ld_course_grid article.course.ld_course_tag-2-cappuccino::before,
.kognos-archive-cours article.loop-entry.ld_course_tag-2-cappuccino::before {
	content: "Niveau 2 · Cappuccino";
}

.ld_course_grid article.course.ld_course_tag-3-espresso::before,
.kognos-archive-cours article.loop-entry.ld_course_tag-3-espresso::before {
	content: "Niveau 3 · Espresso";
}

/* Les résultats de recherche reprennent la grille LearnDash mais en lignes
   compactes : la pastille y couvrirait le titre. */
.kognos-lds-search__native-list .ld_course_grid article.course::before {
	content: none;
}

/* Le bouton de la grille sortait du modèle importé, en bleu Bootstrap. */
.ld_course_grid .ld_course_grid_button a.btn-primary {
	border-color: var(--global-palette1, #038274);
	background-color: var(--global-palette1, #038274);
	color: var(--global-palette9, #fff);
}

.ld_course_grid .ld_course_grid_button a.btn-primary:hover,
.ld_course_grid .ld_course_grid_button a.btn-primary:focus {
	border-color: var(--global-palette3, #07294e);
	background-color: var(--global-palette3, #07294e);
	color: var(--global-palette9, #fff);
}

/* Kadence pose le fond et le cadre sur la boîte intérieure, qui s'arrête à son
   contenu : deux cartes voisines n'avaient donc pas la même hauteur. */
.wp-block-kadence-column.kognos-carte > .kt-inside-inner-col {
	height: 100%;
}

/* Sur téléphone, les liens des cartes sont la navigation : ils ont besoin
   d'une zone touchable, pas seulement de la hauteur d'une ligne de texte. */
@media (max-width: 767px) {
	.kognos-carte p a {
		display: inline-block;
		padding: 0.45em 0;
	}
}

/* Le rouge de Gravity Forms tombe à 2,5 sur le marine du pied de page. */
.site-footer .gfield_required_text {
	color: var(--global-palette15, #f5a524);
}

/* Le lien d'évitement ne s'affiche qu'au clavier : autant qu'il soit lisible. */
.skip-link.screen-reader-text:focus {
	background-color: var(--global-palette9, #fff);
	color: var(--global-palette3, #07294e);
	text-decoration: underline;
}

/* Le nombre de formations passait pour une ligne de texte au milieu de la
   carte. Il devient une pastille, au coin haut droit, au niveau du logo. */
.kognos-carte__compte {
	position: absolute;
	z-index: 1;
	top: 1.4rem;
	right: 1.4rem;
	margin: 0;
	padding: 0.2em 0.7em;
	border-radius: 999px;
	background: var(--global-palette8, #e7eff6);
	color: var(--global-palette3, #07294e);
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1.5;
	white-space: nowrap;
}

@media (max-width: 767px) {
	.kognos-carte__compte {
		top: 1.15rem;
		right: 1.15rem;
	}
}

/* Les trois liens de niveau sont des paragraphes distincts : ils héritaient de
   la marge de paragraphe du thème et flottaient dans la carte. */
.kognos-carte .kognos-niveau-lien {
	margin: 0 0 0.4rem;
}

.kognos-carte .kognos-niveau-lien:last-child {
	margin-bottom: 0;
}

/* Les archives de catégorie sortent des gabarits de Kadence : le cadre, le
   rayon et l'ombre ne suivaient pas les cartes montées à la main. */
.kognos-archive-cours article.loop-entry.content-bg {
	overflow: hidden;
	border: 1px solid #d3dde7;
	border-radius: 12px;
	box-shadow: none;
}

.kognos-archive-cours article.loop-entry .entry-content-wrap {
	padding: 1.5rem;
}

.kognos-archive-cours article.loop-entry .entry-title {
	font-size: 1.25rem;
	line-height: 1.3;
}

.kognos-archive-cours article.loop-entry .entry-title a {
	text-decoration: none;
}

/* L'image mise en avant du cours n'était pas affichée sur sa fiche. Elle passe
   à droite, la description coule autour. */
.kognos-cours-image {
	float: right;
	width: 38%;
	max-width: 400px;
	margin: 0 0 1.5rem 2rem;
}

.kognos-cours-image__visuel {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid #d3dde7;
	border-radius: 12px;
}

.single-sfwd-courses .ld-tabs-content::after {
	display: table;
	clear: both;
	content: "";
}

@media (max-width: 767px) {
	.kognos-cours-image {
		float: none;
		width: 100%;
		max-width: none;
		margin: 0 0 1.5rem;
	}
}

/* La ligne du niveau était collée à la barre d'état du cours. Trois classes :
   `.single-content p:last-child` de Kadence remettait la marge basse à zéro. */
.learndash-wrapper.learndash-shortcode-wrap .kognos-niveau {
	margin: 0.4rem 0 1.6rem;
}

/* Le lien de retour au cours tombait seul sous les boutons : LearnDash le range
   dans le même créneau que « Leçon terminée », l'un sous l'autre, et le dessine
   pleine largeur. Le créneau s'effacce pour que ses deux enfants deviennent des
   éléments de la rangée, et seul le lien passe à gauche ; les boutons gardent
   leur ordre. Le sélecteur du lien reprend celui de LearnDash, sinon sa largeur
   l'emporte. Sur mobile, sa disposition empilée reste la bonne. */
@media (min-width: 768px) {
	.logged-in .learndash-wrapper .ld-content-actions {
		align-items: center;
	}

	.logged-in .learndash-wrapper .ld-content-action:has(> .ld-course-step-back) {
		display: contents;
	}

	/* Le créneau effacé, le bouton se réduisait à son texte et la coche de
	   LearnDash, calée sur le bord droit, venait dessus. Il reprend la largeur
	   des autres créneaux. */
	.logged-in .learndash-wrapper .ld-content-action:has(> .ld-course-step-back) > .sfwd-mark-complete {
		flex: 0 1 200px;
	}

	.logged-in .learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .ld-content-actions .ld-content-action .ld-course-step-back {
		order: -1;
		flex: 0 0 auto;
		width: auto;
		margin: 0;
	}
}

/* La vidéo touchait le premier titre de la leçon. */
.learndash-wrapper .ld-video {
	margin-bottom: 2rem;
}

/* Ancres des sous-menus Formations et Parcours. Le lien du menu saute à la
   section sans la coincer sous l'en-tête collant. La marge se cale sur la
   hauteur de l'en-tête. */
.kognos-ancre {
	display: block;
	height: 0;
	margin: 0;
	scroll-margin-top: 120px;
}

/* Écrans de compte MemberDash : Inscription, Forfaits, Mon compte. L'extension
   arrive avec ses gris et ses verts ; on la ramène à la palette du site. */
.entry-content .ms-alert-box {
	margin: 0 0 1.5rem;
	padding: 1em 1.25em;
	border: 1px solid var(--global-palette7, #eff0f5);
	border-radius: 10px;
	background: var(--global-palette8, #e7eff6);
	color: var(--global-palette3, #07294e);
}

.entry-content .ms-form-price-boxes {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
	gap: 1.5rem;
}

.entry-content .ms-membership-form {
	margin: 0;
}

.entry-content .ms-membership-details-wrapper {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	padding: 1.75rem 1.6rem;
	border: 1px solid var(--global-palette7, #eff0f5);
	border-radius: 10px;
	background: var(--global-palette8, #e7eff6);
}

.entry-content .ms-membership-details-wrapper .ms-top-bar,
.entry-content .ms-membership-details-wrapper .ms-price-details,
.entry-content .ms-membership-details-wrapper .ms-bottom-bar {
	padding: 0;
}

.entry-content .ms-membership-details-wrapper .ms-title {
	margin: 0 0 0.5rem;
	color: var(--global-palette3, #07294e);
	font-size: 1.25rem;
	font-weight: 700;
}

.entry-content .ms-membership-details-wrapper .ms-price {
	margin: 0 0 1.4rem;
	color: var(--global-palette3, #07294e);
	font-size: 1.75rem;
	font-weight: 700;
}

.entry-content .ms-membership-details-wrapper .ms-bottom-bar {
	margin-top: auto;
}

/* Boutons MemberDash : même style que l'invitation des leçons. */
.entry-content button.ms-signup-button,
.entry-content button.memberdash-submit {
	padding: 0.7em 1.6em;
	border: 0;
	border-radius: 6px;
	background: var(--global-palette1, #038274);
	color: var(--global-palette9, #fff);
	font-size: 1rem;
	font-weight: 600;
	cursor: pointer;
}

.entry-content button.ms-signup-button:hover,
.entry-content button.ms-signup-button:focus,
.entry-content button.memberdash-submit:hover,
.entry-content button.memberdash-submit:focus {
	background: var(--global-palette3, #07294e);
	color: var(--global-palette9, #fff);
}

/* Formulaire de création de compte : une colonne, des champs pleine largeur. */
.entry-content form.form-membership {
	max-width: 30rem;
	margin: 0 auto;
}

.entry-content form.form-membership h2 {
	margin: 0 0 1.25rem;
	font-size: 1.75rem;
}

.entry-content form.form-membership .ms-form-element {
	margin: 0 0 1.1rem;
}

.entry-content form.form-membership .memberdash-input-wrapper {
	display: block;
}

.entry-content form.form-membership .memberdash-field-label {
	display: block;
	margin: 0 0 0.35em;
	color: var(--global-palette3, #07294e);
	font-size: 1rem;
	font-weight: 600;
}

.entry-content form.form-membership .memberdash-text,
.entry-content form.form-membership .memberdash-password {
	width: 100%;
}

.entry-content form.form-membership .memberdash-checkbox-wrapper {
	display: flex;
	align-items: flex-start;
	gap: 0.6em;
	font-weight: 400;
}

.entry-content form.form-membership .memberdash-field-checkbox {
	margin-top: 0.3em;
}

.entry-content form.form-membership .memberdash-checkbox-caption a {
	display: inline;
	color: var(--global-palette2, #136586);
	text-decoration: underline;
}

.entry-content form.form-membership .ms-register-user-login-link {
	color: var(--global-palette2, #136586);
}

/* Mon compte : un titre et son lien d'action par section, des tableaux à
   filets fins. Sur mobile, le lien passe sous le titre au lieu de le pousser. */
.entry-content .ms-account-wrapper > div + div {
	margin-top: 2.25rem;
}

.entry-content .ms-account-header {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.25rem 1.5rem;
	margin: 0 0 0.75rem;
}

.entry-content .ms-account-header h2 {
	margin: 0;
	font-size: 1.5rem;
}

.entry-content .ms-account-header a {
	color: var(--global-palette2, #136586);
	font-size: 0.95rem;
	text-decoration: underline;
	white-space: nowrap;
}

.entry-content .ms-account-wrapper table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	font-size: 1rem;
}

#account-profile tbody > tr:nth-child(2n+1),
#account-invoices tbody > tr:nth-child(2n+1),
#account-activity tbody > tr:nth-child(2n+1) {
	background: transparent;
}

.entry-content .ms-account-wrapper th,
.entry-content .ms-account-wrapper td {
	padding: 0.65em 0.75em;
	border-bottom: 1px solid var(--global-palette7, #eff0f5);
	background: transparent;
	text-align: left;
	vertical-align: top;
	overflow-wrap: anywhere;
}

.entry-content .ms-account-wrapper th {
	color: var(--global-palette3, #07294e);
	font-weight: 600;
}

#account-profile tr th.ms-label-title {
	flex: 0 0 12rem;
	width: 12rem;
}

#account-profile tr td.ms-label-field {
	flex: 1 1 auto;
	width: auto;
}

.entry-content .ms-account-wrapper thead th {
	border-bottom: 2px solid var(--global-palette6, #d3dde7);
}

.entry-content .ms-login-form a.login_button {
	color: var(--global-palette2, #136586);
	text-decoration: underline;
}

@media (max-width: 600px) {
	#account-profile tr th.ms-label-title {
		flex-basis: 7rem;
		width: 7rem;
	}

	/* MemberDash empile chaque cellule avec son en-tête en pseudo-élément. */
	.entry-content .ms-account-wrapper .ms-responsive-table tr {
		border-bottom: 1px solid var(--global-palette6, #d3dde7);
		padding-bottom: 0.5em;
	}

	.entry-content .ms-account-wrapper .ms-responsive-table td {
		display: flex;
		justify-content: space-between;
		align-items: baseline;
		gap: 1em;
		padding: 0.4em 0;
		border-bottom: 0;
		text-align: right;
	}

	.entry-content .ms-account-wrapper .ms-responsive-table td::before {
		float: none;
		flex: 0 0 auto;
		color: var(--global-palette3, #07294e);
		font-weight: 600;
		text-transform: none;
	}
}

/* La facture sort du gabarit de MemberDash, sans le conteneur du thème. */
.single-ms_invoice #main-content {
	max-width: 44rem;
	margin: 0 auto;
	padding: 3rem 1.25rem 4rem;
}

.single-ms_invoice .ms-invoice .ms-purchase-table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	background: var(--global-palette9, #fff);
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(7, 41, 78, 0.08);
}

.single-ms_invoice .ms-purchase-table tr,
.single-ms_invoice #invoice tr.alt,
.single-ms_invoice .ms-purchase-table td {
	background: transparent;
}

.single-ms_invoice .ms-purchase-table td {
	padding: 0.65em 1.25rem;
	border: 0;
	border-bottom: 1px solid var(--global-palette7, #eff0f5);
	vertical-align: top;
}

.single-ms_invoice .ms-purchase-table tr:last-child td {
	border-bottom: 0;
}

.single-ms_invoice .ms-purchase-table .ms-inv-title td {
	padding-top: 1.5rem;
}

.single-ms_invoice #invoice .ms-inv-title h2 {
	margin: 0;
	font-size: 1.5rem;
	text-align: left;
	color: var(--global-palette3, #07294e);
}

.single-ms_invoice .ms-purchase-table .ms-title-column {
	width: 11rem;
	font-weight: 600;
	color: var(--global-palette3, #07294e);
}

.single-ms_invoice .ms-purchase-table .sep td {
	border-top: 2px solid var(--global-palette6, #d3dde7);
}

.single-ms_invoice .ms-purchase-table .ms-inv-price {
	text-align: right;
}

.single-ms_invoice .ms-purchase-table .ms-inv-total td {
	font-size: 1.15rem;
	font-weight: 700;
	color: var(--global-palette3, #07294e);
}

.single-ms_invoice .ms-purchase-table .ms-inv-sep td {
	padding: 0.5rem;
	border: 0;
}

@media (max-width: 600px) {
	.single-ms_invoice .ms-purchase-table .ms-title-column {
		width: 7rem;
	}
}

/* Section Webinaire encore vide : la description de la catégorie suffit,
   pas le bloc « rien trouvé » ni sa barre de recherche. */
.category-webinaire .site-main > section.error {
	display: none;
}

/* Mon espace : le bloc profil de LearnDash. Sur téléphone, « Tout afficher »
   se coupait sur deux lignes. */
.entry-content .ld-profile .ld-expand-button {
	white-space: nowrap;
}

/* Mon espace : le bouton vers Gestion de mon établissement ne s'adresse
   qu'aux responsables de groupe (classe de corps posée par le plugin). */
.entry-content .kognos-si-responsable {
	display: none;
}

body.kognos-responsable .entry-content .kognos-si-responsable {
	display: inline-block;
}

/* Page Recherche (extension de Bobby) : le texte du bouton et de la pastille
   active sortait bleu foncé sur turquoise, contraste 3,05. Blanc, comme les
   autres boutons du site. */
.kognos-lds-search__form button,
.kognos-lds-search__filters a.is-active,
.kognos-lds-search__filters a:hover,
.kognos-lds-search__filters a:focus {
	color: var(--global-palette9);
}
