:root {
	--mp-bg: #f5f9fe;
	--mp-surface: #ffffff;
	--mp-surface-soft: #f8fbff;
	--mp-border: #d5e1f1;
	--mp-border-strong: #c6d7ee;
	--mp-navy-deep: #0e1a2d;
	--mp-navy: #15253d;
	--mp-blue: #2e4c7a;
	--mp-blue-mid: #86a5dd;
	--mp-blue-soft: #b8ccee;
	--mp-text: #1d2d42;
	--mp-muted: #5e7290;
	--mp-success: #00a86b;
	--mp-success-bg: #e9f6f0;
	--mp-warning: #8b5f1f;
	--mp-warning-bg: #fdf3e6;
	--mp-danger: #8d3340;
	--mp-danger-bg: #fdeff2;
	--mp-shadow: 0 2px 16px rgba(14, 26, 45, 0.05);
	--mp-shadow-lg: 0 12px 30px rgba(14, 26, 45, 0.1);
	--mp-radius: 18px;
	--mp-radius-sm: 12px;
	--mp-sans: 'DM Sans', 'Avenir Next', Avenir, 'Segoe UI', sans-serif;
	--mp-serif: 'Cormorant Garamond', 'Iowan Old Style', Palatino, serif;
	--mp-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--mp-admin-bar-offset: 0px;
	--mp-section-nav-height: 54px;
	--mp-sidebar-width: 360px;
	--mp-sidebar-gap: 14px;
	--mp-sticky-gap: 20px;
}

body.admin-bar {
	--mp-admin-bar-offset: 32px;
}

.mp-event-page,
.mp-registration-page {
	margin: 0;
	padding-bottom: 72px;
	background: radial-gradient(circle at 5% 0%, #fbfdff 0%, var(--mp-bg) 58%, #f3f8ff 100%);
	color: var(--mp-text);
	font-family: var(--mp-sans);
	line-height: 1.68;
}

.mp-event-page *,
.mp-registration-page * {
	box-sizing: border-box;
}

.mp-event-page img,
.mp-registration-page img {
	display: block;
	max-width: 100%;
	height: auto;
}

.mp-shell {
	width: min(1200px, calc(100% - 48px));
	margin-inline: auto;
}

.mp-event-page a:focus-visible,
.mp-registration-page a:focus-visible,
.mp-event-page button:focus-visible,
.mp-registration-page button:focus-visible,
.mp-event-page input:focus-visible,
.mp-registration-page input:focus-visible,
.mp-event-page select:focus-visible,
.mp-registration-page select:focus-visible,
.mp-event-page summary:focus-visible,
.mp-registration-page summary:focus-visible {
	outline: 2px solid var(--mp-blue);
	outline-offset: 2px;
}

.mp-event-title,
.mp-registration-hero h1,
.mp-panel h2,
.mp-summary-card h2,
.mp-booking-form__title {
	font-family: var(--mp-serif);
	color: var(--mp-navy-deep);
	letter-spacing: -0.01em;
}

.mp-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-size: 0.78rem;
	color: var(--mp-muted);
}

.mp-breadcrumb a {
	color: var(--mp-blue);
	text-decoration: none;
}

.mp-breadcrumb a:hover,
.mp-breadcrumb a:focus {
	text-decoration: underline;
}

.mp-kicker {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 6px 12px;
	border: 1px solid var(--mp-border-strong);
	border-radius: 999px;
	background: #edf4ff;
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	color: var(--mp-blue);
}

.mp-kicker::before {
	content: '';
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--mp-success);
}

/* Theme conflict shield: raise specificity for core plugin controls against global theme button styles. */
.mp-btn,
.mp-event-page .mp-btn,
.mp-registration-page .mp-btn,
.mp-participant-page .mp-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 46px;
	padding: 10px 22px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.2s var(--mp-ease), color 0.2s var(--mp-ease), border-color 0.2s var(--mp-ease), box-shadow 0.2s var(--mp-ease), transform 0.2s var(--mp-ease);
}

.mp-btn--primary,
.mp-event-page .mp-btn--primary,
.mp-registration-page .mp-btn--primary,
.mp-participant-page .mp-btn--primary {
	background: linear-gradient(135deg, var(--mp-navy-deep), var(--mp-blue));
	color: #fff;
	box-shadow: 0 10px 22px rgba(14, 26, 45, 0.18);
}

.mp-btn--primary:hover,
.mp-btn--primary:focus {
	transform: translateY(-1px);
	box-shadow: 0 14px 24px rgba(14, 26, 45, 0.22);
}

.mp-btn--ghost,
.mp-event-page .mp-btn--ghost,
.mp-registration-page .mp-btn--ghost,
.mp-participant-page .mp-btn--ghost {
	background: #fff;
	border-color: var(--mp-border-strong);
	color: #223f63;
}

.mp-btn--ghost:hover,
.mp-btn--ghost:focus {
	background: #f4f8ff;
}

.mp-btn--disabled,
.mp-event-page .mp-btn--disabled,
.mp-registration-page .mp-btn--disabled,
.mp-participant-page .mp-btn--disabled {
	background: #edf2f8;
	border-color: #d6e0ec;
	color: #7b8da6;
	pointer-events: none;
}

.mp-btn--block {
	display: flex;
	width: 100%;
}

.mp-btn--hero,
.mp-event-page .mp-btn--hero,
.mp-registration-page .mp-btn--hero,
.mp-participant-page .mp-btn--hero {
	min-height: 54px;
	padding: 13px 28px;
	font-size: 0.94rem;
	letter-spacing: 0.01em;
	box-shadow: 0 14px 28px rgba(14, 26, 45, 0.2);
}

.mp-btn--sm,
.mp-event-page .mp-btn--sm,
.mp-registration-page .mp-btn--sm,
.mp-participant-page .mp-btn--sm {
	min-height: 36px;
	padding: 6px 14px;
	font-size: 0.78rem;
}

.mp-btn--outline,
.mp-event-page .mp-btn--outline,
.mp-registration-page .mp-btn--outline,
.mp-participant-page .mp-btn--outline {
	background: transparent;
	border-color: var(--mp-blue-mid);
	color: var(--mp-blue);
}

.mp-btn--outline:hover,
.mp-btn--outline:focus {
	background: #eef4ff;
}

.mp-community-modal__close,
.mp-event-page .mp-community-modal__close,
.mp-registration-page .mp-community-modal__close,
.mp-participant-page .mp-community-modal__close,
.mp-community-thread-modal__close,
.mp-event-page .mp-community-thread-modal__close,
.mp-registration-page .mp-community-thread-modal__close,
.mp-participant-page .mp-community-thread-modal__close {
	border: 1px solid #dbe4ef;
	border-radius: 999px;
	background: #fff;
	color: #40556c;
	padding: 0;
	box-shadow: none;
}

.mp-btn--pdf::before {
	content: '↓';
	font-weight: 900;
}

.mp-event-hero,
.mp-registration-hero {
	position: relative;
	overflow: hidden;
	padding: 50px 0 58px;
	background:
		radial-gradient(circle at 8% 8%, rgba(255, 255, 255, 0.72) 0%, transparent 34%),
		radial-gradient(circle at 92% -8%, rgba(46, 76, 122, 0.18) 0%, transparent 46%),
		linear-gradient(135deg, #f6f9fe 0%, #ebf2fb 50%, #f8fbff 100%);
	border-bottom: 1px solid var(--mp-border);
}

.mp-event-hero::after,
.mp-registration-hero::after {
	content: '';
	position: absolute;
	right: -110px;
	top: -40px;
	width: 320px;
	height: 320px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(46, 76, 122, 0.16) 0%, rgba(46, 76, 122, 0) 72%);
	pointer-events: none;
}

.mp-event-hero::before,
.mp-registration-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		linear-gradient(90deg, rgba(14, 26, 45, 0.06) 0%, rgba(14, 26, 45, 0) 22%),
		repeating-linear-gradient(90deg, rgba(14, 26, 45, 0.02) 0 1px, transparent 1px 118px);
}

.mp-event-hero .mp-shell,
.mp-registration-hero .mp-shell {
	position: relative;
	z-index: 1;
}

.mp-hero-body {
	margin-top: 22px;
	display: grid;
	justify-items: center;
	text-align: center;
	gap: 18px;
	padding: clamp(22px, 3vw, 36px);
	border: 1px solid #c7d8ee;
	border-radius: 24px;
	background: linear-gradient(162deg, rgba(255, 255, 255, 0.97) 0%, rgba(247, 251, 255, 0.97) 100%);
	box-shadow: 0 24px 48px rgba(14, 26, 45, 0.12);
	backdrop-filter: blur(2px);
	position: relative;
	isolation: isolate;
}

.mp-hero-body::before {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	border-radius: inherit;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 40%);
}

.mp-hero-body::after {
	content: '';
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	width: min(560px, 62%);
	height: 1px;
	background: linear-gradient(90deg, transparent 0%, rgba(46, 76, 122, 0.35) 50%, transparent 100%);
}

.mp-hero-body > * {
	position: relative;
	z-index: 1;
}

.mp-hero-badges {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 8px;
}

.mp-status-badge {
	display: inline-flex;
	align-items: center;
	padding: 4px 11px;
	border: 1px solid var(--mp-border-strong);
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.mp-status-badge--is-open {
	background: var(--mp-success-bg);
	border-color: #b8e0d1;
	color: var(--mp-success);
}

.mp-status-badge--is-tentative {
	background: var(--mp-warning-bg);
	border-color: #f0d9bc;
	color: var(--mp-warning);
}

.mp-status-badge--is-closed {
	background: var(--mp-danger-bg);
	border-color: #efcdd5;
	color: var(--mp-danger);
}

.mp-event-hero.is-tentative {
	background: linear-gradient(135deg, #fcf8f2 0%, #f6efe4 100%);
	border-bottom-color: #e6d6bf;
}

.mp-event-hero.is-closed {
	background: linear-gradient(135deg, #fcf7f8 0%, #f7ecef 100%);
	border-bottom-color: #e9d1d8;
}

.mp-event-title {
	margin: 0;
	max-width: min(100%, 28ch);
	font-size: clamp(2.5rem, 5.3vw, 4.45rem);
	font-weight: 300;
	line-height: 1.06;
	letter-spacing: -0.02em;
	color: var(--mp-navy-deep);
	text-wrap: balance;
}

.mp-event-subtitle {
	margin: -1px 0 0;
	font-size: 0.86rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	text-transform: uppercase;
	color: #537298;
}

.mp-event-lead {
	margin: 0;
	max-width: 76ch;
	font-size: 1.06rem;
	line-height: 1.85;
	color: #344f6e;
}

.mp-hero-metas {
	margin: 4px 0 0;
	width: 100%;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 12px;
}

.mp-hero-metas > div,
.mp-hero-metas li {
	margin: 0;
	padding: 14px 14px 13px;
	border: 1px solid #d1e0f0;
	border-radius: 13px;
	background: linear-gradient(162deg, #ffffff 0%, #f8fbff 100%);
	display: grid;
	gap: 5px;
	align-content: start;
	text-align: center;
	box-shadow: 0 6px 14px rgba(14, 26, 45, 0.05);
}

.mp-hero-metas dt,
.mp-hero-metas span {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #5e7896;
}

.mp-hero-metas dd,
.mp-hero-metas strong {
	margin: 0;
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.4;
	color: #1d3f67;
}

.mp-hero-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
}

.mp-hero-price {
	margin: 0;
	display: inline-flex;
	align-items: center;
	padding: 8px 13px;
	border: 1px solid #c9e3d6;
	border-radius: 999px;
	background: #eef9f3;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #0f6f50;
}

.mp-event-hero__media {
	margin: 0;
	border: 1px solid var(--mp-border);
	border-radius: var(--mp-radius);
	overflow: hidden;
	box-shadow: var(--mp-shadow);
}

.mp-event-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Event visual refinement (UI only, no business logic changes) */
.mp-event-page .mp-shell {
	width: min(1220px, calc(100% - 48px));
}

.mp-event-page .mp-event-hero {
	padding: 62px 0 72px;
	background:
		radial-gradient(circle at 10% 12%, rgba(255, 255, 255, 0.82) 0%, transparent 36%),
		radial-gradient(circle at 88% -12%, rgba(46, 76, 122, 0.16) 0%, transparent 48%),
		linear-gradient(140deg, #f7fbff 0%, #edf3fb 52%, #f9fcff 100%);
}

.mp-event-page .mp-hero-body {
	margin-top: 24px;
	margin-inline: auto;
	max-width: 1040px;
	gap: 20px;
	padding: clamp(24px, 3.2vw, 40px);
	border-color: #c6d8ee;
	border-radius: 28px;
	background: linear-gradient(160deg, rgba(255, 255, 255, 0.98) 0%, rgba(246, 251, 255, 0.97) 100%);
	box-shadow: 0 26px 52px rgba(14, 26, 45, 0.13);
}

.mp-event-page .mp-hero-badges {
	gap: 10px;
}

.mp-event-page .mp-kicker,
.mp-event-page .mp-status-badge {
	padding: 5px 12px;
	border-radius: 999px;
	font-size: 0.73rem;
	letter-spacing: 0.09em;
}

.mp-event-page .mp-event-title {
	max-width: min(100%, 34ch);
	font-size: clamp(2.7rem, 5vw, 4.6rem);
	line-height: 1.04;
	text-align: center;
	text-wrap: pretty;
}

.mp-event-page .mp-event-subtitle {
	font-size: 0.82rem;
	letter-spacing: 0.12em;
}

.mp-event-page .mp-event-lead {
	max-width: 84ch;
	font-size: 1.04rem;
	line-height: 1.84;
	color: #345170;
}

.mp-event-page .mp-hero-metas {
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	gap: 13px;
}

.mp-event-page .mp-hero-metas > div,
.mp-event-page .mp-hero-metas li {
	padding: 15px 14px 14px;
	border-color: #ccdced;
	border-radius: 14px;
	background: linear-gradient(178deg, #ffffff 0%, #f6faff 100%);
}

.mp-event-page .mp-hero-actions {
	gap: 13px;
}

.mp-event-page .mp-hero-price {
	padding: 8px 14px;
}

.mp-event-page .mp-section-nav {
	background: rgba(255, 255, 255, 0.96);
	border-bottom-color: #d8e4f3;
	box-shadow: 0 5px 16px rgba(14, 26, 45, 0.07);
}

.mp-event-page .mp-section-nav__list {
	gap: 8px;
	padding-block: 2px;
}

.mp-event-page .mp-section-nav__link {
	position: relative;
	padding: 13px 12px 12px;
	border-bottom: 0;
	color: #5a7391;
}

.mp-event-page .mp-section-nav__link::after {
	content: '';
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 6px;
	height: 2px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--mp-blue-soft), var(--mp-blue));
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.25s var(--mp-ease);
}

.mp-event-page .mp-section-nav__link:hover::after,
.mp-event-page .mp-section-nav__link:focus::after,
.mp-event-page .mp-section-nav__link.is-active::after {
	transform: scaleX(1);
}

.mp-event-page .mp-section-nav__link:hover,
.mp-event-page .mp-section-nav__link:focus,
.mp-event-page .mp-section-nav__link.is-active {
	color: #1d426b;
}

.mp-event-page .mp-event-layout {
	margin-top: 38px;
}

.mp-event-page .mp-event-main {
	gap: 22px;
}

.mp-event-page .mp-panel {
	border-color: #d2dff0;
	border-radius: 20px;
}

.mp-event-page .mp-panel h2 {
	font-size: clamp(1.48rem, 2.8vw, 2.16rem);
}

.mp-event-page .mp-panel--programme .mp-prose h3,
.mp-event-page .mp-panel--programme .mp-prose h4 {
	padding-left: 12px;
	border-left: 2px solid #c5d8ee;
}

.mp-event-page .mp-panel--programme .mp-prose ul,
.mp-event-page .mp-panel--programme .mp-prose ol {
	display: grid;
	gap: 0.45em;
}

.mp-event-page .mp-panel--programme .mp-prose li {
	color: #365271;
}

.mp-event-page .mp-speaker-grid {
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 14px;
}

.mp-event-page .mp-testimonials-carousel {
	border-radius: 16px;
}

.mp-event-page .mp-testimonial-card__quote p,
.mp-event-page .mp-testimonial-card blockquote {
	position: relative;
}

.mp-event-page .mp-testimonial-card__quote p::before,
.mp-event-page .mp-testimonial-card blockquote::before {
	content: '“';
	position: absolute;
	left: -0.34em;
	top: -0.2em;
	font-size: 1.6em;
	line-height: 1;
	color: #a6bedc;
}

.mp-event-page .mp-event-sidebar {
	gap: 16px;
}

.mp-event-page .mp-event-poster-card {
	border-color: #cfdded;
	border-radius: 20px;
	box-shadow: 0 12px 24px rgba(14, 26, 45, 0.09);
}

.mp-event-page .mp-summary-card {
	border-color: #c9daed;
	border-radius: 20px;
	box-shadow: 0 18px 32px rgba(14, 26, 45, 0.11);
}

.mp-event-page .mp-summary-card__title {
	font-size: clamp(2rem, 2.8vw, 2.32rem);
}

.mp-event-page .mp-summary-card__option {
	border-radius: 11px;
}

.mp-event-page .mp-summary-card .mp-btn--primary {
	min-height: 50px;
}

.mp-section-nav {
	position: sticky;
	top: var(--mp-admin-bar-offset);
	z-index: 40;
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(8px);
	border-bottom: 1px solid var(--mp-border);
	box-shadow: 0 2px 12px rgba(14, 26, 45, 0.06);
}

.mp-section-nav__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	gap: 2px;
	overflow-x: auto;
	scrollbar-width: none;
}

.mp-section-nav__list::-webkit-scrollbar {
	display: none;
}

.mp-section-nav__link {
	display: block;
	padding: 14px 15px;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	text-decoration: none;
	white-space: nowrap;
	color: #607896;
	border-bottom: 2px solid transparent;
	transition: color 0.2s var(--mp-ease), border-color 0.2s var(--mp-ease);
}

.mp-section-nav__link:hover,
.mp-section-nav__link:focus,
.mp-section-nav__link.is-active {
	color: #1f426b;
	border-bottom-color: var(--mp-blue);
}

.mp-event-layout,
.mp-registration-layout {
	margin-top: 34px;
	display: grid;
	gap: 24px;
	align-items: start;
	overflow: visible;
}

.mp-event-page .mp-event-layout {
	grid-template-columns: minmax(0, 1fr) minmax(300px, var(--mp-sidebar-width));
	column-gap: 28px;
	align-items: start;
}

.mp-registration-page .mp-registration-layout {
	grid-template-columns: minmax(0, 1fr) minmax(320px, 360px);
	column-gap: 24px;
}

.mp-event-page .mp-event-layout > *,
.mp-registration-page .mp-registration-layout > * {
	min-width: 0;
}

.mp-event-main,
.mp-registration-main {
	display: grid;
	gap: 20px;
	min-width: 0;
	width: 100%;
	max-width: 100%;
}

.mp-panel {
	padding: clamp(20px, 2.8vw, 32px);
	border: 1px solid #d4e1f1;
	border-radius: var(--mp-radius);
	background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
	box-shadow: 0 10px 28px rgba(14, 26, 45, 0.07);
	min-width: 0;
}

.mp-panel__header {
	display: grid;
	gap: 10px;
	margin-bottom: 18px;
	padding-bottom: 16px;
	border-bottom: 1px solid #dee9f6;
}

.mp-panel__kicker {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--mp-muted);
}

.mp-panel h2 {
	margin: 0;
	padding-left: 14px;
	border-left: 3px solid var(--mp-blue);
	font-size: clamp(1.42rem, 2.65vw, 2.06rem);
	font-weight: 400;
	line-height: 1.2;
}

.mp-panel__header p {
	margin: 0;
	font-size: 0.96rem;
	line-height: 1.7;
	color: #4f6784;
}

.mp-panel__sub-header {
	margin-top: 20px;
	padding-top: 15px;
	border-top: 1px solid #e2ecf8;
}

.mp-panel__sub-header h3 {
	margin: 0 0 8px;
	font-size: 0.88rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #4a688a;
}

.mp-prose {
	font-size: 0.99rem;
	line-height: 1.82;
	color: #2c4767;
	overflow-wrap: anywhere;
}

.mp-prose p {
	margin: 0 0 1.05em;
}

.mp-prose p:last-child {
	margin-bottom: 0;
}

.mp-option-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.mp-option-card {
	padding: 16px;
	border: 1px solid #d4e2f2;
	border-radius: var(--mp-radius-sm);
	background: linear-gradient(180deg, #fbfdff 0%, #f5f9ff 100%);
	display: grid;
	gap: 10px;
	box-shadow: 0 5px 16px rgba(14, 26, 45, 0.05);
	transition: border-color 0.2s var(--mp-ease), box-shadow 0.2s var(--mp-ease), transform 0.2s var(--mp-ease);
}

.mp-option-card:hover {
	border-color: #c2d6ed;
	box-shadow: 0 12px 24px rgba(14, 26, 45, 0.08);
	transform: translateY(-1px);
}

.mp-option-card__badge {
	display: inline-flex;
	width: fit-content;
	padding: 4px 10px;
	border: 1px solid #c8d9ef;
	border-radius: 999px;
	background: #edf4fe;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #35577f;
}

.mp-option-card h3 {
	margin: 0;
	font-size: 1.08rem;
	color: #183454;
}

.mp-option-card__price {
	margin: 0;
	font-family: var(--mp-serif);
	font-size: 1.55rem;
	line-height: 1.1;
	color: #17385f;
}

.mp-option-card ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 6px;
}

.mp-option-card li {
	position: relative;
	padding-left: 16px;
	font-size: 0.88rem;
	color: #45617e;
}

.mp-option-card li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 9px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #4f76a4;
}

.mp-text-link {
	font-size: 0.83rem;
	font-weight: 700;
	color: #214e82;
	text-decoration: none;
}

.mp-text-link:hover,
.mp-text-link:focus {
	text-decoration: underline;
}

.mp-prose--programme h2,
.mp-prose--programme h3,
.mp-prose--programme h4 {
	margin: 1.2em 0 0.5em;
	font-family: var(--mp-serif);
	color: var(--mp-navy-deep);
}

.mp-prose--programme ul,
.mp-prose--programme ol {
	padding-left: 1.3em;
}

.mp-prose--programme li {
	margin-bottom: 0.42em;
}

.mp-check-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 10px;
}

.mp-check-list li {
	position: relative;
	padding-left: 24px;
	font-size: 0.94rem;
	line-height: 1.58;
	color: #334f6d;
}

.mp-check-list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 7px;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: linear-gradient(130deg, var(--mp-blue), var(--mp-success));
}

.mp-check-list li::after {
	content: '';
	position: absolute;
	left: 4px;
	top: 11px;
	width: 6px;
	height: 3px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(-45deg);
}

.mp-pill,
.mp-pill-list span {
	display: inline-flex;
	align-items: center;
	padding: 7px 13px;
	border: 1px solid #c7d9ee;
	border-radius: 999px;
	background: linear-gradient(180deg, #f1f6ff 0%, #ecf3ff 100%);
	font-size: 0.82rem;
	font-weight: 700;
	color: #325377;
	letter-spacing: 0.01em;
}

.mp-pill-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.mp-speaker-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.mp-speaker-card {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	gap: 13px;
	padding: 15px;
	border: 1px solid #d4e2f2;
	border-radius: var(--mp-radius-sm);
	background: linear-gradient(180deg, #fbfdff 0%, #f6faff 100%);
	box-shadow: 0 6px 16px rgba(14, 26, 45, 0.05);
	transition: border-color 0.2s var(--mp-ease), box-shadow 0.2s var(--mp-ease), transform 0.2s var(--mp-ease);
}

.mp-speaker-card:hover {
	border-color: #c3d7ef;
	box-shadow: 0 14px 26px rgba(14, 26, 45, 0.08);
	transform: translateY(-1px);
}

.mp-speaker-card__visual {
	flex-shrink: 0;
}

.mp-speaker-card img,
.mp-speaker-card__avatar {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	object-fit: cover;
	border: 1px solid #cfdeee;
}

.mp-speaker-card__avatar {
	display: grid;
	place-items: center;
	border: 1px solid #c8d7ea;
	background: #e8f0fa;
	font-weight: 700;
	color: var(--mp-blue);
}

.mp-speaker-card__content {
	display: grid;
	gap: 5px;
	align-content: start;
}

.mp-speaker-card h3 {
	margin: 0;
	font-size: 1rem;
	color: #183757;
}

.mp-speaker-card__meta {
	margin: 0;
	font-size: 0.8rem;
	font-weight: 600;
	color: #4e6a88;
}

.mp-speaker-card__bio,
.mp-speaker-card p {
	margin: 0;
	font-size: 0.85rem;
	line-height: 1.6;
	color: #47607d;
}

.mp-info-grid {
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.mp-info-grid > div,
.mp-info-grid li {
	margin: 0;
	padding: 13px;
	border: 1px solid #d2e0f0;
	border-radius: 11px;
	background: linear-gradient(180deg, #fbfdff 0%, #f5f9ff 100%);
	display: grid;
	gap: 5px;
}

.mp-info-grid dt,
.mp-info-grid span {
	margin: 0;
	font-size: 0.71rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #627d9d;
}

.mp-info-grid dd,
.mp-info-grid strong {
	margin: 0;
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.4;
	color: #244667;
}

.mp-inline-note {
	margin: 14px 0 0;
	padding: 13px 14px;
	border: 1px solid #cedef1;
	border-radius: 10px;
	background: linear-gradient(180deg, #f2f7fe 0%, #eef4fc 100%);
	font-size: 0.89rem;
	line-height: 1.6;
	color: #3b5c81;
}

.mp-inline-note a {
	color: #204e84;
	word-break: break-all;
}

.mp-faq-list {
	display: grid;
	gap: 10px;
}

.mp-faq-item,
.mp-faq-list details {
	padding: 15px 16px;
	border: 1px solid #d5e2f1;
	border-radius: 12px;
	background: linear-gradient(180deg, #fbfdff 0%, #f6faff 100%);
	box-shadow: 0 4px 12px rgba(14, 26, 45, 0.04);
	transition: border-color 0.2s var(--mp-ease), background-color 0.2s var(--mp-ease), box-shadow 0.2s var(--mp-ease);
}

.mp-faq-item[open],
.mp-faq-list details[open] {
	border-color: #bfd3eb;
	background: #fff;
	box-shadow: 0 10px 20px rgba(14, 26, 45, 0.07);
}

.mp-faq-item__question,
.mp-faq-list summary {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	list-style: none;
	font-size: 0.96rem;
	font-weight: 700;
	color: #1d3d63;
}

.mp-faq-item__question::-webkit-details-marker,
.mp-faq-list summary::-webkit-details-marker {
	display: none;
}

.mp-faq-item__question::after {
	content: '+';
	font-size: 1.2rem;
	color: #5b7fa4;
	transition: transform 0.2s var(--mp-ease);
}

.mp-faq-item[open] .mp-faq-item__question::after {
	transform: rotate(45deg);
}

.mp-faq-item__answer,
.mp-faq-list details div {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid #e0eaf6;
	font-size: 0.91rem;
	line-height: 1.65;
	color: #405c7d;
}

.mp-testimonials-carousel {
	position: relative;
	overflow: hidden;
	border-radius: 14px;
}

.mp-testimonials-track {
	display: flex;
	gap: 0;
	transition: transform 0.4s var(--mp-ease);
	will-change: transform;
}

.mp-testimonials-grid {
	display: flex;
	gap: 0;
}

.mp-testimonial-card {
	flex: 0 0 100%;
	margin: 0;
	padding: 16px;
	border: 1px solid #d3e1f1;
	border-radius: 13px;
	background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
	box-shadow: 0 8px 18px rgba(14, 26, 45, 0.06);
}

.mp-testimonial-card[aria-hidden='true'] {
	opacity: 0.55;
}

.mp-testimonial-card.is-active {
	opacity: 1;
}

.mp-testimonial-card__stars,
.mp-testimonial-card__rating {
	margin: 0;
	font-size: 0.95rem;
	letter-spacing: 0.06em;
	color: #b08945;
}

.mp-testimonial-card__quote {
	margin: 10px 0 0;
}

.mp-testimonial-card__quote p,
.mp-testimonial-card blockquote {
	margin: 0;
	font-family: var(--mp-serif);
	font-size: clamp(1.1rem, 2.1vw, 1.28rem);
	line-height: 1.5;
	color: #234261;
}

.mp-testimonial-card__author {
	margin-top: 12px;
	padding-top: 10px;
	border-top: 1px solid #e3ecf7;
}

.mp-testimonial-card__author cite,
.mp-testimonial-card cite {
	display: block;
	margin: 0;
	font-style: normal;
	font-size: 0.82rem;
	font-weight: 700;
	color: #244665;
}

.mp-testimonial-card__author cite strong {
	display: block;
	font-style: normal;
}

.mp-testimonial-card__author cite span {
	display: block;
	margin-top: 2px;
	font-size: 0.78rem;
	font-style: normal;
	color: #607898;
}

.mp-testimonials-controls {
	margin-top: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
}

.mp-testimonials-control,
.mp-event-page .mp-testimonials-control,
.mp-registration-page .mp-testimonials-control {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 1px solid #c5d6eb;
	border-radius: 999px;
	background: linear-gradient(180deg, #ffffff 0%, #f6faff 100%);
	color: #1e4068;
	cursor: pointer;
	box-shadow: 0 6px 14px rgba(14, 26, 45, 0.06);
	transition: background-color 0.2s var(--mp-ease), border-color 0.2s var(--mp-ease), transform 0.2s var(--mp-ease), box-shadow 0.2s var(--mp-ease);
}

.mp-testimonials-control:hover,
.mp-testimonials-control:focus-visible {
	background: #f2f7ff;
	border-color: #b8cfeb;
	box-shadow: 0 10px 18px rgba(14, 26, 45, 0.1);
	transform: translateY(-1px);
}

.mp-testimonials-dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.mp-testimonials-dot,
.mp-event-page .mp-testimonials-dot,
.mp-registration-page .mp-testimonials-dot {
	width: 8px;
	height: 8px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: var(--mp-blue-soft);
	cursor: pointer;
	transition: width 0.2s var(--mp-ease), background-color 0.2s var(--mp-ease);
}

.mp-testimonials-dot.is-active {
	width: 24px;
	background: var(--mp-blue);
}

.mp-event-sidebar,
.mp-registration-sidebar {
	position: relative;
	overflow: visible;
	display: grid;
	gap: var(--mp-sidebar-gap);
	align-content: start;
	min-width: 0;
}

.mp-registration-page .mp-registration-sidebar {
	position: sticky;
	top: calc(var(--mp-admin-bar-offset) + var(--mp-sticky-gap));
	align-self: start;
}

.mp-event-poster-card {
	width: 100%;
	border: 1px solid var(--mp-border);
	border-radius: var(--mp-radius);
	background: #fff;
	overflow: hidden;
	box-shadow: var(--mp-shadow);
}

.mp-event-poster-card__media,
.mp-event-poster-card__placeholder {
	aspect-ratio: 4 / 5;
}

.mp-event-poster-card__media {
	background: linear-gradient(145deg, #dfeaf6 0%, #cfdced 100%);
}

.mp-event-poster-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.mp-event-poster-card__placeholder {
	display: grid;
	align-content: center;
	justify-items: center;
	gap: 10px;
	padding: 24px;
	text-align: center;
	background: radial-gradient(circle at 90% 10%, rgba(46, 76, 122, 0.22), transparent 46%), linear-gradient(155deg, #173155 0%, #214771 100%);
	color: #e9f2fc;
}

.mp-event-poster-card__placeholder-badge {
	display: inline-flex;
	padding: 5px 10px;
	border: 1px solid rgba(196, 218, 244, 0.4);
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.mp-event-poster-card__placeholder strong {
	max-width: 22ch;
	font-family: var(--mp-serif);
	font-size: clamp(1.08rem, 2.2vw, 1.42rem);
	line-height: 1.25;
}

.mp-summary-card {
	width: 100%;
	padding: 22px;
	border: 1px solid #d0deef;
	border-radius: var(--mp-radius);
	background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
	box-shadow: 0 16px 30px rgba(14, 26, 45, 0.09);
	display: grid;
	gap: 15px;
}

.mp-summary-card--sticky {
	position: sticky;
	align-self: start;
	height: max-content;
}

.mp-event-page .mp-summary-card--sticky {
	top: calc(var(--mp-admin-bar-offset) + var(--mp-section-nav-height) + var(--mp-sticky-gap));
	max-height: calc(100vh - var(--mp-admin-bar-offset) - var(--mp-section-nav-height) - (var(--mp-sticky-gap) * 2));
	overflow-y: auto;
}

.mp-registration-page .mp-summary-card--sticky {
	top: 0;
	max-height: calc(100vh - var(--mp-admin-bar-offset) - (var(--mp-sticky-gap) * 2));
	overflow-y: auto;
}

.mp-summary-card h2,
.mp-summary-card__title {
	margin: 0;
	font-size: clamp(1.9rem, 2.7vw, 2.2rem);
	font-weight: 400;
	line-height: 1.08;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.mp-summary-card__eyebrow {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: #4f6d90;
}

.mp-summary-card__lead {
	margin: 0;
	font-size: 0.91rem;
	line-height: 1.6;
	color: #4f6886;
}

.mp-summary-card__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 8px;
}

.mp-summary-card__list li {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	padding-bottom: 9px;
	border-bottom: 1px solid #dfe9f4;
	font-size: 0.86rem;
	min-width: 0;
}

.mp-summary-card__list li:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.mp-summary-card__list span {
	color: #5d7693;
	flex: 0 0 auto;
}

.mp-summary-card__list strong {
	color: #213f61;
	text-align: right;
	min-width: 0;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.mp-summary-card__options {
	display: grid;
	gap: 7px;
}

.mp-summary-card__options-title {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: #567392;
}

.mp-summary-card__options-list {
	display: grid;
	gap: 7px;
}

.mp-summary-card__option {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	padding: 9px 11px;
	border: 1px solid #d2e0f0;
	border-radius: 10px;
	background: linear-gradient(180deg, #f9fcff 0%, #f4f9ff 100%);
	font-size: 0.83rem;
	color: #35567b;
}

.mp-summary-card__option span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-weight: 700;
	color: #24486f;
	overflow-wrap: anywhere;
}

.mp-summary-card__option span::before {
	content: '';
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #79a7d8;
	flex-shrink: 0;
}

.mp-summary-card__option--presentiel span::before {
	background: #1f6a8d;
}

.mp-summary-card__option--online span::before {
	background: #2f8e75;
}

.mp-summary-card__option strong {
	color: #1e426d;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.mp-summary-card__option.is-selected {
	background: #edf4ff;
	border-color: #b6cce7;
	box-shadow: 0 6px 14px rgba(46, 76, 122, 0.12);
}

.mp-summary-card__payments {
	margin: 0;
	font-size: 0.81rem;
	color: #5e7795;
}

.mp-summary-card__reassurance {
	margin: 0;
	padding: 11px 12px;
	border: 1px solid #cfdeef;
	border-radius: 10px;
	background: linear-gradient(180deg, #f5f9ff 0%, #edf4fc 100%);
	font-size: 0.8rem;
	line-height: 1.5;
	color: #4e6d8d;
}

.mp-summary-card__cover {
	margin: -22px -22px 2px;
	border-radius: 18px 18px 0 0;
	overflow: hidden;
	max-height: 184px;
}

.mp-summary-card__cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mp-summary-card__selected {
	padding: 12px;
	border: 1px solid #d3e1f1;
	border-radius: 10px;
	background: #f4f8fd;
	display: grid;
	gap: 8px;
}

.mp-summary-card__selected p {
	margin: 0;
	display: flex;
	justify-content: space-between;
	gap: 8px;
	font-size: 0.84rem;
}

.mp-summary-card__selected strong {
	color: #1e456f;
}

.mp-summary-card.is-open {
	border-color: #c4e5d8;
}

.mp-summary-card.is-open .mp-summary-card__eyebrow {
	color: var(--mp-success);
}

.mp-summary-card.is-tentative {
	border-color: #f0d9b8;
}

.mp-summary-card.is-tentative .mp-summary-card__eyebrow {
	color: var(--mp-warning);
}

.mp-summary-card.is-closed {
	border-color: #efcbd4;
}

.mp-summary-card.is-closed .mp-summary-card__eyebrow {
	color: var(--mp-danger);
}

.mp-panel--cta-bottom {
	text-align: center;
	border-color: #ccdaed;
	background: linear-gradient(150deg, #eef5ff 0%, #f4f8fd 100%);
}

.mp-reassurance {
	margin: 0 0 16px;
	font-size: 0.92rem;
	color: #486080;
}

.mp-cta-bottom {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
}

.mp-registration-page .mp-registration-hero {
	padding: 46px 0 56px;
}

.mp-registration-page .mp-registration-hero__content {
	margin-top: 20px;
	margin-inline: auto;
	display: grid;
	gap: 12px;
	justify-items: center;
	text-align: center;
	max-width: min(980px, 100%);
	padding: clamp(20px, 2.8vw, 30px);
	border: 1px solid var(--mp-border-strong);
	border-radius: 22px;
	background: linear-gradient(165deg, #ffffff 0%, #f7fbff 100%);
	box-shadow: var(--mp-shadow);
}

.mp-registration-page .mp-registration-hero__content .mp-kicker {
	text-transform: none;
	letter-spacing: 0.02em;
	font-size: 0.78rem;
}

.mp-registration-page .mp-registration-hero__content h1 {
	margin: 0;
	max-width: 22ch;
	font-size: clamp(2rem, 4.2vw, 3.35rem);
	line-height: 1.1;
}

.mp-registration-page .mp-registration-hero__content p {
	margin: 0;
	max-width: 84ch;
	font-size: 1rem;
	line-height: 1.74;
	color: #3a5879;
}

.mp-assurance-panel {
	background: linear-gradient(150deg, #f8fbff 0%, #f4f8fc 100%);
}

.mp-registration-page .mp-registration-form-panel .mp-panel__header {
	margin-bottom: 18px;
}

.mp-booking-front {
	margin: 0;
}

.mp-booking-thankyou {
	display: grid;
	gap: 10px;
	padding: 18px;
	border: 1px solid #dbe4ef;
	border-radius: 12px;
	background: #ffffff;
	box-shadow: none;
}

.mp-booking-thankyou__kicker {
	margin: 0;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #5d748f;
}

.mp-booking-thankyou h3 {
	margin: 0;
	font-size: 1.06rem;
	line-height: 1.4;
	color: #18324f;
}

.mp-booking-thankyou p {
	margin: 0;
	font-size: 0.88rem;
	line-height: 1.6;
	color: #4c647e;
}

.mp-booking-thankyou__meta {
	font-weight: 600;
	color: #2f4b6a;
}

.mp-booking-thankyou__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 2px;
}

.mp-front-notice,
.mp-booking-front__status {
	margin-bottom: 12px;
	padding: 11px 12px;
	border: 1px solid transparent;
	border-radius: 10px;
	font-size: 0.84rem;
	font-weight: 600;
}

.mp-front-notice--success {
	background: var(--mp-success-bg);
	border-color: #bde4d4;
	color: #0f6d50;
}

.mp-front-notice--error {
	background: var(--mp-danger-bg);
	border-color: #efcfd7;
	color: #8d3340;
}

.mp-front-notice--info {
	background: #f4f8fd;
	border-color: #d7e3f0;
	color: #305172;
}

.mp-front-notice__actions {
	margin-top: 10px;
}

.mp-booking-front__status--confirmed {
	background: var(--mp-success-bg);
	border-color: #bfe5d6;
	color: #11684e;
}

.mp-booking-front__status--tentative {
	background: var(--mp-warning-bg);
	border-color: #f0d9bc;
	color: #8d5e21;
}

.mp-booking-front__status--cancelled {
	background: var(--mp-danger-bg);
	border-color: #edc9d3;
	color: #8e3441;
}

.mp-booking-front__cancelled {
	margin: 0;
	padding: 11px 12px;
	border: 1px solid #efccd6;
	border-radius: 10px;
	background: var(--mp-danger-bg);
	font-size: 0.84rem;
	font-weight: 600;
	color: #8e3744;
}

.mp-booking-form {
	display: grid;
	gap: 10px;
}

.mp-booking-form__title {
	margin: 0 0 4px;
	font-size: 1.7rem;
	line-height: 1.18;
}

.mp-booking-form__row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.mp-booking-form__col,
.mp-booking-form__section {
	display: grid;
	gap: 5px;
}

.mp-booking-form__col[hidden],
.mp-booking-form__section[hidden] {
	display: none;
}

.mp-booking-form__col label,
.mp-booking-form__section > label {
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #446487;
}

.mp-field-required {
	display: inline-flex;
	align-items: center;
	color: #b42318;
	font-weight: 700;
	line-height: 1;
}

.mp-booking-form input[type='text'],
.mp-booking-form input[type='email'],
.mp-booking-form input[type='tel'],
.mp-booking-form input[type='file'],
.mp-booking-form select {
	width: 100%;
	min-height: 44px;
	padding: 10px 11px;
	border: 1px solid #cad9ea;
	border-radius: 9px;
	background: #fff;
	font-size: 0.87rem;
	color: #243f60;
}

.mp-booking-form input:focus,
.mp-booking-form select:focus {
	outline: none;
	border-color: #4f79ab;
	box-shadow: 0 0 0 3px rgba(85, 125, 171, 0.16);
}

.mp-booking-form__radio-group {
	display: grid;
	gap: 8px;
}

.mp-booking-form__radio-group--participant-type {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mp-company-fields[hidden] {
	display: none;
}

.mp-account-fields[hidden] {
	display: none;
}

.mp-booking-form__radio,
.mp-booking-form__formula-static,
.mp-booking-form__info,
.mp-booking-form__account-note,
.mp-wire-bank-info,
.mp-wire-proof-field {
	padding: 12px;
	border: 1px solid #d3dfed;
	border-radius: 10px;
	background: #f8fbff;
}

.mp-booking-form__radio {
	display: flex;
	align-items: center;
	gap: 10px;
}

.mp-booking-form__radio input {
	margin: 0;
}

.mp-booking-form__radio span,
.mp-booking-form__formula-static {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	width: 100%;
	font-size: 0.88rem;
	font-weight: 600;
	color: #2c4b70;
}

.mp-booking-form__radio small,
.mp-booking-form__formula-static small {
	font-size: 0.78rem;
	font-weight: 700;
	color: #4a6788;
}

.mp-booking-form .description,
.mp-wire-bank-info__details {
	margin: 0;
	font-size: 0.8rem;
	color: #5f7897;
}

.mp-booking-form__account-note {
	display: grid;
	gap: 10px;
}

.mp-booking-form__profile-summary {
	display: grid;
	gap: 14px;
	padding: 14px;
	border: 1px solid #d3dfed;
	border-radius: 14px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(245, 249, 255, 0.96));
}

.mp-booking-form__profile-summary-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.mp-booking-form__profile-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.mp-booking-form__profile-item,
.mp-booking-form__profile-alert {
	display: grid;
	gap: 5px;
	padding: 12px;
	border: 1px solid #d6e3f2;
	border-radius: 12px;
	background: #f8fbff;
}

.mp-booking-form__profile-item small {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #5f7897;
}

.mp-booking-form__profile-item strong {
	font-size: 0.92rem;
	color: #203b5d;
}

.mp-booking-form__profile-item em {
	font-style: normal;
	font-weight: 600;
	color: #8d5a21;
}

.mp-booking-form__profile-alert {
	border-color: #f0d6ac;
	background: #fff8ec;
}

.mp-booking-form__profile-alert strong {
	color: #8d5a21;
}

.mp-booking-form__checkbox {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: 0.88rem;
	font-weight: 600;
	color: #2c4b70;
}

.mp-booking-form__checkbox input {
	margin: 0;
}

.mp-booking-form__submit,
.mp-registration-page .mp-booking-form__submit,
.mp-participant-page .mp-booking-form__submit {
	margin-top: 6px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	min-width: 240px;
	min-height: 48px;
	border: 0;
	border-radius: 999px;
	padding: 11px 22px;
	background: linear-gradient(135deg, var(--mp-navy-deep), var(--mp-blue));
	color: #fff;
	font-size: 0.86rem;
	font-weight: 700;
	cursor: pointer;
	box-shadow: 0 10px 22px rgba(14, 26, 45, 0.18);
	transition: box-shadow 0.2s var(--mp-ease), transform 0.2s var(--mp-ease), filter 0.2s var(--mp-ease);
}

.mp-booking-form__submit[disabled] {
	cursor: not-allowed;
	opacity: 0.62;
	transform: none;
	box-shadow: none;
	filter: grayscale(0.08);
}

.mp-booking-form__submit:not([disabled]):hover,
.mp-booking-form__submit:not([disabled]):focus {
	filter: brightness(1.03);
	transform: translateY(-1px);
}

.mp-event-page .mp-btn--primary,
.mp-registration-page .mp-btn--primary,
.mp-registration-page .mp-booking-form__submit {
	background: linear-gradient(135deg, var(--mp-navy-deep), var(--mp-blue));
}

/* Participant design system foundation */
.mp-participant-page {
	--navy: #0a1628;
	--navy-mid: #132240;
	--navy-light: #1e3560;
	--accent: #2563eb;
	--accent-light: #3b82f6;
	--accent-pale: #dbeafe;
	--cream: #f4f7fb;
	--gray: #8a95a3;
	--gray-light: #e4eaf2;
	--white: #ffffff;
	--success: #2a7c5f;
	--warning: #b87a1a;
	--danger: #c0392b;
	--mp-card-radius: 20px;
	--mp-pill-radius: 100px;
	--mp-surface-shadow: 0 4px 32px rgba(10, 22, 40, 0.10);
	--mp-transition-fast: 0.18s ease;
	--mp-transition-slow: 0.28s ease;
	--mp-bg: var(--cream);
	--mp-surface: var(--white);
	--mp-surface-soft: #f8fafd;
	--mp-border: #dde3ea;
	--mp-border-strong: #b8cce8;
	--mp-navy-deep: var(--navy);
	--mp-navy: var(--navy-mid);
	--mp-blue: var(--navy-light);
	--mp-blue-mid: #35517c;
	--mp-blue-soft: #eaf0f8;
	--mp-text: var(--navy);
	--mp-muted: var(--gray);
	--mp-success: var(--success);
	--mp-success-bg: rgba(42, 124, 95, 0.10);
	--mp-warning: var(--warning);
	--mp-warning-bg: rgba(184, 122, 26, 0.10);
	--mp-danger: var(--danger);
	--mp-danger-bg: rgba(192, 57, 43, 0.08);
	--mp-shadow: var(--mp-surface-shadow);
	--mp-shadow-lg: 0 10px 40px rgba(10, 22, 40, 0.14);
	--mp-radius: var(--mp-card-radius);
	--mp-radius-sm: 16px;
	--mp-sans: 'Instrument Sans', 'Avenir Next', Avenir, 'Segoe UI', sans-serif;
	--mp-serif: 'Newsreader', 'Iowan Old Style', Palatino, serif;
	--mp-ease: ease;
	color: var(--navy);
	background:
		radial-gradient(circle at 12% 0%, rgba(37, 99, 235, 0.06) 0%, transparent 28%),
		radial-gradient(circle at 88% 6%, rgba(30, 53, 96, 0.08) 0%, transparent 30%),
		linear-gradient(180deg, #f8fafd 0%, var(--cream) 100%);
}

.mp-participant-page .mp-shell {
	width: min(1120px, calc(100% - 28px));
}

.mp-participant-page .mp-registration-hero {
	padding: 54px 0 80px;
	background:
		radial-gradient(circle at 14% 14%, rgba(37, 99, 235, 0.14) 0%, transparent 28%),
		radial-gradient(circle at 86% 0%, rgba(59, 130, 246, 0.08) 0%, transparent 24%),
		linear-gradient(145deg, var(--navy) 0%, var(--navy-light) 100%);
	border-bottom: 0;
}

.mp-participant-page .mp-registration-hero::before {
	background:
		radial-gradient(circle at top right, rgba(59, 130, 246, 0.10) 0%, transparent 28%),
		linear-gradient(90deg, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0) 24%);
}

.mp-participant-page .mp-registration-hero::after {
	right: -80px;
	top: -30px;
	width: 260px;
	height: 260px;
	background: radial-gradient(circle, rgba(59, 130, 246, 0.12) 0%, rgba(59, 130, 246, 0) 70%);
}

.mp-participant-page .mp-breadcrumb,
.mp-participant-page .mp-breadcrumb a {
	color: rgba(255, 255, 255, 0.72);
}

.mp-participant-page .mp-registration-hero__content h1 {
	font-family: var(--mp-serif);
	font-size: clamp(2.15rem, 6vw, 3rem);
	font-weight: 700;
	line-height: 1.08;
	color: var(--white);
}

.mp-participant-page .mp-registration-hero__content p {
	color: rgba(255, 255, 255, 0.62);
}

.mp-participant-page .mp-kicker,
.mp-participant-page .mp-panel__kicker {
	padding: 7px 14px;
	border-radius: var(--mp-pill-radius);
	border: 1px solid rgba(59, 130, 246, 0.30);
	background: rgba(255, 255, 255, 0.10);
	font-family: var(--mp-sans);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(147, 197, 253, 0.92);
}

.mp-participant-page .mp-kicker::before {
	background: var(--accent-light);
}

.mp-participant-page .mp-panel,
.mp-participant-page .mp-summary-card,
.mp-participant-page .mp-participant-profile-item,
.mp-participant-page .mp-participant-booking-card,
.mp-participant-page .mp-participant-booking-card__qr {
	border-radius: var(--mp-card-radius);
	box-shadow: var(--mp-surface-shadow);
}

.mp-participant-page .mp-panel,
.mp-participant-page .mp-summary-card {
	border-color: var(--gray-light);
	background: var(--white);
}

.mp-participant-page .mp-panel h2,
.mp-participant-page .mp-summary-card h2,
.mp-participant-page .mp-participant-booking-card__head h3 {
	font-family: var(--mp-serif);
	color: var(--navy);
}

.mp-participant-page .mp-panel__header p,
.mp-participant-page .mp-participant-booking-card__meta,
.mp-participant-page .mp-participant-booking-card__qr-content p:last-child,
.mp-participant-page .mp-participant-profile-item span,
.mp-participant-page .mp-participant-booking-card__eyebrow,
.mp-participant-page .mp-participant-booking-card__footer span {
	color: var(--gray);
}

.mp-participant-page .mp-btn,
.mp-participant-page .mp-booking-form__submit {
	border-radius: 16px;
	font-family: var(--mp-sans);
	font-weight: 600;
	transition:
		transform var(--mp-transition-fast),
		background-color var(--mp-transition-fast),
		color var(--mp-transition-fast),
		border-color var(--mp-transition-fast),
		box-shadow var(--mp-transition-slow);
}

.mp-participant-page .mp-btn--primary,
.mp-participant-page .mp-booking-form__submit {
	background: var(--navy);
	box-shadow: 0 8px 22px rgba(10, 22, 40, 0.16);
}

.mp-participant-page .mp-btn--ghost {
	border-color: var(--gray-light);
	color: var(--navy);
}

.mp-participant-page .mp-btn--outline {
	border-color: rgba(201, 168, 76, 0.45);
	color: var(--navy);
}

.mp-participant-page .mp-front-notice {
	border-radius: 18px;
}

.mp-participant-page .mp-booking-form input,
.mp-participant-page .mp-booking-form select,
.mp-participant-page .mp-field-input,
.mp-participant-page .mp-field-select {
	border-radius: 14px;
	border: 1.5px solid var(--gray-light);
	background: var(--cream);
	color: var(--navy);
	font-family: var(--mp-sans);
}

.mp-participant-page .mp-booking-form input:focus,
.mp-participant-page .mp-booking-form select:focus,
.mp-participant-page .mp-field-input:focus,
.mp-participant-page .mp-field-select:focus {
	border-color: var(--navy);
}

.mp-participant-page .mp-mobile-frame {
	width: min(100%, 440px);
	margin-inline: auto;
	padding-inline: 2px;
}

.mp-participant-page .mp-fade-up {
	opacity: 0;
	animation: mpParticipantFadeUp 0.48s ease forwards;
}

.mp-participant-page .mp-delay-1 {
	animation-delay: 0.06s;
}

.mp-participant-page .mp-delay-2 {
	animation-delay: 0.14s;
}

.mp-participant-page .mp-delay-3 {
	animation-delay: 0.22s;
}

.mp-participant-page .mp-delay-4 {
	animation-delay: 0.30s;
}

@keyframes mpParticipantFadeUp {
	from {
		opacity: 0;
		transform: translateY(18px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.mp-participant-layout {
	grid-template-columns: minmax(0, 1fr) 320px;
	align-items: start;
}

.mp-participant-layout--full {
	grid-template-columns: minmax(0, 1fr);
}

.mp-participant-space {
	display: grid;
	gap: 18px;
}

.mp-participant-space__back,
.mp-participant-page .mp-participant-space__back {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 40px;
	padding: 0 14px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 999px;
	background: rgba(7, 18, 40, 0.28);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	color: rgba(255, 255, 255, 0.94);
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.mp-participant-space__back:hover {
	background: rgba(14, 165, 233, 0.22);
	border-color: rgba(191, 219, 254, 0.28);
	color: var(--white);
	transform: translateY(-1px);
}

.mp-participant-space__back:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(191, 219, 254, 0.2);
}

.mp-participant-guest-active {
	height: 100vh;
	height: 100dvh;
	overflow: hidden;
}

.mp-participant-page--standalone {
	min-height: 100vh;
	height: 100vh;
	height: 100dvh;
	padding: clamp(18px, 4vw, 32px);
	display: grid;
	align-items: start;
	overflow: hidden;
	background: linear-gradient(180deg, #f8fafc 0%, #edf2f6 100%);
}

.mp-participant-auth-shell {
	width: min(100%, 1080px);
	height: 100%;
	margin-inline: auto;
}

.mp-participant-page--standalone .mp-participant-space {
	height: 100%;
	align-content: start;
	padding-top: clamp(68px, 9vh, 96px);
	gap: 14px;
	justify-items: center;
	overflow: hidden;
}

.mp-participant-page--standalone .mp-participant-space__back {
	position: fixed;
	top: clamp(18px, 4vw, 32px);
	left: clamp(18px, 4vw, 32px);
	z-index: 20;
}

.mp-participant-page--standalone .mp-participant-space > .mp-front-notice {
	width: min(100%, 460px);
	margin-inline: auto;
}

.mp-participant-page--standalone .mp-participant-auth {
	width: min(100%, 460px);
	max-width: 460px;
	max-height: 100%;
}

.mp-participant-page--standalone .mp-participant-auth-stage {
	padding: 0;
	min-height: auto;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.mp-participant-page--standalone .mp-participant-auth-stage::before,
.mp-participant-page--standalone .mp-participant-auth-stage::after {
	display: none;
}

.mp-participant-page--standalone .mp-participant-auth-card {
	width: min(100%, 460px);
	max-height: calc(100dvh - clamp(120px, 16vh, 156px));
	gap: 14px;
	padding: 24px 22px;
	background: #ffffff;
	border-color: #d6e0ea;
	border-radius: 22px;
	box-shadow: 0 16px 30px rgba(20, 42, 68, 0.06);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	color: #17324d;
	overflow-y: auto;
	overflow-x: hidden;
}

.mp-participant-page--standalone .mp-participant-auth-card::before {
	display: none;
}

.mp-participant-page--standalone .mp-participant-auth-tabs {
	width: min(100%, 332px);
	margin-inline: auto;
	border-color: #d6e0ea;
	background: #eef3f7;
}

.mp-participant-page--standalone .mp-participant-auth-copy,
.mp-participant-page--standalone .mp-participant-auth-form__head p,
.mp-participant-page--standalone .mp-participant-auth-view__footer span,
.mp-participant-page--standalone .mp-participant-auth-stage__footer p,
.mp-participant-page--standalone .mp-participant-auth-brand__text span {
	color: #66798d;
}

.mp-participant-page--standalone .mp-participant-auth-eyebrow {
	color: #6f8396;
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form__col label,
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form__section > label {
	color: #486072;
	font-size: 0.7rem;
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='text'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='email'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='tel'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='password'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form select {
	min-height: 44px;
	padding: 0 13px;
	background: #fbfdff;
	border-color: #cfd8e3;
	border-radius: 12px;
	box-shadow: none;
	color: #17324d;
	caret-color: #17324d;
	-webkit-text-fill-color: #17324d;
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form select {
	appearance: auto;
	-webkit-appearance: menulist;
	-moz-appearance: menulist;
	padding-right: 13px;
	background-image: none;
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: auto;
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input:-webkit-autofill,
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input:-webkit-autofill:hover,
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input:-webkit-autofill:focus,
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input:-webkit-autofill:active {
	-webkit-text-fill-color: #17324d;
	caret-color: #17324d;
	border-color: #cfd8e3;
	box-shadow: 0 0 0 1000px #fbfdff inset;
	transition: background-color 9999s ease-out 0s;
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input:focus,
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form select:focus {
	border-color: #96adc2;
	box-shadow: 0 0 0 3px rgba(24, 77, 120, 0.10);
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form__checkbox {
	color: #5b6f83;
	font-size: 12px;
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form__checkbox input {
	accent-color: #184d78;
}

.mp-participant-page--standalone .mp-participant-auth-brand {
	flex-direction: column;
	gap: 11px;
}

.mp-participant-page--standalone .mp-participant-auth-brand__logo {
	height: 28px;
	max-width: min(100%, 132px);
}

.mp-participant-page--standalone .mp-participant-auth-brand__mark {
	width: 14px;
	height: 14px;
	border-radius: 5px;
	box-shadow: 0 0 0 5px rgba(15, 23, 42, 0.04);
}

.mp-participant-page--standalone .mp-participant-auth-brand__text strong {
	font-size: 0.96rem;
}

.mp-participant-page--standalone .mp-participant-auth-brand__text span {
	font-size: 0.72rem;
}

.mp-participant-page--standalone .mp-participant-auth-card__head {
	gap: 2px;
}

.mp-participant-page--standalone .mp-participant-auth-card__head h2 {
	font-size: clamp(1.42rem, 3.3vw, 1.75rem);
	font-family: var(--mp-sans);
	font-weight: 800;
	color: #17324d;
	letter-spacing: -0.02em;
}

.mp-participant-page--standalone .mp-participant-auth-form__head h3 {
	margin: 0;
	font-size: clamp(1.02rem, 2.4vw, 1.22rem);
	font-family: var(--mp-sans);
	font-weight: 700;
	color: #17324d;
}

.mp-participant-page--standalone .mp-participant-auth-tab {
	min-height: 38px;
	padding: 8px 12px;
	font-size: 12px;
}

.mp-participant-page--standalone .mp-participant-auth-view {
	gap: 10px;
}

.mp-participant-page--standalone .mp-participant-auth-form {
	gap: 10px;
}

.mp-participant-page--standalone .mp-participant-auth__actions {
	justify-content: center;
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form__submit {
	min-height: 44px;
	font-size: 13px;
	background: #184d78;
	border-radius: 12px;
	box-shadow: 0 10px 18px rgba(24, 77, 120, 0.12);
}

.mp-participant-page--standalone .mp-participant-auth-view__footer {
	justify-content: center;
	gap: 6px 10px;
	padding-top: 2px;
	border-top-color: #dce4ec;
}

.mp-participant-page--standalone .mp-participant-auth-link {
	font-size: 12px;
	color: #21567d;
}

.mp-participant-page--standalone .mp-participant-auth-link:hover,
.mp-participant-page--standalone .mp-participant-auth-link:focus {
	color: #163a59;
}

.mp-participant-page--standalone .mp-participant-space__back {
	border-color: #d6e0ea;
	background: rgba(255, 255, 255, 0.92);
	color: #17324d;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	box-shadow: 0 10px 22px rgba(20, 42, 68, 0.08);
}

.mp-participant-page--standalone .mp-participant-space__back:hover {
	background: #ffffff;
	border-color: #bfd0df;
	color: #163a59;
}

.mp-participant-page--standalone .mp-participant-auth-tab {
	color: #5f7286;
}

.mp-participant-page--standalone .mp-participant-auth-tab:hover {
	color: #17324d;
}

.mp-participant-page--standalone .mp-participant-auth-tab.is-active {
	background: #ffffff;
	color: #17324d;
	box-shadow: 0 4px 10px rgba(20, 42, 68, 0.06);
}

.mp-participant-page--standalone .mp-participant-auth-tab:focus-visible {
	box-shadow: 0 0 0 3px rgba(24, 77, 120, 0.12);
}

.mp-participant-page .mp-breadcrumb {
	justify-content: center;
}

.mp-participant-page .mp-registration-hero {
	padding: 50px 0 44px;
	background:
		radial-gradient(circle at 16% 12%, rgba(255, 255, 255, 0.18) 0%, transparent 24%),
		radial-gradient(circle at 84% 18%, rgba(59, 130, 246, 0.24) 0%, transparent 22%),
		radial-gradient(circle at 78% 84%, rgba(34, 211, 238, 0.18) 0%, transparent 18%),
		linear-gradient(145deg, #091227 0%, #182b60 54%, #1f4db9 100%);
}

.mp-participant-page .mp-registration-hero::before {
	background:
		radial-gradient(circle at top center, rgba(255, 255, 255, 0.12) 0%, transparent 34%),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.04) 0 1px, transparent 1px 126px),
		linear-gradient(180deg, rgba(255, 255, 255, 0.10) 0%, rgba(255, 255, 255, 0) 40%);
}

.mp-participant-page .mp-registration-hero__content {
	margin-top: 18px;
	max-width: 700px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.mp-participant-page .mp-registration-hero__content p {
	max-width: 54ch;
}

.mp-participant-auth {
	display: grid;
	gap: 18px;
	max-width: 1040px;
	margin-inline: auto;
}

.mp-participant-panel {
	display: grid;
	gap: 18px;
	align-content: start;
}

.mp-participant-auth-stage {
	position: relative;
	display: grid;
	place-items: center;
	padding: clamp(24px, 4vw, 48px);
	min-height: clamp(460px, 68vh, 560px);
	border-radius: 34px;
	background:
		radial-gradient(circle at 18% 18%, rgba(255, 255, 255, 0.16) 0%, transparent 24%),
		radial-gradient(circle at 82% 14%, rgba(59, 130, 246, 0.24) 0%, transparent 18%),
		radial-gradient(circle at 84% 82%, rgba(34, 211, 238, 0.18) 0%, transparent 16%),
		linear-gradient(145deg, #091227 0%, #1a2d65 54%, #2456c7 100%);
	box-shadow: 0 24px 56px rgba(10, 22, 40, 0.16);
	overflow: hidden;
	isolation: isolate;
}

.mp-participant-auth-stage::before {
	content: '';
	position: absolute;
	left: -10%;
	right: -10%;
	bottom: -22%;
	height: 48%;
	background:
		radial-gradient(circle at 14% 50%, rgba(56, 189, 248, 0.28) 0%, transparent 18%),
		radial-gradient(circle at 50% 36%, rgba(255, 255, 255, 0.14) 0%, transparent 20%),
		radial-gradient(circle at 84% 52%, rgba(34, 211, 238, 0.24) 0%, transparent 18%);
	filter: blur(20px);
	opacity: 0.86;
	pointer-events: none;
}

.mp-participant-auth-stage::after {
	content: '';
	position: absolute;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.03) 30%, rgba(6, 16, 38, 0.18) 100%);
	pointer-events: none;
}

.mp-participant-auth-card {
	position: relative;
	gap: 18px;
	width: min(100%, 540px);
	justify-self: center;
	padding: clamp(22px, 3vw, 30px);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 28px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.22) 0%, rgba(255, 255, 255, 0.10) 100%);
	box-shadow: 0 24px 60px rgba(8, 18, 40, 0.30);
	backdrop-filter: blur(22px);
	-webkit-backdrop-filter: blur(22px);
	color: var(--white);
	overflow: hidden;
	z-index: 1;
}

.mp-participant-auth-card::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(140deg, rgba(255, 255, 255, 0.18) 0%, rgba(255, 255, 255, 0.02) 46%, rgba(255, 255, 255, 0.08) 100%);
	pointer-events: none;
}

.mp-participant-auth-card > * {
	position: relative;
	z-index: 1;
}

.mp-participant-auth-brand {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
}

.mp-participant-auth-brand__logo {
	display: block;
	width: auto;
	height: 34px;
	max-width: min(100%, 160px);
	object-fit: contain;
}

.mp-participant-auth-brand__mark {
	width: 18px;
	height: 18px;
	border-radius: 6px;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(191, 219, 254, 0.96) 100%);
	box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.08);
}

.mp-participant-auth-brand__text {
	display: grid;
	gap: 2px;
}

.mp-participant-auth-brand__text strong {
	font-size: 1.05rem;
	line-height: 1.2;
	color: var(--white);
}

.mp-participant-auth-brand__text span {
	font-size: 0.78rem;
	color: rgba(255, 255, 255, 0.68);
}

.mp-participant-auth-card__head {
	display: grid;
	gap: 8px;
	justify-items: center;
	text-align: center;
}

.mp-participant-auth-eyebrow {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(191, 219, 254, 0.88);
}

.mp-participant-auth-card__head h2 {
	margin: 0;
	font-family: var(--mp-serif);
	font-size: clamp(2rem, 4vw, 2.45rem);
	line-height: 1.04;
	color: var(--white);
	letter-spacing: -0.02em;
}

.mp-participant-auth-card__head p {
	margin: 0;
}

.mp-participant-auth-card__head p:last-child {
	font-size: 0.95rem;
	line-height: 1.72;
	color: rgba(255, 255, 255, 0.74);
}

.mp-participant-auth-tabs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 6px;
	padding: 5px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 999px;
	background: rgba(7, 18, 40, 0.24);
}

.mp-participant-auth[data-mp-auth-active='forgot'] .mp-participant-auth-tabs,
.mp-participant-auth[data-mp-auth-active='reset'] .mp-participant-auth-tabs {
	display: none;
}

.mp-participant-auth-tab,
.mp-participant-page .mp-participant-auth-tab {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 10px 14px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	font-family: var(--mp-sans);
	font-size: 13px;
	font-weight: 700;
	color: rgba(255, 255, 255, 0.74);
	cursor: pointer;
	transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.mp-participant-auth-tab:hover {
	color: var(--white);
}

.mp-participant-auth-tab.is-active {
	background: linear-gradient(135deg, rgba(14, 165, 233, 0.94) 0%, rgba(37, 99, 235, 0.94) 100%);
	color: var(--white);
	box-shadow: 0 12px 24px rgba(37, 99, 235, 0.28);
}

.mp-participant-auth-tab:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(191, 219, 254, 0.24);
}

.mp-participant-auth-copy {
	margin: 0;
	font-size: 13px;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.68);
	text-align: center;
}

.mp-participant-auth-view {
	display: grid;
	gap: 16px;
}

.mp-participant-auth-view[hidden] {
	display: none;
}

.mp-participant-auth-form {
	display: grid;
	gap: 16px;
}

.mp-participant-auth-form__head {
	display: grid;
	gap: 6px;
}

.mp-participant-auth-form__head h3 {
	margin: 0;
	font-size: 22px;
	line-height: 1.2;
	color: var(--white);
}

.mp-participant-auth-form__head p {
	margin: 0;
	font-size: 13px;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.68);
}

.mp-participant-auth-card .mp-booking-form__section,
.mp-participant-auth-card .mp-booking-form__col {
	gap: 7px;
}

.mp-participant-auth-card .mp-booking-form__col label,
.mp-participant-auth-card .mp-booking-form__section > label {
	color: rgba(255, 255, 255, 0.82);
}

.mp-participant-auth-card .mp-booking-form input[type='text'],
.mp-participant-auth-card .mp-booking-form input[type='email'],
.mp-participant-auth-card .mp-booking-form input[type='tel'],
.mp-participant-auth-card .mp-booking-form input[type='password'],
.mp-participant-auth-card .mp-booking-form select {
	min-height: 50px;
	padding: 0 15px;
	border-color: rgba(255, 255, 255, 0.16);
	border-radius: 14px;
	background: rgba(7, 18, 40, 0.20);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
	color: var(--white);
	caret-color: var(--white);
	-webkit-text-fill-color: var(--white);
}

.mp-participant-auth-card .mp-booking-form select {
	appearance: none;
	-webkit-appearance: none;
	padding-right: 40px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.25 4.5L6 8.25L9.75 4.5' stroke='%23dbeafe' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 12px 12px;
}

.mp-participant-auth-card .mp-booking-form input:-webkit-autofill,
.mp-participant-auth-card .mp-booking-form input:-webkit-autofill:hover,
.mp-participant-auth-card .mp-booking-form input:-webkit-autofill:focus,
.mp-participant-auth-card .mp-booking-form input:-webkit-autofill:active {
	-webkit-text-fill-color: var(--white);
	caret-color: var(--white);
	border-color: rgba(255, 255, 255, 0.18);
	box-shadow: 0 0 0 1000px rgba(7, 18, 40, 0.88) inset;
	transition: background-color 9999s ease-out 0s;
}

.mp-participant-auth-card .mp-booking-form input:focus,
.mp-participant-auth-card .mp-booking-form select:focus {
	border-color: rgba(191, 219, 254, 0.42);
	box-shadow: 0 0 0 4px rgba(191, 219, 254, 0.14);
}

.mp-participant-auth-card .mp-booking-form__checkbox {
	color: rgba(255, 255, 255, 0.74);
}

.mp-participant-auth-card .mp-booking-form__checkbox input {
	accent-color: #38bdf8;
}

.mp-participant-auth__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.mp-participant-auth__actions > * {
	flex: 1 1 220px;
}

.mp-participant-auth-card .mp-booking-form__submit,
.mp-participant-auth-card .mp-btn {
	width: 100%;
	min-width: 0;
}

.mp-participant-auth-card .mp-booking-form__submit {
	background: linear-gradient(135deg, #0ea5e9 0%, #38bdf8 48%, #2563eb 100%);
	box-shadow: 0 18px 32px rgba(37, 99, 235, 0.28);
}

.mp-participant-auth-view__footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 10px 14px;
	padding-top: 6px;
	border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.mp-participant-auth-view__footer span {
	font-size: 12px;
	color: rgba(255, 255, 255, 0.64);
}

.mp-participant-auth-link {
	padding: 0;
	border: 0;
	background: transparent;
	font-size: 13px;
	font-weight: 700;
	color: rgba(191, 219, 254, 0.92);
	text-decoration: none;
	cursor: pointer;
}

.mp-participant-auth-link:hover,
.mp-participant-auth-link:focus {
	color: var(--white);
	text-decoration: underline;
}

.mp-participant-auth-stage__footer {
	padding-top: 2px;
	border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.mp-participant-auth-stage__footer p {
	margin: 0;
	font-size: 12px;
	line-height: 1.6;
	text-align: center;
	color: rgba(255, 255, 255, 0.64);
}

.mp-participant-profile-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.mp-participant-profile-item,
.mp-participant-booking-card {
	padding: 14px;
	border: 1px solid #d8e2ee;
	border-radius: 14px;
	background: #fbfdff;
}

.mp-participant-profile-item span,
.mp-participant-booking-card__eyebrow,
.mp-participant-booking-card__footer span {
	display: block;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #6a8098;
}

.mp-participant-profile-item strong,
.mp-participant-booking-card__footer strong {
	display: block;
	margin-top: 4px;
	color: #243f60;
}

.mp-participant-panel__actions,
.mp-participant-auth__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.mp-participant-bookings {
	display: grid;
	gap: 14px;
}

.mp-participant-booking-card {
	display: grid;
	gap: 14px;
}

.mp-participant-booking-card__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
}

.mp-participant-booking-card__head h3 {
	margin: 4px 0 0;
	font-size: 1.15rem;
}

.mp-participant-booking-card__meta {
	margin: 8px 0 0;
	color: #56718f;
}

.mp-participant-booking-card__statuses {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.mp-status-pill {
	display: inline-flex;
	align-items: center;
	padding: 7px 10px;
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 700;
}

.mp-status-pill--success {
	background: var(--mp-success-bg);
	color: #11684e;
}

.mp-status-pill--warning {
	background: var(--mp-warning-bg);
	color: #8d5e21;
}

.mp-status-pill--danger {
	background: var(--mp-danger-bg);
	color: #8e3441;
}

.mp-status-pill--neutral {
	background: #eef3f8;
	color: #415b77;
}

.mp-participant-booking-card__footer {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.mp-participant-booking-card__qr {
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr);
	gap: 16px;
	align-items: center;
	padding: 14px;
	border: 1px solid #d8e4f2;
	border-radius: 16px;
	background:
		radial-gradient(circle at top left, rgba(46, 76, 122, 0.08) 0%, transparent 38%),
		linear-gradient(135deg, #ffffff 0%, #f7fbff 100%);
}

.mp-participant-booking-card__qr-media {
	display: grid;
	place-items: center;
	padding: 10px;
	border: 1px solid #d9e3ef;
	border-radius: 14px;
	background: #fff;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.mp-participant-booking-card__qr-media img {
	width: 100%;
	max-width: 112px;
	height: auto;
}

.mp-participant-booking-card__qr-kicker {
	margin: 0 0 6px;
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #58708d;
}

.mp-participant-booking-card__qr-content h4 {
	margin: 0;
	font-size: 1rem;
	color: var(--mp-navy-deep);
}

.mp-participant-booking-card__qr-content p:last-child {
	margin: 8px 0 0;
	color: #56718f;
}

.mp-participant-page.is-authenticated {
	padding-bottom: max(120px, calc(88px + env(safe-area-inset-bottom, 0px)));
	background:
		radial-gradient(circle at 12% 0%, rgba(201, 168, 76, 0.06) 0%, transparent 28%),
		radial-gradient(circle at 88% 6%, rgba(30, 53, 96, 0.06) 0%, transparent 30%),
		linear-gradient(180deg, #fdfcfa 0%, #f8f6f2 100%);
}

body.mp-community-modal-open,
body.mp-community-image-viewer-open,
body.mp-community-thread-modal-open,
body.mp-chat-modal-open {
	overflow: hidden;
}

/* Blur backdrop quand un panel (notif/chat) est ouvert sur mobile */
@media (max-width: 899px) {
	body.mp-panel-open {
		overflow: hidden;
		/* Compense la disparition de la scrollbar pour éviter le décalage */
		padding-right: var(--mp-scrollbar-width, 0px);
	}

	/* Backdrop transparent cliquable — ferme le panel quand on clique hors popup */
	body.mp-panel-open::after {
		content: '';
		position: fixed;
		inset: 0;
		z-index: 1199;
		background: transparent;
		pointer-events: auto;
	}

	body.mp-panel-open .mp-participant-screen.is-active {
		filter: blur(3px);
		pointer-events: none;
		transition: filter 0.2s ease;
	}

	body.mp-panel-open .mp-participant-bottom-nav {
		filter: blur(3px);
		pointer-events: none;
	}

	body.mp-panel-open .mp-participant-main__topbar {
		z-index: 1201;
	}
}

/* Mobile : frame centré 440px max */
.mp-participant-page.is-authenticated .mp-participant-shell {
	width: min(100%, 440px);
	margin-inline: auto;
}

.mp-participant-page.is-authenticated .mp-participant-space {
	gap: 0;
}

.mp-participant-app {
	position: relative;
	--mp-participant-sidebar-toggle-offset: 240px;
	display: grid;
	gap: 16px;
	padding-bottom: 96px;
}

.mp-participant-screen {
	display: grid;
	gap: 18px;
	opacity: 0;
	transform: translateX(24px);
	transition: transform 0.28s ease, opacity 0.28s ease;
}

.mp-participant-screen.is-active {
	opacity: 1;
	transform: translateX(0);
}

.mp-participant-screen--community.is-loading {
	pointer-events: none;
}

.mp-participant-screen--community.is-loading [data-mp-community-screen-body] {
	opacity: 0.52;
	transition: opacity 0.16s ease;
}

.mp-participant-screen.is-entering-from-right {
	transform: translateX(40px);
	opacity: 0;
}

.mp-participant-screen.is-entering-from-left {
	transform: translateX(-40px);
	opacity: 0;
}

.mp-participant-screen.is-exiting-to-left {
	transform: translateX(-32px);
	opacity: 0;
}

.mp-participant-screen.is-exiting-to-right {
	transform: translateX(32px);
	opacity: 0;
}

.mp-participant-home-hero,
.mp-profile-hero {
	position: relative;
	overflow: hidden;
	padding: 28px 22px 76px;
	border-radius: 28px;
	background: linear-gradient(145deg, var(--navy) 0%, var(--navy-light) 100%);
	box-shadow: var(--mp-shadow-lg);
	color: var(--white);
}

.mp-participant-home-hero::before,
.mp-profile-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 88% 14%, rgba(232, 201, 109, 0.18) 0%, transparent 24%),
		radial-gradient(circle at 16% 0%, rgba(232, 201, 109, 0.10) 0%, transparent 30%);
	pointer-events: none;
}

.mp-participant-home-hero > *,
.mp-profile-hero > * {
	position: relative;
	z-index: 1;
}

.mp-participant-home-hero__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.mp-participant-brand-pill {
	display: inline-flex;
	align-items: center;
	padding: 7px 12px;
	border-radius: 100px;
	border: 1px solid rgba(59, 130, 246, 0.30);
	background: rgba(255, 255, 255, 0.10);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(147, 197, 253, 0.92);
}

.mp-participant-notif-btn {
	position: relative;
	display: inline-grid;
	place-items: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.08);
	color: var(--white);
	cursor: pointer;
}

.mp-participant-notif-btn__dot {
	position: absolute;
	top: 6px;
	right: 6px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--accent-light);
}

.mp-participant-home-hero h1,
.mp-profile-hero h2 {
	margin: 18px 0 0;
	font-family: var(--mp-sans);
	font-size: clamp(22px, 7vw, 32px);
	font-weight: 700;
	line-height: 1.15;
	color: var(--white);
}

.mp-participant-home-hero__meta,
.mp-profile-hero p {
	margin: 8px 0 0;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.55);
}

.mp-participant-stats-row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-top: -56px;
	position: relative;
	z-index: 3;
}

.mp-participant-stat-card {
	padding: 16px 14px;
	border-radius: 20px;
	background: var(--white);
	box-shadow: var(--mp-surface-shadow);
	text-align: center;
}

.mp-participant-stat-card strong,
.mp-profile-stats-strip strong {
	display: block;
	font-family: var(--mp-serif);
	font-size: 26px;
	font-weight: 700;
	color: var(--navy);
}

.mp-participant-stat-card span,
.mp-profile-stats-strip span {
	display: block;
	margin-top: 4px;
	font-size: 11px;
	color: var(--gray);
}

.mp-participant-section,
.mp-profile-card {
	display: grid;
	gap: 14px;
}

.mp-participant-section__head,
.mp-profile-card__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 12px;
}

.mp-participant-section__eyebrow {
	margin: 0 0 6px;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--gray);
}

.mp-participant-section__head h2,
.mp-profile-card__head h3 {
	margin: 0;
	font-family: var(--mp-serif);
	font-size: clamp(19px, 5vw, 24px);
	line-height: 1.08;
	color: var(--navy);
}

.mp-participant-link-btn {
	padding: 0;
	border: 0;
	background: transparent;
	font-size: 13px;
	font-weight: 600;
	color: var(--gold);
	cursor: pointer;
}

.mp-participant-qr-card {
	position: relative;
	display: grid;
	grid-template-columns: 110px minmax(0, 1fr);
	gap: 18px;
	padding: 22px;
	border-radius: 20px;
	background: linear-gradient(145deg, var(--navy) 0%, var(--navy-light) 100%);
	box-shadow: var(--mp-shadow-lg);
	color: var(--white);
	overflow: hidden;
}

.mp-participant-qr-card::before {
	content: '';
	position: absolute;
	top: -40px;
	right: -36px;
	width: 180px;
	height: 180px;
	background: radial-gradient(circle, rgba(201, 168, 76, 0.20) 0%, rgba(201, 168, 76, 0) 66%);
	pointer-events: none;
}

.mp-participant-qr-card__media,
.mp-participant-qr-card__content {
	position: relative;
	z-index: 1;
}

.mp-participant-qr-card__media {
	display: grid;
	place-items: center;
	padding: 10px;
	border-radius: 14px;
	background: var(--white);
}

.mp-participant-qr-card__media img {
	width: 90px;
	height: 90px;
	object-fit: contain;
}

.mp-participant-qr-card__content h3 {
	margin: 0;
	font-family: var(--mp-serif);
	font-size: 19px;
	color: var(--white);
}

.mp-participant-qr-card__content p {
	margin: 6px 0 0;
	font-size: 12px;
	color: rgba(255, 255, 255, 0.55);
}

.mp-participant-qr-card__badge {
	display: inline-flex;
	margin-top: 12px;
	padding: 7px 12px;
	border: 1px solid rgba(201, 168, 76, 0.40);
	border-radius: 100px;
	background: rgba(201, 168, 76, 0.18);
	font-size: 11px;
	font-weight: 600;
	color: var(--gold-light);
}

.mp-participant-inline-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 18px;
	border-radius: 20px;
	background: var(--white);
	box-shadow: var(--mp-surface-shadow);
}

.mp-participant-inline-card strong {
	display: block;
	color: var(--navy);
}

.mp-participant-inline-card p {
	margin: 6px 0 0;
	font-size: 13px;
	color: var(--gray);
}

.mp-participant-home-bookings,
.mp-participant-available-events,
.mp-profile-menu,
.mp-profile-info-list {
	display: grid;
	gap: 12px;
}

.mp-profile-edit-form {
	display: grid;
	gap: 14px;
}

.mp-profile-avatar-edit {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 12px;
	border: 1px solid #dde6f1;
	border-radius: 12px;
	background: #f9fbfe;
}

.mp-profile-avatar-edit__preview {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: linear-gradient(145deg, #dbe9f4 0%, #edf4f8 100%);
	border: 1px solid rgba(148, 163, 184, 0.22);
	color: #2e4968;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	font-weight: 700;
	overflow: hidden;
	flex-shrink: 0;
}

.mp-profile-avatar-edit__preview img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mp-profile-avatar-edit__fields {
	display: grid;
	gap: 6px;
	min-width: 0;
	flex: 1;
}

.mp-profile-avatar-edit__fields > label {
	font-size: 12px;
	font-weight: 700;
	color: #1f3348;
}

.mp-profile-avatar-edit__fields input[type='file'] {
	font-size: 12px;
	max-width: 100%;
}

.mp-profile-avatar-edit__hint {
	margin: 0;
	font-size: 11px;
	line-height: 1.5;
	color: #667a91;
}

.mp-profile-avatar-edit__remove {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 11.5px;
	color: #324a64;
}

.mp-profile-edit-form__hint {
	margin: 0;
	font-size: 12px;
	line-height: 1.6;
	color: var(--gray);
}

.mp-profile-edit-form__actions {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.mp-profile-edit-form__actions .mp-btn {
	min-width: 220px;
}

.mp-home-booking-card,
.mp-available-event-card,
.mp-profile-card,
.mp-profile-stats-strip {
	position: relative;
	padding: 18px;
	border-radius: 20px;
	background: var(--white);
	box-shadow: var(--mp-surface-shadow);
}

.mp-home-booking-card {
	display: grid;
	grid-template-columns: 4px 64px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
	padding-left: 0;
	cursor: pointer;
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.mp-home-booking-card:hover {
	box-shadow: 0 6px 28px rgba(10, 22, 40, 0.12);
	transform: translateY(-1px);
}

.mp-home-booking-card:active {
	transform: scale(0.985);
}

.mp-home-booking-card:focus-visible,
.mp-participant-link-btn:focus-visible,
.mp-participant-notif-btn:focus-visible,
.mp-profile-info-row:focus-visible,
.mp-profile-menu-row:focus-visible,
.mp-profile-logout:focus-visible,
.mp-participant-bottom-nav__item:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.22);
}

.mp-home-booking-card__bar {
	align-self: stretch;
	border-radius: 20px 0 0 20px;
	background: var(--gray-light);
}

.mp-home-booking-card--success .mp-home-booking-card__bar {
	background: var(--success);
}

.mp-home-booking-card--warning .mp-home-booking-card__bar {
	background: var(--warning);
}

.mp-home-booking-card--danger .mp-home-booking-card__bar {
	background: var(--danger);
}

.mp-home-booking-card__date {
	display: grid;
	place-items: center;
	padding: 10px 8px;
	border-radius: 16px;
	background: var(--cream);
	text-align: center;
}

.mp-home-booking-card__date strong {
	font-family: var(--mp-serif);
	font-size: 22px;
	color: var(--navy);
}

.mp-home-booking-card__date span {
	font-size: 10px;
	color: var(--gray);
	text-transform: uppercase;
}

.mp-home-booking-card__content h3,
.mp-available-event-card h3 {
	margin: 0;
	font-family: var(--mp-serif);
	font-size: 19px;
	line-height: 1.18;
	color: var(--navy);
}

.mp-home-booking-card__content p,
.mp-available-event-card p {
	margin: 6px 0 0;
	font-size: 12px;
	color: var(--gray);
}

.mp-home-booking-card__badge {
	display: inline-flex;
	margin-top: 10px;
	padding: 6px 10px;
	border-radius: 100px;
	font-size: 11px;
	font-weight: 600;
}

.mp-home-booking-card__badge--success {
	background: rgba(42, 124, 95, 0.10);
	color: var(--success);
}

.mp-home-booking-card__badge--warning {
	background: rgba(184, 122, 26, 0.10);
	color: var(--warning);
}

.mp-home-booking-card__badge--danger {
	background: rgba(192, 57, 43, 0.10);
	color: var(--danger);
}

.mp-home-booking-card__badge--neutral {
	background: rgba(138, 149, 163, 0.12);
	color: var(--gray);
}

.mp-available-event-card__head,
.mp-available-event-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.mp-available-event-card__footer {
	position: relative;
	z-index: 1;
}

.mp-available-event-card__tag {
	display: inline-flex;
	padding: 6px 10px;
	border-radius: 100px;
	background: var(--gray-light);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--navy);
}

.mp-available-event-card__head strong {
	font-family: var(--mp-serif);
	font-size: 18px;
	color: var(--navy);
}

.mp-available-event-card__footer span {
	font-size: 12px;
	color: var(--gray);
}

.mp-btn--gold {
	background: var(--gold);
	border-color: var(--gold);
	color: var(--navy);
}

.mp-profile-hero {
	padding-top: 34px;
	text-align: center;
}

.mp-profile-hero__avatar {
	position: relative;
	width: 96px;
	height: 96px;
	margin: 0 auto;
	padding: 3px;
	border-radius: 50%;
	background: linear-gradient(145deg, var(--gold), var(--gold-light));
}

.mp-profile-hero__avatar span {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background: var(--navy-mid);
	font-family: var(--mp-serif);
	font-size: 30px;
	font-weight: 700;
	color: var(--white);
}

.mp-profile-hero__edit {
	position: absolute;
	right: -4px;
	bottom: -2px;
	display: grid;
	place-items: center;
	width: 28px;
	height: 28px;
	padding: 0;
	border: 2px solid var(--navy);
	border-radius: 50%;
	background: var(--accent);
	color: var(--white);
	cursor: pointer;
}

.mp-profile-hero__badges {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin-top: 14px;
}

.mp-profile-badge {
	display: inline-flex;
	padding: 7px 12px;
	border-radius: 100px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: rgba(255, 255, 255, 0.10);
	font-size: 11px;
	color: var(--white);
}

.mp-profile-badge--gold {
	border-color: rgba(59, 130, 246, 0.35);
	background: rgba(59, 130, 246, 0.15);
	color: rgba(147, 197, 253, 0.92);
}

.mp-profile-stats-strip {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	margin-top: -50px;
	z-index: 2;
}

.mp-profile-stats-strip div {
	padding: 6px 10px;
	text-align: center;
}

.mp-profile-stats-strip div + div {
	border-left: 1px solid var(--gray-light);
}

.mp-profile-info-row,
.mp-profile-menu-row {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: left;
	cursor: pointer;
}

.mp-profile-info-row--static {
	cursor: default;
}

.mp-profile-info-row > .mp-icon:first-child,
.mp-profile-info-row > svg:first-child {
	display: grid;
	place-items: center;
	flex-shrink: 0;
	width: 34px;
	height: 34px;
	padding: 8px;
	border-radius: 10px;
	background: var(--accent-pale);
	color: var(--accent);
	box-sizing: border-box;
}

.mp-profile-info-row small,
.mp-profile-menu-row small {
	display: block;
	font-size: 10px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--gray);
}

.mp-profile-info-row strong,
.mp-profile-menu-row strong {
	display: block;
	margin-top: 3px;
	font-size: 13px;
	color: var(--navy);
}

.mp-profile-info-row em,
.mp-profile-menu-row em {
	font-style: normal;
	color: #c3cbd5;
}

.mp-profile-menu-row {
	padding: 14px 0;
	transition: opacity 0.15s ease;
}

.mp-profile-menu-row:hover {
	opacity: 0.78;
}

.mp-profile-menu-row + .mp-profile-menu-row {
	border-top: 1px solid var(--gray-light);
}

.mp-profile-menu-row__icon {
	display: grid;
	place-items: center;
	flex-shrink: 0;
	width: 38px;
	height: 38px;
	border-radius: 12px;
	background: rgba(19, 34, 64, 0.07);
	color: var(--navy-mid);
}

.mp-profile-menu-row__icon--gold,
.mp-profile-menu-row__icon--navy {
	background: rgba(37, 99, 235, 0.10);
	color: var(--accent);
}

.mp-profile-menu-row__icon--success,
.mp-profile-menu-row__icon--accent {
	background: rgba(37, 99, 235, 0.08);
	color: var(--accent-light);
}

.mp-profile-logout-wrap {
	padding-bottom: 10px;
}

.mp-profile-logout {
	display: flex;
	justify-content: center;
	width: 100%;
	padding: 15px;
	border: 1px solid rgba(192, 57, 43, 0.25);
	border-radius: 16px;
	background: rgba(192, 57, 43, 0.04);
	color: var(--danger);
	font-weight: 600;
	text-decoration: none;
	transition: background-color 0.18s ease, border-color 0.18s ease;
}

.mp-profile-logout:hover {
	background: rgba(192, 57, 43, 0.09);
	border-color: rgba(192, 57, 43, 0.40);
}

.mp-participant-bottom-nav {
	position: fixed;
	left: 50%;
	bottom: 16px;
	transform: translateX(-50%);
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 6px;
	width: min(calc(100% - 20px), 440px);
	padding: 10px 10px calc(10px + env(safe-area-inset-bottom, 0px));
	border: 1px solid rgba(255, 255, 255, 0.54);
	border-radius: 26px;
	background: rgba(255, 255, 255, 0.88);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	box-shadow: 0 16px 40px rgba(10, 22, 40, 0.14), 0 1px 0 rgba(255, 255, 255, 0.72) inset;
	z-index: 50;
}

.mp-participant-bottom-nav__item {
	display: grid;
	justify-items: center;
	gap: 5px;
	padding: 4px 0;
	border: 0;
	background: transparent;
	font-size: 11px;
	font-weight: 500;
	color: var(--gray);
	cursor: pointer;
	transition: color 0.18s ease;
}

.mp-participant-bottom-nav__icon {
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	border-radius: 100px;
	background: transparent;
	font-size: 16px;
	transition: background-color 0.18s ease, color 0.18s ease;
}

.mp-participant-bottom-nav__item.is-active {
	color: var(--navy);
}

.mp-participant-bottom-nav__item.is-active .mp-participant-bottom-nav__icon {
	background: var(--gold-pale);
}

.mp-participant-bottom-nav__item:focus-visible .mp-participant-bottom-nav__icon,
.mp-participant-notif-btn:focus-visible,
.mp-profile-hero__edit:focus-visible {
	background: rgba(245, 233, 200, 0.92);
	color: var(--navy);
}

/* ═══════════════════════════════════════════════════════════
   ÉCRAN MASTERCLASS — filtres + grille + cards
   ═══════════════════════════════════════════════════════════ */

.mp-masterclass-hero {
	padding-bottom: 30px;
}

.mp-masterclass-count-pill {
	display: inline-flex;
	align-items: center;
	padding: 7px 12px;
	border-radius: 100px;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.22);
	font-size: 11px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.80);
	letter-spacing: 0.04em;
}

.mp-masterclass-overview {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 22px;
}

.mp-masterclass-overview__card {
	padding: 14px 14px 13px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.mp-masterclass-overview__card strong {
	display: block;
	font-family: var(--mp-serif);
	font-size: 28px;
	font-weight: 600;
	line-height: 1;
	color: var(--white);
}

.mp-masterclass-overview__card span {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.03em;
	color: rgba(255, 255, 255, 0.62);
}

.mp-masterclass-toolbar {
	display: grid;
	gap: 18px;
	padding: 22px;
	border: 1px solid rgba(19, 34, 64, 0.08);
	border-radius: 24px;
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.96) 0%, rgba(248, 251, 255, 0.98) 100%);
	box-shadow: var(--mp-surface-shadow);
}

.mp-masterclass-toolbar__intro h2 {
	margin: 0;
	font-family: var(--mp-serif);
	font-size: clamp(24px, 4vw, 34px);
	line-height: 1.04;
	color: var(--navy);
}

.mp-masterclass-toolbar__intro p:last-child {
	margin: 10px 0 0;
	max-width: 64ch;
	font-size: 14px;
	line-height: 1.7;
	color: var(--gray);
}

.mp-masterclass-toolbar__aside {
	display: grid;
	gap: 12px;
}

.mp-masterclass-search {
	display: grid;
	gap: 8px;
}

.mp-masterclass-search__label {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--gray);
}

.mp-masterclass-search__input {
	width: 100%;
	min-height: 52px;
	padding: 0 18px;
	border: 1px solid rgba(19, 34, 64, 0.12);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.96);
	font-family: var(--mp-sans);
	font-size: 14px;
	color: var(--navy);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

.mp-masterclass-search__input::placeholder {
	color: #9aa6b6;
}

.mp-masterclass-search__input:focus {
	border-color: rgba(37, 99, 235, 0.36);
	background: var(--white);
	box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.10);
	outline: none;
}

.mp-masterclass-results {
	display: inline-flex;
	align-items: baseline;
	gap: 8px;
	margin: 0;
	font-size: 12px;
	font-weight: 600;
	color: var(--gray);
}

.mp-masterclass-results strong {
	font-family: var(--mp-serif);
	font-size: 22px;
	font-weight: 600;
	line-height: 1;
	color: var(--navy);
}

.mp-masterclass-filters {
	display: flex;
	gap: 10px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	padding-bottom: 2px;
}

.mp-masterclass-filters::-webkit-scrollbar {
	display: none;
}

.mp-filter-tab {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	padding: 10px 16px;
	border: 1px solid rgba(19, 34, 64, 0.1);
	border-radius: 100px;
	background: var(--white);
	font-family: var(--mp-sans);
	font-size: 12px;
	font-weight: 600;
	color: var(--gray);
	cursor: pointer;
	white-space: nowrap;
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.62) inset;
	transition: background-color 0.16s ease, color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.mp-filter-tab:hover {
	background: #f8fbff;
	color: var(--navy);
	border-color: rgba(37, 99, 235, 0.18);
	transform: translateY(-1px);
}

.mp-filter-tab.is-active {
	background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%);
	border-color: transparent;
	color: var(--white);
	font-weight: 600;
	box-shadow: 0 10px 24px rgba(10, 22, 40, 0.14);
}

.mp-filter-tab:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.18);
}

.mp-masterclass-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
}

.mp-masterclass-filter-empty {
	padding: 18px 20px;
	border: 1px dashed rgba(19, 34, 64, 0.12);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.7);
	font-size: 13px;
	color: var(--gray);
	text-align: center;
	margin: 0;
}

.mp-masterclass-card {
	position: relative;
	display: grid;
	gap: 16px;
	padding: 22px;
	border: 1px solid rgba(19, 34, 64, 0.08);
	border-radius: 24px;
	background: var(--white);
	box-shadow: var(--mp-surface-shadow);
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
	overflow: hidden;
}

.mp-masterclass-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 16px 36px rgba(10, 22, 40, 0.12);
	border-color: rgba(37, 99, 235, 0.12);
}

.mp-masterclass-card:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.16);
}

.mp-masterclass-card::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: transparent;
	pointer-events: none;
}

.mp-masterclass-card--open::before {
	background: linear-gradient(180deg, #1d4ed8 0%, #60a5fa 100%);
}

.mp-masterclass-card--tentative::before {
	background: linear-gradient(180deg, #b87a1a 0%, #f2b650 100%);
}

.mp-masterclass-card--closed::before {
	background: linear-gradient(180deg, #9aa6b6 0%, #c9d1dc 100%);
}

.mp-masterclass-card__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.mp-masterclass-card__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.mp-masterclass-card__status,
.mp-masterclass-card__cat {
	display: inline-flex;
	align-items: center;
	padding: 6px 11px;
	border-radius: 100px;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	white-space: nowrap;
}

.mp-masterclass-card__status--open {
	background: rgba(37, 99, 235, 0.1);
	color: #1d4ed8;
}

.mp-masterclass-card__status--tentative {
	background: rgba(184, 122, 26, 0.12);
	color: #8f5d11;
}

.mp-masterclass-card__status--closed {
	background: rgba(138, 149, 163, 0.14);
	color: #5d6878;
}

.mp-masterclass-card__cat {
	background: var(--cream);
	color: var(--navy);
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
}

.mp-masterclass-card__price {
	font-family: var(--mp-serif);
	font-size: 20px;
	font-weight: 600;
	color: var(--navy);
	white-space: nowrap;
}

.mp-masterclass-card__price--free {
	font-family: var(--mp-sans);
	font-size: 12px;
	font-weight: 600;
	padding: 5px 10px;
	border-radius: 100px;
	background: rgba(42, 124, 95, 0.10);
	color: var(--success);
}

.mp-masterclass-card__body {
	display: grid;
	gap: 10px;
}

.mp-masterclass-card__title {
	margin: 0;
	font-family: var(--mp-serif);
	font-size: clamp(24px, 4vw, 30px);
	line-height: 1.05;
	color: var(--navy);
}

.mp-masterclass-card__lead {
	margin: 0;
	font-size: 13px;
	line-height: 1.72;
	color: #556274;
}

.mp-masterclass-card__meta {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 12px;
}

.mp-masterclass-card__meta li {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 8px 10px;
	border-radius: 14px;
	background: #f8fbff;
	border: 1px solid rgba(19, 34, 64, 0.05);
	font-size: 12px;
	font-weight: 500;
	color: #556274;
}

.mp-masterclass-card__meta li .mp-icon {
	flex-shrink: 0;
	color: var(--accent);
}

.mp-masterclass-card__progress {
	display: grid;
	gap: 8px;
	padding: 14px 16px;
	border-radius: 18px;
	background: linear-gradient(180deg, #f8fbff 0%, #f4f8fe 100%);
	border: 1px solid rgba(37, 99, 235, 0.08);
}

.mp-masterclass-card__progress-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
}

.mp-masterclass-card__progress-head strong {
	font-size: 13px;
	font-weight: 700;
	color: var(--navy);
}

.mp-masterclass-card__progress-head span {
	font-size: 11px;
	font-weight: 500;
	color: var(--gray);
}

.mp-masterclass-card__progress-track {
	display: block;
	width: 100%;
	height: 8px;
	border-radius: 999px;
	background: rgba(19, 34, 64, 0.08);
	overflow: hidden;
}

.mp-masterclass-card__progress-bar {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #1d4ed8 0%, #60a5fa 100%);
}

.mp-masterclass-card__footer {
	position: relative;
	display: grid;
	gap: 14px;
	padding-top: 16px;
	border-top: 1px solid rgba(19, 34, 64, 0.07);
	z-index: 1;
}

.mp-masterclass-card__summary {
	display: grid;
	gap: 6px;
}

.mp-masterclass-card__summary strong {
	font-size: 13px;
	font-weight: 600;
	color: var(--navy);
}

.mp-masterclass-card__summary span {
	font-size: 12px;
	line-height: 1.6;
	color: var(--gray);
}

.mp-masterclass-card__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	position: relative;
	z-index: 1;
}

.mp-masterclass-card__actions .mp-btn {
	min-width: 0;
}

.mp-masterclass-card__actions .mp-btn--primary {
	box-shadow: 0 10px 24px rgba(10, 22, 40, 0.14);
}

.mp-masterclass-card__actions .mp-btn--ghost {
	background: #f8fbff;
	border-color: rgba(19, 34, 64, 0.08);
}

@media (min-width: 900px) {
	.mp-masterclass-overview {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.mp-masterclass-toolbar {
		grid-template-columns: minmax(0, 1.45fr) minmax(300px, 0.8fr);
		align-items: end;
	}

	.mp-masterclass-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 782px) {
	.mp-masterclass-hero {
		padding-bottom: 24px;
	}

	.mp-masterclass-toolbar {
		padding: 18px;
		border-radius: 20px;
	}

	.mp-masterclass-toolbar__intro h2 {
		font-size: clamp(22px, 8vw, 28px);
	}

	.mp-masterclass-overview {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mp-masterclass-card {
		padding: 18px;
		border-radius: 20px;
	}

	.mp-masterclass-card__top,
	.mp-masterclass-card__progress-head,
	.mp-masterclass-card__actions {
		flex-direction: column;
		align-items: flex-start;
	}

	.mp-masterclass-card__footer {
		gap: 12px;
	}

	.mp-masterclass-card__actions {
		width: 100%;
	}

	.mp-masterclass-card__actions .mp-btn {
		width: 100%;
	}
}

/* ═══════════════════════════════════════════════════════════ */

.mp-toast {
	position: fixed;
	left: 50%;
	bottom: calc(100px + env(safe-area-inset-bottom, 0px));
	transform: translateX(-50%) translateY(20px);
	max-width: calc(100vw - 32px);
	padding: 12px 22px;
	border-radius: 100px;
	background: var(--navy);
	box-shadow: 0 8px 24px rgba(10, 22, 40, 0.25);
	color: var(--white);
	font-size: 13px;
	text-align: center;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.25s ease, transform 0.25s ease;
	z-index: 60;
}

.mp-toast.is-visible {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

.mp-inline-form {
	display: inline-flex;
}

@media (max-width: 1200px) {
	.mp-event-page .mp-shell {
		width: min(1220px, calc(100% - 38px));
	}

	.mp-event-page .mp-event-hero {
		padding: 56px 0 64px;
	}

	.mp-event-page .mp-hero-body {
		max-width: 980px;
	}

	.mp-event-page .mp-event-layout {
		grid-template-columns: minmax(0, 1fr) 320px;
		column-gap: 22px;
	}

	.mp-registration-page .mp-registration-layout {
		grid-template-columns: minmax(0, 1fr) 320px;
		column-gap: 20px;
	}

	.mp-participant-auth {
		grid-template-columns: 1fr;
	}

	.mp-speaker-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 1024px) {
	.mp-event-page .mp-event-layout {
		grid-template-columns: minmax(0, 1fr) 280px;
		column-gap: 18px;
	}

	.mp-registration-page .mp-registration-layout {
		grid-template-columns: minmax(0, 1fr) 280px;
		column-gap: 16px;
	}

	.mp-panel {
		padding: 20px;
	}
}

@media (max-width: 900px) {
	.mp-event-page .mp-shell {
		width: min(1220px, calc(100% - 32px));
	}

	.mp-event-page .mp-event-hero {
		padding: 44px 0 50px;
	}

	.mp-event-page .mp-hero-body {
		padding: 22px;
		border-radius: 22px;
	}

	.mp-event-page .mp-event-title {
		max-width: none;
		font-size: clamp(2.15rem, 7vw, 3.25rem);
	}

	.mp-event-page .mp-testimonial-card__quote p::before,
	.mp-event-page .mp-testimonial-card blockquote::before {
		left: -0.24em;
	}

	.mp-event-page,
	.mp-registration-page {
		padding-bottom: 44px;
	}

	.mp-event-page .mp-event-layout {
		grid-template-columns: 1fr;
		row-gap: 20px;
	}

	.mp-registration-page .mp-registration-layout {
		grid-template-columns: 1fr;
		row-gap: 20px;
	}

	.mp-event-page .mp-summary-card--sticky,
	.mp-registration-page .mp-summary-card--sticky {
		position: static;
		top: auto;
		max-height: none;
		overflow-y: visible;
	}

	.mp-registration-page .mp-registration-sidebar {
		position: static;
		top: auto;
	}

	.mp-hero-body {
		padding: 20px;
	}

	.mp-hero-metas,
	.mp-info-grid,
	.mp-booking-form__row,
	.mp-booking-form__profile-grid,
	.mp-booking-form__radio-group--participant-type,
	.mp-participant-profile-grid,
	.mp-participant-booking-card__footer,
	.mp-participant-booking-card__qr {
		grid-template-columns: 1fr;
	}

	.mp-booking-form__profile-summary-head {
		flex-direction: column;
	}

	.mp-home-booking-card {
		grid-template-columns: 1fr;
		padding-left: 18px;
	}

	.mp-participant-page--standalone .mp-participant-space__back {
		top: 14px;
		left: 14px;
		padding: 0 12px;
	}

	.mp-home-booking-card__bar {
		display: none;
	}

	.mp-profile-info-row,
	.mp-profile-menu-row {
		grid-template-columns: 34px minmax(0, 1fr);
	}

	.mp-profile-info-row em,
	.mp-profile-menu-row em {
		display: none;
	}

	.mp-btn,
	.mp-booking-form__submit {
		width: 100%;
		min-width: 0;
	}

	.mp-participant-booking-card__head {
		flex-direction: column;
	}
}

@media (max-width: 782px) {
	body.admin-bar {
		--mp-admin-bar-offset: 46px;
	}

	.mp-event-page .mp-shell {
		width: min(1220px, calc(100% - 24px));
	}

	.mp-event-page .mp-event-hero {
		padding: 30px 0 36px;
	}

	.mp-event-page .mp-hero-body {
		padding: 18px 16px;
		border-radius: 16px;
		gap: 14px;
	}

	.mp-event-page .mp-event-title {
		font-size: clamp(1.95rem, 8vw, 2.8rem);
	}

	.mp-event-page .mp-hero-metas {
		grid-template-columns: 1fr;
	}

	.mp-event-page .mp-section-nav__link {
		padding: 12px 10px 11px;
		font-size: 0.7rem;
	}

	.mp-event-page .mp-summary-card__title {
		font-size: clamp(1.62rem, 8vw, 2rem);
	}

	.mp-shell {
		width: min(1200px, calc(100% - 26px));
	}

	.mp-event-hero,
	.mp-registration-hero {
		padding: 32px 0 38px;
	}

	.mp-hero-body {
		gap: 14px;
		padding: 18px;
		border-radius: 16px;
	}

	.mp-event-title {
		max-width: none;
		font-size: clamp(2rem, 8vw, 2.9rem);
	}

	.mp-event-page .mp-event-sidebar {
		order: -1;
	}

	.mp-event-poster-card__media,
	.mp-event-poster-card__placeholder {
		aspect-ratio: 16 / 10;
	}

	.mp-panel {
		padding: 18px;
	}

	.mp-testimonials-controls {
		gap: 10px;
	}

	.mp-testimonials-control {
		width: 36px;
		height: 36px;
	}

	.mp-registration-page .mp-registration-hero__content h1 {
		max-width: none;
		font-size: clamp(1.72rem, 7.8vw, 2.38rem);
	}
}

/* ════════════════════════════════════════════════════════════
   ESPACE PARTICIPANT — LAYOUT DESKTOP APP
   Actif à partir de 900px : sidebar fixe gauche + contenu droit
   ════════════════════════════════════════════════════════════ */

/* ── Sidebar : cachée par défaut (mobile-first) ── */
.mp-participant-sidebar {
	display: none;
}

/* ── mp-participant-main : wrapper des écrans ── */
.mp-participant-main {
	min-width: 0;
}

.mp-participant-main__topbar {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	min-height: 52px;
	margin-bottom: 14px;
	padding-left: 88px;
	padding-right: 8px;
	position: relative;
	z-index: 8;
	pointer-events: auto;
}

.mp-participant-topbar {
	width: auto;
	margin-left: auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	backdrop-filter: none;
}

.mp-participant-topbar__context {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.mp-participant-topbar__eyebrow {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(71, 85, 105, 0.78);
}

.mp-participant-topbar__copy {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.mp-participant-topbar__copy strong {
	display: block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	color: var(--mp-participant-text);
}

.mp-participant-topbar__copy span {
	display: block;
	font-size: 12px;
	line-height: 1.45;
	color: var(--mp-participant-text-muted);
	max-width: 720px;
}

.mp-participant-topbar__actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	flex-shrink: 0;
}

.mp-participant-topbar__icon-btn,
.mp-participant-page.is-authenticated .mp-participant-notif-btn,
.mp-dark-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 12px;
	border: 1px solid rgba(148, 163, 184, 0.2);
	background: rgba(248, 250, 252, 0.96);
	color: var(--mp-participant-accent-strong);
	text-decoration: none;
	transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, transform 0.16s ease;
}

.mp-participant-topbar__icon-btn .mp-icon,
.mp-participant-page.is-authenticated .mp-participant-notif-btn .mp-icon {
	display: block;
	width: 16px;
	height: 16px;
}

.mp-participant-topbar__icon-btn:hover,
.mp-participant-topbar__icon-btn:focus-visible,
.mp-participant-page.is-authenticated .mp-participant-notif-btn:hover,
.mp-participant-page.is-authenticated .mp-participant-notif-btn:focus-visible,
.mp-dark-toggle:hover,
.mp-dark-toggle:focus-visible {
	background: #ffffff;
	border-color: rgba(59, 130, 246, 0.24);
	color: var(--mp-participant-accent);
	transform: translateY(-1px);
}

.mp-participant-topbar__icon-btn.is-active {
	background: rgba(59, 130, 246, 0.1);
	border-color: rgba(59, 130, 246, 0.22);
	color: var(--mp-participant-accent);
}

.mp-participant-topbar__icon-btn--wishlist .mp-icon {
	transform: translateY(-0.5px);
}

.mp-participant-topbar__icon-btn--sidebar .mp-participant-sidebar-toggle__icon--close {
	display: none;
}

.mp-participant-topbar__icon-btn--sidebar.is-active .mp-participant-sidebar-toggle__icon--menu,
.mp-participant-topbar__icon-btn--sidebar[aria-expanded='true'] .mp-participant-sidebar-toggle__icon--menu {
	display: none;
}

.mp-participant-topbar__icon-btn--sidebar.is-active .mp-participant-sidebar-toggle__icon--close,
.mp-participant-topbar__icon-btn--sidebar[aria-expanded='true'] .mp-participant-sidebar-toggle__icon--close {
	display: inline-flex;
}

.mp-participant-sidebar-backdrop {
	display: none;
}

.mp-participant-sidebar-rail {
	position: absolute;
	top: 10px;
	left: 12px;
	z-index: 24;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 46px;
	padding: 8px 12px;
	border: 1px solid rgba(148, 163, 184, 0.26);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.98);
	color: var(--mp-participant-accent-strong);
	box-shadow: 0 12px 26px rgba(15, 23, 42, 0.12);
	backdrop-filter: blur(10px);
	cursor: pointer;
	transition: left 0.22s ease, transform 0.22s ease, background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, color 0.16s ease;
}

.mp-participant-sidebar-rail:hover,
.mp-participant-sidebar-rail:focus-visible {
	background: #ffffff;
	border-color: rgba(59, 130, 246, 0.3);
	color: var(--mp-participant-accent);
	box-shadow: 0 16px 28px rgba(15, 23, 42, 0.16);
}

.mp-participant-sidebar-rail__label {
	display: inline-flex;
	align-items: center;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	white-space: nowrap;
}

.mp-participant-sidebar-rail__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

.mp-participant-sidebar-rail__icon--close {
	display: none;
}

.mp-participant-sidebar-rail.is-active .mp-participant-sidebar-rail__icon--menu,
.mp-participant-sidebar-rail[aria-expanded='true'] .mp-participant-sidebar-rail__icon--menu {
	display: none;
}

.mp-participant-sidebar-rail.is-active .mp-participant-sidebar-rail__icon--close,
.mp-participant-sidebar-rail[aria-expanded='true'] .mp-participant-sidebar-rail__icon--close {
	display: inline-flex;
}

.mp-participant-topbar__profile {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
	padding: 5px 8px 5px 6px;
	border: 1px solid rgba(148, 163, 184, 0.2);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.98);
	color: var(--mp-participant-text);
	text-decoration: none;
	transition: border-color 0.16s ease, background-color 0.16s ease, box-shadow 0.16s ease;
}

.mp-participant-topbar__profile:hover,
.mp-participant-topbar__profile:focus-visible {
	border-color: rgba(59, 130, 246, 0.26);
	background: #ffffff;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

.mp-participant-topbar__profile-avatar {
	display: inline-grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: linear-gradient(145deg, #dbe9f4 0%, #edf4f8 100%);
	border: 1px solid rgba(148, 163, 184, 0.2);
	font-size: 13px;
	font-weight: 700;
	color: var(--mp-participant-accent-strong);
	flex-shrink: 0;
}

.mp-participant-topbar__profile-avatar img {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
}

.mp-participant-topbar__profile-copy {
	display: flex;
	flex-direction: column;
	gap: 1px;
	min-width: 0;
}

.mp-participant-topbar__profile-copy strong {
	display: block;
	font-size: 12.5px;
	font-weight: 700;
	line-height: 1.2;
	color: var(--mp-participant-text);
	white-space: nowrap;
}

.mp-participant-topbar__profile-copy small {
	display: block;
	font-size: 11px;
	line-height: 1.2;
	color: var(--mp-participant-text-muted);
	white-space: nowrap;
}

.mp-participant-topbar__profile-chevron {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: rgba(71, 85, 105, 0.7);
	flex-shrink: 0;
}

.mp-participant-main__notif {
	border: 1px solid var(--mp-participant-border, rgba(255, 255, 255, 0.16));
	box-shadow: none;
	position: relative;
	overflow: visible;
}

.mp-participant-page.is-authenticated .mp-participant-main__notif {
	background: rgba(248, 250, 252, 0.96);
	color: var(--mp-participant-accent);
	border-color: rgba(148, 163, 184, 0.2);
}

.mp-participant-page.is-authenticated .mp-participant-main__notif.is-active {
	background: var(--mp-participant-accent);
	color: #ffffff;
	border-color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-participant-main__notif.is-active .mp-participant-notif-btn__dot {
	background: #ffffff;
}

/* ── Desktop layout (≥ 900px) — Full-width, fixed app frame ── */

/* 1. Body : bloque le scroll de la page */
@media (min-width: 900px) {
	body.mp-participant-app-active {
		overflow: hidden;
	}
}

@media (min-width: 900px) {
	/* 2. Page : retire tous les paddings, hauteur 0 (le shell est fixed) */
	.mp-participant-page.is-authenticated {
		padding: 0;
		margin: 0;
	}

	/* 3. Shell : overlay fixed pleine largeur sous la barre admin */
	.mp-participant-page.is-authenticated .mp-participant-shell {
		position: fixed;
		top: var(--mp-admin-bar-offset);
		left: 0;
		right: 0;
		bottom: 0;
		width: 100%;
		max-width: 100%;
		padding: 0;
		margin: 0;
		display: flex;
		flex-direction: column;
		z-index: 999;
		background:
			radial-gradient(circle at 12% 0%, rgba(201, 168, 76, 0.05) 0%, transparent 28%),
			linear-gradient(180deg, #fdfcfa 0%, #f8f6f2 100%);
	}

	/* 4. Space : colonne flex pour accueillir notice + app */
	.mp-participant-page.is-authenticated .mp-participant-space {
		display: flex;
		flex-direction: column;
		flex: 1;
		min-height: 0;
		overflow: hidden;
	}

	/* 5. App : grid 2 colonnes, grandit pour remplir l'espace restant */
	.mp-participant-app {
		display: grid;
		grid-template-columns: 240px minmax(0, 1fr);
		flex: 1;
		min-height: 0;
		gap: 0;
		padding: 0;
		transition: grid-template-columns 0.22s ease;
	}

	.mp-participant-sidebar-rail {
		top: 16px;
		left: calc(var(--mp-participant-sidebar-toggle-offset) - 1px);
		transform: translateX(-32%);
		padding: 9px 12px 9px 10px;
		border-radius: 0 16px 16px 0;
	}

	/* 6. Sidebar : pleine hauteur, scroll interne */
	.mp-participant-sidebar {
		display: flex;
		flex-direction: column;
		grid-column: 1;
		grid-row: 1;
		height: 100%;
		overflow-y: auto;
		overflow-x: hidden;
		scrollbar-width: thin;
		scrollbar-color: rgba(255, 255, 255, 0.10) transparent;
		padding: 28px 16px;
		background: linear-gradient(180deg, var(--navy) 0%, var(--navy-mid) 60%, #0f1c33 100%);
		border-right: 1px solid rgba(255, 255, 255, 0.055);
		transition: transform 0.22s ease, opacity 0.18s ease, padding 0.18s ease, border-color 0.18s ease;
	}

	/* 7. Main : deuxième colonne, pleine hauteur, clip les transitions */
	.mp-participant-main {
		grid-column: 2;
		grid-row: 1;
		height: 100%;
		position: relative;
		overflow: hidden;
	}

	/* 8. Écrans : position absolute pour les transitions, scroll interne */
	.mp-participant-screen {
		position: absolute;
		inset: 0;
		overflow-y: auto;
		overflow-x: hidden;
		padding: 36px 48px 60px;
		scrollbar-width: thin;
		scrollbar-color: rgba(10, 22, 40, 0.12) transparent;
	}

	/* 9. Bottom nav : cachée */
	.mp-participant-bottom-nav {
		display: none;
	}

	/* 10. Toast : centré sur la zone main */
	.mp-toast {
		left: calc(120px + 50%);
		bottom: 32px;
	}

	/* 11. Hero desktop : compact, pleine largeur */
	.mp-participant-home-hero {
		padding: 28px 32px 84px;
		border-radius: 20px;
	}

	.mp-profile-hero {
		padding: 36px 32px 84px;
		border-radius: 20px;
	}

	/* 12. Stats row : chevauchement hero */
	.mp-participant-stats-row {
		margin-top: -58px;
	}

	/* 13. Sections : respiration desktop */
	.mp-participant-section,
	.mp-profile-card {
		gap: 16px;
	}

	/* 14. Grilles 2 colonnes sur desktop */
	.mp-participant-available-events {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mp-participant-home-bookings {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	/* 15. Déconnexion sidebar : masquer le bouton dans le screen profil */
	.mp-profile-logout-wrap {
		display: none;
	}

	/* 16. Notice en haut du fixed shell : bande fine */
	.mp-participant-space > .mp-front-notice {
		border-radius: 0;
		margin: 0;
		padding: 10px 20px;
		font-size: 13px;
		flex-shrink: 0;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-app.is-sidebar-collapsed {
		grid-template-columns: 0 minmax(0, 1fr) !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-app.is-sidebar-collapsed .mp-participant-sidebar-rail {
		left: 12px;
		transform: none;
		border-radius: 16px;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-app.is-sidebar-collapsed .mp-participant-sidebar {
		opacity: 0;
		transform: translateX(-18px);
		pointer-events: none;
		padding-left: 0 !important;
		padding-right: 0 !important;
		border-right-color: transparent !important;
		overflow: hidden !important;
	}
}

/* ── Sidebar : styles (indépendants du breakpoint) ── */
.mp-participant-sidebar__brand {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 4px 8px 24px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	margin-bottom: 18px;
	flex-shrink: 0;
}

.mp-participant-sidebar__avatar-wrap {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--gold), var(--gold-light));
	padding: 2.5px;
	flex-shrink: 0;
}

.mp-participant-sidebar__avatar-inner {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background: var(--navy-mid);
	font-family: var(--mp-serif);
	font-size: 16px;
	font-weight: 700;
	color: var(--white);
}

.mp-participant-sidebar__user-info {
	min-width: 0;
}

.mp-participant-sidebar__user-info strong {
	display: block;
	font-size: 13px;
	font-weight: 600;
	color: var(--white);
	line-height: 1.3;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mp-participant-sidebar__user-info small {
	display: block;
	font-size: 11px;
	color: rgba(255, 255, 255, 0.46);
	margin-top: 3px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mp-participant-sidebar__nav {
	display: flex;
	flex-direction: column;
	gap: 3px;
	flex: 1;
}

.mp-participant-sidebar__item {
	position: relative;
	display: flex;
	align-items: center;
	gap: 11px;
	width: 100%;
	padding: 11px 12px;
	border: 0;
	border-radius: 12px;
	background: transparent;
	font-family: var(--mp-sans);
	font-size: 13px;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.55);
	text-align: left;
	cursor: pointer;
	transition: background-color 0.16s ease, color 0.16s ease;
}

.mp-participant-sidebar__item:hover {
	background: rgba(255, 255, 255, 0.07);
	color: rgba(255, 255, 255, 0.88);
}

.mp-participant-sidebar__item.is-active {
	background: rgba(201, 168, 76, 0.14);
	color: var(--gold-light);
	font-weight: 600;
}

.mp-participant-sidebar__item.is-active::before {
	content: '';
	position: absolute;
	left: 0;
	top: 20%;
	bottom: 20%;
	width: 3px;
	border-radius: 0 3px 3px 0;
	background: var(--gold);
}

.mp-participant-sidebar__icon {
	font-size: 15px;
	width: 20px;
	text-align: center;
	flex-shrink: 0;
}

.mp-participant-sidebar__soon {
	margin-left: auto;
	padding: 2px 7px;
	border-radius: 100px;
	border: 1px solid rgba(201, 168, 76, 0.25);
	background: rgba(201, 168, 76, 0.08);
	font-size: 9px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(201, 168, 76, 0.6);
}

.mp-participant-sidebar__footer {
	padding-top: 18px;
	border-top: 1px solid rgba(255, 255, 255, 0.07);
	margin-top: 18px;
	flex-shrink: 0;
}

.mp-participant-sidebar__logout {
	display: flex;
	align-items: center;
	gap: 9px;
	width: 100%;
	padding: 11px 12px;
	border: 1px solid rgba(192, 57, 43, 0.20);
	border-radius: 12px;
	background: rgba(192, 57, 43, 0.06);
	font-family: var(--mp-sans);
	font-size: 12.5px;
	font-weight: 500;
	color: rgba(220, 100, 90, 0.82);
	text-decoration: none;
	transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease;
}

.mp-participant-sidebar__logout:hover {
	background: rgba(192, 57, 43, 0.14);
	border-color: rgba(192, 57, 43, 0.35);
	color: rgba(232, 115, 104, 0.96);
}


/* ── Participant app: breakpoint intermédiaire (≤ 480px) ── */
@media (max-width: 480px) {
	.mp-participant-page.is-authenticated .mp-participant-shell {
		width: 100%;
	}

	.mp-participant-page .mp-mobile-frame {
		width: 100%;
		padding-inline: 0;
	}

	.mp-participant-bottom-nav {
		width: calc(100% - 16px);
		border-radius: 22px;
	}

	.mp-participant-home-hero,
	.mp-profile-hero {
		border-radius: 22px;
		padding: 22px 18px 70px;
	}

	.mp-participant-stats-row {
		gap: 10px;
		margin-top: -50px;
	}

	.mp-participant-stat-card {
		padding: 14px 12px;
		border-radius: 16px;
	}

	.mp-participant-stat-card strong,
	.mp-profile-stats-strip strong {
		font-size: 22px;
	}

	.mp-participant-qr-card {
		grid-template-columns: 90px minmax(0, 1fr);
		gap: 14px;
		padding: 18px;
	}

	.mp-participant-qr-card__media img {
		width: 70px;
		height: 70px;
	}

	.mp-participant-qr-card__content h3 {
		font-size: 16px;
	}

	.mp-home-booking-card__content h3,
	.mp-available-event-card h3 {
		font-size: 17px;
	}

	.mp-profile-hero {
		padding-bottom: 78px;
	}

	.mp-profile-stats-strip {
		margin-top: -44px;
	}
}

/* ═══════════════════════════════════════════════════════════════════
   PARTICIPANT MOBILE — source unique de vérité (≤ 899px)
   ═══════════════════════════════════════════════════════════════════ */
@media (max-width: 899px) {

	/* 1. Layout : colonne unique, scroll naturel */
	.mp-participant-app,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-app {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		padding: 0 !important;
		gap: 0 !important;
	}

	.mp-participant-main,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-main {
		grid-column: 1 !important;
		height: auto !important;
		overflow: visible !important;
		padding-top: 0 !important;
		position: relative !important;
	}

	/* 2. Sidebar / rail / backdrop : masqués */
	.mp-participant-sidebar,
	.mp-participant-sidebar-rail,
	.mp-participant-sidebar-backdrop,
	.mp-participant-topbar__icon-btn--sidebar,
	.mp-participant-page.is-authenticated .mp-participant-topbar__icon-btn--sidebar {
		display: none !important;
	}

	/* 3. Screens : un seul visible à la fois */
	/* Spécificité haute pour écraser toute règle display concurrente */
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen:not(.is-active),
	.mp-participant-screen:not(.is-active) {
		display: none !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen.is-active,
	.mp-participant-screen.is-active {
		display: grid !important;
		position: relative !important;
		inset: auto !important;
		top: auto !important;
		height: auto !important;
		overflow: visible !important;
		opacity: 1 !important;
		transform: none !important;
		/* Espace haut : pilule icônes fixe (~66px) + marge */
		padding-top: 74px !important;
		/* Espace bas : bottom nav + safe area */
		padding-bottom: calc(100px + env(safe-area-inset-bottom, 0px)) !important;
		padding-left: 14px !important;
		padding-right: 14px !important;
		align-content: start !important;
	}

	/* LMS screen : même traitement */
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen--learning.is-active,
	.mp-participant-screen--learning.is-active {
		display: grid !important;
		padding-top: 74px !important;
		padding-bottom: calc(100px + env(safe-area-inset-bottom, 0px)) !important;
		padding-left: 14px !important;
		padding-right: 14px !important;
	}

	/* 4. Texte légèrement réduit */
	.mp-participant-screen.is-active {
		font-size: 13.5px;
	}
	.mp-participant-screen.is-active h1 { font-size: 1.45rem; }
	.mp-participant-screen.is-active h2 { font-size: 1.15rem; }
	.mp-participant-screen.is-active h3 { font-size: 1rem; }

	/* 5. Containing block des popups neutralisé */
	.mp-participant-notification-center,
	.mp-participant-chat-center {
		position: static !important;
		margin-inline-end: 0 !important;
	}
}

/* ── Participant app: très petits écrans (≤ 360px) ── */
@media (max-width: 360px) {
	.mp-participant-qr-card {
		grid-template-columns: 80px minmax(0, 1fr);
		gap: 12px;
		padding: 16px;
	}

	.mp-participant-qr-card__media img {
		width: 60px;
		height: 60px;
	}

	.mp-participant-home-hero,
	.mp-profile-hero {
		padding: 18px 16px 68px;
		border-radius: 20px;
	}

	.mp-participant-section,
	.mp-profile-card {
		gap: 12px;
	}

	.mp-home-booking-card,
	.mp-available-event-card,
	.mp-profile-card,
	.mp-profile-stats-strip {
		padding: 14px;
		border-radius: 16px;
	}

	.mp-participant-bottom-nav {
		padding: 8px 8px calc(8px + env(safe-area-inset-bottom, 0px));
		border-radius: 18px;
	}

	.mp-participant-bottom-nav__item {
		font-size: 10px;
	}

	.mp-participant-bottom-nav__icon {
		width: 34px;
		height: 34px;
	}
}

/* ── Harmonisation visuelle : espace participant clair / médical ── */
.mp-participant-page.is-authenticated {
	--mp-participant-surface: #ffffff;
	--mp-participant-surface-soft: #f7fafc;
	--mp-participant-border: #d6e0ea;
	--mp-participant-border-soft: #e6edf4;
	--mp-participant-text: #17324d;
	--mp-participant-text-soft: #486072;
	--mp-participant-text-muted: #66798d;
	--mp-participant-accent: #184d78;
	--mp-participant-accent-strong: #163a59;
	--mp-participant-accent-soft: #eef3f7;
	--mp-participant-shadow: 0 16px 30px rgba(20, 42, 68, 0.06);
	background: linear-gradient(180deg, #f8fafc 0%, #edf2f6 100%);
}

.mp-participant-page.is-authenticated .mp-participant-home-hero,
.mp-participant-page.is-authenticated .mp-profile-hero,
.mp-participant-page.is-authenticated .mp-participant-qr-card,
.mp-participant-page.is-authenticated .mp-participant-inline-card,
.mp-participant-page.is-authenticated .mp-participant-stat-card,
.mp-participant-page.is-authenticated .mp-home-booking-card,
.mp-participant-page.is-authenticated .mp-available-event-card,
.mp-participant-page.is-authenticated .mp-profile-card,
.mp-participant-page.is-authenticated .mp-profile-stats-strip,
.mp-participant-page.is-authenticated .mp-masterclass-toolbar,
.mp-participant-page.is-authenticated .mp-masterclass-card,
.mp-participant-page.is-authenticated .mp-masterclass-filter-empty {
	background: var(--mp-participant-surface);
	border: 1px solid var(--mp-participant-border);
	box-shadow: var(--mp-participant-shadow);
}

.mp-participant-page.is-authenticated .mp-participant-home-hero,
.mp-participant-page.is-authenticated .mp-profile-hero {
	padding: 26px 22px;
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-profile-hero {
	display: grid;
	justify-items: center;
	align-content: start;
	gap: 10px;
	min-height: fit-content;
	overflow: visible;
	text-align: center;
}

.mp-participant-page.is-authenticated .mp-participant-home-hero::before,
.mp-participant-page.is-authenticated .mp-profile-hero::before,
.mp-participant-page.is-authenticated .mp-participant-qr-card::before {
	display: none;
}

.mp-participant-page.is-authenticated .mp-participant-home-hero h1,
.mp-participant-page.is-authenticated .mp-profile-hero h2,
.mp-participant-page.is-authenticated .mp-participant-section__head h2,
.mp-participant-page.is-authenticated .mp-profile-card__head h3,
.mp-participant-page.is-authenticated .mp-home-booking-card__content h3,
.mp-participant-page.is-authenticated .mp-available-event-card h3,
.mp-participant-page.is-authenticated .mp-masterclass-toolbar__intro h2,
.mp-participant-page.is-authenticated .mp-masterclass-card__title,
.mp-participant-page.is-authenticated .mp-participant-qr-card__content h3 {
	font-family: var(--mp-sans);
	color: var(--mp-participant-text);
	letter-spacing: -0.02em;
}

.mp-participant-page.is-authenticated .mp-profile-hero h2 {
	width: 100%;
	max-width: 100%;
	margin: 0;
	font-size: clamp(1.7rem, 3.2vw, 2.2rem);
	line-height: 1.18;
	white-space: normal;
	overflow-wrap: anywhere;
	word-break: break-word;
	text-wrap: balance;
}

.mp-participant-page.is-authenticated .mp-participant-home-hero__meta,
.mp-participant-page.is-authenticated .mp-profile-hero p,
.mp-participant-page.is-authenticated .mp-participant-section__eyebrow,
.mp-participant-page.is-authenticated .mp-home-booking-card__content p,
.mp-participant-page.is-authenticated .mp-available-event-card p,
.mp-participant-page.is-authenticated .mp-participant-inline-card p,
.mp-participant-page.is-authenticated .mp-masterclass-toolbar__intro p:last-child,
.mp-participant-page.is-authenticated .mp-masterclass-card__lead,
.mp-participant-page.is-authenticated .mp-masterclass-card__summary span,
.mp-participant-page.is-authenticated .mp-masterclass-results,
.mp-participant-page.is-authenticated .mp-masterclass-search__label,
.mp-participant-page.is-authenticated .mp-profile-info-row small,
.mp-participant-page.is-authenticated .mp-profile-menu-row small {
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-profile-hero p {
	width: 100%;
	max-width: 100%;
	margin: 0;
	overflow-wrap: anywhere;
}

.mp-participant-page.is-authenticated .mp-profile-edit-form__hint {
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-participant-brand-pill,
.mp-participant-page.is-authenticated .mp-masterclass-count-pill,
.mp-participant-page.is-authenticated .mp-profile-badge {
	border-color: var(--mp-participant-border);
	background: var(--mp-participant-accent-soft);
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-profile-badge--gold {
	border-color: #cfe0ec;
	background: #f4f8fb;
	color: var(--mp-participant-accent-strong);
}

.mp-participant-page.is-authenticated .mp-profile-hero__badges {
	margin-top: 2px;
}

.mp-participant-page.is-authenticated .mp-participant-notif-btn,
.mp-participant-page.is-authenticated .mp-profile-hero__edit {
	background: var(--mp-participant-accent-soft);
	color: var(--mp-participant-accent);
	border-color: #cfe0ec;
}

.mp-participant-page.is-authenticated .mp-participant-notif-btn__dot {
	background: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-participant-stats-row,
.mp-participant-page.is-authenticated .mp-profile-stats-strip {
	margin-top: 0;
}

.mp-participant-page.is-authenticated .mp-participant-stat-card strong,
.mp-participant-page.is-authenticated .mp-profile-stats-strip strong,
.mp-participant-page.is-authenticated .mp-masterclass-overview__card strong,
.mp-participant-page.is-authenticated .mp-masterclass-results strong {
	font-family: var(--mp-sans);
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-participant-stat-card span,
.mp-participant-page.is-authenticated .mp-profile-stats-strip span,
.mp-participant-page.is-authenticated .mp-masterclass-overview__card span {
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-participant-qr-card__media,
.mp-participant-page.is-authenticated .mp-participant-home-bookings,
.mp-participant-page.is-authenticated .mp-participant-available-events {
	position: relative;
	z-index: 1;
}

.mp-participant-page.is-authenticated .mp-participant-qr-card__media {
	border: 1px solid var(--mp-participant-border-soft);
	background: #ffffff;
}

.mp-participant-page.is-authenticated .mp-participant-qr-card__content p,
.mp-participant-page.is-authenticated .mp-available-event-card__footer span,
.mp-participant-page.is-authenticated .mp-masterclass-card__progress-head span,
.mp-participant-page.is-authenticated .mp-masterclass-card__meta li,
.mp-participant-page.is-authenticated .mp-profile-info-row em,
.mp-participant-page.is-authenticated .mp-profile-menu-row em {
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-participant-qr-card__badge,
.mp-participant-page.is-authenticated .mp-available-event-card__tag,
.mp-participant-page.is-authenticated .mp-masterclass-card__cat {
	border: 1px solid #d9e5ee;
	background: var(--mp-participant-accent-soft);
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-participant-link-btn {
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-participant-link-btn:hover,
.mp-participant-page.is-authenticated .mp-participant-link-btn:focus {
	color: var(--mp-participant-accent-strong);
}

.mp-participant-page.is-authenticated .mp-home-booking-card:hover,
.mp-participant-page.is-authenticated .mp-masterclass-card:hover {
	box-shadow: 0 18px 34px rgba(20, 42, 68, 0.08);
}

.mp-participant-page.is-authenticated .mp-home-booking-card__date,
.mp-participant-page.is-authenticated .mp-masterclass-card__progress,
.mp-participant-page.is-authenticated .mp-masterclass-card__meta li,
.mp-participant-page.is-authenticated .mp-masterclass-overview__card,
.mp-participant-page.is-authenticated .mp-filter-tab:not(.is-active) {
	background: var(--mp-participant-surface-soft);
	border-color: var(--mp-participant-border-soft);
}

.mp-participant-page.is-authenticated .mp-home-booking-card__date strong,
.mp-participant-page.is-authenticated .mp-home-booking-card__date span,
.mp-participant-page.is-authenticated .mp-available-event-card__head strong,
.mp-participant-page.is-authenticated .mp-masterclass-card__price,
.mp-participant-page.is-authenticated .mp-masterclass-card__summary strong,
.mp-participant-page.is-authenticated .mp-masterclass-card__progress-head strong,
.mp-participant-page.is-authenticated .mp-profile-info-row strong,
.mp-participant-page.is-authenticated .mp-profile-menu-row strong {
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-masterclass-overview__card {
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

.mp-participant-page.is-authenticated .mp-masterclass-search__input {
	border-color: var(--mp-participant-border);
	background: #fbfdff;
	color: var(--mp-participant-text);
	box-shadow: none;
}

.mp-participant-page.is-authenticated .mp-masterclass-search__input:focus {
	border-color: #96adc2;
	background: #ffffff;
	box-shadow: 0 0 0 3px rgba(24, 77, 120, 0.10);
}

.mp-participant-page.is-authenticated .mp-filter-tab:hover {
	background: #f4f8fb;
	color: var(--mp-participant-text);
	border-color: #cfe0ec;
}

.mp-participant-page.is-authenticated .mp-filter-tab.is-active,
.mp-participant-page.is-authenticated .mp-masterclass-card__actions .mp-btn--primary,
.mp-participant-page.is-authenticated .mp-btn--gold {
	background: var(--mp-participant-accent);
	border-color: var(--mp-participant-accent);
	color: #ffffff;
	box-shadow: 0 10px 20px rgba(24, 77, 120, 0.12);
}

.mp-participant-page.is-authenticated .mp-masterclass-card__actions .mp-btn--ghost,
.mp-participant-page.is-authenticated .mp-btn--ghost {
	background: #f7fafc;
	border-color: var(--mp-participant-border);
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-profile-hero__avatar {
	background: linear-gradient(145deg, #bcd0e1 0%, #dce7ef 100%);
}

.mp-participant-page.is-authenticated .mp-profile-hero__avatar span,
.mp-participant-page.is-authenticated .mp-participant-sidebar__avatar-inner {
	background: #ffffff;
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-profile-info-row > .mp-icon:first-child,
.mp-participant-page.is-authenticated .mp-profile-info-row > svg:first-child,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--gold,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--navy,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--success,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--accent {
	background: var(--mp-participant-accent-soft);
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-profile-menu-row + .mp-profile-menu-row,
.mp-participant-page.is-authenticated .mp-profile-stats-strip div + div,
.mp-participant-page.is-authenticated .mp-masterclass-card__footer,
.mp-participant-page.is-authenticated .mp-participant-sidebar__brand,
.mp-participant-page.is-authenticated .mp-participant-sidebar__footer {
	border-color: var(--mp-participant-border-soft);
}

.mp-participant-page.is-authenticated .mp-profile-logout,
.mp-participant-page.is-authenticated .mp-participant-sidebar__logout {
	border-color: rgba(180, 35, 24, 0.14);
	background: rgba(180, 35, 24, 0.04);
	color: #a1382a;
}

.mp-participant-page.is-authenticated .mp-profile-logout:hover,
.mp-participant-page.is-authenticated .mp-participant-sidebar__logout:hover {
	background: rgba(180, 35, 24, 0.08);
	border-color: rgba(180, 35, 24, 0.20);
	color: #8b241a;
}

.mp-participant-page.is-authenticated .mp-participant-bottom-nav {
	border-color: var(--mp-participant-border);
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	box-shadow: 0 14px 28px rgba(20, 42, 68, 0.10);
}

.mp-participant-page.is-authenticated .mp-participant-bottom-nav__item {
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-participant-bottom-nav__item.is-active {
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-participant-bottom-nav__item.is-active .mp-participant-bottom-nav__icon,
.mp-participant-page.is-authenticated .mp-participant-bottom-nav__item:focus-visible .mp-participant-bottom-nav__icon {
	background: var(--mp-participant-accent-soft);
	color: var(--mp-participant-accent);
}

@media (min-width: 900px) {
	.mp-participant-page.is-authenticated .mp-participant-shell {
		background: linear-gradient(180deg, #f8fafc 0%, #edf2f6 100%);
	}

	.mp-participant-page.is-authenticated .mp-participant-app {
		grid-template-columns: 252px minmax(0, 1fr);
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar {
		padding: 28px 18px;
		background: #ffffff;
		border-right: 1px solid var(--mp-participant-border);
		scrollbar-color: rgba(24, 77, 120, 0.12) transparent;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__brand {
		padding: 4px 8px 22px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__avatar-wrap {
		background: linear-gradient(145deg, #bcd0e1 0%, #dce7ef 100%);
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__user-info strong,
	.mp-participant-page.is-authenticated .mp-participant-sidebar__item,
	.mp-participant-page.is-authenticated .mp-participant-sidebar__icon {
		color: var(--mp-participant-text);
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__user-info small,
	.mp-participant-page.is-authenticated .mp-participant-sidebar__soon {
		color: var(--mp-participant-text-muted);
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__item:hover {
		background: #f4f8fb;
		color: var(--mp-participant-accent-strong);
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__item.is-active {
		background: var(--mp-participant-accent-soft);
		color: var(--mp-participant-accent-strong);
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__item.is-active::before {
		background: var(--mp-participant-accent);
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__soon {
		border-color: #d7e2eb;
		background: #f7fafc;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen {
		padding: 32px 36px 44px;
		scrollbar-color: rgba(24, 77, 120, 0.12) transparent;
	}
}

/* ── Page login/register : hero participant sur tablette ── */
@media (max-width: 640px) {
	.mp-participant-page--standalone {
		padding: 16px;
	}

	.mp-participant-page--standalone .mp-participant-space {
		padding-top: 58px;
	}

	.mp-participant-auth-shell {
		width: 100%;
	}

	.mp-participant-page .mp-registration-hero {
		padding: 36px 0 28px;
	}

	.mp-participant-page .mp-registration-hero__content {
		gap: 10px;
	}

	.mp-participant-page .mp-registration-hero__content h1 {
		font-size: clamp(1.6rem, 8vw, 2.15rem);
	}

	.mp-participant-auth {
		gap: 14px;
	}

	.mp-participant-auth-stage {
		min-height: auto;
		padding: 18px;
		border-radius: 26px;
	}

	.mp-participant-auth-card {
		width: 100%;
		padding: 20px 18px;
		border-radius: 24px;
	}

	.mp-participant-auth-tabs {
		gap: 5px;
	}

	.mp-participant-auth__actions {
		flex-direction: column;
	}

	.mp-participant-auth__actions > * {
		width: 100%;
	}

	.mp-participant-auth-view__footer {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mp-event-page *,
	.mp-registration-page * {
		transition: none;
		scroll-behavior: auto;
	}
}

/* ============================================================
   mc-* NEW EVENT PAGE DESIGN
   Scope: .mp-event-page — all new classes use mc- prefix
   Sticky sidebar: .mc-sidebar-inner (NOT individual cards)
   ============================================================ */

/* ── Design tokens ── */
.mp-event-page {
	--mc-navy: #0e1a2d;
	--mc-navy2: #15253d;
	--mc-blue: #2e4c7a;
	--mc-green: #00a86b;
	--mc-gold: #c9a84c;
	--mc-text-light: rgba(255, 255, 255, 0.92);
	--mc-text-muted: rgba(255, 255, 255, 0.6);
	--mc-border-dark: rgba(255, 255, 255, 0.12);
	--mc-shell: min(1220px, calc(100% - 48px));
	--mc-sidebar-w: 340px;
	background: #f5f9fe;
}

/* ── Shell ── */
.mc-shell {
	width: var(--mc-shell);
	margin-inline: auto;
}

/* ── Topbar ── */
.mc-topbar {
	background: var(--mc-navy);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.mc-topbar-inner {
	width: var(--mc-shell);
	margin-inline: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	height: 52px;
}

.mc-topbar-logo {
	display: flex;
	align-items: center;
	gap: 0;
	text-decoration: none;
	font-family: var(--mp-serif);
	font-size: 1.15rem;
	color: #fff;
	letter-spacing: -0.01em;
}

.mc-topbar-logo-mp {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 8px;
	background: linear-gradient(135deg, var(--mc-blue), var(--mc-green));
	font-size: 0.85rem;
	font-weight: 700;
	font-family: var(--mp-sans);
	color: #fff;
	margin-right: 7px;
}

.mc-topbar-logo-text {
	color: rgba(255, 255, 255, 0.88);
	font-family: var(--mp-sans);
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: 0;
}

.mc-topbar-logo-text strong {
	font-weight: 700;
	color: #fff;
}

.mc-topbar-badge {
	display: inline-flex;
	align-items: center;
	padding: 4px 11px;
	border: 1px solid rgba(201, 168, 76, 0.5);
	border-radius: 999px;
	background: rgba(201, 168, 76, 0.1);
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--mc-gold);
}

/* ── Nav bar ── */
.mc-nav-bar {
	background: #fff;
	border-bottom: 1px solid #dde8f5;
	box-shadow: 0 2px 10px rgba(14, 26, 45, 0.05);
}

.mc-nav-bar-inner {
	width: var(--mc-shell);
	margin-inline: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	height: 48px;
}

.mc-nav-bar-arrows {
	display: flex;
	align-items: center;
	gap: 4px;
}

.mc-nav-arrow {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	border: 1px solid #dde8f5;
	border-radius: 999px;
	font-size: 0.75rem;
	font-weight: 700;
	text-decoration: none;
	color: #2e4c7a;
	transition: background-color 0.18s, border-color 0.18s, color 0.18s;
}

.mc-nav-arrow:hover,
.mc-nav-arrow:focus {
	background: #f0f7ff;
	border-color: #c5d8f0;
}

.mc-nav-arrow--disabled {
	opacity: 0.38;
	pointer-events: none;
}

.mc-nav-arrow-icon {
	font-size: 0.9rem;
}

.mc-nav-all {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 14px;
	border: 1px solid #dde8f5;
	border-radius: 999px;
	font-size: 0.75rem;
	font-weight: 700;
	text-decoration: none;
	color: #2e4c7a;
	transition: background-color 0.18s, border-color 0.18s;
}

.mc-nav-all:hover,
.mc-nav-all:focus {
	background: #f0f7ff;
	border-color: #c5d8f0;
}

/* ── Hero ── */
.mc-hero {
	position: relative;
	overflow: hidden;
	background: linear-gradient(155deg, #09141f 0%, #0c1d34 52%, #091628 100%);
	padding: clamp(60px, 7.5vw, 96px) 0 clamp(68px, 7.5vw, 104px);
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.mc-hero-glow {
	position: absolute;
	top: -100px;
	right: -60px;
	width: 420px;
	height: 420px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(28, 60, 100, 0.3) 0%, transparent 68%);
	pointer-events: none;
}

.mc-hero-inner {
	position: relative;
	z-index: 1;
	width: var(--mc-shell);
	margin-inline: auto;
	display: grid;
	grid-template-columns: minmax(0, 1fr) clamp(260px, 28vw, 360px);
	gap: clamp(36px, 5vw, 68px);
	align-items: center;
}

.mc-hero-content {
	align-content: start;
	min-width: 0;
}

/* ── Eyebrow ── */
.mc-hero-eyebrow {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px;
	margin-bottom: 22px;
}

.mc-badge {
	display: inline-flex;
	align-items: center;
	padding: 4px 9px;
	border-radius: 4px;
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	line-height: 1.3;
}

.mc-badge--category {
	border: 1px solid rgba(201, 168, 76, 0.42);
	background: transparent;
	color: rgba(201, 168, 76, 0.88);
}

.mc-badge--status {
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: rgba(255, 255, 255, 0.05);
	color: rgba(200, 218, 244, 0.7);
}

.mc-badge--status-is-open {
	border-color: rgba(0, 168, 107, 0.35);
	background: rgba(0, 168, 107, 0.07);
	color: rgba(72, 210, 158, 0.9);
}

.mc-badge--status-is-tentative {
	border-color: rgba(201, 168, 76, 0.35);
	background: rgba(201, 168, 76, 0.07);
	color: rgba(201, 168, 76, 0.88);
}

.mc-badge--status-is-closed {
	border-color: rgba(220, 90, 110, 0.32);
	background: rgba(220, 90, 110, 0.07);
	color: rgba(220, 120, 135, 0.88);
}

/* ── Head ── */
.mc-hero-head {
	margin-bottom: 28px;
}

.mc-hero-title {
	margin: 0;
	font-family: var(--mp-serif);
	font-size: clamp(2.7rem, 5vw, 4.4rem);
	font-weight: 300;
	line-height: 1.06;
	letter-spacing: -0.03em;
	color: #fff;
	max-width: 20ch;
	text-wrap: pretty;
}

.mc-hero-subtitle {
	margin: 11px 0 0;
	font-family: var(--mp-sans);
	font-size: 0.92rem;
	font-weight: 400;
	letter-spacing: 0.01em;
	text-transform: none;
	color: rgba(175, 200, 235, 0.58);
	line-height: 1.55;
}

/* ── Speaker card ── */
.mc-hero-expert {
	display: grid;
	gap: 12px;
	width: min(100%, 500px);
	padding: 16px 18px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.04);
	margin-bottom: 24px;
}

.mc-hero-expert-label {
	margin: 0;
	font-size: 0.6rem;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: rgba(165, 195, 232, 0.55);
}

.mc-hero-expert-main {
	display: flex;
	align-items: center;
	gap: 14px;
	min-width: 0;
}

.mc-hero-expert-avatar {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	border: 1.5px solid rgba(255, 255, 255, 0.16);
	overflow: hidden;
	flex-shrink: 0;
	background: rgba(18, 42, 74, 0.6);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 600;
	font-size: 0.82rem;
	color: rgba(255, 255, 255, 0.75);
}

.mc-hero-expert-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mc-hero-expert-info {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.mc-hero-expert-name {
	margin: 0;
	font-family: var(--mp-sans);
	font-size: 0.96rem;
	font-weight: 600;
	line-height: 1.35;
	color: rgba(255, 255, 255, 0.93);
	overflow-wrap: anywhere;
}

.mc-hero-expert-role {
	margin: 0;
	font-size: 0.79rem;
	line-height: 1.55;
	color: rgba(185, 210, 240, 0.6);
}

.mc-hero-expert-team {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding-top: 10px;
	border-top: 1px solid rgba(255, 255, 255, 0.07);
}

.mc-hero-expert-stack {
	display: flex;
	align-items: center;
}

.mc-hero-expert-mini {
	width: 30px;
	height: 30px;
	margin-left: -8px;
	border-radius: 50%;
	border: 1.5px solid rgba(9, 20, 31, 0.9);
	overflow: hidden;
	background: rgba(22, 48, 82, 0.7);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.75);
	font-size: 0.6rem;
	font-weight: 600;
}

.mc-hero-expert-mini:first-child {
	margin-left: 0;
}

.mc-hero-expert-mini img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.mc-hero-expert-mini > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.mc-hero-expert-more {
	margin: 0;
	font-size: 0.69rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	color: rgba(185, 210, 240, 0.65);
}

/* ── Lead ── */
.mc-hero-lead {
	margin: 0 0 26px;
	font-size: clamp(0.92rem, 1.4vw, 1.02rem);
	line-height: 1.9;
	color: rgba(200, 218, 244, 0.64);
	max-width: 56ch;
	font-weight: 400;
}

/* ── Meta pills ── */
.mc-hero-meta-wrap {
	margin-bottom: 26px;
}

.mc-hero-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

.mc-hero-meta-wrap--eyebrow {
	margin-bottom: 0;
	display: inline-flex;
	min-width: 0;
}

.mc-hero-meta-wrap--eyebrow .mc-hero-pills {
	gap: 6px;
}

.mc-hero-meta-wrap--eyebrow .mc-pill {
	padding: 4px 9px;
	border-radius: 999px;
	font-size: 0.67rem;
	font-weight: 600;
}

.mc-hero-meta-wrap--eyebrow .mc-pill-icon {
	width: 11px;
	height: 11px;
}

.mc-pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 11px;
	border-radius: 6px;
	font-size: 0.76rem;
	font-weight: 500;
	min-width: 0;
}

.mc-pill--dark {
	border: 1px solid rgba(255, 255, 255, 0.09);
	background: transparent;
	color: rgba(195, 216, 244, 0.68);
}

.mc-pill--countdown {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
	white-space: nowrap;
}

.mc-pill-countdown-prefix {
	font-size: 0.65rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: rgba(175, 200, 235, 0.68);
}

.mc-pill-countdown-value {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	color: inherit;
	display: inline-block;
	min-width: 15ch;
	text-align: right;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
}

.mc-pill--countdown-ended {
	border-color: rgba(0, 168, 107, 0.32);
	background: rgba(0, 168, 107, 0.08);
	color: rgba(112, 236, 191, 0.9);
}

.mc-pill-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 13px;
	height: 13px;
	flex-shrink: 0;
	color: rgba(175, 200, 235, 0.65);
}

.mc-pill-icon svg {
	display: block;
	width: 100%;
	height: 100%;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* ── Countdown ── */
.mc-hero-countdown {
	width: min(100%, 500px);
	padding: 14px 16px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.03);
	margin-bottom: 26px;
	display: grid;
	gap: 10px;
}

.mc-hero-countdown-label {
	margin: 0;
	font-size: 0.6rem;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: rgba(165, 195, 232, 0.6);
}

.mc-hero-countdown-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
}

.mc-hero-countdown-item {
	padding: 10px 8px;
	border: 1px solid rgba(255, 255, 255, 0.07);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.03);
	text-align: center;
}

.mc-hero-countdown-item strong {
	display: block;
	font-family: var(--mp-serif);
	font-size: clamp(1.4rem, 2.6vw, 1.8rem);
	font-weight: 300;
	letter-spacing: -0.01em;
	line-height: 1;
	color: #fff;
}

.mc-hero-countdown-item span {
	display: block;
	margin-top: 5px;
	font-size: 0.6rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(175, 200, 235, 0.55);
}

.mc-hero-countdown-note,
.mc-hero-countdown-state {
	margin: 0;
	font-size: 0.76rem;
	line-height: 1.5;
	color: rgba(195, 216, 244, 0.6);
}

.mc-hero-countdown--ended {
	border-color: rgba(0, 168, 107, 0.2);
	background: rgba(0, 168, 107, 0.04);
}

/* ── Convert ── */
.mc-hero-convert {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
}

.mc-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.mc-hero .mc-btn {
	min-height: 46px;
	padding-inline: 24px;
}

.mc-hero .mc-btn--primary {
	box-shadow: 0 8px 20px rgba(0, 168, 107, 0.2);
}

.mc-hero .mc-btn--outline-light {
	border-color: rgba(255, 255, 255, 0.16);
	background: transparent;
	color: rgba(210, 228, 250, 0.82);
}

.mc-hero .mc-btn--outline-light:hover,
.mc-hero .mc-btn--outline-light:focus {
	border-color: rgba(255, 255, 255, 0.28);
	background: rgba(255, 255, 255, 0.05);
}

.mc-hero-price {
	margin: 0;
	display: inline-flex;
	align-items: center;
	padding: 6px 12px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 6px;
	background: transparent;
	font-size: 0.77rem;
	font-weight: 500;
	letter-spacing: 0.03em;
	color: rgba(195, 216, 244, 0.72);
	line-height: 1.3;
}

/* ── Poster ── */
.mc-hero-poster {
	justify-self: end;
	align-self: center;
	width: min(100%, 360px);
	padding: 7px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 22px 44px rgba(0, 0, 0, 0.32);
	border: 1px solid rgba(255, 255, 255, 0.07);
	background: rgba(255, 255, 255, 0.03);
}

.mc-hero-poster img {
	width: 100%;
	height: auto;
	max-height: min(60vh, 580px);
	object-fit: contain;
	display: block;
	border-radius: 9px;
}

.mc-hero-poster--placeholder {
	aspect-ratio: 4 / 5;
	width: 100%;
	display: grid;
	align-content: center;
	justify-items: center;
	gap: 14px;
	padding: 28px;
	text-align: center;
	background: rgba(18, 38, 65, 0.3);
	border: 1px solid rgba(255, 255, 255, 0.07);
}

.mc-hero-poster-badge {
	display: inline-flex;
	padding: 4px 10px;
	border: 1px solid rgba(201, 168, 76, 0.32);
	border-radius: 4px;
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.13em;
	text-transform: uppercase;
	color: rgba(201, 168, 76, 0.78);
}

.mc-hero-poster--placeholder strong {
	font-family: var(--mp-serif);
	font-size: 1.3rem;
	font-weight: 300;
	line-height: 1.3;
	color: rgba(255, 255, 255, 0.82);
}

/* ── Buttons (mc- scope) ── */
.mc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 48px;
	padding: 11px 24px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}

.mc-btn--primary {
	background: linear-gradient(135deg, var(--mc-green) 0%, #008c58 100%);
	color: #fff;
	box-shadow: 0 10px 24px rgba(0, 168, 107, 0.3);
}

.mc-btn--primary:hover,
.mc-btn--primary:focus {
	transform: translateY(-1px);
	box-shadow: 0 14px 28px rgba(0, 168, 107, 0.38);
}

.mc-btn--outline-light {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.3);
	color: rgba(255, 255, 255, 0.9);
}

.mc-btn--outline-light:hover,
.mc-btn--outline-light:focus {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.5);
}

.mc-btn--ghost {
	background: #fff;
	border-color: #dde8f5;
	color: #2e4c7a;
}

.mc-btn--ghost:hover,
.mc-btn--ghost:focus {
	background: #f0f7ff;
	border-color: #c5d8f0;
}

.mc-btn--disabled {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.15);
	color: rgba(255, 255, 255, 0.4);
	pointer-events: none;
}

.mc-btn--block {
	display: flex;
	width: 100%;
}

.mc-btn-sm {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 34px;
	padding: 6px 14px;
	border-radius: 999px;
	font-size: 0.76rem;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.18s, border-color 0.18s;
}

.mc-btn-sm--outline {
	border: 1px solid #c5d8f0;
	background: transparent;
	color: var(--mc-blue);
}

.mc-btn-sm--outline:hover,
.mc-btn-sm--outline:focus {
	background: #f0f7ff;
}

/* ── Main layout ── */
.mc-layout {
	width: var(--mc-shell);
	margin: 36px auto 0;
	display: grid;
	grid-template-columns: minmax(0, 1fr) var(--mc-sidebar-w);
	gap: 28px;
	align-items: start;
	padding-bottom: 72px;
}

.mc-layout--no-sidebar {
	grid-template-columns: minmax(0, 1fr);
}

.mc-col-left {
	display: grid;
	gap: 22px;
	min-width: 0;
}

.mc-col-right {
	min-width: 0;
	position: sticky;
	top: calc(var(--mp-admin-bar-offset) + 16px);
	height: max-content;
	align-self: start;
	overflow: visible;
}

/* ── STICKY SIDEBAR ── */
.mc-sidebar-inner {
	position: relative;
	max-height: none;
	overflow: visible;
	display: grid;
	gap: 16px;
	align-content: start;
}

.mc-reg-card::-webkit-scrollbar {
	width: 4px;
}

.mc-reg-card::-webkit-scrollbar-track {
	background: transparent;
}

.mc-reg-card::-webkit-scrollbar-thumb {
	background: rgba(46, 76, 122, 0.2);
	border-radius: 999px;
}

/* ── Sections (left column) ── */
.mc-section {
	padding: clamp(20px, 2.8vw, 30px);
	border: 1px solid #d4e1f1;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(14, 26, 45, 0.06);
	min-width: 0;
}

.mc-section-title {
	margin: 0 0 16px;
	padding-bottom: 14px;
	border-bottom: 1px solid #e4eef8;
	font-family: var(--mp-serif);
	font-size: clamp(1.4rem, 2.5vw, 2rem);
	font-weight: 400;
	line-height: 1.15;
	color: var(--mc-navy);
	padding-left: 13px;
	border-left: 3px solid var(--mc-blue);
}

.mc-section-header-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 0;
	flex-wrap: wrap;
}

.mc-section-header-row .mc-section-title {
	margin-bottom: 16px;
}

.mc-section-intro {
	margin: -8px 0 14px;
	font-size: 0.94rem;
	color: #4f6880;
	line-height: 1.6;
}

.mc-sub-title {
	margin: 20px 0 10px;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	color: #5a748e;
}

/* ── Info grid ── */
.mc-info-grid {
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.mc-info-cell {
	margin: 0;
	padding: 13px 14px;
	border: 1px solid #d8e8f6;
	border-radius: 12px;
	background: linear-gradient(180deg, #fafcff 0%, #f5f9ff 100%);
	display: grid;
	gap: 4px;
}

.mc-info-cell dt {
	margin: 0;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #7090b0;
}

.mc-info-cell dd {
	margin: 0;
	font-size: 0.9rem;
	font-weight: 700;
	color: #1d3f67;
	line-height: 1.4;
}

.mc-inline-note {
	margin: 12px 0 0;
	padding: 11px 13px;
	border: 1px solid #d0e3f5;
	border-radius: 10px;
	background: #f4f9ff;
	font-size: 0.87rem;
	color: #3a5a80;
	line-height: 1.55;
}

.mc-inline-note a {
	color: #1e4e84;
	word-break: break-all;
}

/* ── Tags ── */
.mc-tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.mc-tag {
	display: inline-flex;
	align-items: center;
	padding: 6px 13px;
	border: 1px solid #c8daf0;
	border-radius: 999px;
	background: linear-gradient(180deg, #eef5ff 0%, #e8f2ff 100%);
	font-size: 0.8rem;
	font-weight: 700;
	color: #2e4c7a;
	letter-spacing: 0.01em;
}

/* ── Prose ── */
.mc-prose {
	font-size: 0.97rem;
	line-height: 1.82;
	color: #2c4767;
	overflow-wrap: anywhere;
}

.mc-prose p {
	margin: 0 0 1em;
}

.mc-prose p:last-child {
	margin-bottom: 0;
}

.mc-prose--programme h2,
.mc-prose--programme h3,
.mc-prose--programme h4 {
	margin: 1.1em 0 0.4em;
	font-family: var(--mp-serif);
	color: var(--mc-navy);
	padding-left: 10px;
	border-left: 2px solid #c5d8ee;
}

.mc-prose--programme ul,
.mc-prose--programme ol {
	padding-left: 1.3em;
}

/* ── Check list ── */
.mc-check-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 9px;
}

.mc-check-list li {
	position: relative;
	padding-left: 24px;
	font-size: 0.94rem;
	line-height: 1.58;
	color: #334f6d;
}

.mc-check-list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--mc-blue), var(--mc-green));
}

.mc-check-list li::after {
	content: '';
	position: absolute;
	left: 4px;
	top: 10px;
	width: 7px;
	height: 3.5px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(-45deg);
}

/* ── Speakers ── */
.mc-speaker-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 14px;
}

.mc-speaker-card {
	display: grid;
	grid-template-columns: 70px minmax(0, 1fr);
	gap: 13px;
	padding: 14px;
	border: 1px solid #d4e2f2;
	border-radius: 14px;
	background: linear-gradient(180deg, #fafcff 0%, #f5f9ff 100%);
	box-shadow: 0 4px 14px rgba(14, 26, 45, 0.05);
	transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}

.mc-speaker-card:hover {
	border-color: #c3d7ef;
	box-shadow: 0 10px 22px rgba(14, 26, 45, 0.08);
	transform: translateY(-1px);
}

.mc-speaker-card-visual {
	flex-shrink: 0;
}

.mc-speaker-card img,
.mc-speaker-card-avatar {
	width: 70px;
	height: 70px;
	border-radius: 50%;
	object-fit: cover;
	border: 1px solid #d0e0ee;
}

.mc-speaker-card-avatar {
	display: grid;
	place-items: center;
	background: #e8f0fa;
	font-weight: 700;
	font-size: 1rem;
	color: var(--mc-blue);
}

.mc-speaker-card-body {
	display: grid;
	gap: 4px;
	align-content: start;
}

.mc-speaker-card-body h3 {
	margin: 0;
	font-size: 0.97rem;
	font-weight: 700;
	color: #183757;
}

.mc-speaker-meta {
	margin: 0;
	font-size: 0.78rem;
	font-weight: 600;
	color: #4e6a88;
}

.mc-speaker-bio {
	margin: 0;
	font-size: 0.83rem;
	line-height: 1.55;
	color: #486078;
}

/* ── FAQ ── */
.mc-faq-list {
	display: grid;
	gap: 10px;
}

.mc-faq-item {
	padding: 14px 16px;
	border: 1px solid #d5e2f1;
	border-radius: 12px;
	background: #fafcff;
	box-shadow: 0 3px 10px rgba(14, 26, 45, 0.04);
	transition: border-color 0.2s, background-color 0.2s, box-shadow 0.2s;
}

.mc-faq-item[open] {
	border-color: #bfd3eb;
	background: #fff;
	box-shadow: 0 8px 18px rgba(14, 26, 45, 0.07);
}

.mc-faq-question {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	list-style: none;
	font-size: 0.94rem;
	font-weight: 700;
	color: #1d3d63;
}

.mc-faq-question::-webkit-details-marker {
	display: none;
}

.mc-faq-question::after {
	content: '+';
	font-size: 1.1rem;
	color: #5b7fa4;
	flex-shrink: 0;
	transition: transform 0.2s;
}

.mc-faq-item[open] .mc-faq-question::after {
	transform: rotate(45deg);
}

.mc-faq-answer {
	margin-top: 11px;
	padding-top: 11px;
	border-top: 1px solid #e0eaf6;
	font-size: 0.9rem;
	line-height: 1.65;
	color: #405c7d;
}

/* ── Venue section ── */
.mc-prose--venue-intro {
	margin-bottom: 14px;
}

.mc-venue-carousel {
	display: grid;
	gap: 10px;
	margin-bottom: 14px;
	overflow: hidden;
}

.mc-venue-carousel-track {
	display: flex;
	transition: transform 0.35s ease;
	will-change: transform;
}

.mc-venue-slide {
	margin: 0;
	min-width: 100%;
	border: 1px solid #d4e2f2;
	border-radius: 14px;
	overflow: hidden;
	background: #f6fafe;
	box-shadow: 0 4px 14px rgba(14, 26, 45, 0.06);
}

.mc-venue-slide img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.mc-venue-carousel-controls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.mc-venue-control,
.mp-event-page .mc-venue-control {
	width: 38px;
	height: 38px;
	border-radius: 999px;
	border: 1px solid #c9d9ec;
	background: #fff;
	color: #2a4b72;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background-color 0.2s, border-color 0.2s, transform 0.2s;
}

.mc-venue-control:hover,
.mc-venue-control:focus {
	background: #eef5ff;
	border-color: #b8cdea;
	transform: translateY(-1px);
}

.mc-venue-dots {
	display: flex;
	align-items: center;
	gap: 6px;
}

.mc-venue-dot,
.mp-event-page .mc-venue-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	border: 0;
	padding: 0;
	background: #c1d3ea;
	cursor: pointer;
}

.mc-venue-dot.is-active {
	background: #2e4c7a;
}

.mc-venue-details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.mc-venue-detail {
	padding: 12px 13px;
	border: 1px solid #d7e3f2;
	border-radius: 12px;
	background: #fbfdff;
}

.mc-venue-detail h3 {
	margin: 0 0 7px;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #547494;
}

.mc-venue-detail p {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.55;
	color: #34516f;
}

.mc-venue-detail a {
	color: #2e4c7a;
	font-weight: 700;
}

/* ── Registration card ── */
.mc-reg-card {
	max-height: calc(100vh - var(--mp-admin-bar-offset) - 24px);
	border: 1px solid #d0deef;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 16px 32px rgba(14, 26, 45, 0.09);
	overflow-x: hidden;
	overflow-y: auto;
	display: grid;
	gap: 0;
	scrollbar-width: thin;
	scrollbar-color: rgba(46, 76, 122, 0.2) transparent;
}

.mc-reg-card-header {
	padding: 22px 22px 20px;
	background: linear-gradient(135deg, var(--mc-navy) 0%, var(--mc-blue) 100%);
	display: grid;
	gap: 6px;
}

.mc-reg-card-eyebrow {
	margin: 0;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.6);
}

.mc-reg-card.is-open .mc-reg-card-eyebrow {
	color: #5de6b8;
}

.mc-reg-card.is-tentative .mc-reg-card-eyebrow {
	color: var(--mc-gold);
}

.mc-reg-card.is-closed .mc-reg-card-eyebrow {
	color: #f08096;
}

.mc-reg-card-title {
	margin: 0;
	font-family: var(--mp-serif);
	font-size: clamp(1.5rem, 2.5vw, 1.9rem);
	font-weight: 400;
	line-height: 1.1;
	color: #fff;
}

.mc-reg-card-lead {
	margin: 0;
	font-size: 0.83rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.7);
}

.mc-reg-card-list {
	margin: 0;
	padding: 18px 22px;
	list-style: none;
	display: grid;
	gap: 8px;
	border-bottom: 1px solid #edf3fc;
}

.mc-reg-card-list li {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	padding-bottom: 8px;
	border-bottom: 1px solid #edf3fc;
	font-size: 0.85rem;
	min-width: 0;
}

.mc-reg-card-list li:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.mc-reg-card-list span {
	color: #6080a0;
	flex-shrink: 0;
}

.mc-reg-card-list strong {
	color: #1a3d63;
	text-align: right;
	min-width: 0;
	overflow-wrap: anywhere;
}

.mc-reg-card-formulas {
	padding: 14px 22px;
	display: grid;
	gap: 7px;
	border-bottom: 1px solid #edf3fc;
}

.mc-reg-card-formulas-title {
	margin: 0 0 4px;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: #7090b0;
}

.mc-formula-row {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	padding: 9px 11px;
	border: 1px solid #d5e5f5;
	border-radius: 10px;
	background: #f6fafe;
	font-size: 0.83rem;
	color: #35567b;
}

.mc-formula-row span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-weight: 700;
	color: #24486f;
}

.mc-formula-row span::before {
	content: '';
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #79a7d8;
	flex-shrink: 0;
}

.mc-formula-row--presentiel span::before {
	background: #1f6a8d;
}

.mc-formula-row--online span::before {
	background: var(--mc-green);
}

.mc-formula-row strong {
	color: #1e426d;
	overflow-wrap: anywhere;
}

.mc-reg-card-price-solo {
	padding: 14px 22px;
	display: flex;
	justify-content: space-between;
	gap: 10px;
	border-bottom: 1px solid #edf3fc;
	font-size: 0.85rem;
}

.mc-reg-card-price-solo span {
	color: #6080a0;
}

.mc-reg-card-price-solo strong {
	color: #1a3d63;
	font-weight: 700;
}

.mc-reg-card-progress {
	padding: 14px 22px;
	display: grid;
	gap: 8px;
	border-bottom: 1px solid #edf3fc;
}

.mc-reg-card-progress-text {
	margin: 0;
	font-size: 0.81rem;
	font-weight: 700;
	color: #1f4369;
}

.mc-reg-card-progress-bar {
	height: 8px;
	border-radius: 999px;
	background: #e7eff9;
	overflow: hidden;
}

.mc-reg-card-progress-bar > span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--mc-blue) 0%, var(--mc-green) 100%);
	transition: width 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.mc-reg-card-progress-meta {
	margin: 0;
	font-size: 0.75rem;
	color: #6787a8;
}

.mc-reg-card-payments {
	margin: 0;
	padding: 0 22px;
	font-size: 0.79rem;
	color: #7090b0;
}

.mc-reg-card-zoom-note {
	margin: 2px 22px 0;
	padding: 10px 12px;
	border: 1px solid rgba(46, 76, 122, 0.2);
	border-radius: 10px;
	background: rgba(184, 204, 238, 0.18);
	font-size: 0.78rem;
	line-height: 1.45;
	color: #284266;
}

.mc-reg-card-reassurance {
	margin: 0;
	padding: 0 22px;
	font-size: 0.79rem;
	line-height: 1.5;
	color: #5070a0;
}

.mc-reg-card .mc-btn--primary,
.mc-reg-card .mc-btn--ghost,
.mc-reg-card .mc-btn--disabled {
	margin: 0 22px;
}

.mc-reg-card .mc-btn--primary {
	margin-top: 16px;
	background: linear-gradient(135deg, var(--mc-navy) 0%, var(--mc-blue) 100%);
}

.mc-reg-card .mc-btn--ghost {
	margin-top: 8px;
	margin-bottom: 22px;
}

.mc-reg-card .mc-btn--disabled {
	margin-top: 16px;
	margin-bottom: 22px;
	background: #edf2f8;
	border-color: #d6e0ec;
	color: #7b8da6;
}

/* ── WhatsApp card ── */
.mc-wa-card {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 18px;
	border: 1px solid #c4e8d4;
	border-radius: 16px;
	background: linear-gradient(135deg, #eefaf4 0%, #e6f7f0 100%);
	box-shadow: 0 6px 16px rgba(0, 168, 107, 0.08);
}

.mc-wa-card-icon {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--mc-green);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	flex-shrink: 0;
}

.mc-wa-card-body {
	flex: 1;
	min-width: 0;
}

.mc-wa-card-title {
	margin: 0;
	font-size: 0.85rem;
	font-weight: 700;
	color: #0e5e3c;
}

.mc-wa-card-text {
	margin: 0;
	font-size: 0.78rem;
	color: #2e7a57;
}

.mc-wa-btn {
	display: inline-flex;
	align-items: center;
	padding: 7px 14px;
	border-radius: 999px;
	background: var(--mc-green);
	color: #fff;
	font-size: 0.78rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	flex-shrink: 0;
	transition: background-color 0.18s, box-shadow 0.18s;
}

.mc-wa-btn:hover,
.mc-wa-btn:focus {
	background: #009a60;
	box-shadow: 0 4px 12px rgba(0, 168, 107, 0.28);
}

.mc-help-footer {
	width: var(--mc-shell);
	margin: 24px auto 0;
}

/* ── Testimonials in new design (mc-testimonial-card override) ── */
.mc-testimonials-intro {
	margin: -4px 0 16px;
	max-width: 72ch;
	font-size: 0.95rem;
	line-height: 1.74;
	color: #4b6481;
}

.mc-showcase-videos {
	display: grid;
	gap: 14px;
	margin: 0 0 16px;
}

.mc-showcase-videos--2cols {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mc-showcase-video-card {
	border: 1px solid #d2e2f2;
	border-radius: 16px;
	overflow: hidden;
	background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
	box-shadow: 0 8px 20px rgba(14, 26, 45, 0.06);
}

.mc-showcase-video-media {
	position: relative;
	overflow: hidden;
	background: linear-gradient(145deg, #dfe8f5 0%, #c9d8eb 100%);
	aspect-ratio: 16 / 9;
}

.mc-showcase-video-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mc-showcase-video-media::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(14, 26, 45, 0.1) 0%, rgba(14, 26, 45, 0.5) 100%);
	pointer-events: none;
}

.mc-showcase-video-media iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

.mc-showcase-video-play,
.mp-event-page .mc-showcase-video-play {
	position: absolute;
	inset: 0;
	z-index: 2;
	border: 0;
	background: transparent;
	display: grid;
	place-content: center;
	gap: 10px;
	justify-items: center;
	cursor: pointer;
	color: #fff;
}

.mc-showcase-video-play-icon {
	width: 58px;
	height: 58px;
	border-radius: 50%;
	background: rgba(11, 28, 49, 0.62);
	border: 1px solid rgba(255, 255, 255, 0.42);
	backdrop-filter: blur(4px);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.2s var(--mp-ease), background-color 0.2s var(--mp-ease);
}

.mc-showcase-video-play-icon::before {
	content: '';
	width: 0;
	height: 0;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 13px solid #fff;
	margin-left: 2px;
}

.mc-showcase-video-play-text {
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.mc-showcase-video-play:hover .mc-showcase-video-play-icon,
.mc-showcase-video-play:focus-visible .mc-showcase-video-play-icon {
	transform: scale(1.04);
	background: rgba(18, 44, 74, 0.76);
}

.mc-showcase-video-body {
	display: grid;
	gap: 6px;
	padding: 13px 15px 15px;
}

.mc-showcase-video-label {
	margin: 0;
	font-size: 0.66rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	text-transform: uppercase;
	color: #5f7d9f;
}

.mc-showcase-video-title {
	margin: 0;
	font-family: var(--mp-serif);
	font-size: 1.22rem;
	font-weight: 500;
	line-height: 1.24;
	color: #142f4d;
}

.mc-showcase-video-description {
	margin: 0;
	font-size: 0.86rem;
	line-height: 1.6;
	color: #3f5d7e;
}

.mc-testimonials-proof-label {
	margin: 0 0 10px;
	font-size: 0.71rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #587596;
}

.mc-testimonial-card {
	padding: 22px;
	border: 1px solid #d3e1f1;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 20px rgba(14, 26, 45, 0.06);
}

/* ── Responsive — mc-* layout ── */

@media (max-width: 1100px) {
	.mp-event-page {
		--mc-sidebar-w: 300px;
	}
}

@media (max-width: 960px) {
	.mp-event-page {
		--mc-sidebar-w: 280px;
	}

	.mc-hero-inner {
		grid-template-columns: minmax(0, 1fr) minmax(230px, 280px);
		gap: 28px;
	}

	.mc-hero-poster {
		width: min(100%, 300px);
	}
}

@media (max-width: 840px) {
	.mc-hero-inner {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.mc-hero-poster {
		display: flex;
		justify-self: center;
		width: min(100%, 420px);
	}

	.mc-hero-title {
		max-width: none;
	}

	.mc-hero-expert {
		width: 100%;
		max-width: 580px;
	}

	.mc-hero-lead {
		max-width: none;
	}

	.mc-layout {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.mc-col-right {
		order: -1;
		position: static;
		top: auto;
		height: auto;
	}

	.mc-sidebar-inner {
		position: static;
		max-height: none;
		overflow-y: visible;
	}

	.mc-reg-card {
		position: static;
		top: auto;
		max-height: none;
		overflow-y: visible;
	}

	.mc-info-grid {
		grid-template-columns: 1fr;
	}

	.mc-speaker-grid {
		grid-template-columns: 1fr;
	}

	.mc-showcase-videos--2cols {
		grid-template-columns: 1fr;
	}

	.mc-venue-details {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.mc-topbar-inner,
	.mc-nav-bar-inner,
	.mc-hero-inner,
	.mc-layout {
		width: calc(100% - 32px);
	}

	.mp-event-page {
		--mc-shell: calc(100% - 32px);
	}

	.mc-hero {
		padding: 34px 0 44px;
	}

	.mc-hero-title {
		font-size: clamp(1.8rem, 8vw, 2.45rem);
		max-width: none;
	}

	.mc-hero-subtitle {
		font-size: 0.84rem;
		margin-top: 9px;
	}

	.mc-hero-lead {
		font-size: 0.9rem;
		line-height: 1.78;
	}

	.mc-hero-expert {
		padding: 13px 14px;
		border-radius: 10px;
	}

	.mc-hero-expert-avatar {
		width: 46px;
		height: 46px;
	}

	.mc-hero-expert-name {
		font-size: 0.9rem;
	}

	.mc-hero-expert-role {
		font-size: 0.76rem;
	}

	.mc-hero-expert-mini {
		width: 28px;
		height: 28px;
		margin-left: -7px;
	}

	.mc-hero-expert-more {
		font-size: 0.67rem;
	}

	.mc-hero-countdown-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mc-pill {
		padding: 5px 10px;
		font-size: 0.74rem;
	}

	.mc-hero-convert {
		align-items: stretch;
	}

	.mc-hero-actions {
		width: 100%;
		display: grid;
		grid-template-columns: 1fr;
	}

	.mc-hero .mc-btn {
		width: 100%;
	}

	.mc-hero-price {
		order: -1;
	}

	.mc-hero-poster {
		width: min(100%, 340px);
		padding: 8px;
	}

	.mc-topbar-badge {
		display: none;
	}

	.mc-nav-arrow span:not(.mc-nav-arrow-icon) {
		display: none;
	}

	.mc-reg-card .mc-btn--primary,
	.mc-reg-card .mc-btn--ghost,
	.mc-reg-card .mc-btn--disabled {
		margin-inline: 14px;
	}

	.mc-help-footer {
		width: calc(100% - 32px);
	}

	.mc-section {
		padding: 18px;
	}
}

@media (max-width: 480px) {
	.mc-hero-pills {
		gap: 6px;
	}

	.mc-pill {
		font-size: 0.73rem;
		padding: 5px 10px;
	}

	.mc-wa-card {
		flex-wrap: wrap;
	}

	.mc-wa-btn {
		width: 100%;
		justify-content: center;
	}
}

/* ── Event page refresh : tech medical / compact ── */
.mp-event-page {
	--mp-sans: 'DM Sans', 'Segoe UI', sans-serif;
	--mp-serif: 'DM Sans', 'Segoe UI', sans-serif;
	--mc-navy: #0a1623;
	--mc-navy2: #112436;
	--mc-blue: #1e567f;
	--mc-green: #0a8f84;
	--mc-gold: #8da6bf;
	background: linear-gradient(180deg, #f3f7fb 0%, #f7fafd 100%);
}

.mp-event-page .mc-hero {
	background: linear-gradient(160deg, #08131f 0%, #0b2134 56%, #0c1b2b 100%);
	padding: clamp(48px, 6vw, 78px) 0 clamp(54px, 6vw, 82px);
}

.mp-event-page .mc-hero-glow {
	top: -82px;
	right: -48px;
	width: 320px;
	height: 320px;
	background: radial-gradient(circle, rgba(36, 112, 156, 0.18) 0%, transparent 72%);
}

.mp-event-page .mc-hero-inner {
	gap: clamp(28px, 4vw, 52px);
}

.mp-event-page .mc-hero-head {
	margin-bottom: 22px;
}

.mp-event-page .mc-hero-title {
	font-family: var(--mp-sans);
	font-size: clamp(2.2rem, 4.4vw, 3.45rem);
	font-weight: 700;
	line-height: 1.02;
	letter-spacing: -0.045em;
	max-width: 18ch;
}

.mp-event-page .mc-hero-subtitle {
	margin-top: 8px;
	font-size: 0.82rem;
	line-height: 1.5;
	color: rgba(184, 209, 235, 0.62);
}

.mp-event-page .mc-hero-lead {
	margin-bottom: 22px;
	font-size: 0.94rem;
	line-height: 1.72;
	color: rgba(206, 223, 244, 0.68);
	max-width: 58ch;
}

.mp-event-page .mc-badge,
.mp-event-page .mc-pill,
.mp-event-page .mc-hero-price {
	font-size: 0.71rem;
}

.mp-event-page .mc-hero-meta-wrap,
.mp-event-page .mc-hero-eyebrow {
	margin-bottom: 18px;
}

.mp-event-page .mc-hero-expert,
.mp-event-page .mc-hero-countdown {
	width: min(100%, 460px);
	padding: 12px 14px;
	border-radius: 12px;
	border-color: rgba(255, 255, 255, 0.09);
	background: rgba(255, 255, 255, 0.035);
}

.mp-event-page .mc-hero-expert-label,
.mp-event-page .mc-hero-countdown-label,
.mp-event-page .mc-reg-card-eyebrow,
.mp-event-page .mc-reg-card-formulas-title,
.mp-event-page .mc-sub-title {
	font-size: 0.62rem;
	letter-spacing: 0.14em;
}

.mp-event-page .mc-hero-expert-name {
	font-size: 0.9rem;
}

.mp-event-page .mc-hero-expert-role,
.mp-event-page .mc-hero-countdown-note,
.mp-event-page .mc-hero-countdown-state,
.mp-event-page .mc-hero-expert-more {
	font-size: 0.74rem;
}

.mp-event-page .mc-hero-expert-avatar {
	width: 48px;
	height: 48px;
}

.mp-event-page .mc-hero-expert-mini {
	width: 28px;
	height: 28px;
}

.mp-event-page .mc-hero-countdown-grid {
	gap: 7px;
}

.mp-event-page .mc-hero-countdown-item {
	padding: 9px 7px;
	border-radius: 10px;
}

.mp-event-page .mc-hero-countdown-item strong {
	font-family: var(--mp-sans);
	font-size: clamp(1.15rem, 2vw, 1.45rem);
	font-weight: 700;
}

.mp-event-page .mc-hero .mc-btn,
.mp-event-page .mc-btn {
	min-height: 42px;
	padding: 10px 18px;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.01em;
}

.mp-event-page .mc-btn--primary {
	background: linear-gradient(135deg, #0e8b8d 0%, #145c86 100%);
	box-shadow: none;
}

.mp-event-page .mc-btn--primary:hover,
.mp-event-page .mc-btn--primary:focus {
	transform: none;
	box-shadow: none;
	filter: brightness(1.05);
}

.mp-event-page .mc-btn--outline-light:hover,
.mp-event-page .mc-btn--outline-light:focus,
.mp-event-page .mc-btn--ghost:hover,
.mp-event-page .mc-btn--ghost:focus,
.mp-event-page .mc-speaker-card:hover,
.mp-event-page .mc-venue-control:hover,
.mp-event-page .mc-venue-control:focus,
.mp-event-page .mc-faq-item[open] {
	transform: none;
	box-shadow: none;
}

.mp-event-page .mc-hero-poster {
	width: min(100%, 326px);
	padding: 6px;
	border-radius: 16px;
	box-shadow: none;
	border-color: rgba(255, 255, 255, 0.08);
	background: rgba(255, 255, 255, 0.025);
}

.mp-event-page .mc-hero-poster img {
	border-radius: 12px;
}

.mp-event-page .mc-layout {
	margin-top: 28px;
	gap: 22px;
}

.mp-event-page .mc-col-left {
	gap: 16px;
}

.mp-event-page .mc-sidebar-inner {
	gap: 12px;
}

.mp-event-page .mc-section {
	padding: clamp(18px, 2.2vw, 24px);
	border-radius: 14px;
	border-color: #dbe4ec;
	background: rgba(255, 255, 255, 0.88);
	box-shadow: none;
}

.mp-event-page .mc-section-title {
	padding-left: 0;
	padding-bottom: 12px;
	border-left: 0;
	border-bottom-color: #e3ebf2;
	font-family: var(--mp-sans);
	font-size: clamp(1.16rem, 2vw, 1.46rem);
	font-weight: 700;
	letter-spacing: -0.02em;
	color: #17344f;
}

.mp-event-page .mc-section-intro,
.mp-event-page .mc-inline-note,
.mp-event-page .mc-prose,
.mp-event-page .mc-check-list li,
.mp-event-page .mc-faq-answer,
.mp-event-page .mc-venue-detail p {
	font-size: 0.88rem;
	line-height: 1.68;
}

.mp-event-page .mc-prose--venue-intro,
.mp-event-page .mc-testimonials-intro {
	max-width: 64ch;
	font-size: 0.86rem;
	line-height: 1.64;
	color: #4e6782;
}

.mp-event-page .mc-info-grid,
.mp-event-page .mc-venue-details,
.mp-event-page .mc-faq-list {
	gap: 8px;
}

.mp-event-page .mc-info-cell,
.mp-event-page .mc-inline-note,
.mp-event-page .mc-tag,
.mp-event-page .mc-speaker-card,
.mp-event-page .mc-faq-item,
.mp-event-page .mc-venue-slide,
.mp-event-page .mc-venue-detail,
.mp-event-page .mc-formula-row,
.mp-event-page .mc-reg-card-zoom-note {
	border-radius: 10px;
	box-shadow: none;
}

.mp-event-page .mc-info-cell,
.mp-event-page .mc-inline-note,
.mp-event-page .mc-tag,
.mp-event-page .mc-speaker-card,
.mp-event-page .mc-faq-item,
.mp-event-page .mc-venue-slide,
.mp-event-page .mc-venue-detail,
.mp-event-page .mc-formula-row {
	border-color: #dfe7ee;
	background: #f9fbfd;
}

.mp-event-page .mc-info-cell {
	padding: 11px 12px;
}

.mp-event-page .mc-info-cell dt,
.mp-event-page .mc-reg-card-formulas-title,
.mp-event-page .mc-venue-detail h3 {
	font-size: 0.64rem;
	letter-spacing: 0.1em;
}

.mp-event-page .mc-info-cell dd,
.mp-event-page .mc-speaker-card-body h3,
.mp-event-page .mc-faq-question,
.mp-event-page .mc-reg-card-progress-text {
	font-size: 0.86rem;
}

.mp-event-page .mc-tag {
	padding: 5px 10px;
	font-size: 0.72rem;
	font-weight: 700;
}

.mp-event-page .mc-speaker-grid {
	gap: 10px;
}

.mp-event-page .mc-speaker-card {
	grid-template-columns: 62px minmax(0, 1fr);
	gap: 12px;
	padding: 12px;
}

.mp-event-page .mc-speaker-card img,
.mp-event-page .mc-speaker-card-avatar {
	width: 62px;
	height: 62px;
}

.mp-event-page .mc-speaker-meta,
.mp-event-page .mc-speaker-bio,
.mp-event-page .mc-reg-card-list li,
.mp-event-page .mc-reg-card-price-solo,
.mp-event-page .mc-reg-card-payments,
.mp-event-page .mc-reg-card-reassurance,
.mp-event-page .mc-reg-card-progress-meta,
.mp-event-page .mc-wa-card-title,
.mp-event-page .mc-wa-card-text {
	font-size: 0.78rem;
}

.mp-event-page .mc-faq-item {
	padding: 12px 14px;
}

.mp-event-page .mc-venue-control {
	width: 34px;
	height: 34px;
}

.mp-event-page .mc-venue-carousel {
	gap: 8px;
	margin-bottom: 12px;
}

.mp-event-page .mc-venue-slide {
	border-color: #dce5ed;
	background: #f8fbfd;
}

.mp-event-page .mc-venue-slide img {
	aspect-ratio: 16 / 8.6;
}

.mp-event-page .mc-venue-carousel-controls {
	gap: 8px;
}

.mp-event-page .mc-venue-dot {
	width: 7px;
	height: 7px;
	background: #c4d3e0;
}

.mp-event-page .mc-venue-dot.is-active {
	background: #1f5a83;
}

.mp-event-page .mc-venue-detail .mc-prose {
	font-size: 0.84rem;
	line-height: 1.62;
	color: #3f5b77;
}

.mp-event-page .mc-showcase-videos {
	gap: 10px;
	margin-bottom: 12px;
}

.mp-event-page .mc-showcase-video-card {
	border-color: #dce5ed;
	border-radius: 12px;
	background: #f9fbfd;
	box-shadow: none;
}

.mp-event-page .mc-showcase-video-media::after {
	background: linear-gradient(180deg, rgba(10, 22, 35, 0.08) 0%, rgba(10, 22, 35, 0.36) 100%);
}

.mp-event-page .mc-showcase-video-play {
	gap: 8px;
}

.mp-event-page .mc-showcase-video-play-icon {
	width: 50px;
	height: 50px;
	background: rgba(10, 22, 35, 0.52);
	backdrop-filter: none;
}

.mp-event-page .mc-showcase-video-play-text {
	font-size: 0.68rem;
	letter-spacing: 0.1em;
}

.mp-event-page .mc-showcase-video-body {
	padding: 11px 13px 13px;
}

.mp-event-page .mc-showcase-video-label,
.mp-event-page .mc-testimonials-proof-label {
	font-size: 0.64rem;
	letter-spacing: 0.12em;
}

.mp-event-page .mc-showcase-video-title {
	font-family: var(--mp-sans);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.3;
}

.mp-event-page .mc-showcase-video-description {
	font-size: 0.8rem;
	line-height: 1.55;
}

.mp-event-page .mp-testimonials-carousel {
	border-radius: 12px;
}

.mp-event-page .mc-testimonial-card,
.mp-event-page .mp-testimonial-card {
	padding: 16px 16px 14px;
	border-color: #dce5ed;
	border-radius: 12px;
	background: #fbfdff;
	box-shadow: none;
}

.mp-event-page .mp-testimonial-card__stars,
.mp-event-page .mp-testimonial-card__rating {
	font-size: 0.82rem;
	letter-spacing: 0.04em;
}

.mp-event-page .mp-testimonial-card__quote {
	margin-top: 8px;
}

.mp-event-page .mp-testimonial-card__quote p,
.mp-event-page .mp-testimonial-card blockquote {
	font-family: var(--mp-sans);
	font-size: 0.92rem;
	font-weight: 500;
	line-height: 1.68;
	color: #2a4865;
}

.mp-event-page .mp-testimonial-card__author {
	margin-top: 10px;
	padding-top: 9px;
	border-top-color: #e3ebf2;
}

.mp-event-page .mp-testimonial-card__author cite,
.mp-event-page .mp-testimonial-card cite {
	font-size: 0.76rem;
}

.mp-event-page .mp-testimonial-card__author cite span {
	font-size: 0.73rem;
}

.mp-event-page .mp-testimonials-controls {
	margin-top: 12px;
	gap: 10px;
}

.mp-event-page .mp-testimonials-control {
	width: 34px;
	height: 34px;
	border-color: #d6e0e8;
	background: #f9fbfd;
	box-shadow: none;
}

.mp-event-page .mp-testimonials-control:hover,
.mp-event-page .mp-testimonials-control:focus-visible {
	background: #f1f6fa;
	border-color: #c5d1db;
	box-shadow: none;
	transform: none;
}

.mp-event-page .mp-testimonials-dot {
	width: 7px;
	height: 7px;
	background: #c4d3e0;
}

.mp-event-page .mp-testimonials-dot.is-active {
	width: 18px;
	background: #1f5a83;
}

.mp-event-page .mc-reg-card {
	border-radius: 16px;
	border-color: #d7e0e8;
	background: #fcfdff;
	box-shadow: none;
}

.mp-event-page .mc-reg-card-header {
	padding: 18px 18px 16px;
	background: linear-gradient(160deg, #0b1826 0%, #13304b 100%);
}

.mp-event-page .mc-reg-card-title {
	font-family: var(--mp-sans);
	font-size: clamp(1.18rem, 2vw, 1.48rem);
	font-weight: 700;
	letter-spacing: -0.02em;
}

.mp-event-page .mc-reg-card-lead {
	font-size: 0.76rem;
}

.mp-event-page .mc-reg-card-list,
.mp-event-page .mc-reg-card-formulas,
.mp-event-page .mc-reg-card-price-solo,
.mp-event-page .mc-reg-card-progress {
	padding-left: 18px;
	padding-right: 18px;
}

.mp-event-page .mc-reg-card-payments,
.mp-event-page .mc-reg-card-reassurance {
	padding-left: 18px;
	padding-right: 18px;
}

.mp-event-page .mc-reg-card-benefit {
	margin: 10px 18px 0;
	display: flex;
	align-items: flex-start;
	gap: 8px;
	color: #48627d;
}

.mp-event-page .mc-reg-card-benefit-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	flex: 0 0 16px;
	margin-top: 1px;
	color: #0f7f85;
}

.mp-event-page .mc-reg-card-benefit-icon svg {
	display: block;
	width: 100%;
	height: 100%;
}

.mp-event-page .mc-reg-card-benefit-copy {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.mp-event-page .mc-reg-card-benefit-copy strong {
	display: block;
	font-size: 0.77rem;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.01em;
	color: #163b58;
}

.mp-event-page .mc-reg-card-benefit-copy small {
	display: block;
	font-size: 0.72rem;
	line-height: 1.45;
	color: #5d7792;
}

.mp-event-community-modal .mp-community-modal__dialog {
	width: min(100%, 540px);
}

.mp-event-community-modal__body {
	padding: 0 18px 18px;
	display: grid;
	gap: 14px;
}

.mp-event-community-modal__note {
	margin: 0;
	padding: 12px 14px;
	border: 1px solid #dbe4ef;
	border-radius: 14px;
	background: #f7fbff;
	font-size: 12.5px;
	line-height: 1.65;
	color: #56697f;
}

.mp-event-community-modal__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 10px;
}

.mp-event-page .mc-reg-card-zoom-note {
	margin-left: 18px;
	margin-right: 18px;
	padding: 9px 11px;
	border-color: #d7e3ec;
	background: #f4f8fb;
	font-size: 0.77rem;
}

.mp-event-page .mc-reg-card .mc-btn--primary,
.mp-event-page .mc-reg-card .mc-btn--ghost,
.mp-event-page .mc-reg-card .mc-btn--disabled {
	margin-left: 18px;
	margin-right: 18px;
}

.mp-event-page .mc-reg-card .mc-btn--primary {
	background: linear-gradient(135deg, #0e8b8d 0%, #145c86 100%);
}

.mp-event-page .mc-reg-card .mc-btn--disabled {
	background: #eef3f7;
	border-color: #d9e2ea;
	color: #72859a;
}

.mp-event-page .mc-wa-card {
	padding: 14px 16px;
	border-radius: 12px;
	border-color: #d8e8e2;
	background: #f4faf7;
	box-shadow: none;
}

.mp-event-page .mc-wa-card-icon {
	width: 36px;
	height: 36px;
	background: linear-gradient(135deg, #0a8f84 0%, #1b6d8d 100%);
}

@media (max-width: 640px) {
	.mp-event-page .mc-hero {
		padding: 28px 0 34px;
	}

	.mp-event-page .mc-hero-title {
		font-size: clamp(1.72rem, 8vw, 2.2rem);
	}

	.mp-event-page .mc-hero-subtitle,
	.mp-event-page .mc-hero-lead,
	.mp-event-page .mc-prose,
	.mp-event-page .mc-check-list li,
	.mp-event-page .mc-faq-answer,
	.mp-event-page .mc-venue-detail p {
		font-size: 0.84rem;
	}

	.mp-event-page .mc-prose--venue-intro,
	.mp-event-page .mc-testimonials-intro,
	.mp-event-page .mc-venue-detail .mc-prose,
	.mp-event-page .mc-showcase-video-description,
	.mp-event-page .mp-testimonial-card__quote p,
	.mp-event-page .mp-testimonial-card blockquote {
		font-size: 0.82rem;
	}

	.mp-event-page .mc-hero .mc-btn,
	.mp-event-page .mc-btn {
		min-height: 40px;
		font-size: 0.78rem;
	}

	.mp-event-page .mc-section {
		padding: 16px;
		border-radius: 12px;
	}

	.mp-event-page .mc-reg-card-header,
	.mp-event-page .mc-reg-card-list,
	.mp-event-page .mc-reg-card-formulas,
	.mp-event-page .mc-reg-card-price-solo,
	.mp-event-page .mc-reg-card-progress {
		padding-left: 16px;
		padding-right: 16px;
	}

	.mp-event-page .mc-reg-card-payments,
	.mp-event-page .mc-reg-card-reassurance {
		padding-left: 16px;
		padding-right: 16px;
	}

	.mp-event-page .mc-reg-card-benefit {
		margin-left: 16px;
		margin-right: 16px;
	}

	.mp-event-page .mc-reg-card-benefit-copy strong {
		font-size: 0.75rem;
	}

	.mp-event-page .mc-reg-card-benefit-copy small {
		font-size: 0.7rem;
	}

	.mp-event-community-modal__actions {
		flex-direction: column-reverse;
	}

	.mp-event-community-modal__actions .mc-btn {
		width: 100%;
	}

	.mp-event-page .mc-reg-card .mc-btn--primary,
	.mp-event-page .mc-reg-card .mc-btn--ghost,
	.mp-event-page .mc-reg-card .mc-btn--disabled {
		margin-left: 16px;
		margin-right: 16px;
	}

	.mp-event-page .mc-reg-card-zoom-note {
		margin-left: 16px;
		margin-right: 16px;
	}

	.mp-event-page .mc-showcase-video-play-icon {
		width: 44px;
		height: 44px;
	}

	.mp-event-page .mc-showcase-video-body,
	.mp-event-page .mc-testimonial-card,
	.mp-event-page .mp-testimonial-card {
		padding: 14px;
	}
}

/* ── Registration page refresh : tech medical / compact ── */
.mp-registration-page:not(.mp-participant-page) {
	--mp-serif: 'DM Sans', 'Segoe UI', sans-serif;
	--mp-navy-deep: #091520;
	--mp-navy: #11273a;
	--mp-blue: #1d5a84;
	--mp-blue-mid: #7ca6c8;
	--mp-blue-soft: #c7d8e7;
	--mp-border: #dbe4eb;
	--mp-border-strong: rgba(255, 255, 255, 0.12);
	background: linear-gradient(180deg, #f3f7fb 0%, #f8fbfd 100%);
}

.mp-registration-page:not(.mp-participant-page) .mp-registration-hero {
	padding: 38px 0 44px;
	background: linear-gradient(160deg, #08131f 0%, #0c2032 58%, #0b1928 100%);
	border-bottom-color: rgba(255, 255, 255, 0.06);
}

.mp-registration-page:not(.mp-participant-page) .mp-registration-hero::before {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0) 22%),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.02) 0 1px, transparent 1px 118px);
}

.mp-registration-page:not(.mp-participant-page) .mp-registration-hero::after {
	right: -90px;
	top: -54px;
	width: 280px;
	height: 280px;
	background: radial-gradient(circle, rgba(33, 109, 156, 0.2) 0%, rgba(33, 109, 156, 0) 72%);
}

.mp-registration-page:not(.mp-participant-page) .mp-breadcrumb,
.mp-registration-page:not(.mp-participant-page) .mp-breadcrumb a {
	color: rgba(196, 217, 239, 0.72);
}

.mp-registration-page:not(.mp-participant-page) .mp-registration-hero__content {
	margin-top: 14px;
	max-width: min(760px, 100%);
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	justify-items: start;
	text-align: left;
}

.mp-registration-page:not(.mp-participant-page) .mp-registration-hero__content .mp-kicker {
	padding: 4px 10px;
	border-color: rgba(255, 255, 255, 0.14);
	background: rgba(255, 255, 255, 0.06);
	font-size: 0.67rem;
	letter-spacing: 0.08em;
	color: rgba(228, 238, 249, 0.86);
}

.mp-registration-page:not(.mp-participant-page) .mp-registration-hero__content h1 {
	max-width: 18ch;
	font-family: var(--mp-sans);
	font-size: clamp(1.96rem, 4.1vw, 3rem);
	font-weight: 700;
	line-height: 1.02;
	letter-spacing: -0.04em;
	color: #fff;
}

.mp-registration-page:not(.mp-participant-page) .mp-registration-hero__content p {
	max-width: 62ch;
	font-size: 0.9rem;
	line-height: 1.68;
	color: rgba(203, 220, 240, 0.72);
}

.mp-registration-page:not(.mp-participant-page) .mp-registration-layout {
	margin-top: 26px;
	column-gap: 22px;
}

.mp-registration-page:not(.mp-participant-page) .mp-registration-main,
.mp-registration-page:not(.mp-participant-page) .mp-registration-sidebar {
	gap: 14px;
}

.mp-registration-page:not(.mp-participant-page) .mp-panel {
	padding: clamp(18px, 2.2vw, 24px);
	border-radius: 14px;
	border-color: #dbe4eb;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: none;
}

.mp-registration-page:not(.mp-participant-page) .mp-panel__header {
	gap: 8px;
	margin-bottom: 14px;
	padding-bottom: 12px;
	border-bottom-color: #e3ebf2;
}

.mp-registration-page:not(.mp-participant-page) .mp-panel__kicker {
	font-size: 0.64rem;
	letter-spacing: 0.12em;
	color: #5b748f;
}

.mp-registration-page:not(.mp-participant-page) .mp-panel h2,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__title,
.mp-registration-page:not(.mp-participant-page) .mp-summary-card h2,
.mp-registration-page:not(.mp-participant-page) .mp-summary-card__title {
	font-family: var(--mp-sans);
	font-size: clamp(1.16rem, 2vw, 1.46rem);
	font-weight: 700;
	line-height: 1.18;
	letter-spacing: -0.02em;
}

.mp-registration-page:not(.mp-participant-page) .mp-assurance-panel {
	background: #f9fbfd;
}

.mp-registration-page:not(.mp-participant-page) .mp-check-list li {
	font-size: 0.84rem;
	line-height: 1.6;
	color: #36516c;
}

.mp-registration-page:not(.mp-participant-page) .mp-summary-card {
	padding: 18px;
	border-radius: 16px;
	border-color: #d7e1e8;
	background: #fcfdff;
	box-shadow: none;
	gap: 12px;
}

.mp-registration-page:not(.mp-participant-page) .mp-summary-card--sticky {
	top: 8px;
}

.mp-registration-page:not(.mp-participant-page) .mp-summary-card__cover {
	margin: -18px -18px 0;
	border-radius: 16px 16px 0 0;
	max-height: 154px;
}

.mp-registration-page:not(.mp-participant-page) .mp-summary-card__eyebrow,
.mp-registration-page:not(.mp-participant-page) .mp-summary-card__options-title {
	font-size: 0.64rem;
	letter-spacing: 0.12em;
	color: #56728d;
}

.mp-registration-page:not(.mp-participant-page) .mp-summary-card__lead,
.mp-registration-page:not(.mp-participant-page) .mp-summary-card__payments,
.mp-registration-page:not(.mp-participant-page) .mp-summary-card__reassurance {
	font-size: 0.78rem;
	line-height: 1.56;
}

.mp-registration-page:not(.mp-participant-page) .mp-summary-card__list {
	gap: 7px;
}

.mp-registration-page:not(.mp-participant-page) .mp-summary-card__list li,
.mp-registration-page:not(.mp-participant-page) .mp-summary-card__selected p {
	font-size: 0.78rem;
}

.mp-registration-page:not(.mp-participant-page) .mp-summary-card__option,
.mp-registration-page:not(.mp-participant-page) .mp-summary-card__selected {
	border-radius: 10px;
	box-shadow: none;
}

.mp-registration-page:not(.mp-participant-page) .mp-summary-card__option {
	padding: 8px 10px;
	border-color: #dbe5ed;
	background: #f8fbfd;
	font-size: 0.78rem;
}

.mp-registration-page:not(.mp-participant-page) .mp-summary-card__option.is-selected {
	background: #eef4f8;
	border-color: #c9d7e3;
	box-shadow: none;
}

.mp-registration-page:not(.mp-participant-page) .mp-summary-card__selected {
	padding: 10px 11px;
	border-color: #dbe5ed;
	background: #f4f8fb;
}

.mp-registration-page:not(.mp-participant-page) .mp-front-notice,
.mp-registration-page:not(.mp-participant-page) .mp-booking-front__status,
.mp-registration-page:not(.mp-participant-page) .mp-booking-front__cancelled,
.mp-registration-page:not(.mp-participant-page) .mp-booking-thankyou {
	border-radius: 10px;
	box-shadow: none;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-front__status,
.mp-registration-page:not(.mp-participant-page) .mp-booking-front__cancelled,
.mp-registration-page:not(.mp-participant-page) .mp-front-notice {
	padding: 10px 11px;
	font-size: 0.8rem;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-thankyou {
	padding: 16px;
	border-color: #dbe4eb;
	background: #fcfdff;
	gap: 8px;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-thankyou__kicker {
	font-size: 0.64rem;
	letter-spacing: 0.11em;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-thankyou h3 {
	font-family: var(--mp-sans);
	font-size: 1.04rem;
	font-weight: 700;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-thankyou p {
	font-size: 0.82rem;
	line-height: 1.58;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form {
	gap: 8px;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__title {
	margin-bottom: 2px;
	color: #17344f;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__row {
	gap: 8px;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__col,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__section {
	gap: 4px;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__col label,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__section > label {
	font-size: 0.67rem;
	letter-spacing: 0.08em;
	color: #44627d;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form input[type='text'],
.mp-registration-page:not(.mp-participant-page) .mp-booking-form input[type='email'],
.mp-registration-page:not(.mp-participant-page) .mp-booking-form input[type='tel'],
.mp-registration-page:not(.mp-participant-page) .mp-booking-form input[type='password'],
.mp-registration-page:not(.mp-participant-page) .mp-booking-form input[type='file'],
.mp-registration-page:not(.mp-participant-page) .mp-booking-form select {
	min-height: 42px;
	padding: 9px 10px;
	border-color: #d1dce6;
	border-radius: 10px;
	background: #fbfdff;
	font-size: 0.82rem;
	color: #243f60;
	box-shadow: none;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form input:focus,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form select:focus {
	border-color: #2c6b96;
	box-shadow: 0 0 0 2px rgba(44, 107, 150, 0.12);
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__radio-group {
	gap: 7px;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__radio,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__formula-static,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__info,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__account-note,
.mp-registration-page:not(.mp-participant-page) .mp-wire-bank-info,
.mp-registration-page:not(.mp-participant-page) .mp-wire-proof-field {
	padding: 10px 12px;
	border-color: #dbe4eb;
	border-radius: 10px;
	background: #f8fbfd;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__radio span,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__formula-static,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__checkbox {
	font-size: 0.82rem;
	font-weight: 600;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__radio small,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__formula-static small,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form .description,
.mp-registration-page:not(.mp-participant-page) .mp-wire-bank-info__details {
	font-size: 0.75rem;
	line-height: 1.52;
	color: #5b748f;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__benefit {
	margin: 2px 0 0;
	display: flex;
	align-items: flex-start;
	gap: 8px;
	color: #49627c;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__benefit-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	flex: 0 0 16px;
	margin-top: 1px;
	color: #0f7f85;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__benefit-icon svg {
	display: block;
	width: 100%;
	height: 100%;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__benefit-copy {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__benefit-copy strong {
	display: block;
	font-size: 0.77rem;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.01em;
	color: #163b58;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__benefit-copy small {
	display: block;
	font-size: 0.72rem;
	line-height: 1.45;
	color: #5d7792;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__profile-summary {
	gap: 12px;
	padding: 12px;
	border-color: #dbe4eb;
	border-radius: 12px;
	background: #f9fbfd;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__profile-grid {
	gap: 8px;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__profile-item,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__profile-alert {
	padding: 10px 11px;
	border-color: #dbe4eb;
	border-radius: 10px;
	background: #fcfdff;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__profile-item small {
	font-size: 0.66rem;
	letter-spacing: 0.08em;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__profile-item strong {
	font-size: 0.84rem;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__profile-alert {
	border-color: #ead9b6;
	background: #fbf7ee;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__profile-summary-head .mp-btn {
	min-height: 36px;
	padding: 7px 12px;
	border-radius: 10px;
	font-size: 0.74rem;
	box-shadow: none;
	width: auto;
	min-width: fit-content;
	align-self: flex-start;
	white-space: nowrap;
	flex: 0 0 auto;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__profile-summary-head .mp-btn--ghost {
	border-color: #b9d7d2;
	background: #eaf7f4;
	color: #0d6761;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__profile-summary-head .mp-btn--ghost:hover,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__profile-summary-head .mp-btn--ghost:focus {
	border-color: #9dc7c0;
	background: #ddf2ee;
	color: #0a5752;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__submit,
.mp-registration-page:not(.mp-participant-page) .mp-btn--primary {
	min-height: 44px;
	border-radius: 12px;
	background: linear-gradient(135deg, #0e8b8d 0%, #145c86 100%);
	box-shadow: none;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__submit {
	margin-top: 4px;
	width: 100%;
	min-width: 0;
	padding: 10px 18px;
	font-size: 0.82rem;
}

.mp-registration-page:not(.mp-participant-page) .mp-booking-form__submit:not([disabled]):hover,
.mp-registration-page:not(.mp-participant-page) .mp-booking-form__submit:not([disabled]):focus,
.mp-registration-page:not(.mp-participant-page) .mp-btn--primary:hover,
.mp-registration-page:not(.mp-participant-page) .mp-btn--primary:focus {
	filter: brightness(1.04);
	transform: none;
	box-shadow: none;
}

@media (max-width: 960px) {
	.mp-registration-page:not(.mp-participant-page) .mp-registration-layout {
		row-gap: 16px;
	}

	.mp-registration-page:not(.mp-participant-page) .mp-registration-sidebar {
		order: -1;
	}
}

@media (max-width: 640px) {
	.mp-registration-page:not(.mp-participant-page) .mp-registration-hero {
		padding: 28px 0 32px;
	}

	.mp-registration-page:not(.mp-participant-page) .mp-registration-hero__content h1 {
		max-width: none;
		font-size: clamp(1.68rem, 8vw, 2.16rem);
	}

	.mp-registration-page:not(.mp-participant-page) .mp-registration-hero__content p,
	.mp-registration-page:not(.mp-participant-page) .mp-booking-thankyou p,
	.mp-registration-page:not(.mp-participant-page) .mp-booking-form__radio span,
	.mp-registration-page:not(.mp-participant-page) .mp-booking-form__formula-static,
	.mp-registration-page:not(.mp-participant-page) .mp-booking-form__checkbox,
	.mp-registration-page:not(.mp-participant-page) .mp-summary-card__list li,
	.mp-registration-page:not(.mp-participant-page) .mp-summary-card__selected p {
		font-size: 0.8rem;
	}

	.mp-registration-page:not(.mp-participant-page) .mp-booking-form__benefit-copy strong {
		font-size: 0.75rem;
	}

	.mp-registration-page:not(.mp-participant-page) .mp-booking-form__benefit-copy small {
		font-size: 0.7rem;
	}

	.mp-registration-page:not(.mp-participant-page) .mp-panel,
	.mp-registration-page:not(.mp-participant-page) .mp-summary-card {
		padding: 16px;
	}

	.mp-registration-page:not(.mp-participant-page) .mp-summary-card__cover {
		margin: -16px -16px 0;
	}

	.mp-registration-page:not(.mp-participant-page) .mp-booking-form input[type='text'],
	.mp-registration-page:not(.mp-participant-page) .mp-booking-form input[type='email'],
	.mp-registration-page:not(.mp-participant-page) .mp-booking-form input[type='tel'],
	.mp-registration-page:not(.mp-participant-page) .mp-booking-form input[type='password'],
	.mp-registration-page:not(.mp-participant-page) .mp-booking-form input[type='file'],
	.mp-registration-page:not(.mp-participant-page) .mp-booking-form select {
		font-size: 0.8rem;
	}
}

/* ── Participant redesign : tech compact / medical ── */
.mp-participant-page {
	--mp-sans: 'Instrument Sans', 'Avenir Next', Avenir, 'Segoe UI', sans-serif;
	--mp-serif: 'Instrument Sans', 'Avenir Next', Avenir, 'Segoe UI', sans-serif;
}

.mp-participant-page .mp-btn {
	min-height: 42px;
	padding: 9px 18px;
	border-radius: 14px;
	font-size: 13px;
	font-weight: 600;
	box-shadow: none;
}

.mp-participant-page .mp-btn--sm {
	min-height: 34px;
	padding: 6px 12px;
	font-size: 12px;
}

.mp-participant-page .mp-btn--primary,
.mp-participant-page .mp-btn--hero,
.mp-participant-page .mp-btn--gold {
	background: #114d7a;
	border-color: #114d7a;
	box-shadow: none;
}

.mp-participant-page .mp-btn--primary:hover,
.mp-participant-page .mp-btn--primary:focus,
.mp-participant-page .mp-btn--hero:hover,
.mp-participant-page .mp-btn--hero:focus,
.mp-participant-page .mp-btn--gold:hover,
.mp-participant-page .mp-btn--gold:focus {
	background: #0d4167;
	border-color: #0d4167;
	transform: none;
	box-shadow: none;
}

.mp-participant-page .mp-btn--ghost {
	background: #ffffff;
	border-color: #d7e0e7;
	color: #114d7a;
}

.mp-participant-page--standalone {
	background: linear-gradient(180deg, #f5f7fa 0%, #eef2f6 100%);
}

.mp-participant-page--standalone .mp-participant-space {
	padding-top: clamp(60px, 8vh, 88px);
}

.mp-participant-page--standalone .mp-participant-space__back {
	min-height: 38px;
	padding: 0 12px;
	border-color: #d7e0e7;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.96);
	color: #24435d;
	box-shadow: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

.mp-participant-page--standalone .mp-participant-space__back:hover {
	background: #f4f8fb;
	border-color: #c9d5de;
	color: #163750;
	transform: none;
}

.mp-participant-page--standalone .mp-participant-auth-card {
	width: min(100%, 438px);
	max-height: calc(100dvh - clamp(112px, 15vh, 146px));
	gap: 12px;
	padding: 22px 20px;
	border-color: #d7e0e7;
	border-radius: 18px;
	box-shadow: 0 8px 22px rgba(16, 40, 61, 0.05);
}

.mp-participant-page--standalone .mp-participant-auth-tabs {
	width: min(100%, 320px);
	background: #edf2f6;
}

.mp-participant-page--standalone .mp-participant-auth-tab {
	min-height: 36px;
	font-size: 11px;
	font-weight: 600;
}

.mp-participant-page--standalone .mp-participant-auth-brand__logo {
	height: 24px;
	max-width: min(100%, 120px);
}

.mp-participant-page--standalone .mp-participant-auth-card__head h2 {
	font-size: clamp(1.28rem, 3vw, 1.56rem);
	font-weight: 700;
	letter-spacing: -0.03em;
}

.mp-participant-page--standalone .mp-participant-auth-form__head h3 {
	font-size: clamp(0.96rem, 2.1vw, 1.08rem);
	font-weight: 650;
}

.mp-participant-page--standalone .mp-participant-auth-copy,
.mp-participant-page--standalone .mp-participant-auth-form__head p,
.mp-participant-page--standalone .mp-participant-auth-view__footer span,
.mp-participant-page--standalone .mp-participant-auth-stage__footer p {
	font-size: 12px;
	line-height: 1.55;
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form__col label,
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form__section > label {
	font-size: 0.66rem;
	letter-spacing: 0.04em;
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='text'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='email'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='tel'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='password'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form select {
	min-height: 42px;
	font-size: 13px;
	border-radius: 12px;
}

.mp-participant-page.is-authenticated {
	--mp-participant-surface: #ffffff;
	--mp-participant-surface-soft: #f4f7fa;
	--mp-participant-border: #d7e0e7;
	--mp-participant-border-soft: #e7edf2;
	--mp-participant-text: #10283d;
	--mp-participant-text-soft: #355066;
	--mp-participant-text-muted: #6b7c8d;
	--mp-participant-accent: #114d7a;
	--mp-participant-accent-strong: #0d3b5d;
	--mp-participant-accent-soft: #edf4f8;
	--mp-participant-shadow: 0 4px 16px rgba(16, 40, 61, 0.04);
	background: linear-gradient(180deg, #f5f7fa 0%, #eef2f6 100%);
}

.mp-participant-page.is-authenticated .mp-participant-home-hero,
.mp-participant-page.is-authenticated .mp-profile-hero,
.mp-participant-page.is-authenticated .mp-participant-qr-card,
.mp-participant-page.is-authenticated .mp-participant-inline-card,
.mp-participant-page.is-authenticated .mp-participant-stat-card,
.mp-participant-page.is-authenticated .mp-home-booking-card,
.mp-participant-page.is-authenticated .mp-available-event-card,
.mp-participant-page.is-authenticated .mp-profile-card,
.mp-participant-page.is-authenticated .mp-profile-stats-strip,
.mp-participant-page.is-authenticated .mp-masterclass-toolbar,
.mp-participant-page.is-authenticated .mp-masterclass-card,
.mp-participant-page.is-authenticated .mp-masterclass-filter-empty {
	border-radius: 18px;
	box-shadow: var(--mp-participant-shadow);
}

.mp-participant-page.is-authenticated .mp-participant-home-hero,
.mp-participant-page.is-authenticated .mp-profile-hero,
.mp-participant-page.is-authenticated .mp-masterclass-toolbar,
.mp-participant-page.is-authenticated .mp-participant-qr-card {
	padding: 20px;
}

.mp-participant-page.is-authenticated .mp-home-booking-card,
.mp-participant-page.is-authenticated .mp-available-event-card,
.mp-participant-page.is-authenticated .mp-profile-card,
.mp-participant-page.is-authenticated .mp-profile-stats-strip,
.mp-participant-page.is-authenticated .mp-participant-inline-card,
.mp-participant-page.is-authenticated .mp-participant-stat-card {
	padding: 16px;
}

.mp-participant-page.is-authenticated .mp-participant-home-hero h1,
.mp-participant-page.is-authenticated .mp-profile-hero h2 {
	font-size: clamp(1.42rem, 2.5vw, 1.86rem);
	font-weight: 650;
	letter-spacing: -0.03em;
}

.mp-participant-page.is-authenticated .mp-profile-hero h2 {
	line-height: 1.12;
}

.mp-participant-page.is-authenticated .mp-participant-section__head h2,
.mp-participant-page.is-authenticated .mp-profile-card__head h3,
.mp-participant-page.is-authenticated .mp-home-booking-card__content h3,
.mp-participant-page.is-authenticated .mp-available-event-card h3,
.mp-participant-page.is-authenticated .mp-masterclass-toolbar__intro h2,
.mp-participant-page.is-authenticated .mp-masterclass-card__title,
.mp-participant-page.is-authenticated .mp-participant-qr-card__content h3 {
	font-size: clamp(1.02rem, 1.8vw, 1.3rem);
	font-weight: 650;
	letter-spacing: -0.02em;
}

.mp-participant-page.is-authenticated .mp-participant-home-hero__meta,
.mp-participant-page.is-authenticated .mp-profile-hero p,
.mp-participant-page.is-authenticated .mp-masterclass-toolbar__intro p:last-child,
.mp-participant-page.is-authenticated .mp-home-booking-card__content p,
.mp-participant-page.is-authenticated .mp-available-event-card p,
.mp-participant-page.is-authenticated .mp-participant-inline-card p,
.mp-participant-page.is-authenticated .mp-masterclass-card__lead,
.mp-participant-page.is-authenticated .mp-masterclass-card__summary span,
.mp-participant-page.is-authenticated .mp-masterclass-card__meta li,
.mp-participant-page.is-authenticated .mp-participant-qr-card__content p {
	font-size: 12px;
	line-height: 1.58;
}

.mp-participant-page.is-authenticated .mp-participant-section__eyebrow,
.mp-participant-page.is-authenticated .mp-profile-info-row small,
.mp-participant-page.is-authenticated .mp-profile-menu-row small,
.mp-participant-page.is-authenticated .mp-masterclass-search__label {
	font-size: 10px;
	letter-spacing: 0.09em;
}

.mp-participant-page.is-authenticated .mp-profile-info-row strong,
.mp-participant-page.is-authenticated .mp-profile-menu-row strong,
.mp-participant-page.is-authenticated .mp-participant-inline-card strong,
.mp-participant-page.is-authenticated .mp-home-booking-card__date strong,
.mp-participant-page.is-authenticated .mp-home-booking-card__date span,
.mp-participant-page.is-authenticated .mp-masterclass-card__price,
.mp-participant-page.is-authenticated .mp-masterclass-card__summary strong,
.mp-participant-page.is-authenticated .mp-masterclass-card__progress-head strong {
	font-size: 13px;
}

.mp-participant-page.is-authenticated .mp-participant-brand-pill,
.mp-participant-page.is-authenticated .mp-masterclass-count-pill,
.mp-participant-page.is-authenticated .mp-profile-badge,
.mp-participant-page.is-authenticated .mp-participant-qr-card__badge,
.mp-participant-page.is-authenticated .mp-available-event-card__tag,
.mp-participant-page.is-authenticated .mp-masterclass-card__cat {
	border-radius: 12px;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.06em;
}

.mp-participant-page.is-authenticated .mp-profile-hero__avatar {
	width: 74px;
	height: 74px;
}

.mp-participant-page.is-authenticated .mp-profile-hero__avatar span,
.mp-participant-page.is-authenticated .mp-participant-sidebar__avatar-inner {
	font-weight: 650;
}

.mp-participant-page.is-authenticated .mp-participant-notif-btn,
.mp-participant-page.is-authenticated .mp-profile-hero__edit {
	width: 34px;
	height: 34px;
	border-radius: 12px;
}

.mp-participant-page.is-authenticated .mp-participant-stats-row,
.mp-participant-page.is-authenticated .mp-profile-stats-strip,
.mp-participant-page.is-authenticated .mp-masterclass-grid {
	gap: 14px;
}

.mp-participant-page.is-authenticated .mp-profile-info-row,
.mp-participant-page.is-authenticated .mp-profile-menu-row {
	gap: 10px;
}

.mp-participant-page.is-authenticated .mp-profile-info-row > .mp-icon:first-child,
.mp-participant-page.is-authenticated .mp-profile-info-row > svg:first-child,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--gold,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--navy,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--success,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--accent {
	width: 32px;
	height: 32px;
	border-radius: 10px;
}

.mp-participant-page.is-authenticated .mp-masterclass-toolbar {
	gap: 14px;
	background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

.mp-participant-page.is-authenticated .mp-masterclass-search__input {
	min-height: 44px;
	padding: 0 14px;
	border-radius: 12px;
	font-size: 13px;
}

.mp-participant-page.is-authenticated .mp-masterclass-search__input:focus {
	box-shadow: 0 0 0 3px rgba(17, 77, 122, 0.08);
}

.mp-participant-page.is-authenticated .mp-filter-tab {
	padding: 8px 12px;
	border-radius: 12px;
	font-size: 11px;
	font-weight: 600;
	box-shadow: none;
}

.mp-participant-page.is-authenticated .mp-filter-tab:hover {
	transform: none;
}

.mp-participant-page.is-authenticated .mp-filter-tab.is-active,
.mp-participant-page.is-authenticated .mp-masterclass-card__actions .mp-btn--primary,
.mp-participant-page.is-authenticated .mp-btn--gold {
	box-shadow: none;
}

.mp-participant-page.is-authenticated .mp-home-booking-card:hover,
.mp-participant-page.is-authenticated .mp-masterclass-card:hover {
	box-shadow: 0 8px 18px rgba(16, 40, 61, 0.06);
	transform: none;
}

.mp-participant-page.is-authenticated .mp-participant-bottom-nav {
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.97);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	box-shadow: 0 8px 20px rgba(16, 40, 61, 0.07);
}

.mp-participant-page.is-authenticated .mp-participant-bottom-nav__item {
	font-size: 10px;
	font-weight: 600;
}

.mp-participant-page.is-authenticated .mp-participant-bottom-nav__icon {
	width: 34px;
	height: 34px;
	border-radius: 12px;
}

@media (min-width: 900px) {
	.mp-participant-page.is-authenticated .mp-participant-app {
		grid-template-columns: 236px minmax(0, 1fr);
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar {
		padding: 22px 16px;
		background: #f7f9fb;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__brand {
		padding: 4px 6px 18px;
		margin-bottom: 14px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__avatar-wrap {
		width: 42px;
		height: 42px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__user-info strong {
		font-size: 12.5px;
		font-weight: 650;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__user-info small {
		font-size: 10px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__item {
		padding: 10px 11px;
		border-radius: 10px;
		font-size: 12.5px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__soon {
		font-size: 8px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__footer {
		padding-top: 14px;
		margin-top: 14px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__logout {
		padding: 10px 11px;
		border-radius: 10px;
		font-size: 12px;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen {
		padding: 26px 28px 36px;
	}
}

@media (max-width: 767px) {
	.mp-participant-page--standalone {
		padding: 16px;
	}

	.mp-participant-page--standalone .mp-participant-space {
		padding-top: 64px;
	}

	.mp-participant-page--standalone .mp-participant-auth-card {
		width: min(100%, 100%);
		padding: 20px 18px;
		border-radius: 16px;
	}
}

/* ── Participant dashboard v4 : SaaS médical compact ── */
.mp-participant-page {
	--mp-sans: 'Inter', 'Avenir Next', Avenir, 'Segoe UI', sans-serif;
	--mp-serif: 'Inter', 'Avenir Next', Avenir, 'Segoe UI', sans-serif;
	--mp-ui-space-1: 4px;
	--mp-ui-space-2: 8px;
	--mp-ui-space-3: 12px;
	--mp-ui-space-4: 16px;
	--mp-ui-space-5: 20px;
}

.mp-participant-page .mp-btn {
	min-height: 38px;
	padding: 8px 14px;
	border-radius: 8px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0;
	box-shadow: none;
}

.mp-participant-page .mp-btn--sm {
	min-height: 32px;
	padding: 6px 10px;
	font-size: 12px;
}

.mp-participant-page .mp-btn--primary,
.mp-participant-page .mp-btn--hero,
.mp-participant-page .mp-btn--gold {
	background: #1f5f8b;
	border-color: #1f5f8b;
	color: #ffffff;
	box-shadow: none;
}

.mp-participant-page .mp-btn--primary:hover,
.mp-participant-page .mp-btn--primary:focus,
.mp-participant-page .mp-btn--hero:hover,
.mp-participant-page .mp-btn--hero:focus,
.mp-participant-page .mp-btn--gold:hover,
.mp-participant-page .mp-btn--gold:focus {
	background: #184c70;
	border-color: #184c70;
	box-shadow: none;
	transform: none;
}

.mp-participant-page .mp-btn--ghost,
.mp-participant-page .mp-btn--outline {
	background: #ffffff;
	border-color: #e5eaf2;
	color: #1f5f8b;
}

.mp-participant-page--standalone {
	background: linear-gradient(180deg, #f7f9fc 0%, #eef3f7 100%);
}

.mp-participant-page--standalone .mp-participant-space {
	padding-top: clamp(56px, 8vh, 84px);
}

.mp-participant-page--standalone .mp-participant-space__back {
	min-height: 36px;
	padding: 0 10px;
	border-radius: 8px;
	border-color: #e5eaf2;
	background: rgba(255, 255, 255, 0.96);
	color: #355066;
	box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

.mp-participant-page--standalone .mp-participant-auth-card {
	width: min(100%, 420px);
	max-height: calc(100dvh - 108px);
	gap: var(--mp-ui-space-3);
	padding: var(--mp-ui-space-4);
	border: 1px solid #e5eaf2;
	border-radius: 8px;
	box-shadow: 0 4px 18px rgba(15, 23, 42, 0.05);
}

.mp-participant-page--standalone .mp-participant-auth-tabs {
	width: min(100%, 304px);
	border-radius: 10px;
	background: #f3f6fa;
}

.mp-participant-page--standalone .mp-participant-auth-tab {
	min-height: 34px;
	font-size: 12px;
	font-weight: 600;
}

.mp-participant-page--standalone .mp-participant-auth-brand__logo {
	height: 22px;
	max-width: min(100%, 116px);
}

.mp-participant-page--standalone .mp-participant-auth-card__head h2 {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: -0.03em;
}

.mp-participant-page--standalone .mp-participant-auth-form__head h3 {
	font-size: 16px;
	font-weight: 650;
}

.mp-participant-page--standalone .mp-participant-auth-copy,
.mp-participant-page--standalone .mp-participant-auth-form__head p,
.mp-participant-page--standalone .mp-participant-auth-view__footer span,
.mp-participant-page--standalone .mp-participant-auth-stage__footer p {
	font-size: 12px;
	line-height: 1.5;
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form__col label,
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form__section > label {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
}

.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='text'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='email'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='tel'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form input[type='password'],
.mp-participant-page--standalone .mp-participant-auth-card .mp-booking-form select {
	min-height: 40px;
	padding: 0 12px;
	border-radius: 8px;
	font-size: 14px;
}

.mp-participant-page.is-authenticated {
	--mp-participant-surface: #ffffff;
	--mp-participant-surface-soft: #f7f9fc;
	--mp-participant-border: #e5eaf2;
	--mp-participant-border-soft: #eef3f8;
	--mp-participant-text: #10283d;
	--mp-participant-text-soft: #355066;
	--mp-participant-text-muted: #66768a;
	--mp-participant-accent: #1f5f8b;
	--mp-participant-accent-strong: #184c70;
	--mp-participant-accent-soft: #eef5fb;
	--mp-participant-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
	background: #f6f8fb;
}

.mp-participant-page.is-authenticated .mp-participant-home-hero,
.mp-participant-page.is-authenticated .mp-profile-hero,
.mp-participant-page.is-authenticated .mp-participant-qr-card,
.mp-participant-page.is-authenticated .mp-participant-inline-card,
.mp-participant-page.is-authenticated .mp-participant-stat-card,
.mp-participant-page.is-authenticated .mp-home-booking-card,
.mp-participant-page.is-authenticated .mp-available-event-card,
.mp-participant-page.is-authenticated .mp-profile-card,
.mp-participant-page.is-authenticated .mp-profile-stats-strip,
.mp-participant-page.is-authenticated .mp-masterclass-toolbar,
.mp-participant-page.is-authenticated .mp-masterclass-card,
.mp-participant-page.is-authenticated .mp-masterclass-filter-empty {
	border: 1px solid var(--mp-participant-border);
	border-radius: 8px;
	background: var(--mp-participant-surface);
	box-shadow: var(--mp-participant-shadow);
}

.mp-participant-page.is-authenticated .mp-participant-home-hero,
.mp-participant-page.is-authenticated .mp-profile-hero,
.mp-participant-page.is-authenticated .mp-participant-qr-card,
.mp-participant-page.is-authenticated .mp-participant-inline-card,
.mp-participant-page.is-authenticated .mp-masterclass-toolbar,
.mp-participant-page.is-authenticated .mp-masterclass-card,
.mp-participant-page.is-authenticated .mp-profile-card,
.mp-participant-page.is-authenticated .mp-home-booking-card,
.mp-participant-page.is-authenticated .mp-available-event-card {
	padding: var(--mp-ui-space-4);
}

.mp-participant-page.is-authenticated .mp-participant-home-hero,
.mp-participant-page.is-authenticated .mp-profile-hero {
	gap: var(--mp-ui-space-2);
	padding-bottom: var(--mp-ui-space-4);
}

.mp-participant-page.is-authenticated .mp-participant-home-hero::before,
.mp-participant-page.is-authenticated .mp-profile-hero::before,
.mp-participant-page.is-authenticated .mp-participant-qr-card::before {
	display: none;
}

.mp-participant-page.is-authenticated .mp-participant-home-hero h1 {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.03em;
}

.mp-participant-page.is-authenticated .mp-participant-home-hero__meta,
.mp-participant-page.is-authenticated .mp-profile-hero p,
.mp-participant-page.is-authenticated .mp-home-booking-card__content p,
.mp-participant-page.is-authenticated .mp-available-event-card p,
.mp-participant-page.is-authenticated .mp-participant-inline-card p,
.mp-participant-page.is-authenticated .mp-masterclass-toolbar__intro p:last-child,
.mp-participant-page.is-authenticated .mp-masterclass-card__lead,
.mp-participant-page.is-authenticated .mp-masterclass-card__summary span,
.mp-participant-page.is-authenticated .mp-masterclass-card__meta li,
.mp-participant-page.is-authenticated .mp-available-event-card__footer span,
.mp-participant-page.is-authenticated .mp-participant-qr-card__content p {
	font-size: 12px;
	line-height: 1.5;
}

.mp-participant-page.is-authenticated .mp-participant-section,
.mp-participant-page.is-authenticated .mp-profile-card,
.mp-participant-page.is-authenticated .mp-profile-menu,
.mp-participant-page.is-authenticated .mp-profile-info-list,
.mp-participant-page.is-authenticated .mp-participant-home-bookings,
.mp-participant-page.is-authenticated .mp-participant-available-events {
	gap: var(--mp-ui-space-2);
}

.mp-participant-page.is-authenticated .mp-participant-section__head,
.mp-participant-page.is-authenticated .mp-profile-card__head {
	align-items: center;
	gap: var(--mp-ui-space-2);
}

.mp-participant-page.is-authenticated .mp-participant-section__eyebrow,
.mp-participant-page.is-authenticated .mp-profile-info-row small,
.mp-participant-page.is-authenticated .mp-profile-menu-row small,
.mp-participant-page.is-authenticated .mp-masterclass-search__label {
	margin: 0 0 2px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
}

.mp-participant-page.is-authenticated .mp-participant-section__head h2,
.mp-participant-page.is-authenticated .mp-profile-card__head h3,
.mp-participant-page.is-authenticated .mp-home-booking-card__content h3,
.mp-participant-page.is-authenticated .mp-available-event-card h3,
.mp-participant-page.is-authenticated .mp-masterclass-toolbar__intro h2,
.mp-participant-page.is-authenticated .mp-masterclass-card__title,
.mp-participant-page.is-authenticated .mp-participant-qr-card__content h3 {
	font-size: 16px;
	font-weight: 650;
	line-height: 1.3;
	letter-spacing: -0.02em;
}

.mp-participant-page.is-authenticated .mp-participant-link-btn {
	font-size: 12px;
	font-weight: 600;
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-participant-brand-pill,
.mp-participant-page.is-authenticated .mp-masterclass-count-pill,
.mp-participant-page.is-authenticated .mp-profile-badge,
.mp-participant-page.is-authenticated .mp-masterclass-card__status,
.mp-participant-page.is-authenticated .mp-masterclass-card__cat,
.mp-participant-page.is-authenticated .mp-participant-qr-card__badge,
.mp-participant-page.is-authenticated .mp-available-event-card__tag {
	padding: 4px 8px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
}

.mp-participant-page.is-authenticated .mp-participant-notif-btn,
.mp-participant-page.is-authenticated .mp-profile-hero__edit {
	width: 32px;
	height: 32px;
	border-radius: 8px;
}

.mp-participant-page.is-authenticated .mp-participant-stats-row {
	display: flex;
	flex-wrap: wrap;
	gap: var(--mp-ui-space-2);
	margin-top: var(--mp-ui-space-2);
}

.mp-participant-page.is-authenticated .mp-participant-stat-card {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	padding: 8px 10px;
	text-align: left;
}

.mp-participant-page.is-authenticated .mp-participant-stat-card strong,
.mp-participant-page.is-authenticated .mp-profile-stats-strip strong,
.mp-participant-page.is-authenticated .mp-masterclass-overview__card strong,
.mp-participant-page.is-authenticated .mp-masterclass-results strong {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
}

.mp-participant-page.is-authenticated .mp-participant-stat-card span,
.mp-participant-page.is-authenticated .mp-profile-stats-strip span,
.mp-participant-page.is-authenticated .mp-masterclass-overview__card span {
	margin-top: 0;
	font-size: 12px;
}

.mp-participant-page.is-authenticated .mp-participant-qr-card {
	grid-template-columns: 72px minmax(0, 1fr);
	gap: var(--mp-ui-space-3);
}

.mp-participant-page.is-authenticated .mp-participant-qr-card__media {
	padding: 8px;
	border-radius: 8px;
}

.mp-participant-page.is-authenticated .mp-participant-qr-card__media img {
	width: 56px;
	height: 56px;
}

.mp-participant-page.is-authenticated .mp-participant-inline-card {
	align-items: center;
}

.mp-participant-page.is-authenticated .mp-home-booking-card {
	grid-template-columns: 3px 52px minmax(0, 1fr);
	gap: var(--mp-ui-space-3);
	padding-left: 0;
}

.mp-participant-page.is-authenticated .mp-home-booking-card:hover,
.mp-participant-page.is-authenticated .mp-masterclass-card:hover {
	transform: none;
	box-shadow: 0 2px 10px rgba(16, 24, 40, 0.05);
}

.mp-participant-page.is-authenticated .mp-home-booking-card__date {
	padding: 8px 6px;
	border-radius: 8px;
}

.mp-participant-page.is-authenticated .mp-home-booking-card__date strong {
	font-size: 16px;
	font-weight: 700;
}

.mp-participant-page.is-authenticated .mp-home-booking-card__date span,
.mp-participant-page.is-authenticated .mp-home-booking-card__badge {
	font-size: 11px;
}

.mp-participant-page.is-authenticated .mp-available-event-card__head strong {
	font-size: 14px;
	font-weight: 700;
}

.mp-participant-page.is-authenticated .mp-profile-hero {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr) auto;
	grid-template-areas:
		'avatar name badges'
		'avatar meta badges';
	align-items: center;
	gap: 2px var(--mp-ui-space-3);
	text-align: left;
}

.mp-participant-page.is-authenticated .mp-profile-hero__avatar {
	grid-area: avatar;
	width: 56px;
	height: 56px;
	margin: 0;
	padding: 2px;
	border-radius: 12px;
	background: var(--mp-participant-accent-soft);
}

.mp-participant-page.is-authenticated .mp-profile-hero__avatar span,
.mp-participant-page.is-authenticated .mp-participant-sidebar__avatar-inner {
	border-radius: 10px;
	background: #ffffff;
	font-size: 16px;
	font-weight: 700;
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-profile-hero__edit {
	right: -3px;
	bottom: -3px;
	width: 18px;
	height: 18px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 6px;
}

.mp-participant-page.is-authenticated .mp-profile-hero h2 {
	grid-area: name;
	margin: 0;
	width: auto;
	max-width: none;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
}

.mp-participant-page.is-authenticated .mp-profile-hero p {
	grid-area: meta;
	margin: 0;
	font-size: 12px;
	text-align: left;
}

.mp-participant-page.is-authenticated .mp-profile-hero__badges {
	grid-area: badges;
	justify-content: flex-end;
	align-self: center;
	gap: 6px;
	margin-top: 0;
}

.mp-participant-page.is-authenticated .mp-profile-stats-strip {
	display: flex;
	flex-wrap: wrap;
	gap: var(--mp-ui-space-2);
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	margin-top: var(--mp-ui-space-2);
}

.mp-participant-page.is-authenticated .mp-profile-stats-strip div {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	padding: 8px 10px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 8px;
	background: var(--mp-participant-surface);
	text-align: left;
}

.mp-participant-page.is-authenticated .mp-profile-stats-strip div + div {
	border-left: 1px solid var(--mp-participant-border);
}

.mp-participant-page.is-authenticated .mp-profile-info-list {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--mp-ui-space-2) var(--mp-ui-space-3);
}

.mp-participant-page.is-authenticated .mp-profile-info-row,
.mp-participant-page.is-authenticated .mp-profile-menu-row {
	grid-template-columns: 28px minmax(0, 1fr) auto;
	gap: 10px;
}

.mp-participant-page.is-authenticated .mp-profile-info-row > .mp-icon:first-child,
.mp-participant-page.is-authenticated .mp-profile-info-row > svg:first-child,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--gold,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--navy,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--success,
.mp-participant-page.is-authenticated .mp-profile-menu-row__icon--accent {
	width: 28px;
	height: 28px;
	padding: 6px;
	border-radius: 8px;
}

.mp-participant-page.is-authenticated .mp-profile-info-row strong,
.mp-participant-page.is-authenticated .mp-profile-menu-row strong {
	margin-top: 1px;
	font-size: 14px;
	font-weight: 600;
}

.mp-participant-page.is-authenticated .mp-profile-menu-row {
	padding: 8px 0;
}

.mp-participant-page.is-authenticated .mp-profile-edit-form {
	gap: var(--mp-ui-space-3);
}

.mp-participant-page.is-authenticated .mp-profile-edit-form__hint {
	font-size: 12px;
	line-height: 1.5;
}

.mp-participant-page.is-authenticated .mp-profile-edit-form__actions .mp-btn {
	min-width: 0;
}

.mp-participant-page.is-authenticated .mp-profile-logout {
	padding: 12px;
	border-radius: 8px;
}

.mp-participant-page.is-authenticated .mp-masterclass-hero {
	padding-bottom: var(--mp-ui-space-4);
}

.mp-participant-page.is-authenticated .mp-masterclass-overview {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--mp-ui-space-2);
	margin-top: var(--mp-ui-space-3);
}

.mp-participant-page.is-authenticated .mp-masterclass-overview__card {
	padding: 8px 10px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 8px;
	background: var(--mp-participant-surface-soft);
}

.mp-participant-page.is-authenticated .mp-masterclass-toolbar {
	gap: var(--mp-ui-space-3);
	padding: var(--mp-ui-space-4);
	border-radius: 8px;
	background: var(--mp-participant-surface);
}

.mp-participant-page.is-authenticated .mp-masterclass-toolbar__intro h2 {
	font-size: 16px;
	font-weight: 650;
}

.mp-participant-page.is-authenticated .mp-masterclass-toolbar__aside {
	gap: var(--mp-ui-space-2);
}

.mp-participant-page.is-authenticated .mp-masterclass-search {
	gap: 6px;
}

.mp-participant-page.is-authenticated .mp-masterclass-search__input {
	min-height: 40px;
	padding: 0 12px;
	border-radius: 8px;
	font-size: 14px;
}

.mp-participant-page.is-authenticated .mp-masterclass-search__input:focus {
	box-shadow: 0 0 0 3px rgba(31, 95, 139, 0.08);
}

.mp-participant-page.is-authenticated .mp-masterclass-results {
	font-size: 12px;
}

.mp-participant-page.is-authenticated .mp-masterclass-filters {
	gap: 6px;
}

.mp-participant-page.is-authenticated .mp-filter-tab {
	padding: 7px 10px;
	border-radius: 8px;
	font-size: 12px;
	font-weight: 600;
	box-shadow: none;
}

.mp-participant-page.is-authenticated .mp-filter-tab:hover {
	transform: none;
}

.mp-participant-page.is-authenticated .mp-masterclass-grid {
	grid-template-columns: 1fr;
	gap: var(--mp-ui-space-2);
}

.mp-participant-page.is-authenticated .mp-masterclass-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	grid-template-areas:
		'top top'
		'body footer'
		'meta footer'
		'progress footer';
	gap: 8px 16px;
	align-items: center;
	padding: 14px 16px;
	border-radius: 8px;
	isolation: isolate;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__top {
	grid-area: top;
	align-items: center;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__badges {
	gap: 6px;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__price {
	font-size: 14px;
	font-weight: 700;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__price--free {
	font-size: 11px;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__body {
	grid-area: body;
	gap: 4px;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__title {
	font-size: 16px;
	font-weight: 650;
	line-height: 1.35;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__lead {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__meta {
	grid-area: meta;
	gap: 6px 12px;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__meta li {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	font-size: 12px;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__progress {
	grid-area: progress;
	gap: 6px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__progress-head {
	align-items: center;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__progress-head strong,
.mp-participant-page.is-authenticated .mp-masterclass-card__summary strong {
	font-size: 12px;
	font-weight: 600;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__progress-head span {
	font-size: 11px;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__progress-track {
	height: 4px;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__footer {
	grid-area: footer;
	position: relative;
	z-index: 2;
	align-self: stretch;
	min-width: 170px;
	gap: 8px;
	padding-top: 0;
	border-top: 0;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__summary {
	gap: 2px;
	text-align: right;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__summary span {
	display: none;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__actions {
	position: relative;
	z-index: 3;
	justify-content: flex-end;
	gap: 8px;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__actions .mp-btn {
	position: relative;
	z-index: 3;
}

.mp-participant-page.is-authenticated .mp-masterclass-card__actions .mp-btn--primary,
.mp-participant-page.is-authenticated .mp-masterclass-card__actions .mp-btn--ghost,
.mp-participant-page.is-authenticated .mp-filter-tab.is-active,
.mp-participant-page.is-authenticated .mp-btn--gold {
	box-shadow: none;
}

.mp-participant-page.is-authenticated .mp-masterclass-filter-empty {
	padding: 12px 14px;
	font-size: 12px;
}

.mp-participant-page.is-authenticated .mp-toast {
	padding: 10px 14px;
	border-radius: 8px;
	background: #10283d;
	box-shadow: 0 8px 18px rgba(16, 24, 40, 0.12);
	font-size: 12px;
}

.mp-participant-page.is-authenticated .mp-participant-bottom-nav {
	bottom: 10px;
	width: min(calc(100% - 16px), 420px);
	padding: 8px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.98);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	box-shadow: 0 8px 18px rgba(16, 24, 40, 0.08);
}

.mp-participant-page.is-authenticated .mp-participant-bottom-nav__item {
	gap: 4px;
	font-size: 10px;
	font-weight: 600;
}

.mp-participant-page.is-authenticated .mp-participant-bottom-nav__icon {
	width: 30px;
	height: 30px;
	border-radius: 8px;
}

@media (min-width: 900px) {
	.mp-participant-page.is-authenticated .mp-participant-shell {
		background: #f6f8fb;
	}

	.mp-participant-page.is-authenticated .mp-participant-app {
		grid-template-columns: 220px minmax(0, 1fr);
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar {
		padding: 16px 12px;
		background: #fbfcfe;
		border-right: 1px solid var(--mp-participant-border);
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__brand {
		padding: 0 0 12px;
		margin-bottom: 12px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__avatar-wrap {
		width: 34px;
		height: 34px;
		padding: 1px;
		border-radius: 10px;
		background: var(--mp-participant-accent-soft);
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__user-info strong {
		font-size: 12px;
		font-weight: 650;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__user-info small {
		font-size: 11px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__nav {
		gap: 4px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__item {
		padding: 8px 10px;
		border-radius: 8px;
		font-size: 13px;
		font-weight: 600;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__item.is-active::before {
		top: 8px;
		bottom: 8px;
		width: 2px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__icon {
		width: 18px;
		font-size: 14px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__soon {
		padding: 2px 6px;
		font-size: 10px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__footer {
		padding-top: 12px;
		margin-top: 12px;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar__logout {
		padding: 9px 10px;
		border-radius: 8px;
		font-size: 12px;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen {
		padding: 16px 20px 24px;
	}
}

@media (max-width: 900px) {
	.mp-participant-page.is-authenticated .mp-profile-info-list {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 782px) {
	.mp-participant-page.is-authenticated .mp-participant-screen {
		padding-bottom: calc(116px + env(safe-area-inset-bottom, 0px));
	}

	.mp-participant-page.is-authenticated .mp-masterclass-overview {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mp-participant-page.is-authenticated .mp-masterclass-card {
		grid-template-columns: 1fr;
		grid-template-areas:
			'top'
			'body'
			'footer'
			'meta'
			'progress';
		align-items: start;
	}

	.mp-participant-page.is-authenticated .mp-masterclass-card__footer,
	.mp-participant-page.is-authenticated .mp-masterclass-card__summary,
	.mp-participant-page.is-authenticated .mp-masterclass-card__actions {
		text-align: left;
		justify-content: flex-start;
	}

	.mp-participant-page.is-authenticated .mp-masterclass-card__footer {
		padding-top: 2px;
	}

	.mp-participant-page.is-authenticated .mp-profile-hero {
		grid-template-columns: 56px minmax(0, 1fr);
		grid-template-areas:
			'avatar name'
			'avatar meta'
			'badges badges';
	}

	.mp-participant-page.is-authenticated .mp-profile-hero__badges {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mp-event-page .mc-btn,
	.mp-event-page .mc-nav-arrow,
	.mp-event-page .mc-faq-question::after,
	.mp-event-page .mc-speaker-card {
		transition: none;
	}
}

/* ── Participant dashboard v5 : écrans métier compacts ── */
.mp-participant-page.is-authenticated .mp-participant-sidebar__item,
.mp-participant-page.is-authenticated .mp-participant-bottom-nav__item,
.mp-participant-page.is-authenticated .mp-profile-menu-row,
.mp-participant-page.is-authenticated .mp-quick-action,
.mp-participant-page.is-authenticated .mp-participant-link-btn,
.mp-participant-page.is-authenticated .mp-table-link {
	text-decoration: none;
}

.mp-participant-page.is-authenticated .mp-participant-sidebar__meta {
	display: flex;
	justify-content: flex-start;
	margin-bottom: 8px;
}

.mp-participant-page.is-authenticated .mp-dashboard-hero-badges,
.mp-participant-page.is-authenticated .mp-inline-pills,
.mp-participant-page.is-authenticated .mp-screen-head__stats {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.mp-participant-page.is-authenticated .mp-dashboard-identity {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.mp-participant-page.is-authenticated .mp-dashboard-identity__meta {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 4px;
	font-size: 12px;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-dashboard-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.mp-participant-page.is-authenticated .mp-dashboard-panel {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.mp-participant-page.is-authenticated .mp-quick-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.mp-participant-page.is-authenticated .mp-quick-action {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 8px;
	background: var(--mp-participant-surface-soft);
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-quick-action:hover {
	border-color: #d9e4f1;
	background: #ffffff;
}

.mp-participant-page.is-authenticated .mp-quick-action__icon,
.mp-participant-page.is-authenticated .mp-notification-item__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 8px;
	background: var(--mp-participant-accent-soft);
	color: var(--mp-participant-accent);
	flex-shrink: 0;
}

.mp-participant-page.is-authenticated .mp-quick-action__copy {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.mp-participant-page.is-authenticated .mp-quick-action__copy strong {
	font-size: 13px;
	font-weight: 650;
}

.mp-participant-page.is-authenticated .mp-quick-action__copy small,
.mp-participant-page.is-authenticated .mp-record-card__meta,
.mp-participant-page.is-authenticated .mp-record-card__note,
.mp-participant-page.is-authenticated .mp-empty-state p,
.mp-participant-page.is-authenticated .mp-security-tip p,
.mp-participant-page.is-authenticated .mp-data-table td,
.mp-participant-page.is-authenticated .mp-data-table th,
.mp-participant-page.is-authenticated .mp-notification-item__head span,
.mp-participant-page.is-authenticated .mp-notification-item__body p {
	font-size: 12px;
	line-height: 1.5;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-record-card__meta,
.mp-participant-page.is-authenticated .mp-record-card__note,
.mp-participant-page.is-authenticated .mp-empty-state p,
.mp-participant-page.is-authenticated .mp-security-tip p,
.mp-participant-page.is-authenticated .mp-notification-item__body p {
	margin: 0;
}

.mp-participant-page.is-authenticated .mp-empty-state {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	padding: 14px 16px;
	border: 1px dashed var(--mp-participant-border);
	border-radius: 8px;
	background: #fbfcfe;
}

.mp-participant-page.is-authenticated .mp-empty-state strong {
	font-size: 14px;
	font-weight: 650;
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-status-pill {
	display: inline-flex;
	align-items: center;
	padding: 4px 8px;
	border-radius: 999px;
	border: 1px solid transparent;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.2;
	white-space: nowrap;
}

.mp-participant-page.is-authenticated .mp-status-pill--neutral {
	background: #f3f6fa;
	border-color: var(--mp-participant-border);
	color: var(--mp-participant-text-soft);
}

.mp-participant-page.is-authenticated .mp-status-pill--success {
	background: #edf8f2;
	border-color: #cfead9;
	color: #157347;
}

.mp-participant-page.is-authenticated .mp-status-pill--warning {
	background: #fff7e8;
	border-color: #f5dfb0;
	color: #9a6700;
}

.mp-participant-page.is-authenticated .mp-status-pill--danger {
	background: #fff1f0;
	border-color: #f3d0cc;
	color: #b42318;
}

.mp-participant-page.is-authenticated .mp-record-list,
.mp-participant-page.is-authenticated .mp-notification-list,
.mp-participant-page.is-authenticated .mp-security-tips {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.mp-participant-page.is-authenticated .mp-record-card,
.mp-participant-page.is-authenticated .mp-notification-item {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 8px;
	background: var(--mp-participant-surface);
}

.mp-participant-page.is-authenticated .mp-record-card--highlight {
	background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.mp-participant-page.is-authenticated .mp-record-card__main,
.mp-participant-page.is-authenticated .mp-record-card__aside,
.mp-participant-page.is-authenticated .mp-notification-item__body {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

.mp-participant-page.is-authenticated .mp-record-card__header,
.mp-participant-page.is-authenticated .mp-notification-item__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 10px;
}

.mp-participant-page.is-authenticated .mp-record-card__main h3,
.mp-participant-page.is-authenticated .mp-notification-item__head strong {
	margin: 0;
	font-size: 14px;
	font-weight: 650;
	line-height: 1.35;
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-record-card__aside {
	align-items: flex-end;
	justify-content: center;
	text-align: right;
}

.mp-participant-page.is-authenticated .mp-record-card__aside strong {
	font-size: 13px;
	font-weight: 650;
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-record-card__aside span {
	font-size: 12px;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-record-card__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 8px;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus {
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 14px;
	padding: 14px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 10px;
	background: linear-gradient(180deg, #ffffff 0%, #f7faff 100%);
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__media {
	position: relative;
	min-height: 112px;
	border-radius: 10px;
	overflow: hidden;
	background: linear-gradient(135deg, #163052 0%, #0e2138 100%);
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__media-link {
	display: block;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__media-link:hover,
.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__media-link:focus-visible {
	transform: translateY(-1px);
	box-shadow: 0 8px 22px rgba(18, 42, 74, 0.18);
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__media img,
.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__placeholder {
	display: block;
	width: 100%;
	height: 100%;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__media img {
	object-fit: cover;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__placeholder span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.14);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.04em;
	color: #ffffff;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__body {
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-width: 0;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__head h3 {
	margin: 0;
	font-size: 15px;
	font-weight: 650;
	line-height: 1.35;
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__title-link {
	color: inherit;
	text-decoration: none;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__title-link:hover,
.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__title-link:focus-visible {
	color: var(--mp-participant-accent);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.12em;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__meta,
.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__note {
	margin: 0;
	font-size: 12px;
	line-height: 1.5;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__progress {
	display: grid;
	gap: 7px;
	margin-top: auto;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__progress-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__progress-head strong {
	font-size: 12px;
	font-weight: 650;
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__progress-head span {
	font-size: 11px;
	font-weight: 600;
	color: var(--mp-participant-text-soft);
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__progress-track {
	position: relative;
	height: 6px;
	border-radius: 999px;
	background: #d9e6f8;
	overflow: hidden;
}

.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__progress-track span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #8db8ff 0%, #3f79f4 100%);
}

.mp-participant-page.is-authenticated .mp-participant-screen-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.mp-participant-page.is-authenticated .mp-participant-screen-head h2 {
	margin: 0 0 4px;
	font-size: 16px;
	font-weight: 650;
	line-height: 1.3;
}

.mp-participant-page.is-authenticated .mp-participant-screen-head p {
	margin: 0;
	font-size: 12px;
	line-height: 1.5;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-notification-item {
	grid-template-columns: 32px minmax(0, 1fr);
	align-items: start;
}

.mp-participant-page.is-authenticated .mp-notification-item--success .mp-notification-item__icon {
	background: #edf8f2;
	color: #157347;
}

.mp-participant-page.is-authenticated .mp-notification-item--warning .mp-notification-item__icon {
	background: #fff7e8;
	color: #9a6700;
}

.mp-participant-page.is-authenticated .mp-notification-item--danger .mp-notification-item__icon {
	background: #fff1f0;
	color: #b42318;
}

.mp-participant-page.is-authenticated .mp-data-table-wrap {
	overflow-x: auto;
	border: 1px solid var(--mp-participant-border);
	border-radius: 8px;
	background: var(--mp-participant-surface);
}

.mp-participant-page.is-authenticated .mp-data-table {
	width: 100%;
	border-collapse: collapse;
	min-width: 760px;
}

.mp-participant-page.is-authenticated .mp-data-table th,
.mp-participant-page.is-authenticated .mp-data-table td {
	padding: 10px 12px;
	border-bottom: 1px solid var(--mp-participant-border-soft);
	text-align: left;
	vertical-align: middle;
}

.mp-participant-page.is-authenticated .mp-data-table thead th {
	font-size: 12px;
	font-weight: 650;
	color: var(--mp-participant-text-soft);
	background: #fbfcfe;
}

.mp-participant-page.is-authenticated .mp-data-table tbody tr:last-child td {
	border-bottom: 0;
}

.mp-participant-page.is-authenticated .mp-table-link {
	font-size: 12px;
	font-weight: 600;
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-table-muted {
	font-size: 12px;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-security-tip {
	padding: 12px 14px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 8px;
	background: #fbfcfe;
}

.mp-participant-page.is-authenticated .mp-security-tip strong {
	display: block;
	margin-bottom: 4px;
	font-size: 13px;
	font-weight: 650;
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-masterclass-card__cat--registered {
	background: #eef5fb;
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-masterclass-card__summary span {
	display: block;
}

@media (max-width: 900px) {
	.mp-participant-page.is-authenticated .mp-dashboard-grid,
	.mp-participant-page.is-authenticated .mp-quick-actions {
		grid-template-columns: 1fr;
	}

	.mp-participant-page.is-authenticated .mp-record-card {
		grid-template-columns: 1fr;
	}

	.mp-participant-page.is-authenticated .mp-dashboard-identity {
		flex-direction: column;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen-head {
		flex-direction: column;
		align-items: flex-start;
	}

	.mp-participant-page.is-authenticated .mp-dashboard-identity__meta,
	.mp-participant-page.is-authenticated .mp-record-card__aside {
		align-items: flex-start;
		text-align: left;
	}

	.mp-participant-page.is-authenticated .mp-record-card__actions {
		justify-content: flex-start;
	}

	.mp-participant-page.is-authenticated .mp-dashboard-lms-focus {
		grid-template-columns: 1fr;
	}

	.mp-participant-page.is-authenticated .mp-dashboard-lms-focus__media {
		min-height: 148px;
	}
}

@media (max-width: 782px) {
	.mp-participant-page.is-authenticated .mp-data-table {
		min-width: 640px;
	}
}

/* ── Participant Masterclass : liste SaaS compacte ── */
.mp-participant-page.is-authenticated .mp-masterclass-page-head {
	padding-bottom: 0;
}

.mp-participant-page.is-authenticated .mp-masterclass-page-head h2 {
	font-size: 20px;
	font-weight: 650;
}

.mp-participant-page.is-authenticated .mp-masterclass-controls {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 168px auto;
	align-items: end;
	gap: 10px 12px;
	padding: 12px 14px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 8px;
	background: var(--mp-participant-surface);
	box-shadow: none;
}

.mp-participant-page.is-authenticated .mp-masterclass-search {
	min-width: 0;
	gap: 6px;
}

.mp-participant-page.is-authenticated .mp-masterclass-search__input {
	min-height: 40px;
	padding: 0 12px;
	border-radius: 8px;
	font-size: 13px;
	box-shadow: none;
}

.mp-participant-page.is-authenticated .mp-masterclass-filters {
	grid-column: 1 / -1;
	align-items: center;
	gap: 6px;
	padding-bottom: 0;
}

.mp-participant-page.is-authenticated .mp-filter-tab {
	padding: 7px 10px;
	border-radius: 8px;
	font-size: 12px;
	font-weight: 600;
	box-shadow: none;
}

.mp-participant-page.is-authenticated .mp-filter-tab:hover {
	transform: none;
}

.mp-participant-page.is-authenticated .mp-masterclass-sort {
	display: grid;
	gap: 6px;
}

.mp-participant-page.is-authenticated .mp-masterclass-sort__select {
	min-height: 40px;
	padding: 0 12px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 8px;
	background: #ffffff;
	font-family: var(--mp-sans);
	font-size: 13px;
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-masterclass-results {
	align-self: end;
	justify-self: end;
	margin-left: 0;
	font-size: 12px;
	white-space: nowrap;
}

.mp-participant-page.is-authenticated .mp-masterclass-results strong {
	font-family: var(--mp-sans);
	font-size: 14px;
	font-weight: 650;
}

.mp-participant-page.is-authenticated .mp-masterclass-list-shell {
	border: 0;
	border-radius: 0;
	background: transparent;
	overflow: visible;
}

.mp-participant-page.is-authenticated .mp-masterclass-list-head,
.mp-participant-page.is-authenticated .mp-masterclass-row {
	display: grid;
	grid-template-columns: 88px minmax(0, 1.45fr) minmax(0, 1.15fr) 132px 170px auto;
	gap: 10px 14px;
	align-items: center;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__thumb {
	width: 88px;
	height: 62px;
	border-radius: 10px;
	overflow: hidden;
	flex-shrink: 0;
	background: linear-gradient(135deg, #dbeafe 0%, #e0f2fe 100%);
	border: 1px solid var(--mp-participant-border-soft);
}

.mp-participant-page.is-authenticated .mp-masterclass-row__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__thumb-link {
	display: block;
	width: 100%;
	height: 100%;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__thumb-placeholder {
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #dbeafe 0%, #e0f2fe 100%);
}

.mp-participant-page.is-authenticated .mp-masterclass-list-head {
	display: none;
}

.mp-participant-page.is-authenticated .mp-masterclass-list {
	display: grid;
	gap: 12px;
}

.mp-participant-page.is-authenticated .mp-masterclass-row {
	padding: 12px 14px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 12px;
	background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.03);
	transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.mp-participant-page.is-authenticated .mp-masterclass-row:last-child {
	border-bottom: 1px solid var(--mp-participant-border);
}

.mp-participant-page.is-authenticated .mp-masterclass-row:hover {
	border-color: #d8e3f0;
	box-shadow: 0 14px 28px rgba(15, 23, 42, 0.06);
	transform: translateY(-1px);
}

.mp-participant-page.is-authenticated .mp-masterclass-row__main,
.mp-participant-page.is-authenticated .mp-masterclass-row__availability,
.mp-participant-page.is-authenticated .mp-masterclass-row__status {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__main {
	grid-column: 2;
	align-self: center;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__meta {
	grid-column: 3;
	align-self: center;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__title {
	margin: 0;
	font-size: 14px;
	font-weight: 650;
	line-height: 1.3;
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-masterclass-row__title-link {
	color: inherit;
	text-decoration: none;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__title-link:hover,
.mp-participant-page.is-authenticated .mp-masterclass-row__title-link:focus-visible {
	color: var(--mp-participant-accent);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.12em;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__lead {
	margin: 0;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
	font-size: 11px;
	line-height: 1.45;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-masterclass-row__meta {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 4px 10px;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__meta li {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 11px;
	line-height: 1.4;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-masterclass-row__meta .mp-icon {
	flex-shrink: 0;
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-authenticated .mp-masterclass-row__availability {
	grid-column: 4;
	align-self: center;
	text-align: left;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__price {
	font-size: 13px;
	font-weight: 650;
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-masterclass-row__remaining,
.mp-participant-page.is-authenticated .mp-masterclass-row__status small {
	font-size: 11px;
	line-height: 1.45;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-masterclass-row__status {
	grid-column: 5;
	align-self: center;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__actions {
	grid-column: 6;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 6px;
	align-self: center;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__actions .mp-btn {
	min-width: 0;
}

.mp-participant-page.is-authenticated .mp-masterclass-row__actions .mp-btn--primary,
.mp-participant-page.is-authenticated .mp-masterclass-row__actions .mp-btn--ghost,
.mp-participant-page.is-authenticated .mp-masterclass-row__actions .mp-btn--disabled {
	min-height: 30px;
	padding-inline: 10px;
	border-radius: 8px;
}

.mp-wishlist-btn {
	margin: 0;
}

.mp-wishlist-btn__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 30px;
	min-height: 30px;
	padding: 0;
	border: 1px solid rgba(148, 163, 184, 0.24);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.92);
	color: var(--mp-participant-text);
	line-height: 1;
	cursor: pointer;
	transition: border-color 0.16s ease, background-color 0.16s ease, color 0.16s ease, transform 0.16s ease;
}

.mp-wishlist-btn__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}

.mp-wishlist-btn__button:hover,
.mp-wishlist-btn__button:focus-visible {
	border-color: rgba(59, 130, 246, 0.24);
	background: #ffffff;
	color: var(--mp-participant-accent);
	transform: translateY(-1px);
}

.mp-wishlist-btn__button.is-active {
	border-color: rgba(239, 68, 68, 0.22);
	background: rgba(254, 242, 242, 0.96);
	color: #be123c;
}

.mp-wishlist-btn__button .mp-icon {
	width: 14px;
	height: 14px;
	display: block;
}

.mp-participant-page.is-authenticated .mp-masterclass-filter-empty {
	margin-top: 12px;
	padding: 14px;
	border: 1px dashed var(--mp-participant-border);
	border-radius: 8px;
	background: #fbfcfe;
	font-size: 12px;
	color: var(--mp-participant-text-muted);
}

@media (max-width: 1180px) {
	.mp-participant-page.is-authenticated .mp-masterclass-row {
		grid-template-columns: 80px minmax(0, 1.3fr) minmax(0, 1fr) 118px 150px auto;
	}

	.mp-participant-page.is-authenticated .mp-masterclass-row__thumb {
		width: 80px;
		height: 58px;
	}
}

@media (max-width: 900px) {
	.mp-participant-page.is-authenticated .mp-masterclass-controls {
		grid-template-columns: 1fr;
		align-items: stretch;
	}

	.mp-participant-page.is-authenticated .mp-masterclass-filters,
	.mp-participant-page.is-authenticated .mp-masterclass-results {
		grid-column: auto;
	}

	.mp-participant-page.is-authenticated .mp-masterclass-results {
		justify-self: start;
	}

	.mp-participant-page.is-authenticated .mp-masterclass-sort {
		width: 100%;
	}

	.mp-participant-page.is-authenticated .mp-masterclass-row {
		grid-template-columns: 1fr;
		gap: 10px;
		align-items: start;
	}

	.mp-participant-page.is-authenticated .mp-masterclass-row__thumb {
		width: 100%;
		height: 140px;
	}

	.mp-participant-page.is-authenticated .mp-masterclass-row__main,
	.mp-participant-page.is-authenticated .mp-masterclass-row__meta,
	.mp-participant-page.is-authenticated .mp-masterclass-row__availability,
	.mp-participant-page.is-authenticated .mp-masterclass-row__status,
	.mp-participant-page.is-authenticated .mp-masterclass-row__actions {
		grid-column: auto;
	}

	.mp-participant-page.is-authenticated .mp-masterclass-row__actions {
		justify-content: flex-start;
	}
}

/* ── Responsive cleanup : dashboard participant stable sur desktop ── */
@media (min-width: 900px) {
	body.mp-participant-app-active {
		overflow: auto;
	}

	.mp-participant-page.is-authenticated {
		padding: 24px 0 48px;
	}

	.mp-participant-page.is-authenticated .mp-participant-shell {
		position: relative;
		inset: auto;
		width: min(1440px, calc(100% - 40px));
		max-width: none;
		margin-inline: auto;
		padding: 0;
		display: block;
		height: auto;
		min-height: 0;
		z-index: auto;
		background: transparent;
	}

	.mp-participant-page.is-authenticated .mp-participant-space {
		display: grid;
		gap: 16px;
		min-height: 0;
		overflow: visible;
	}

	.mp-participant-page.is-authenticated .mp-participant-space > .mp-front-notice {
		border-radius: 12px;
		margin: 0;
		padding: 12px 16px;
		font-size: 13px;
	}

	.mp-participant-page.is-authenticated .mp-participant-app {
		grid-template-columns: 220px minmax(0, 1fr);
		align-items: start;
		gap: 16px;
		padding: 0;
	}

	.mp-participant-page.is-authenticated .mp-participant-sidebar {
		position: sticky;
		top: calc(var(--mp-admin-bar-offset) + 16px);
		display: flex;
		height: auto;
		max-height: calc(100vh - var(--mp-admin-bar-offset) - 32px);
		overflow-y: auto;
		border: 1px solid var(--mp-participant-border);
		border-radius: 12px;
		box-shadow: none;
		align-self: start;
	}

	.mp-participant-page.is-authenticated .mp-participant-main {
		position: relative;
		min-width: 0;
		overflow: visible;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen {
		position: relative;
		inset: auto;
		height: auto;
		min-height: 0;
		padding: 18px 22px 28px;
		overflow: visible;
		opacity: 1;
		transform: none;
		transition: none;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen[hidden] {
		display: none !important;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen.is-active {
		display: grid;
	}

	.mp-participant-page.is-authenticated .mp-participant-bottom-nav {
		display: none;
	}

	.mp-participant-page.is-authenticated .mp-toast {
		bottom: 24px;
	}
}

@media (min-width: 1200px) {
	.mp-participant-page.is-authenticated .mp-participant-app {
		grid-template-columns: 236px minmax(0, 1fr);
	}

	.mp-participant-page.is-authenticated .mp-participant-screen {
		padding: 20px 24px 32px;
	}
}

/* ── Email exists hint ── */
.mp-email-hint {
	display: block;
	font-size: 0.8rem;
	margin-top: 4px;
	color: var(--mp-color-muted, #6b7280);
}

.mp-email-hint--exists {
	color: var(--mp-color-warning, #d97706);
	font-weight: 500;
}

/* ── Password toggle button ── */
.mp-pw-wrap {
	position: relative;
}

.mp-pw-wrap input {
	width: 100%;
	padding-right: 40px;
}

.mp-pw-toggle {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	cursor: pointer;
	padding: 4px;
	color: var(--mp-color-muted, #6b7280);
	line-height: 0;
}

.mp-pw-toggle:hover,
.mp-pw-toggle.is-active {
	color: var(--mp-color-primary, #1d4ed8);
}

/* ════════════════════════════════════════════════════════════════
   Volet Profil — carte sécurité + statut mot de passe
   ════════════════════════════════════════════════════════════════ */

.mp-profile-security-card__title-wrap {
	display: flex;
	align-items: center;
	gap: 12px;
}

.mp-profile-security-card__shield {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: var(--mp-color-primary-light, #dbeafe);
	color: var(--mp-color-primary, #1d4ed8);
	flex-shrink: 0;
}

.mp-profile-security-status {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 16px 0;
	padding: 14px 16px;
	background: var(--mp-surface-2, #f8fafc);
	border-radius: 10px;
	border: 1px solid var(--mp-participant-border, rgba(0,0,0,.07));
}

.mp-profile-security-status__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	font-size: 0.875rem;
}

.mp-profile-security-status__label {
	color: var(--mp-color-muted, #6b7280);
}

.mp-profile-security-status__value {
	font-weight: 500;
	color: var(--mp-color-text, #111827);
}

.mp-profile-security-status__badge {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 2px 10px;
	border-radius: 20px;
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: .02em;
}

.mp-profile-security-status__badge--ok {
	background: #dcfce7;
	color: #15803d;
}

.mp-profile-security-card__actions {
	margin-top: 4px;
}

.mp-profile-security-card__actions .mp-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

/* ════════════════════════════════════════════════════════════════
   Volet Profil — raffinement compact type SaaS premium
   ════════════════════════════════════════════════════════════════ */

.mp-participant-page.is-authenticated .mp-participant-screen--profile {
	gap: 14px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero {
	grid-template-columns: 64px minmax(0, 1fr) minmax(250px, auto);
	grid-template-areas: none;
	align-items: start;
	gap: 14px 18px;
	padding: 18px 20px;
	border-radius: 14px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__avatar {
	grid-area: auto;
	width: 64px;
	height: 64px;
	border-radius: 16px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__avatar span {
	font-size: 18px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__content {
	display: grid;
	align-content: start;
	gap: 4px;
	min-width: 0;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__content .mp-participant-section__eyebrow {
	margin: 0;
	font-size: 11px;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero h2 {
	font-size: 22px;
	line-height: 1.15;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero p {
	font-size: 13px;
	line-height: 1.45;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__participant-id {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	padding: 5px 9px;
	border: 1px solid rgba(37, 99, 235, 0.16);
	border-radius: 999px;
	background: rgba(37, 99, 235, 0.06);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.01em;
	color: #1d4ed8;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__aside {
	display: grid;
	align-content: start;
	justify-items: end;
	gap: 10px;
	min-width: 250px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__badges {
	justify-content: flex-end;
	flex-wrap: wrap;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	width: min(378px, 100%);
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__stats div {
	display: grid;
	gap: 3px;
	padding: 10px 12px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 12px;
	background: #f8fbff;
	text-align: left;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__stats div + div {
	border-left: 0;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__stats strong {
	display: block;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.1;
	color: var(--mp-participant-text);
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__stats span {
	font-size: 11px;
	line-height: 1.35;
	color: var(--mp-participant-text-muted);
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-card {
	padding: 16px 18px;
	border-radius: 14px;
	gap: 12px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-card__head {
	align-items: flex-start;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-card__head h3 {
	font-size: 17px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-info-list {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px 18px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-info-row,
.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-menu-row {
	padding: 10px 0;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-info-row {
	border-top: 1px solid rgba(148, 163, 184, 0.2);
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-info-row:nth-child(-n+2) {
	border-top: 0;
	padding-top: 0;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-info-row--static {
	grid-template-columns: 28px minmax(0, 1fr);
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-info-row--static > span[aria-hidden='true'] {
	display: none;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-info-row strong,
.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-menu-row strong {
	font-size: 14px;
	line-height: 1.35;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-security-card {
	grid-template-columns: minmax(0, 1fr) auto;
	grid-template-areas:
		'head action'
		'status action';
	align-items: center;
	column-gap: 18px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-security-card > .mp-profile-card__head {
	grid-area: head;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-security-status {
	grid-area: status;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 12px;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-security-status__row {
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	padding: 12px 14px;
	border: 1px solid rgba(148, 163, 184, 0.18);
	border-radius: 12px;
	background: #f8fbff;
	gap: 6px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-security-card__actions {
	grid-area: action;
	margin: 0;
	justify-self: end;
	align-self: center;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-menu {
	gap: 0;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-menu-row {
	border-top: 1px solid rgba(148, 163, 184, 0.2);
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-menu-row:first-child {
	border-top: 0;
	padding-top: 0;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-menu-row:last-child {
	padding-bottom: 0;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-password-action {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 12px 18px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-password-action .mp-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-logout-wrap {
	margin-top: 2px;
}

@media (max-width: 980px) {
	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero {
		grid-template-columns: 64px minmax(0, 1fr);
	}

	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__aside {
		grid-column: 1 / -1;
		justify-items: start;
		min-width: 0;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__badges {
		justify-content: flex-start;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__stats {
		width: 100%;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-security-card {
		grid-template-columns: 1fr;
		grid-template-areas:
			'head'
			'status'
			'action';
	}

	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-security-card__actions {
		justify-self: start;
	}
}

@media (max-width: 782px) {
	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero {
		grid-template-columns: 56px minmax(0, 1fr);
		padding: 16px;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__avatar {
		width: 56px;
		height: 56px;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero h2 {
		font-size: 18px;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-hero__stats,
	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-info-list,
	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-security-status {
		grid-template-columns: 1fr;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-info-row {
		border-top: 1px solid rgba(148, 163, 184, 0.2);
		padding-top: 10px;
	}

	.mp-participant-page.is-authenticated .mp-participant-screen--profile .mp-profile-info-row:first-child {
		border-top: 0;
		padding-top: 0;
	}
}

/* ════════════════════════════════════════════════════════════════
   Espace participant standalone — layout app-frame fixe
   Le shell couvre 100 % du viewport ; sidebar + main scrollent
   en interne → le sidebar ne bouge jamais.
   ════════════════════════════════════════════════════════════════ */

html:has(body.mp-participant-app-page),
body.mp-participant-app-page {
	margin: 0;
	padding: 0;
	height: 100%;
	overflow: hidden;
}

body.mp-participant-app-page main.mp-participant-page {
	margin: 0;
	padding: 0;
}

/* Shell = viewport complet, flex colonne */
body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-shell {
	position: fixed !important;
	inset: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	overflow: hidden !important;
	background: var(--cream, #f4f7fb) !important;
}

/* Space = colonne flex qui remplit le reste */
body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-space {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 !important;
	min-height: 0 !important;
	overflow: hidden !important;
	gap: 0 !important;
	padding: 0 !important;
}

/* App = grille 2 colonnes, grandit pour remplir la space */
body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-app {
	display: grid !important;
	grid-template-columns: 220px minmax(0, 1fr) !important;
	--mp-participant-sidebar-toggle-offset: 220px !important;
	align-items: stretch !important;
	flex: 1 !important;
	min-height: 0 !important;
	gap: 0 !important;
	padding: 0 !important;
}

/* Sidebar = hauteur 100 % de la grille, scroll interne */
@media (min-width: 900px) {
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-sidebar {
		position: relative !important;
		height: 100% !important;
		max-height: none !important;
		display: flex !important;
		flex-direction: column !important;
		overflow-y: auto !important;
		border-radius: 0 !important;
		border-right: 1px solid rgba(255, 255, 255, 0.055) !important;
		border-top: none !important;
		border-bottom: none !important;
		border-left: none !important;
		box-shadow: none !important;
	}
}

/* Main = deuxième colonne, clip les écrans en overflow */
body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-main {
	position: relative !important;
	height: 100% !important;
	overflow: hidden !important;
	grid-column: 2 !important;
	padding-top: 12px !important;
}

/* Écrans = absolute plein main, scroll interne uniquement */
body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen {
	position: absolute !important;
	inset: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	padding: 28px 36px 48px !important;
	opacity: 1 !important;
	transform: none !important;
	align-content: start !important;
}

/* Page padding supprimé (shell est fixe) */
body.mp-participant-app-page .mp-participant-page.is-authenticated {
	padding: 0 !important;
}

/* ==========================================================================
   Notifications center — participant
   ========================================================================== */

.mp-participant-notification-center {
	position: relative;
	z-index: 12;
	margin-inline-end: 6px;
	margin-top: 2px;
	flex-shrink: 0;
}

.mp-participant-chat-center {
	position: relative;
	z-index: 12;
	margin-inline-end: 2px;
	flex-shrink: 0;
}

.mp-participant-chat-btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	min-height: 40px;
	padding: 0;
	border-radius: 12px;
	border: 1px solid rgba(148, 163, 184, 0.2);
	background: rgba(248, 250, 252, 0.96);
	color: var(--mp-participant-accent-strong);
	cursor: pointer;
	transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, transform 0.16s ease;
}

.mp-participant-page.is-authenticated .mp-participant-chat-btn {
	overflow: visible;
	isolation: isolate;
}

.mp-participant-chat-btn .mp-icon {
	width: 16px;
	height: 16px;
}

.mp-participant-chat-btn:hover,
.mp-participant-chat-btn:focus-visible {
	background: #ffffff;
	border-color: rgba(59, 130, 246, 0.24);
	color: var(--mp-participant-accent);
	transform: translateY(-1px);
}

.mp-participant-chat-btn.is-open {
	background: var(--mp-participant-accent-soft);
	border-color: var(--mp-participant-accent);
	color: var(--mp-participant-accent);
}

.mp-participant-chat-btn__count {
	position: absolute;
	top: -5px;
	right: -6px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	border-radius: 999px;
	background: #d63939;
	border: 2px solid var(--mp-participant-surface, #ffffff);
	color: #ffffff;
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
	z-index: 2;
}

.mp-chat-popover {
	position: absolute;
	top: calc(100% + 12px);
	right: 0;
	z-index: 96;
	width: min(390px, calc(100vw - 30px));
	border: 1px solid var(--mp-participant-border);
	border-radius: 12px;
	background: var(--mp-participant-surface);
	box-shadow: 0 16px 34px rgba(10, 37, 64, 0.12);
	overflow: hidden;
}

.mp-chat-popover__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 11px 14px 10px;
	background: #fbfdff;
	border-bottom: 1px solid var(--mp-participant-border-soft);
}

.mp-chat-popover__head strong {
	display: block;
	font-size: 13px;
	font-weight: 700;
	color: var(--mp-participant-text);
}

.mp-chat-popover__head span {
	display: block;
	margin-top: 2px;
	font-size: 11px;
	color: var(--mp-participant-text-muted);
}

.mp-chat-popover__search {
	padding: 10px 12px;
	border-bottom: 1px solid var(--mp-participant-border-soft);
	background: #ffffff;
}

.mp-chat-popover__search label {
	display: block;
}

.mp-chat-popover__search input {
	width: 100%;
	height: 34px;
	padding: 0 11px;
	border-radius: 9px;
	border: 1px solid var(--mp-participant-border);
	background: #f8fafc;
	font-size: 12px;
	color: var(--mp-participant-text);
}

.mp-chat-popover__search input:focus {
	outline: none;
	border-color: rgba(59, 130, 246, 0.4);
	background: #ffffff;
}

.mp-chat-popover__body {
	max-height: min(430px, 64vh);
	padding: 10px;
	overflow-y: auto;
}

.mp-chat-popover__body.is-loading {
	opacity: 0.58;
	pointer-events: none;
}

.mp-chat-empty {
	display: grid;
	gap: 5px;
	padding: 14px 10px;
}

.mp-chat-empty strong {
	font-size: 12px;
	color: var(--mp-participant-text);
}

.mp-chat-empty p {
	margin: 0;
	font-size: 11px;
	line-height: 1.45;
	color: var(--mp-participant-text-muted);
}

.mp-chat-list {
	display: grid;
	gap: 7px;
}

.mp-chat-item {
	appearance: none;
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr) auto;
	gap: 10px;
	align-items: center;
	width: 100%;
	padding: 8px;
	border: 1px solid var(--mp-participant-border-soft);
	border-radius: 10px;
	background: #ffffff;
	text-align: left;
	cursor: pointer;
	transition: border-color 0.16s ease, background-color 0.16s ease;
}

.mp-chat-item:hover,
.mp-chat-item:focus-visible {
	border-color: #cddbeb;
	background: #f8fbff;
	outline: none;
}

.mp-chat-item.is-unread {
	border-color: rgba(59, 130, 246, 0.24);
	background: #f7fbff;
}

.mp-chat-item__avatar,
.mp-chat-suggestion__avatar,
.mp-chat-thread-head-user__avatar,
.mp-chat-msg__avatar {
	position: relative;
	display: inline-grid;
	place-items: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	overflow: hidden;
	border: 1px solid rgba(148, 163, 184, 0.25);
	background: linear-gradient(145deg, #dbe9f4 0%, #edf4f8 100%);
	color: #2f4868;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
}

.mp-chat-item__avatar img,
.mp-chat-suggestion__avatar img,
.mp-chat-thread-head-user__avatar img,
.mp-chat-msg__avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.mp-chat-item__avatar-badge,
.mp-chat-suggestion__avatar-badge,
.mp-chat-thread-head-user__avatar-badge,
.mp-chat-msg__avatar-badge {
	position: absolute;
	right: -2px;
	bottom: -2px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 8px;
	font-weight: 700;
	letter-spacing: 0.01em;
	background: #2f4868;
	color: #ffffff;
	border: 2px solid var(--mp-participant-surface, #ffffff);
}

.mp-chat-item__body {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.mp-chat-item__body strong {
	font-size: 12px;
	font-weight: 700;
	color: var(--mp-participant-text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.mp-chat-item__body small {
	font-size: 11px;
	line-height: 1.35;
	color: var(--mp-participant-text-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.mp-chat-item__meta {
	display: grid;
	justify-items: end;
	gap: 4px;
}

.mp-chat-item__meta time {
	font-size: 10px;
	color: var(--mp-participant-text-muted);
}

.mp-chat-item__count {
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #d63939;
	color: #ffffff;
	font-size: 10px;
	font-weight: 700;
}

.mp-chat-suggestions {
	margin-top: 10px;
	display: grid;
	gap: 7px;
}

.mp-chat-suggestions__label {
	margin: 0;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--mp-participant-text-muted);
}

.mp-chat-suggestions__list {
	display: grid;
	gap: 6px;
}

.mp-chat-suggestion {
	appearance: none;
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 9px;
	align-items: center;
	width: 100%;
	padding: 7px;
	border: 1px solid var(--mp-participant-border-soft);
	border-radius: 10px;
	background: #ffffff;
	text-align: left;
	cursor: pointer;
}

.mp-chat-suggestion:hover,
.mp-chat-suggestion:focus-visible {
	outline: none;
	border-color: #cddbeb;
	background: #f8fbff;
}

.mp-chat-suggestion__avatar {
	width: 32px;
	height: 32px;
}

.mp-chat-suggestion__copy {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.mp-chat-suggestion__copy strong {
	font-size: 12px;
	font-weight: 700;
	color: var(--mp-participant-text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.mp-chat-suggestion__copy small {
	font-size: 10.5px;
	color: var(--mp-participant-text-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.mp-chat-modal {
	position: fixed;
	inset: 0;
	z-index: 9800;
	display: grid;
	place-items: center;
}

.mp-chat-modal[hidden] {
	display: none !important;
}

.mp-chat-modal__backdrop {
	position: absolute;
	inset: 0;
	border: 0;
	background: rgba(11, 22, 38, 0.44);
	cursor: pointer;
}

.mp-chat-modal__dialog {
	position: relative;
	z-index: 1;
	width: min(620px, calc(100vw - 32px));
	height: min(76vh, 720px);
	display: grid;
	grid-template-rows: auto 1fr auto;
	border: 1px solid rgba(148, 163, 184, 0.2);
	border-radius: 16px;
	background: #ffffff;
	box-shadow: 0 30px 70px rgba(10, 23, 40, 0.24);
	overflow: hidden;
}

.mp-chat-modal__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 10px 12px;
	border-bottom: 1px solid var(--mp-participant-border-soft);
	background: #fcfdff;
}

.mp-chat-modal__head-user {
	min-width: 0;
}

.mp-chat-thread-head-user {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 10px;
	align-items: center;
}

.mp-chat-thread-head-user__copy {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.mp-chat-thread-head-user__copy strong {
	font-size: 13px;
	font-weight: 700;
	color: var(--mp-participant-text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.mp-chat-thread-head-user__copy small {
	font-size: 11px;
	color: var(--mp-participant-text-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.mp-chat-modal__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 8px;
	border: 1px solid var(--mp-participant-border-soft);
	background: #ffffff;
	color: var(--mp-participant-text-muted);
	cursor: pointer;
}

.mp-chat-modal__close:hover,
.mp-chat-modal__close:focus-visible {
	outline: none;
	border-color: rgba(59, 130, 246, 0.32);
	color: var(--mp-participant-accent);
}

.mp-chat-modal__messages {
	padding: 12px;
	background: #f6f9fd;
	overflow-y: auto;
	display: grid;
	align-content: start;
	gap: 8px;
}

.mp-chat-thread-empty {
	display: grid;
	gap: 5px;
	padding: 14px;
	border: 1px dashed rgba(148, 163, 184, 0.34);
	border-radius: 10px;
	background: #ffffff;
}

.mp-chat-thread-empty strong {
	font-size: 12px;
	color: var(--mp-participant-text);
}

.mp-chat-thread-empty p {
	margin: 0;
	font-size: 11px;
	color: var(--mp-participant-text-muted);
}

.mp-chat-msg {
	display: grid;
	grid-template-columns: 30px minmax(0, 1fr);
	gap: 8px;
	align-items: end;
	max-width: 84%;
}

.mp-chat-msg.is-self {
	grid-template-columns: minmax(0, 1fr);
	margin-left: auto;
}

.mp-chat-msg__avatar {
	width: 28px;
	height: 28px;
}

.mp-chat-msg__bubble-wrap {
	display: grid;
	gap: 4px;
	justify-items: start;
}

.mp-chat-msg.is-self .mp-chat-msg__bubble-wrap {
	justify-items: end;
}

.mp-chat-msg__bubble {
	display: inline-block;
	padding: 8px 10px;
	border-radius: 12px;
	border: 1px solid var(--mp-participant-border-soft);
	background: #ffffff;
	font-size: 12px;
	line-height: 1.45;
	color: var(--mp-participant-text);
	word-break: break-word;
}

.mp-chat-msg.is-self .mp-chat-msg__bubble {
	background: #2f67ff;
	border-color: #2f67ff;
	color: #ffffff;
}

.mp-chat-msg__time {
	font-size: 10px;
	color: var(--mp-participant-text-muted);
}

.mp-chat-modal__composer {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
	padding: 10px 12px;
	border-top: 1px solid var(--mp-participant-border-soft);
	background: #ffffff;
}

.mp-chat-modal__composer textarea {
	min-height: 38px;
	max-height: 110px;
	padding: 9px 11px;
	resize: vertical;
	border-radius: 10px;
	border: 1px solid var(--mp-participant-border);
	background: #f8fafc;
	font-size: 12px;
	line-height: 1.4;
	color: var(--mp-participant-text);
}

.mp-chat-modal__composer textarea:focus {
	outline: none;
	border-color: rgba(59, 130, 246, 0.4);
	background: #ffffff;
}

.mp-participant-notif-btn__count {
	position: absolute;
	top: -5px;
	right: -6px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	border-radius: 999px;
	background: #d63939;
	border: 2px solid var(--mp-participant-surface, #ffffff);
	color: #ffffff;
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	pointer-events: none;
	z-index: 2;
	box-shadow: none;
}

.mp-participant-page.is-authenticated .mp-participant-notif-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	min-height: 36px;
	overflow: visible;
	isolation: isolate;
}

.mp-participant-notif-btn.is-open {
	background: var(--mp-participant-accent-soft);
	border-color: var(--mp-participant-accent);
	color: var(--mp-participant-accent);
}

.mp-notification-popover {
	position: absolute;
	top: calc(100% + 12px);
	right: 0;
	z-index: 90;
	width: min(360px, calc(100vw - 34px));
	border: 1px solid var(--mp-participant-border);
	border-radius: 12px;
	background: var(--mp-participant-surface);
	box-shadow: 0 16px 34px rgba(10, 37, 64, 0.12);
	overflow: hidden;
}

.mp-notification-popover__head,
.mp-notification-popover__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 12px 14px;
	background: #fbfdff;
	border-bottom: 1px solid var(--mp-participant-border-soft);
}

.mp-notification-popover__head strong {
	display: block;
	font-size: 13px;
	font-weight: 700;
	color: var(--mp-participant-text);
}

.mp-notification-popover__head span {
	display: block;
	margin-top: 2px;
	font-size: 11px;
	color: var(--mp-participant-text-muted);
}

.mp-notification-popover__body {
	max-height: min(420px, 62vh);
	padding: 10px;
	overflow-y: auto;
}

.mp-notification-popover__body.is-loading {
	opacity: 0.58;
	pointer-events: none;
}

.mp-notification-popover__footer {
	justify-content: flex-end;
	border-bottom: 0;
	border-top: 1px solid var(--mp-participant-border-soft);
}

.mp-notification-list--panel,
.mp-notification-list--preview,
.mp-notification-list--screen {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.mp-participant-page.is-authenticated .mp-notification-item {
	appearance: none;
	width: 100%;
	text-align: left;
	display: grid;
	grid-template-columns: 10px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
	padding: 12px 14px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 10px;
	background: var(--mp-participant-surface);
	cursor: pointer;
	transition: border-color .16s ease, background-color .16s ease, transform .16s ease;
}

.mp-participant-page.is-authenticated .mp-notification-item:hover {
	background: #fbfdff;
	border-color: #cfdceb;
}

.mp-participant-page.is-authenticated .mp-notification-item:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(46, 107, 255, 0.14);
	border-color: #adc7ff;
}

.mp-participant-page.is-authenticated .mp-notification-item.is-unread {
	border-color: #c7d8ea;
	background: #ffffff;
}

.mp-participant-page.is-authenticated .mp-notification-item:not(.is-unread) {
	border-color: var(--mp-participant-border-soft);
	background: #f7f9fc;
}

.mp-notification-item__marker {
	display: block;
	width: 10px;
	height: 10px;
	margin-top: 5px;
	border-radius: 999px;
	background: #b6c4d6;
}

.mp-notification-item--success .mp-notification-item__marker {
	background: #15a26c;
}

.mp-notification-item--warning .mp-notification-item__marker {
	background: #d18a00;
}

.mp-notification-item--danger .mp-notification-item__marker {
	background: #d63939;
}

.mp-participant-page.is-authenticated .mp-notification-item:not(.is-unread) .mp-notification-item__marker {
	background: #c2ceda;
}

.mp-notification-item__body {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

.mp-notification-item__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
}

.mp-notification-item__head-main {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}

.mp-notification-item__head strong {
	margin: 0;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--mp-participant-text);
}

.mp-notification-item__meta {
	font-size: 11px;
	line-height: 1.4;
	color: var(--mp-participant-text-muted);
}

.mp-notification-item__head-tools {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex-shrink: 0;
}

.mp-notification-item__thread-bell {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 999px;
	border: 1px solid transparent;
	background: transparent;
	color: var(--mp-participant-text-muted);
	cursor: pointer;
	transition: color .16s ease, background-color .16s ease, border-color .16s ease, opacity .16s ease;
}

.mp-notification-item__thread-bell:hover {
	background: #eef3fb;
	border-color: #d2deed;
	color: var(--mp-participant-text);
}

.mp-notification-item__thread-bell:focus-visible {
	outline: none;
	background: #edf3ff;
	border-color: #adc7ff;
	box-shadow: 0 0 0 3px rgba(46, 107, 255, 0.14);
}

.mp-notification-item__thread-bell.is-muted {
	background: #edf4ff;
	border-color: #c5d8f5;
	color: #2f5f9f;
}

.mp-notification-item__thread-bell.is-loading {
	opacity: 0.56;
	pointer-events: none;
}

.mp-notification-item__thread-bell-icon {
	display: block;
	width: 14px;
	height: 14px;
}

.mp-notification-item__thread-bell-shape {
	fill: none;
	stroke: currentColor;
	stroke-width: 1.9;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.mp-notification-item__thread-bell-slash {
	fill: none;
	stroke: currentColor;
	stroke-width: 2.2;
	stroke-linecap: round;
	opacity: 0;
	transition: opacity .16s ease;
}

.mp-notification-item__thread-bell-slash--visible {
	opacity: 1;
}

.mp-notification-item__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 7px;
	border-radius: 999px;
	background: #edf4ff;
	color: var(--mp-participant-accent);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .02em;
	white-space: nowrap;
}

.mp-notification-item__body p {
	margin: 0;
	font-size: 12px;
	line-height: 1.55;
	color: var(--mp-participant-text-muted);
}

.mp-notification-item__action {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 600;
	color: var(--mp-participant-accent);
}

.mp-notification-detail {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid var(--mp-participant-border);
	border-radius: 10px;
	background: var(--mp-participant-surface);
}

.mp-notification-detail__back {
	align-self: flex-start;
}

.mp-notification-detail__head {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.mp-notification-detail__head strong {
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--mp-participant-text);
}

.mp-notification-detail__meta {
	font-size: 11px;
	line-height: 1.45;
	color: var(--mp-participant-text-muted);
}

.mp-notification-detail__body p {
	margin: 0;
	font-size: 12px;
	line-height: 1.65;
	color: var(--mp-participant-text-soft);
}

.mp-notification-detail__actions {
	display: flex;
	justify-content: flex-end;
}

.mp-btn--xs {
	min-height: 28px;
	padding: 4px 10px;
	font-size: 11px;
	border-radius: 7px;
}

@media (max-width: 899px) {
	/* Fix mobile critique:
	   annule la grille desktop 220px+1fr injectée plus haut (sidebar fantôme),
	   qui compressait le main et tronquait notifications/chats. */
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-shell {
		position: relative !important;
		inset: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 100dvh !important;
		overflow: visible !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-space {
		overflow: visible !important;
		min-height: 0 !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-app {
		grid-template-columns: minmax(0, 1fr) !important;
		--mp-participant-sidebar-toggle-offset: 0px !important;
		min-height: 0 !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-main {
		grid-column: 1 !important;
		height: auto !important;
		overflow: visible !important;
		padding-top: 0 !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen {
		position: relative !important;
		inset: auto !important;
		height: auto !important;
		overflow: visible !important;
		padding: calc(var(--mp-admin-bar-offset, 0px) + 74px) 14px calc(104px + env(safe-area-inset-bottom, 0px)) !important;
	}

	/* ══════════════════════════════════════════
	   TOPBAR MOBILE — pilule glass fixe en haut
	   ══════════════════════════════════════════ */
	.mp-participant-main__topbar,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-main__topbar {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		position: fixed !important;
		top: calc(var(--mp-admin-bar-offset, 0px) + 10px) !important;
		right: 12px !important;
		left: auto !important;
		width: auto !important;
		min-height: 0 !important;
		height: auto !important;
		margin: 0 !important;
		padding: 5px 8px !important;
		/* Pas de backdrop-filter ici — il briserait position:fixed des popups enfants.
		   L'effet glass est obtenu via ::before (pseudo-element isolé). */
		background: rgba(255, 255, 255, 0.82) !important;
		border: 1px solid rgba(255, 255, 255, 0.6) !important;
		border-radius: 999px !important;
		box-shadow: 0 4px 20px rgba(15, 23, 42, 0.12), 0 1px 0 rgba(255, 255, 255, 0.9) inset !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
		z-index: 200 !important;
	}

	/* Pseudo-element pour le blur — il crée son propre stacking context
	   sans affecter les enfants position:fixed du parent. */
	.mp-participant-main__topbar::before,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-main__topbar::before {
		content: '' !important;
		position: absolute !important;
		inset: 0 !important;
		border-radius: inherit !important;
		backdrop-filter: blur(20px) !important;
		-webkit-backdrop-filter: blur(20px) !important;
		z-index: -1 !important;
		pointer-events: none !important;
	}

	.mp-participant-page.is-dark .mp-participant-main__topbar {
		background: rgba(10, 16, 30, 0.82) !important;
		border-color: rgba(255, 255, 255, 0.1) !important;
		box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35) !important;
	}

	.mp-participant-page.is-dark .mp-participant-main__topbar::before {
		backdrop-filter: blur(20px) !important;
		-webkit-backdrop-filter: blur(20px) !important;
	}

	/* Conteneur interne */
	.mp-participant-topbar {
		display: flex !important;
		align-items: center !important;
		gap: 0 !important;
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
		backdrop-filter: none !important;
		padding: 0 !important;
		width: auto !important;
	}

	/* Masquer wishlist, texte profil et chevron */
	.mp-participant-topbar__icon-btn--wishlist,
	.mp-participant-topbar__profile-copy,
	.mp-participant-topbar__profile-chevron {
		display: none !important;
	}

	/* Icônes sans boîte */
	.mp-dark-toggle,
	.mp-participant-chat-btn,
	.mp-participant-notif-btn {
		width: 34px !important;
		height: 34px !important;
		min-width: 34px !important;
		border: none !important;
		background: transparent !important;
		box-shadow: none !important;
		border-radius: 50% !important;
		color: var(--mp-participant-accent-strong) !important;
	}

	.mp-participant-page.is-dark .mp-dark-toggle,
	.mp-participant-page.is-dark .mp-participant-chat-btn,
	.mp-participant-page.is-dark .mp-participant-notif-btn {
		color: rgba(255, 255, 255, 0.82) !important;
	}

	/* Avatar profil */
	.mp-participant-topbar__profile {
		display: inline-flex !important;
		align-items: center !important;
		padding: 0 !important;
		border: none !important;
		background: transparent !important;
		box-shadow: none !important;
		gap: 0 !important;
	}

	.mp-participant-topbar__profile-avatar {
		width: 30px !important;
		height: 30px !important;
		min-width: 30px !important;
		border-radius: 50% !important;
		border: 2px solid rgba(201, 168, 76, 0.55) !important;
	}

	/* ══════════════════════════════════════════
	   POPUPS — card centrée sous la pilule
	   ══════════════════════════════════════════ */

	/* Neutraliser le containing block */
	.mp-participant-notification-center,
	.mp-participant-chat-center {
		position: static !important;
		margin-inline-end: 0 !important;
	}

	.mp-notification-popover,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-notification-popover {
		position: fixed !important;
		top: calc(var(--mp-admin-bar-offset, 0px) + 66px) !important;
		left: 12px !important;
		right: 12px !important;
		bottom: auto !important;
		width: auto !important;
		max-width: none !important;
		border-radius: 20px !important;
		box-shadow: 0 20px 60px rgba(10, 22, 40, 0.22), 0 1px 0 rgba(255, 255, 255, 0.6) inset !important;
		transform: none !important;
		z-index: 1200 !important;
		display: flex !important;
		flex-direction: column !important;
	}

	.mp-notification-popover__head,
	.mp-notification-popover__footer {
		flex-shrink: 0;
	}

	.mp-notification-popover__body {
		max-height: min(65vh, 480px) !important;
		overflow-y: auto !important;
	}

	.mp-chat-popover,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-chat-popover {
		position: fixed !important;
		top: calc(var(--mp-admin-bar-offset, 0px) + 66px) !important;
		left: 12px !important;
		right: 12px !important;
		bottom: auto !important;
		width: auto !important;
		max-width: none !important;
		border-radius: 20px !important;
		box-shadow: 0 20px 60px rgba(10, 22, 40, 0.22), 0 1px 0 rgba(255, 255, 255, 0.6) inset !important;
		transform: none !important;
		z-index: 1200 !important;
	}

	.mp-chat-popover__body {
		max-height: min(65vh, 480px) !important;
		overflow-y: auto !important;
	}

	.mp-chat-modal {
		align-items: end;
	}

	.mp-chat-modal__dialog {
		width: calc(100vw - 16px);
		height: min(84vh, 760px);
		border-radius: 14px 14px 0 0;
	}

	.mp-chat-msg {
		max-width: 92%;
	}
}

@media (min-width: 900px) {
	.mp-participant-main__topbar {
		padding-right: 12px;
		padding-top: 2px;
	}

	.mp-participant-notification-center {
		margin-inline-end: 8px;
	}
}

body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-sidebar__footer {
	margin-top: auto !important;
	padding-top: 14px !important;
	padding-bottom: 18px !important;
}
.mp-learning-screen {
	display: grid;
	grid-template-columns: minmax(0, 1.6fr) minmax(280px, 0.9fr);
	gap: 16px;
}

.mp-learning-screen__main,
.mp-learning-screen__aside {
	display: grid;
	gap: 16px;
}

.mp-learning-screen__meta {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.mp-learning-screen__meta h3 {
	margin: 0;
	font-size: 18px;
	line-height: 1.3;
	color: #0a2540;
}

.mp-learning-screen__meta p,
.mp-learning-screen__lead {
	margin: 4px 0 0;
	font-size: 13px;
	line-height: 1.6;
	color: #6b7a90;
}

.mp-learning-player-card,
.mp-learning-progress-card {
	padding: 16px;
	background: #ffffff;
	border: 1px solid #e5eaf2;
	border-radius: 8px;
}

.mp-learning-player {
	width: 100%;
	border: 1px solid #e5eaf2;
	border-radius: 8px;
	background: #0a2540;
	overflow: hidden;
	aspect-ratio: 16 / 9;
}

.mp-learning-player video,
.mp-learning-player iframe {
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
}

.mp-learning-progress-card {
	display: grid;
	gap: 12px;
}

.mp-learning-progress-card__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	font-size: 13px;
	color: #0a2540;
}

.mp-learning-progress-bar {
	height: 8px;
	background: #edf2f8;
	border-radius: 999px;
	overflow: hidden;
}

.mp-learning-progress-bar span {
	display: block;
	width: 0;
	height: 100%;
	background: #2e6bff;
	border-radius: inherit;
	transition: width 180ms ease;
}

.mp-learning-progress-card__note,
.mp-learning-aside__empty {
	margin: 0;
	font-size: 12px;
	line-height: 1.6;
	color: #6b7a90;
}

.mp-learning-meta-list,
.mp-learning-resource-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 10px;
}

.mp-learning-meta-list li,
.mp-learning-resource-list li {
	font-size: 13px;
	color: #0a2540;
}

.mp-learning-resource-list a {
	color: #2e6bff;
	text-decoration: none;
}

.mp-learning-resource-list a:hover,
.mp-learning-resource-list a:focus {
	text-decoration: underline;
}

.mp-empty-state--compact {
	padding: 18px;
	border: 1px dashed #d8e1ee;
	border-radius: 8px;
	background: #fbfcfe;
}

@media (max-width: 900px) {
	.mp-learning-screen {
		grid-template-columns: 1fr;
	}

	.mp-learning-screen__meta {
		flex-direction: column;
	}
}

.mp-learning-screen {
	grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
	align-items: start;
	gap: 18px;
}

.mp-learning-shell__sidebar,
.mp-learning-shell__content {
	min-width: 0;
}

.mp-learning-shell__sidebar-inner,
.mp-learning-shell__content {
	display: grid;
	gap: 14px;
}

.mp-learning-shell__sidebar-inner {
	position: sticky;
	top: 16px;
	max-height: calc(100vh - 32px);
}

.mp-learning-sidebar-card,
.mp-learning-sidebar,
.mp-learning-section,
.mp-learning-panel--hero {
	border: 1px solid #e5eaf2;
	border-radius: 10px;
	background: #ffffff;
}

.mp-learning-sidebar-card {
	padding: 14px;
	display: grid;
	gap: 12px;
}

.mp-learning-sidebar-card__eyebrow {
	margin: 0;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6b7a90;
}

.mp-learning-sidebar-card h3 {
	margin: 0;
	font-size: 16px;
	line-height: 1.35;
	color: #0a2540;
}

.mp-learning-sidebar-card p {
	margin: 0;
	font-size: 12px;
	line-height: 1.6;
	color: #6b7a90;
}

.mp-learning-sidebar-card__back {
	justify-content: center;
}

.mp-learning-sidebar {
	padding: 12px;
	overflow: auto;
}

.mp-learning-sidebar__group {
	display: grid;
	gap: 8px;
}

.mp-learning-sidebar__group + .mp-learning-sidebar__group {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid #eef2f7;
}

.mp-learning-sidebar__section {
	margin: 0;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6b7a90;
}

.mp-learning-sidebar__items {
	display: grid;
	gap: 6px;
}

.mp-learning-sidebar__item {
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr);
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 10px;
	border: 1px solid #e8edf5;
	border-radius: 10px;
	background: #f8fbff;
	color: #0a2540;
	text-align: left;
	cursor: pointer;
	transition: border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

.mp-learning-sidebar__item:hover,
.mp-learning-sidebar__item:focus-visible {
	border-color: #c7d8ff;
	background: #f3f7ff;
	transform: translateY(-1px);
	outline: none;
}

.mp-learning-sidebar__item.is-active {
	border-color: #2e6bff;
	background: #eef4ff;
}

.mp-learning-sidebar__item[data-mp-learning-item-state="completed"] .mp-learning-sidebar__status {
	color: #0f766e;
}

.mp-learning-sidebar__item[data-mp-learning-item-state="in_progress"] .mp-learning-sidebar__status {
	color: #1d4ed8;
}

.mp-learning-sidebar__item[data-mp-learning-item-state="not_started"] .mp-learning-sidebar__status {
	color: #6b7a90;
}

.mp-learning-sidebar__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 10px;
	background: #ffffff;
	border: 1px solid #e5eaf2;
	color: #0a2540;
}

.mp-learning-sidebar__icon svg {
	width: 18px;
	height: 18px;
}

.mp-learning-sidebar__content {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.mp-learning-sidebar__title {
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	color: #0a2540;
}

.mp-learning-sidebar__status {
	font-size: 11px;
	font-weight: 600;
	line-height: 1.4;
	color: #6b7a90;
}

.mp-learning-panel--hero {
	padding: 16px;
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(240px, 0.95fr);
	gap: 16px;
}

.mp-learning-panel__hero-copy,
.mp-learning-panel__hero-progress {
	min-width: 0;
}

.mp-learning-panel__hero-copy h3 {
	margin: 0;
	font-size: 20px;
	line-height: 1.25;
	color: #0a2540;
}

.mp-learning-panel__lead {
	margin: 0;
	font-size: 13px;
	line-height: 1.65;
	color: #51637a;
}

.mp-learning-inline-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 8px;
}

.mp-learning-inline-meta__item {
	display: inline-flex;
	align-items: center;
	padding: 5px 9px;
	border-radius: 999px;
	background: #f5f8fc;
	border: 1px solid #e5eaf2;
	font-size: 12px;
	color: #4b5b71;
}

.mp-learning-section {
	padding: 16px;
	display: grid;
	gap: 14px;
	scroll-margin-top: 96px;
	transition: border-color 160ms ease, background-color 160ms ease;
}

.mp-learning-section.is-active {
	border-color: #cfe0ff;
	background: #fcfdff;
}

.mp-learning-section__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.mp-learning-section__head h3 {
	margin: 0;
	font-size: 16px;
	line-height: 1.35;
	color: #0a2540;
}

.mp-learning-summary-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.mp-learning-summary-card,
.mp-learning-resource-card,
.mp-learning-speaker-card {
	padding: 14px;
	border: 1px solid #e8edf5;
	border-radius: 10px;
	background: #fbfcfe;
}

.mp-learning-summary-card__label {
	display: inline-block;
	margin-bottom: 8px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #6b7a90;
}

.mp-learning-summary-card p,
.mp-learning-resource-card p {
	margin: 0;
	font-size: 13px;
	line-height: 1.65;
	color: #51637a;
}

.mp-learning-summary-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 8px;
}

.mp-learning-summary-list li {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	font-size: 13px;
	color: #0a2540;
}

.mp-learning-summary-list strong {
	font-size: 12px;
	color: #6b7a90;
	font-weight: 600;
}

.mp-learning-summary-list span {
	text-align: right;
}

.mp-learning-richtext {
	display: grid;
	gap: 10px;
	font-size: 13px;
	line-height: 1.7;
	color: #334155;
}

.mp-learning-richtext > :first-child {
	margin-top: 0;
}

.mp-learning-richtext > :last-child {
	margin-bottom: 0;
}

.mp-learning-player-card {
	padding: 0;
	overflow: hidden;
}

.mp-learning-file-badge {
	display: inline-flex;
	align-items: center;
	padding: 4px 8px;
	border-radius: 999px;
	background: #eef4ff;
	border: 1px solid #d6e3ff;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #2e6bff;
}

.mp-learning-resource-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.mp-learning-speakers-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.mp-learning-speaker-card {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
}

.mp-learning-speaker-card__avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 14px;
	background: #eff4fb;
	border: 1px solid #e5eaf2;
	overflow: hidden;
	color: #0a2540;
	font-size: 14px;
	font-weight: 700;
}

.mp-learning-speaker-card__avatar img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mp-learning-speaker-card__body {
	min-width: 0;
	display: grid;
	gap: 4px;
}

.mp-learning-speaker-card__body h4 {
	margin: 0;
	font-size: 14px;
	line-height: 1.35;
	color: #0a2540;
}

.mp-learning-speaker-card__meta,
.mp-learning-speaker-card__bio {
	margin: 0;
	font-size: 12px;
	line-height: 1.6;
	color: #6b7a90;
}

.mp-learning-progress-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	font-size: 12px;
	color: #6b7a90;
}

.mp-learning-progress-card--sidebar {
	padding: 0;
	border: 0;
	background: transparent;
}

.mp-learning-validation-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.mp-learning-validation-note {
	font-size: 12px;
	color: #6b7a90;
}

@media (max-width: 1100px) {
	.mp-learning-screen {
		grid-template-columns: 1fr;
	}

	.mp-learning-shell__sidebar-inner {
		position: static;
		max-height: none;
	}

	.mp-learning-panel--hero {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 760px) {
	.mp-learning-sidebar {
		padding: 10px;
	}

	.mp-learning-summary-grid,
	.mp-learning-speakers-grid {
		grid-template-columns: 1fr;
	}

	.mp-learning-resource-card,
	.mp-learning-summary-list li,
	.mp-learning-progress-card__meta,
	.mp-learning-section__head {
		flex-direction: column;
		align-items: flex-start;
	}

	.mp-learning-resource-card .mp-btn {
		width: 100%;
		justify-content: center;
	}
}

.mp-learning-screen {
	position: relative;
}

.mp-learning-section[hidden] {
	display: none !important;
}

.mp-learning-drawer-backdrop {
	display: none;
}

.mp-learning-sidebar-card__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.mp-learning-sidebar-card__close,
.mp-learning-shell__menu {
	display: none;
}

.mp-learning-shell__toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.mp-learning-shell__toolbar-meta {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 8px;
}

.mp-learning-sidebar__item[data-mp-learning-item-state="completed"] {
	border-color: #d9ebe3;
	background: #f6fcfa;
}

.mp-learning-sidebar__item[data-mp-learning-item-state="completed"] .mp-learning-sidebar__status {
	color: #0f766e;
}

.mp-learning-sidebar__item[data-mp-learning-item-state="in_progress"] {
	border-color: #f1dfbf;
	background: #fffaf2;
}

.mp-learning-sidebar__item[data-mp-learning-item-state="in_progress"] .mp-learning-sidebar__status {
	color: #a16207;
}

.mp-learning-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 14px 16px;
	border: 1px solid #e5eaf2;
	border-radius: 10px;
	background: #ffffff;
}

.mp-learning-actions__nav,
.mp-learning-actions__primary {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.mp-learning-actions__primary {
	margin-inline-start: auto;
}

.mp-learning-actions__primary .mp-btn {
	min-width: 220px;
	justify-content: center;
}

.mp-learning-actions__primary .mp-learning-validation-note {
	flex: 1 1 100%;
}

@media (min-width: 1101px) {
	.mp-learning-drawer-backdrop,
	.mp-learning-sidebar-card__close,
	.mp-learning-shell__menu {
		display: none !important;
	}
}

@media (max-width: 1100px) {
	.mp-learning-shell__toolbar {
		position: sticky;
		top: calc(var(--mp-admin-bar-offset, 0px) + 10px);
		z-index: 6;
		padding: 12px;
		border: 1px solid #e5eaf2;
		border-radius: 12px;
		background: rgba(255, 255, 255, 0.96);
		backdrop-filter: blur(10px);
	}

	.mp-learning-shell__menu,
	.mp-learning-sidebar-card__close {
		display: inline-flex;
	}

	.mp-learning-shell__sidebar {
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		z-index: 35;
		width: min(340px, 88vw);
		padding: 16px 14px;
		transform: translateX(-104%);
		transition: transform 180ms ease;
		pointer-events: none;
	}

	.mp-learning-screen.is-sidebar-open .mp-learning-shell__sidebar {
		transform: translateX(0);
		pointer-events: auto;
	}

	.mp-learning-drawer-backdrop {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 30;
		border: 0;
		padding: 0;
		background: rgba(10, 37, 64, 0.28);
		cursor: pointer;
	}

	.mp-learning-shell__sidebar-inner {
		position: relative;
		top: auto;
		max-height: calc(100vh - 32px);
		height: 100%;
	}

	.mp-learning-sidebar-card,
	.mp-learning-sidebar {
		box-shadow: 0 14px 34px rgba(10, 37, 64, 0.08);
	}
}

@media (max-width: 760px) {
	.mp-learning-shell__toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.mp-learning-shell__toolbar-meta {
		justify-content: flex-start;
	}

	.mp-learning-actions,
	.mp-learning-actions__nav,
	.mp-learning-actions__primary {
		flex-direction: column;
		align-items: stretch;
	}

	.mp-learning-actions__primary {
		margin-inline-start: 0;
	}

	.mp-learning-actions__nav .mp-btn,
	.mp-learning-actions__primary .mp-btn {
		width: 100%;
	}
}

.mp-lms-overview {
	display: grid;
	gap: 18px;
}

.mp-lms-overview__nav {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}

.mp-lms-overview__nav-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 7px 12px;
	border-radius: 999px;
	border: 1px solid #d8e0ea;
	background: #ffffff;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	color: #24344d;
	text-decoration: none;
	transition: border-color 0.18s ease, background 0.18s ease, color 0.18s ease;
}

.mp-lms-overview__nav-link:hover,
.mp-lms-overview__nav-link:focus-visible {
	border-color: #9fb5d7;
	background: #f5f8fd;
	color: #10233f;
}

.mp-lms-overview__nav-link.is-active {
	border-color: #9fb5d7;
	background: #eaf2ff;
	color: #13325d;
	box-shadow: inset 0 0 0 1px rgba(87, 136, 211, 0.08);
}

.mp-lms-overview-shelf {
	--mp-lms-shelf-accent: #7cb7ff;
	--mp-lms-shelf-accent-strong: #2e6bff;
	--mp-lms-shelf-bg: linear-gradient(180deg, #070b11 0%, #0c1320 100%);
	--mp-lms-shelf-copy: rgba(232, 239, 248, 0.72);
	--mp-lms-shelf-control-border: rgba(255, 255, 255, 0.12);
	--mp-lms-shelf-control-bg: rgba(255, 255, 255, 0.06);
	--mp-lms-shelf-card-bg: linear-gradient(135deg, #101b2d 0%, #17263d 100%);

	position: relative;
	display: grid;
	gap: 16px;
	padding: 20px;
	border-radius: 20px;
	background: var(--mp-lms-shelf-bg);
	border: 1px solid rgba(255, 255, 255, 0.04);
	color: #f8fbff;
	box-shadow: 0 20px 44px rgba(7, 16, 30, 0.18);
}

.mp-lms-overview-shelf--progress {
	--mp-lms-shelf-accent: #5f9dff;
	--mp-lms-shelf-accent-strong: #2e6bff;
	--mp-lms-shelf-bg: linear-gradient(180deg, rgba(226, 234, 246, 0.96) 0%, rgba(213, 224, 241, 0.88) 100%);
	--mp-lms-shelf-copy: rgba(31, 53, 86, 0.76);
	--mp-lms-shelf-control-border: rgba(120, 150, 197, 0.28);
	--mp-lms-shelf-control-bg: rgba(255, 255, 255, 0.52);
	--mp-lms-shelf-card-bg: linear-gradient(180deg, #284160 0%, #1b2f4a 100%);
}

.mp-lms-overview-shelf--discover {
	--mp-lms-shelf-accent: #f4c56d;
	--mp-lms-shelf-accent-strong: #d58b33;
	--mp-lms-shelf-bg: radial-gradient(circle at top right, rgba(244, 197, 109, 0.18), transparent 0 28%), linear-gradient(180deg, #18120a 0%, #120e13 100%);
	--mp-lms-shelf-copy: rgba(245, 231, 205, 0.76);
	--mp-lms-shelf-control-border: rgba(244, 197, 109, 0.22);
	--mp-lms-shelf-control-bg: rgba(244, 197, 109, 0.08);
	--mp-lms-shelf-card-bg: linear-gradient(135deg, #2b1f14 0%, #1b1620 100%);
}

.mp-lms-overview-shelf--empty {
	background: linear-gradient(180deg, #f7f9fc 0%, #eef3f9 100%);
	border: 1px solid #d9e2ee;
	color: #10233f;
	box-shadow: none;
}

.mp-lms-overview-shelf__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.mp-lms-overview-shelf__copy {
	display: grid;
	gap: 5px;
	min-width: 0;
}

.mp-lms-overview-shelf__copy h3 {
	margin: 0;
	font-size: 30px;
	line-height: 1.08;
	letter-spacing: -0.03em;
	color: #ffffff;
}

.mp-lms-overview-shelf--progress .mp-lms-overview-shelf__copy h3 {
	color: #17314e;
}

.mp-lms-overview-shelf__copy p {
	margin: 0;
	font-size: 13px;
	line-height: 1.65;
	color: var(--mp-lms-shelf-copy);
	max-width: 760px;
}

.mp-lms-overview-shelf__controls {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
}

.mp-lms-overview-shelf__control {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 999px;
	border: 1px solid var(--mp-lms-shelf-control-border);
	background: var(--mp-lms-shelf-control-bg);
	color: #ffffff;
	cursor: pointer;
	transition: background 0.18s ease, border-color 0.18s ease, opacity 0.18s ease;
}

.mp-lms-overview-shelf__control:hover,
.mp-lms-overview-shelf__control:focus-visible {
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.22);
}

.mp-lms-overview-shelf--progress .mp-lms-overview-shelf__control {
	color: #284160;
}

.mp-lms-overview-shelf--progress .mp-lms-overview-shelf__control:hover,
.mp-lms-overview-shelf--progress .mp-lms-overview-shelf__control:focus-visible {
	background: rgba(255, 255, 255, 0.64);
	border-color: rgba(90, 125, 180, 0.28);
}

.mp-lms-overview-shelf__control:disabled {
	opacity: 0.35;
	cursor: default;
}

.mp-lms-overview-shelf__control svg {
	width: 18px;
	height: 18px;
}

.mp-lms-overview-shelf__track {
	display: flex;
	gap: 14px;
	align-items: stretch;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x proximity;
	scrollbar-width: none;
	padding-bottom: 4px;
}

.mp-lms-overview-shelf__track::-webkit-scrollbar {
	display: none;
}

.mp-lms-overview-shelf--static .mp-lms-overview-shelf__track {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(172px, 208px));
	gap: 14px;
	overflow: visible;
	align-items: stretch;
	justify-content: flex-start;
}

.mp-lms-overview-shelf--catalog.mp-lms-overview-shelf--static .mp-lms-overview-shelf__track {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.mp-lms-overview-shelf--catalog.mp-lms-overview-shelf--static .mp-lms-overview-card {
	flex: 1 1 auto;
}

.mp-lms-overview-shelf--catalog .mp-lms-overview-card__media {
	aspect-ratio: 16 / 10;
}

.mp-lms-overview-shelf__empty {
	padding: 24px;
	border-radius: 16px;
	border: 1px dashed rgba(255, 255, 255, 0.16);
	background: rgba(255, 255, 255, 0.03);
	font-size: 13px;
	line-height: 1.7;
	color: rgba(232, 239, 248, 0.74);
}

.mp-lms-overview-card {
	display: flex;
	flex-direction: column;
	gap: 8px;
	flex: 0 0 196px;
	min-width: 0;
	height: 100%;
	min-height: 100%;
	scroll-snap-align: start;
	color: #ffffff;
	box-sizing: border-box;
}

.mp-lms-overview-shelf--progress .mp-lms-overview-card {
	gap: 8px;
	padding: 10px;
	border-radius: 16px;
	background: linear-gradient(180deg, rgba(35, 57, 87, 0.98) 0%, rgba(24, 41, 64, 0.98) 100%);
	border: 1px solid rgba(28, 54, 88, 0.26);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.mp-lms-overview-card__media {
	position: relative;
	aspect-ratio: 16 / 9;
	border-radius: 12px;
	overflow: hidden;
	background: var(--mp-lms-shelf-card-bg);
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.mp-lms-overview-card__media img,
.mp-lms-overview-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
}

.mp-lms-overview-card__media img {
	object-fit: cover;
	transform: scale(1.001);
	transition: transform 0.24s ease, opacity 0.24s ease;
}

.mp-lms-overview-card:hover .mp-lms-overview-card__media img {
	transform: scale(1.04);
}

.mp-lms-overview-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	background:
		radial-gradient(circle at 25% 20%, rgba(255, 255, 255, 0.14), transparent 0 34%),
		linear-gradient(135deg, #1b2f54 0%, #0d1626 100%);
}

.mp-lms-overview-card__placeholder span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.16);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.04em;
	color: #ffffff;
}

.mp-lms-overview-card__badge,
.mp-lms-overview-card__corner-meta {
	position: absolute;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 22px;
	padding: 4px 8px;
	border-radius: 999px;
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.mp-lms-overview-card__badge {
	top: 8px;
	right: 8px;
	background: rgba(255, 255, 255, 0.96);
	color: #10233f;
}

.mp-lms-overview-card__wishlist {
	position: absolute;
	top: 8px;
	right: 8px;
	z-index: 2;
}

.mp-lms-overview-card__wishlist .mp-wishlist-btn__button {
	min-width: auto;
	min-height: 22px;
	padding: 4px 8px;
	background: rgba(12, 20, 34, 0.76);
	border-color: rgba(255, 255, 255, 0.12);
	color: #ffffff;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.mp-lms-overview-card__wishlist .mp-wishlist-btn__button .mp-icon {
	width: 12px;
	height: 12px;
	transform: translateY(-0.25px);
}

.mp-lms-overview-card__wishlist .mp-wishlist-btn__button:hover,
.mp-lms-overview-card__wishlist .mp-wishlist-btn__button:focus-visible {
	background: rgba(18, 29, 48, 0.92);
	border-color: rgba(191, 213, 246, 0.24);
	color: #ffffff;
}

.mp-lms-overview-card__wishlist .mp-wishlist-btn__button.is-active {
	background: rgba(127, 29, 29, 0.72);
	border-color: rgba(252, 165, 165, 0.22);
	color: #fff1f2;
}

.mp-lms-overview-card__corner-meta {
	right: 8px;
	bottom: 8px;
	background: rgba(8, 12, 18, 0.74);
	border: 1px solid rgba(255, 255, 255, 0.12);
	color: #ffffff;
}

.mp-lms-overview-card__body {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
	flex: 1 1 auto;
}

.mp-lms-overview-shelf--progress .mp-lms-overview-card__kicker,
.mp-lms-overview-shelf--progress .mp-lms-overview-card__meta {
	min-height: 14px;
	color: rgba(205, 220, 241, 0.72);
}

.mp-lms-overview-shelf--progress .mp-lms-overview-card h4 {
	min-height: calc(1.18em * 2);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	color: #ffffff;
}

.mp-lms-overview-shelf--progress .mp-lms-overview-card__excerpt {
	min-height: calc(1.62em * 2);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	color: rgba(224, 234, 247, 0.84);
}

.mp-lms-overview-card__kicker,
.mp-lms-overview-card__meta {
	margin: 0;
	font-size: 9px;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: 0.04em;
	color: rgba(223, 231, 241, 0.74);
}

.mp-lms-overview-card h4 {
	margin: 0;
	font-size: 15px;
	line-height: 1.22;
	letter-spacing: -0.02em;
	color: #ffffff;
}

.mp-lms-overview-card__excerpt {
	margin: 0;
	font-size: 11px;
	line-height: 1.5;
	color: rgba(232, 239, 248, 0.74);
}

.mp-lms-overview-card__footer {
	display: grid;
	gap: 8px;
	padding-top: 4px;
	margin-top: auto;
	align-content: end;
}

.mp-lms-overview-shelf--progress .mp-lms-overview-card__footer {
	grid-template-rows: 6px 16px;
	gap: 8px;
	height: 30px;
	min-height: 30px;
}

.mp-lms-overview-shelf--progress .mp-lms-overview-card__action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 8px;
	min-width: 74px;
	min-height: 16px;
	line-height: 16px;
	white-space: nowrap;
	border-radius: 999px;
	border: 1px solid rgba(175, 202, 242, 0.18);
	background: rgba(150, 182, 232, 0.14);
	font-size: 10px;
	color: #ecf4ff;
	text-decoration: none;
}

.mp-lms-overview-shelf--progress .mp-lms-overview-card__action:hover,
.mp-lms-overview-shelf--progress .mp-lms-overview-card__action:focus-visible {
	background: rgba(150, 182, 232, 0.22);
	border-color: rgba(191, 213, 246, 0.28);
	color: #ffffff;
}

.mp-lms-overview-shelf--progress .mp-lms-overview-card__action.is-disabled {
	background: rgba(169, 186, 212, 0.1);
	border-color: rgba(169, 186, 212, 0.12);
	color: rgba(220, 230, 245, 0.72);
}

.mp-lms-overview-card__progress {
	position: relative;
	width: 100%;
	height: 6px;
	border-radius: 999px;
	background: rgba(232, 241, 255, 0.18);
	overflow: hidden;
}

.mp-lms-overview-card__progress span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--mp-lms-shelf-accent) 0%, var(--mp-lms-shelf-accent-strong) 100%);
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08) inset;
}

.mp-lms-overview-shelf--progress .mp-lms-overview-card__progress {
	background: rgba(182, 202, 233, 0.22);
}

.mp-lms-overview-card__action {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex-shrink: 0;
	align-self: flex-start;
	font-size: 12px;
	font-weight: 700;
	color: var(--mp-lms-shelf-accent);
	text-decoration: none;
}

.mp-lms-overview-card__action:hover,
.mp-lms-overview-card__action:focus-visible {
	color: #d2e1ff;
}

.mp-lms-overview-card__action.is-disabled {
	color: rgba(232, 239, 248, 0.44);
}

.mp-lms-overview-card__community {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	min-height: 16px;
}

.mp-lms-overview-card__community-link,
.mp-lms-overview-card__community-note {
	display: inline-flex;
	align-items: center;
	min-height: 16px;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	text-decoration: none;
}

.mp-lms-overview-card__community-link {
	color: #d7e7ff;
}

.mp-lms-overview-card__community-link:hover,
.mp-lms-overview-card__community-link:focus-visible {
	color: #ffffff;
}

.mp-lms-overview-card__community-note {
	color: rgba(220, 230, 245, 0.62);
}

.mp-wishlist-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 16px;
}

.mp-wishlist-card {
	display: grid;
	gap: 14px;
	padding: 16px;
}

.mp-wishlist-card__media {
	position: relative;
	aspect-ratio: 16 / 9;
	border-radius: 14px;
	overflow: hidden;
	background: linear-gradient(145deg, #10233f 0%, #1f3a62 100%);
}

.mp-wishlist-card__media img,
.mp-wishlist-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
}

.mp-wishlist-card__media img {
	object-fit: cover;
}

.mp-wishlist-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
}

.mp-wishlist-card__placeholder span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.16);
	font-size: 18px;
	font-weight: 700;
	color: #ffffff;
}

.mp-wishlist-card__badge {
	position: absolute;
	top: 10px;
	left: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 24px;
	padding: 4px 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.94);
	color: #10233f;
	font-size: 11px;
	font-weight: 700;
}

.mp-wishlist-card__body {
	display: grid;
	gap: 6px;
}

.mp-wishlist-card__kicker,
.mp-wishlist-card__meta {
	margin: 0;
	font-size: 11px;
	color: var(--mp-participant-text-muted);
}

.mp-wishlist-card__body h3 {
	margin: 0;
	font-size: 18px;
	line-height: 1.25;
	color: var(--mp-participant-text);
}

.mp-wishlist-card__excerpt {
	margin: 0;
	font-size: 13px;
	line-height: 1.55;
	color: var(--mp-participant-text-soft);
}

.mp-wishlist-card__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.mp-wishlist-btn--remove .mp-wishlist-btn__button {
	background: rgba(248, 250, 252, 0.92);
}

@media (max-width: 980px) {
	.mp-lms-overview-shelf__copy h3 {
		font-size: 24px;
	}

	.mp-lms-overview-shelf__track {
		gap: 12px;
	}

	.mp-lms-overview-card {
		flex-basis: 184px;
	}

	.mp-lms-overview-shelf--static .mp-lms-overview-shelf__track {
		grid-template-columns: repeat(auto-fit, minmax(168px, 196px));
	}

	.mp-lms-overview-shelf--catalog.mp-lms-overview-shelf--static .mp-lms-overview-shelf__track {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}

	.mp-lms-overview-card h4 {
		font-size: 14px;
	}
}

@media (max-width: 760px) {
	.mp-lms-overview__nav {
		gap: 6px;
	}

	.mp-lms-overview__nav-link {
		font-size: 11px;
		padding: 7px 10px;
	}

	.mp-lms-overview-shelf {
		padding: 16px;
		border-radius: 16px;
	}

	.mp-lms-overview-shelf__head {
		flex-direction: column;
		align-items: stretch;
	}

	.mp-lms-overview-shelf__copy h3 {
		font-size: 21px;
	}

	.mp-lms-overview-shelf__copy p {
		font-size: 12px;
	}

	.mp-lms-overview-shelf__controls {
		justify-content: flex-end;
	}

	.mp-lms-overview-card {
		flex-basis: 68vw;
		max-width: 68vw;
	}

	.mp-lms-overview-shelf--static .mp-lms-overview-shelf__track {
		grid-template-columns: 1fr;
	}

	.mp-lms-overview-card h4 {
		font-size: 17px;
	}

	.mp-lms-overview-card__excerpt {
		font-size: 12px;
	}
}

.mp-lms-detail {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(280px, 0.85fr);
	gap: 18px;
	align-items: start;
}

.mp-lms-detail__main,
.mp-lms-detail__aside {
	display: grid;
	gap: 16px;
	min-width: 0;
}

.mp-lms-detail__aside {
	position: sticky;
	top: 16px;
}

.mp-lms-detail__hero,
.mp-lms-detail__section,
.mp-lms-detail__purchase,
.mp-lms-detail__aside-card {
	border: 1px solid #e5eaf2;
	border-radius: 10px;
	background: #ffffff;
}

.mp-lms-detail__hero,
.mp-lms-detail__section {
	padding: 18px;
	display: grid;
	gap: 14px;
}

.mp-lms-detail__hero h3 {
	margin: 0;
	font-size: 26px;
	line-height: 1.2;
	color: #0a2540;
}

.mp-lms-detail__rating {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 600;
	color: #6b7a90;
}

.mp-lms-detail__stars {
	color: #f59e0b;
	letter-spacing: 0.08em;
}

.mp-lms-detail__speaker {
	display: flex;
	align-items: center;
	gap: 10px;
}

.mp-lms-detail__speaker-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 999px;
	background: #eff4fb;
	border: 1px solid #dfe7f2;
	overflow: hidden;
	color: #0a2540;
	font-size: 13px;
	font-weight: 700;
}

.mp-lms-detail__speaker-avatar img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mp-lms-detail__speaker-copy {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.mp-lms-detail__speaker-copy strong {
	font-size: 13px;
	color: #0a2540;
}

.mp-lms-detail__speaker-copy span {
	font-size: 12px;
	color: #6b7a90;
}

.mp-lms-detail__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	padding-bottom: 2px;
}

.mp-lms-detail__meta span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	color: #51637a;
}

.mp-lms-detail__meta strong {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #6b7a90;
}

.mp-lms-detail__media,
.mp-lms-detail__image {
	border-radius: 12px;
	overflow: hidden;
}

.mp-lms-detail__image img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.mp-lms-detail__body-copy {
	margin: 0;
	font-size: 13px;
	line-height: 1.75;
	color: #51637a;
}

.mp-lms-detail__resources {
	display: grid;
	gap: 12px;
}

.mp-lms-detail__resource {
	padding: 14px 16px;
	border: 1px solid #e5eaf2;
	border-radius: 12px;
	background: #f9fbfe;
}

.mp-lms-detail__resource-copy {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.mp-lms-detail__resource-copy strong {
	font-size: 13px;
	line-height: 1.45;
	color: #0a2540;
}

.mp-lms-detail__resource-copy p {
	margin: 0;
	font-size: 12px;
	line-height: 1.65;
	color: #6b7a90;
}

.mp-lms-detail__resource-actions {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

.mp-lms-detail__speaker-card {
	padding: 14px;
	border: 1px solid #e5eaf2;
	border-radius: 12px;
	background: #f9fbfe;
}

.mp-lms-detail__purchase,
.mp-lms-detail__aside-card {
	padding: 16px;
	display: grid;
	gap: 14px;
}

.mp-lms-detail__price {
	display: grid;
	gap: 4px;
}

.mp-lms-detail__price strong {
	font-size: 28px;
	line-height: 1;
	color: #0a2540;
}

.mp-lms-detail__price span {
	font-size: 12px;
	color: #6b7a90;
}

.mp-lms-detail__purchase-actions {
	display: grid;
	gap: 10px;
}

.mp-lms-detail__purchase-actions .mp-btn,
.mp-lms-detail__purchase-actions form {
	width: 100%;
}

.mp-lms-detail__purchase-actions form .mp-btn {
	width: 100%;
	justify-content: center;
}

.mp-lms-detail__purchase-note {
	margin: 0;
	font-size: 12px;
	line-height: 1.6;
	color: #6b7a90;
}

.mp-lms-detail__checklist {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 16px;
}

.mp-lms-detail__checklist li {
	position: relative;
	padding-left: 18px;
	font-size: 13px;
	line-height: 1.65;
	color: #0a2540;
}

.mp-lms-detail__checklist li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55em;
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: #2e6bff;
}

.mp-lms-detail__checklist--aside {
	grid-template-columns: 1fr;
}

@media (max-width: 1100px) {
	.mp-lms-detail {
		grid-template-columns: 1fr;
	}

	.mp-lms-detail__aside {
		position: static;
	}
}

@media (max-width: 760px) {
	.mp-lms-detail__hero h3 {
		font-size: 22px;
	}

	.mp-lms-detail__meta,
	.mp-lms-detail__speaker {
		align-items: flex-start;
	}

	.mp-lms-detail__checklist {
		grid-template-columns: 1fr;
	}

	.mp-lms-detail__resource,
	.mp-lms-detail__resource-actions {
		flex-direction: column;
		align-items: flex-start;
	}

	.mp-lms-detail__resource-actions .mp-btn {
		width: 100%;
		justify-content: center;
	}
}

/* ============================================================
   LMS PLAYER  –  .mp-lp  (professional two-column layout)
   ============================================================ */

/* ---------- Layout root ---------- */
.mp-lp {
	--lp-sidebar-w: 288px;
	--lp-topbar-h: 56px;
	--lp-actions-h: 68px;

	display: grid;
	grid-template-columns: var(--lp-sidebar-w) 1fr;
	grid-template-rows: 1fr;
	/* height fixe = sections bornées, pas de scroll de page */
	height: calc(100vh - var(--mp-admin-bar-offset) - 64px);
	background: var(--mp-bg);
	border-radius: var(--mp-radius);
	overflow: hidden;
	box-shadow: var(--mp-shadow-lg);
	position: relative;
}

/* ---------- Backdrop (mobile only) ---------- */
.mp-lp__backdrop {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(14, 26, 45, 0.55);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	z-index: 200;
	opacity: 0;
	transition: opacity 0.28s var(--mp-ease);
}

/* ---------- Sidebar ---------- */
.mp-lp__sidebar {
	grid-column: 1;
	background: var(--mp-navy-deep);
	color: #e8eef6;
	display: flex;
	flex-direction: column;
	height: calc(100vh - var(--mp-admin-bar-offset) - 64px);
	position: sticky;
	top: calc(var(--mp-admin-bar-offset) + 32px);
	overflow: hidden;
	transition: transform 0.32s var(--mp-ease);
}

.mp-lp__sidebar-inner {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
}

/* Sidebar head */
.mp-lp__sidebar-head {
	padding: 20px 20px 16px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	flex-shrink: 0;
}

.mp-lp__sidebar-head-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
}

.mp-lp__sidebar-eyebrow {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--mp-blue-soft);
	opacity: 0.8;
}

.mp-lp__sidebar-close {
	display: none;
	background: none;
	border: none;
	cursor: pointer;
	padding: 4px;
	color: rgba(232, 238, 246, 0.6);
	border-radius: 6px;
	line-height: 1;
	transition: color 0.15s, background 0.15s;
}

.mp-lp__sidebar-close:hover,
.mp-lp__sidebar-close:focus-visible {
	color: #fff;
	background: rgba(255, 255, 255, 0.1);
}

.mp-lp__sidebar-title {
	font-family: var(--mp-serif);
	font-size: 15px;
	line-height: 1.35;
	color: #fff;
	margin: 0 0 14px;
	font-weight: 600;
}

/* Sidebar progress */
.mp-lp__sidebar-prog {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.mp-lp__sidebar-prog-bar {
	height: 4px;
	background: rgba(255, 255, 255, 0.12);
	border-radius: 999px;
	overflow: hidden;
}

.mp-lp__sidebar-prog-bar span {
	display: block;
	height: 100%;
	background: linear-gradient(90deg, var(--mp-blue-soft), #6ea4ff);
	border-radius: 999px;
	transition: width 0.5s var(--mp-ease);
}

.mp-lp__sidebar-prog-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 11px;
	color: rgba(232, 238, 246, 0.65);
}

/* Nav scroll area */
.mp-lp__nav {
	flex: 1;
	overflow-y: auto;
	padding: 12px 0 16px;
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 255, 255, 0.15) transparent;
}

.mp-lp__nav::-webkit-scrollbar {
	width: 4px;
}

.mp-lp__nav::-webkit-scrollbar-track {
	background: transparent;
}

.mp-lp__nav::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.15);
	border-radius: 4px;
}

/* Back link in sidebar */
.mp-lp__sidebar-back {
	display: flex;
	align-items: center;
	gap: 7px;
	padding: 14px 20px;
	font-size: 12px;
	font-weight: 600;
	color: rgba(232, 238, 246, 0.55);
	text-decoration: none;
	border-top: 1px solid rgba(255, 255, 255, 0.07);
	flex-shrink: 0;
	transition: color 0.15s;
}

.mp-lp__sidebar-back:hover,
.mp-lp__sidebar-back:focus-visible {
	color: #fff;
	text-decoration: none;
}

.mp-lp__sidebar-back svg {
	flex-shrink: 0;
}

.mp-lp__sidebar-close svg,
.mp-lp__sidebar-back svg,
.mp-lp__menu-btn svg,
.mp-lp__topbar-back svg,
.mp-lp__meta-chip svg,
.mp-lp__resource-icon svg,
.mp-lp__resource-card .mp-btn svg,
.mp-lp__done-banner-icon svg,
.mp-lp__cert-notice svg,
.mp-lp__nav-btn svg,
.mp-lp__complete-btn svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

/* ---------- Main ---------- */
.mp-lp__main {
	grid-column: 2;
	display: flex;
	flex-direction: column;
	height: 100%; /* = hauteur du parent .mp-lp */
	min-height: 0;
	background: var(--mp-surface);
	overflow: hidden; /* sections gèrent leur propre scroll */
}

/* Mobile topbar (hidden on desktop) */
.mp-lp__topbar {
	display: none;
	align-items: center;
	gap: 10px;
	padding: 0 16px;
	height: var(--lp-topbar-h);
	background: var(--mp-surface);
	border-bottom: 1px solid var(--mp-border);
	position: sticky;
	top: var(--mp-admin-bar-offset);
	z-index: 100;
	flex-shrink: 0;
}

.mp-lp__menu-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: auto;
	min-width: 38px;
	height: 38px;
	padding: 0 12px;
	background: none;
	border: 1px solid var(--mp-border);
	border-radius: 10px;
	cursor: pointer;
	color: var(--mp-navy);
	flex-shrink: 0;
	transition: background 0.15s, border-color 0.15s;
}

.mp-lp__menu-btn:hover,
.mp-lp__menu-btn:focus-visible {
	background: var(--mp-bg);
	border-color: var(--mp-blue-mid);
}

.mp-lp__topbar-meta {
	display: flex;
	align-items: center;
	gap: 6px;
	flex: 1;
	overflow: hidden;
}

.mp-lp__topbar-pill {
	display: inline-flex;
	align-items: center;
	padding: 3px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 600;
	background: var(--mp-bg);
	color: var(--mp-muted);
	border: 1px solid var(--mp-border);
	white-space: nowrap;
}

.mp-lp__topbar-back {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	color: var(--mp-muted);
	border: 1px solid var(--mp-border);
	border-radius: 10px;
	text-decoration: none;
	flex-shrink: 0;
	transition: color 0.15s, border-color 0.15s;
}

.mp-lp__topbar-back:hover,
.mp-lp__topbar-back:focus-visible {
	color: var(--mp-navy);
	border-color: var(--mp-blue-mid);
}

.mp-lp__button-label {
	display: inline-flex;
	align-items: center;
	min-width: 0;
}

/* ---------- Sections ---------- */
.mp-lp__section {
	display: none;
	flex: 1;
	flex-direction: column;
	overflow-y: auto;
	min-height: 0;
	/* Pas de padding-bottom : la barre d'actions est un sibling,
	   le scroll interne de la section ne peut pas passer sous elle */
}

.mp-lp__section.is-active {
	display: flex;
}

/* Section head */
.mp-lp__section-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	padding: 28px 32px 20px;
	border-bottom: 1px solid var(--mp-border);
	flex-shrink: 0;
}

.mp-lp__section-head--flush {
	padding-bottom: 0;
	border-bottom: none;
}

.mp-lp__section-head-text {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.mp-lp__eyebrow {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--mp-blue);
}

.mp-lp__section-title {
	font-family: var(--mp-serif);
	font-size: 22px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--mp-navy-deep);
	margin: 0;
}

.mp-lp__section-lead {
	margin: 4px 0 0;
	font-size: 14px;
	color: var(--mp-muted);
	line-height: 1.55;
}

/* Status badge */
.mp-lp__status-badge {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 4px 12px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	flex-shrink: 0;
}

.mp-lp__status-badge--done {
	background: var(--mp-success-bg);
	color: var(--mp-success);
}

.mp-lp__status-badge--pending {
	background: var(--mp-warning-bg);
	color: var(--mp-warning);
}

/* ---------- Overview section ---------- */
.mp-lp__meta-strip {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	padding: 16px 32px;
	border-bottom: 1px solid var(--mp-border);
	flex-shrink: 0;
}

.mp-lp__meta-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	max-width: 100%;
	min-height: 38px;
	padding: 5px 12px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 500;
	background: var(--mp-bg);
	color: var(--mp-text);
	border: 1px solid var(--mp-border);
}

.mp-lp__meta-chip svg {
	color: var(--mp-blue);
	flex-shrink: 0;
}

.mp-lp__richtext {
	padding: 24px 32px;
	font-size: 15px;
	line-height: 1.7;
	color: var(--mp-text);
	flex: 0 0 auto;
}

.mp-lp__richtext p { margin: 0 0 16px; }
.mp-lp__richtext p:last-child { margin-bottom: 0; }
.mp-lp__richtext h3,
.mp-lp__richtext h4 {
	font-family: var(--mp-serif);
	color: var(--mp-navy-deep);
	margin: 24px 0 8px;
}

/* ---------- Progress card (shared) ---------- */
.mp-lp__prog-card {
	margin: 20px 32px;
	padding: 20px 24px;
	background: var(--mp-surface-soft);
	border: 1px solid var(--mp-border);
	border-radius: var(--mp-radius-sm);
}

.mp-lp__prog-card-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
}

.mp-lp__prog-card-head span:first-child {
	font-size: 13px;
	font-weight: 700;
	color: var(--mp-navy-deep);
}

.mp-lp__prog-card-head span + span {
	font-size: 13px;
	font-weight: 600;
	color: var(--mp-blue);
}

.mp-lp__prog-bar {
	height: 6px;
	background: var(--mp-border);
	border-radius: 999px;
	overflow: hidden;
	margin-bottom: 10px;
}

.mp-lp__prog-bar span {
	display: block;
	height: 100%;
	background: linear-gradient(90deg, var(--mp-blue-soft), var(--mp-blue));
	border-radius: 999px;
	transition: width 0.5s var(--mp-ease);
}

.mp-lp__prog-note {
	font-size: 12px;
	color: var(--mp-muted);
	margin: 0;
}

.mp-lp__prog-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
}

.mp-lp__prog-meta span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 4px 10px;
	border-radius: 8px;
	font-size: 12px;
	font-weight: 500;
	background: var(--mp-bg);
	border: 1px solid var(--mp-border);
	color: var(--mp-muted);
}

/* Certificate notice */
.mp-lp__cert-notice {
	margin: 0 32px 24px;
	padding: 16px 20px;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	background: linear-gradient(135deg, #edf3fc, #f5f9ff);
	border: 1px solid var(--mp-blue-soft);
	border-radius: var(--mp-radius-sm);
	font-size: 13px;
	color: var(--mp-navy);
	line-height: 1.55;
}

.mp-lp__cert-notice svg {
	flex-shrink: 0;
	color: var(--mp-blue);
	margin-top: 1px;
}

/* ---------- Video section ---------- */
.mp-lp__section--video {
	overflow: hidden;
}

.mp-lp__player-wrap {
	position: relative;
	width: 100%;
	background: #000;
	flex-shrink: 0;
}

.mp-lp__player-wrap::before {
	content: '';
	display: block;
	padding-top: 56.25%; /* 16:9 */
}

.mp-lp__player-el {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
	object-fit: contain;
	object-position: center center;
	background: #000;
}

.mp-lp__player-el--iframe {
	overflow: hidden;
	border: none;
}

.mp-lp__player-el--iframe iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	background: #000;
}

.mp-lp__player-placeholder {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	background: linear-gradient(135deg, #0a1628, #1a2d4a);
	color: rgba(255, 255, 255, 0.7);
	font-size: 13px;
	text-align: center;
	padding: 24px;
}

.mp-lp__player-placeholder svg {
	width: 40px;
	height: 40px;
	color: rgba(255, 255, 255, 0.35);
}

.mp-lp__player-placeholder--empty {
	background: #0e1a2d;
}

/* ---------- Resource section ---------- */
.mp-lp__file-badge {
	display: inline-flex;
	align-items: center;
	padding: 4px 12px;
	border-radius: 8px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	background: var(--mp-bg);
	color: var(--mp-muted);
	border: 1px solid var(--mp-border);
	flex-shrink: 0;
}

.mp-lp__resource-card {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin: 24px 32px;
	padding: 20px 24px;
	background: var(--mp-surface-soft);
	border: 1px solid var(--mp-border);
	border-radius: var(--mp-radius-sm);
}

.mp-lp__resource-icon {
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, var(--mp-navy-deep), var(--mp-blue));
	border-radius: 10px;
	color: #fff;
	flex-shrink: 0;
}

.mp-lp__resource-body {
	flex: 1;
	min-width: 0;
}

.mp-lp__resource-body strong {
	display: block;
	font-size: 15px;
	font-weight: 700;
	color: var(--mp-navy-deep);
	margin-bottom: 4px;
}

.mp-lp__resource-body p {
	font-size: 13px;
	color: var(--mp-muted);
	margin: 0 0 14px;
	line-height: 1.55;
}

.mp-lp__resource-body .mp-btn {
	margin-top: 4px;
}

.mp-lp__resource-card > .mp-btn {
	align-self: center;
}

/* ---------- Speakers section ---------- */
.mp-lp__speakers-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 16px;
	padding: 24px 32px;
}

.mp-lp__speaker-card {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 18px 20px;
	background: var(--mp-surface-soft);
	border: 1px solid var(--mp-border);
	border-radius: var(--mp-radius-sm);
}

.mp-lp__speaker-avatar {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--mp-navy), var(--mp-blue-mid));
	overflow: hidden;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.6);
}

.mp-lp__speaker-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mp-lp__speaker-body {
	flex: 1;
	min-width: 0;
}

.mp-lp__speaker-body h4,
.mp-lp__speaker-body strong {
	display: block;
	margin: 0 0 2px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--mp-navy-deep);
}

.mp-lp__speaker-meta {
	font-size: 12px;
	color: var(--mp-blue);
	font-weight: 500;
	margin: 0 0 2px;
}

.mp-lp__speaker-meta--org {
	color: var(--mp-muted);
	font-weight: 400;
}

.mp-lp__speaker-bio {
	font-size: 12px;
	color: var(--mp-muted);
	margin: 6px 0 0;
	line-height: 1.55;
}

/* ---------- Validation / done banner ---------- */
.mp-lp__done-banner {
	margin: 24px 32px 0;
	padding: 20px 24px;
	display: flex;
	align-items: center;
	gap: 16px;
	background: linear-gradient(135deg, #e6f8f1, #f0faf7);
	border: 1.5px solid #9de0c4;
	border-radius: var(--mp-radius-sm);
}

.mp-lp__done-banner-icon {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--mp-success);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	flex-shrink: 0;
}

.mp-lp__done-banner p {
	flex: 1;
	font-size: 14px;
	font-weight: 600;
	color: #006b44;
	margin: 0;
	line-height: 1.45;
}

.mp-lp__done-banner p span {
	display: block;
	font-size: 12px;
	font-weight: 400;
	color: #3a9970;
	margin-top: 2px;
}

/* ---------- Actions bar ---------- */
.mp-lp__actions-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 0 24px;
	height: var(--lp-actions-h);
	background: var(--mp-surface);
	border-top: 1px solid var(--mp-border);
	/* flex-shrink:0 suffit — main a overflow:hidden, pas besoin de sticky */
	flex-shrink: 0;
	box-shadow: 0 -2px 8px rgba(14, 26, 45, 0.04);
}

.mp-lp__actions-nav {
	display: flex;
	align-items: center;
	gap: 8px;
}

.mp-lp__nav-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.mp-lp__nav-btn svg {
	flex-shrink: 0;
}

.mp-lp__actions-primary {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}

.mp-lp__feedback-note {
	font-size: 12px;
	color: var(--mp-muted);
	margin: 0;
	display: flex;
	align-items: center;
	gap: 5px;
	min-width: 0;
}

.mp-lp__feedback-note svg {
	color: var(--mp-success);
}

.mp-lp__complete-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.mp-lp__lesson-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
	align-items: start;
	gap: 20px;
	padding: 24px 32px 32px;
}

.mp-lp__lesson-primary,
.mp-lp__lesson-secondary {
	display: grid;
	gap: 16px;
	min-width: 0;
	align-content: start;
}

.mp-lp__lesson-primary > .mp-lp__player-wrap {
	border: 1px solid var(--mp-border);
	border-radius: var(--mp-radius-sm);
	overflow: hidden;
	background: #000;
}

.mp-lp__lesson-card {
	display: grid;
	gap: 14px;
	padding: 18px 20px;
	background: var(--mp-surface-soft);
	border: 1px solid var(--mp-border);
	border-radius: var(--mp-radius-sm);
}

.mp-lp__lesson-card strong {
	display: block;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--mp-navy-deep);
}

.mp-lp__lesson-card p {
	margin: 0;
}

.mp-lp__lesson-card--compact {
	padding: 16px 18px;
	gap: 12px;
}

.mp-lp__lesson-card--info {
	background: linear-gradient(180deg, #f8fbff 0%, #fdfefe 100%);
	border-color: #dbe6f7;
}

.mp-lp__lesson-card .mp-lp__richtext {
	padding: 0;
	font-size: 14px;
	line-height: 1.68;
}

.mp-lp__lesson-card .mp-lp__richtext h3,
.mp-lp__lesson-card .mp-lp__richtext h4 {
	margin-top: 0;
}

.mp-lp__lesson-copy {
	margin: 0;
	font-size: 13px;
	line-height: 1.65;
	color: var(--mp-muted);
}

.mp-lp__resource-list,
.mp-lp__speakers-list,
.mp-lp__mini-list {
	display: grid;
	gap: 12px;
}

.mp-lp__resource-list .mp-lp__resource-card {
	margin: 0;
	padding: 16px 18px;
	background: #fff;
}

.mp-lp__mini-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mp-lp__mini-list li {
	position: relative;
	padding-left: 14px;
	font-size: 12px;
	line-height: 1.6;
	color: var(--mp-text);
}

.mp-lp__mini-list li::before {
	content: '';
	position: absolute;
	top: 8px;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 999px;
	background: var(--mp-blue);
}

.mp-lp__speaker-inline {
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr);
	align-items: center;
	gap: 10px;
}

.mp-lp__speaker-inline-avatar {
	width: 40px;
	height: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	overflow: hidden;
	background: linear-gradient(135deg, var(--mp-navy), var(--mp-blue-mid));
	border: 1px solid rgba(46, 107, 255, 0.12);
	color: rgba(255, 255, 255, 0.82);
	font-size: 12px;
	font-weight: 700;
}

.mp-lp__speaker-inline-avatar img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mp-lp__speaker-inline-meta {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.mp-lp__speaker-inline-meta strong {
	display: block;
	font-size: 13px;
	line-height: 1.4;
	color: var(--mp-navy-deep);
}

.mp-lp__speaker-inline-meta small {
	display: block;
	font-size: 11px;
	line-height: 1.5;
	color: var(--mp-muted);
}

@media (max-width: 1180px) {
	.mp-lp__lesson-layout {
		grid-template-columns: 1fr;
	}

	.mp-lp__lesson-secondary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* ---------- P4 : nav items sur fond navy-deep (override) ---------- */

/* Séparateur de groupe */
.mp-lp__nav .mp-learning-sidebar__group + .mp-learning-sidebar__group {
	border-top-color: rgba(255, 255, 255, 0.07);
}

/* Label de section */
.mp-lp__nav .mp-learning-sidebar__section {
	color: rgba(184, 204, 238, 0.55);
	padding: 0 10px;
}

/* Item nav */
.mp-lp__nav .mp-learning-sidebar__item {
	background: rgba(255, 255, 255, 0.04);
	border-color: rgba(255, 255, 255, 0.07);
	color: #cddaf0;
}

.mp-lp__nav .mp-learning-sidebar__item:hover,
.mp-lp__nav .mp-learning-sidebar__item:focus-visible {
	background: rgba(255, 255, 255, 0.09);
	border-color: rgba(255, 255, 255, 0.18);
	box-shadow: 0 0 0 2px rgba(110, 164, 255, 0.18);
	transform: none; /* pas de translateY sur fond sombre */
}

.mp-lp__nav .mp-learning-sidebar__item.is-active {
	background: rgba(46, 76, 122, 0.7);
	border-color: var(--mp-blue-soft);
}

/* Icône */
.mp-lp__nav .mp-learning-sidebar__icon {
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(255, 255, 255, 0.1);
	color: #b8ccee;
}

.mp-lp__nav .mp-learning-sidebar__item.is-active .mp-learning-sidebar__icon {
	background: rgba(46, 76, 122, 0.9);
	border-color: var(--mp-blue-soft);
	color: #c8daf8;
}

/* Titre et statut */
.mp-lp__nav .mp-learning-sidebar__title {
	color: #dce8f8;
}

.mp-lp__nav .mp-learning-sidebar__item.is-active .mp-learning-sidebar__title {
	color: #fff;
}

.mp-lp__nav .mp-learning-sidebar__status {
	color: rgba(184, 204, 238, 0.5);
}

.mp-lp__nav .mp-learning-sidebar__item[data-mp-learning-item-state="completed"] .mp-learning-sidebar__status {
	color: #6bcfa5;
}

.mp-lp__nav .mp-learning-sidebar__item[data-mp-learning-item-state="in_progress"] .mp-learning-sidebar__status {
	color: #7aaff8;
}

/* ---------- Responsive: tablet (≤ 1024px) ---------- */
@media (max-width: 1024px) {
	.mp-lp {
		--lp-sidebar-w: 256px;
	}

	.mp-lp__section-head,
	.mp-lp__meta-strip,
	.mp-lp__richtext {
		padding-left: 24px;
		padding-right: 24px;
	}

	.mp-lp__prog-card,
	.mp-lp__cert-notice {
		margin-left: 24px;
		margin-right: 24px;
	}

	.mp-lp__resource-card,
	.mp-lp__done-banner {
		margin-left: 24px;
		margin-right: 24px;
	}

	.mp-lp__speakers-grid {
		padding-left: 24px;
		padding-right: 24px;
	}

	.mp-lp__lesson-layout {
		padding: 20px 24px 24px;
	}
}

/* ---------- Responsive: mobile (≤ 860px) ---------- */
@media (max-width: 860px) {
	.mp-lp {
		grid-template-columns: 1fr;
		grid-template-rows: auto 1fr;
		min-height: auto;
	}

	/* Sidebar becomes off-canvas */
	.mp-lp__sidebar {
		position: fixed;
		top: var(--mp-admin-bar-offset);
		left: 0;
		width: min(320px, 85vw);
		height: 100dvh;
		height: 100vh;
		z-index: 210;
		transform: translateX(-100%);
		border-radius: 0;
	}

	.mp-lp__sidebar.is-open {
		transform: translateX(0);
	}

	.mp-lp__sidebar-close {
		display: flex;
		align-items: center;
		justify-content: center;
	}

	/* Backdrop visible when sidebar open */
	.mp-lp__backdrop {
		display: block;
	}

	.mp-lp__backdrop.is-visible {
		opacity: 1;
	}

	/* Topbar visible on mobile */
	.mp-lp__topbar {
		display: flex;
		grid-column: 1;
		grid-row: 1;
	}

	.mp-lp__main {
		grid-column: 1;
		grid-row: 2;
		height: auto;
		min-height: 0;
	}

	/* Sur mobile le player prend toute la hauteur disponible */
	.mp-lp {
		height: auto;
		min-height: calc(100vh - var(--mp-admin-bar-offset));
	}

	.mp-lp__section {
		/* Sur mobile : hauteur auto, pas de scroll interne, la page scrolle */
		overflow-y: visible;
		flex: none;
	}

	.mp-lp__section-head {
		flex-direction: column;
		gap: 10px;
		padding: 20px 18px 16px;
	}

	.mp-lp__section-title {
		font-size: 18px;
	}

	.mp-lp__meta-strip,
	.mp-lp__richtext {
		padding-left: 18px;
		padding-right: 18px;
	}

	.mp-lp__prog-card,
	.mp-lp__cert-notice,
	.mp-lp__resource-card,
	.mp-lp__done-banner {
		margin-left: 18px;
		margin-right: 18px;
	}

	.mp-lp__speakers-grid {
		padding: 18px;
		grid-template-columns: 1fr;
	}

	.mp-lp__lesson-layout {
		padding: 18px;
		gap: 14px;
	}

	.mp-lp__lesson-secondary {
		grid-template-columns: 1fr;
	}

	.mp-lp__lesson-card,
	.mp-lp__resource-list .mp-lp__resource-card {
		padding: 16px;
	}

	.mp-lp__actions-bar {
		padding: 0 16px;
		flex-wrap: wrap;
		height: auto;
		padding-top: 12px;
		padding-bottom: 12px;
		gap: 8px;
	}

	.mp-lp__actions-primary {
		flex: 1;
		justify-content: flex-end;
	}

	.mp-lp__feedback-note {
		display: none;
	}
}

/* ---------- Responsive: small mobile (≤ 480px) ---------- */
@media (max-width: 480px) {
	.mp-lp__topbar-meta {
		display: none;
	}

	.mp-lp__complete-btn .mp-lp__button-label {
		display: none;
	}

	.mp-lp__nav-btn .mp-lp__button-label {
		display: none;
	}

	.mp-lp__resource-card {
		flex-direction: column;
	}

	.mp-lp__speaker-card {
		flex-direction: row;
	}

	.mp-lp__speaker-inline {
		grid-template-columns: 36px minmax(0, 1fr);
	}

	.mp-lp__speaker-inline-avatar {
		width: 36px;
		height: 36px;
		border-radius: 10px;
	}
}

/* ═════════════════════════════════════════���═════════════════
   MODE NUIT — ESPACE PARTICIPANT
   Scope: .mp-participant-page.is-dark
   Tous les éléments sont couverts — aucun élément inchangé.
   ═════════���═════════════════════════���═══════════════════════ */

/* ── 1. Jetons de base ── */
.mp-participant-page.is-dark {
	--navy:              #c2d5ef;
	--navy-mid:          #9db8d9;
	--navy-light:        #779bbf;
	--cream:             #0d1520;
	--gray:              #7090b0;
	--gray-light:        rgba(255, 255, 255, 0.08);
	--white:             #d4e3f5;
	--success:           #3ab07a;
	--warning:           #d09a30;
	--danger:            #e05060;
	--accent:            #4a90d9;
	--accent-light:      #5fa0e8;
	--accent-pale:       rgba(74, 144, 217, 0.14);
	--gold:              #e4b84d;
	--gold-light:        #f0ca72;
	--gold-pale:         rgba(228, 184, 77, 0.14);
	--mp-bg:             #0d1520;
	--mp-surface:        #111d2e;
	--mp-surface-soft:   #0f1926;
	--mp-border:         rgba(255, 255, 255, 0.08);
	--mp-border-strong:  rgba(255, 255, 255, 0.13);
	--mp-text:           #d4e3f5;
	--mp-muted:          #7090b0;
	--mp-success:        #3ab07a;
	--mp-success-bg:     rgba(58, 176, 122, 0.14);
	--mp-warning:        #d09a30;
	--mp-warning-bg:     rgba(208, 154, 48, 0.14);
	--mp-danger:         #e05060;
	--mp-danger-bg:      rgba(224, 80, 96, 0.14);
	--mp-shadow:         0 2px 16px rgba(0, 0, 0, 0.32);
	--mp-shadow-lg:      0 12px 30px rgba(0, 0, 0, 0.44);
	--mp-surface-shadow: 0 4px 32px rgba(0, 0, 0, 0.28);
	color: #d4e3f5;
	background: #0d1520;
}

/* ── 2. Couche is-authenticated ── */
.mp-participant-page.is-dark.is-authenticated {
	--mp-participant-surface:       #111d2e;
	--mp-participant-surface-soft:  #0f1926;
	--mp-participant-border:        rgba(255, 255, 255, 0.08);
	--mp-participant-border-soft:   rgba(255, 255, 255, 0.06);
	--mp-participant-text:          #d4e3f5;
	--mp-participant-text-soft:     #90afc9;
	--mp-participant-text-muted:    #7090b0;
	--mp-participant-accent:        #4a90d9;
	--mp-participant-accent-strong: #5fa0e8;
	--mp-participant-accent-soft:   rgba(74, 144, 217, 0.12);
	--mp-participant-shadow:        0 16px 30px rgba(0, 0, 0, 0.38);
	background: linear-gradient(180deg, #0d1520 0%, #0a1018 100%);
}

/* ── 3. Shell mobile ── */
.mp-participant-page.is-dark.is-authenticated .mp-participant-shell {
	background: #0d1520;
}

/* ── 4. Desktop layout ── */
@media (min-width: 900px) {
	.mp-participant-page.is-dark.is-authenticated .mp-participant-shell {
		background: #0a1018;
	}

	.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar {
		background: #090e18;
		border-right-color: rgba(255, 255, 255, 0.06);
		scrollbar-color: rgba(255, 255, 255, 0.08) transparent;
	}

	.mp-participant-page.is-dark.is-authenticated .mp-participant-screen {
		scrollbar-color: rgba(255, 255, 255, 0.08) transparent;
	}
}

/* ── 5. Sidebar — tous breakpoints ── */
.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__brand {
	border-bottom-color: rgba(255, 255, 255, 0.07);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__avatar-wrap {
	background: rgba(74, 144, 217, 0.15);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__avatar-inner {
	background: #111d2e;
	color: #4a90d9;
}

.mp-participant-page.is-dark .mp-participant-sidebar__user-info strong {
	color: #d4e3f5;
}

.mp-participant-page.is-dark .mp-participant-sidebar__user-info small {
	color: rgba(255, 255, 255, 0.40);
}

.mp-participant-page.is-dark .mp-participant-sidebar__item {
	color: rgba(255, 255, 255, 0.52);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__item {
	color: rgba(212, 227, 245, 0.60);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__item:hover {
	background: rgba(255, 255, 255, 0.06);
	color: #d4e3f5;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__item.is-active {
	background: rgba(74, 144, 217, 0.14);
	color: #5fa0e8;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__item.is-active::before {
	background: #4a90d9;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__soon {
	background: rgba(255, 255, 255, 0.05);
	border-color: rgba(255, 255, 255, 0.10);
	color: #7090b0;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__footer {
	border-top-color: rgba(255, 255, 255, 0.06);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__meta .mp-status-pill--neutral {
	background: rgba(255, 255, 255, 0.07);
	color: #7090b0;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__logout,
.mp-participant-page.is-dark .mp-participant-sidebar__logout {
	background: rgba(224, 80, 96, 0.07);
	border-color: rgba(224, 80, 96, 0.18);
	color: #e08080;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-sidebar__logout:hover,
.mp-participant-page.is-dark .mp-participant-sidebar__logout:hover {
	background: rgba(224, 80, 96, 0.13);
	border-color: rgba(224, 80, 96, 0.28);
	color: #f09090;
}

/* ── 6. Topbar & notification btn ── */
.mp-participant-page.is-dark.is-authenticated .mp-participant-main__notif {
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(255, 255, 255, 0.10);
	color: #c2d5ef;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-main__notif.is-active {
	background: #4a90d9;
	border-color: #4a90d9;
	color: #ffffff;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-main__notif.is-active .mp-participant-notif-btn__dot {
	background: #ffffff;
}

/* ── 7. Notification popover ── */
.mp-participant-page.is-dark .mp-notification-popover {
	background: #111d2e;
	border-color: rgba(255, 255, 255, 0.08);
	box-shadow: 0 16px 34px rgba(0, 0, 0, 0.48);
}

.mp-participant-page.is-dark .mp-notification-popover__head,
.mp-participant-page.is-dark .mp-notification-popover__footer {
	background: #0f1926;
	border-color: rgba(255, 255, 255, 0.06);
}

.mp-participant-page.is-dark .mp-participant-chat-btn {
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(255, 255, 255, 0.10);
	color: #c2d5ef;
}

.mp-participant-page.is-dark .mp-participant-chat-btn:hover,
.mp-participant-page.is-dark .mp-participant-chat-btn:focus-visible {
	background: rgba(255, 255, 255, 0.10);
	border-color: rgba(74, 144, 217, 0.34);
	color: #e8eff9;
}

.mp-participant-page.is-dark .mp-participant-chat-btn.is-open {
	background: rgba(74, 144, 217, 0.2);
	border-color: rgba(74, 144, 217, 0.4);
	color: #cfe4ff;
}

.mp-participant-page.is-dark .mp-chat-popover {
	background: #111d2e;
	border-color: rgba(255, 255, 255, 0.08);
	box-shadow: 0 18px 38px rgba(0, 0, 0, 0.5);
}

.mp-participant-page.is-dark .mp-chat-popover__head,
.mp-participant-page.is-dark .mp-chat-popover__search {
	background: #0f1926;
	border-color: rgba(255, 255, 255, 0.06);
}

.mp-participant-page.is-dark .mp-chat-popover__search input {
	background: #111d2e;
	border-color: rgba(255, 255, 255, 0.1);
	color: #e8eff9;
}

.mp-participant-page.is-dark .mp-chat-item,
.mp-participant-page.is-dark .mp-chat-suggestion {
	background: #111d2e;
	border-color: rgba(255, 255, 255, 0.08);
}

.mp-participant-page.is-dark .mp-chat-item:hover,
.mp-participant-page.is-dark .mp-chat-item:focus-visible,
.mp-participant-page.is-dark .mp-chat-suggestion:hover,
.mp-participant-page.is-dark .mp-chat-suggestion:focus-visible {
	background: #162033;
	border-color: rgba(255, 255, 255, 0.13);
}

.mp-participant-page.is-dark .mp-chat-item.is-unread {
	background: rgba(74, 144, 217, 0.1);
	border-color: rgba(74, 144, 217, 0.3);
}

.mp-participant-page.is-dark .mp-chat-item__avatar,
.mp-participant-page.is-dark .mp-chat-suggestion__avatar,
.mp-participant-page.is-dark .mp-chat-thread-head-user__avatar,
.mp-participant-page.is-dark .mp-chat-msg__avatar {
	background: linear-gradient(145deg, #20354f 0%, #1b2f47 100%);
	border-color: rgba(255, 255, 255, 0.12);
	color: #c9def7;
}

.mp-participant-page.is-dark .mp-chat-item__avatar-badge,
.mp-participant-page.is-dark .mp-chat-suggestion__avatar-badge,
.mp-participant-page.is-dark .mp-chat-thread-head-user__avatar-badge,
.mp-participant-page.is-dark .mp-chat-msg__avatar-badge {
	background: #4a90d9;
	border-color: #111d2e;
}

.mp-participant-page.is-dark .mp-chat-modal__dialog {
	background: #111d2e;
	border-color: rgba(255, 255, 255, 0.08);
	box-shadow: 0 28px 72px rgba(0, 0, 0, 0.56);
}

.mp-participant-page.is-dark .mp-chat-modal__head,
.mp-participant-page.is-dark .mp-chat-modal__composer {
	background: #0f1926;
	border-color: rgba(255, 255, 255, 0.06);
}

.mp-participant-page.is-dark .mp-chat-modal__messages {
	background: #0d1521;
}

.mp-participant-page.is-dark .mp-chat-msg__bubble {
	background: #162033;
	border-color: rgba(255, 255, 255, 0.1);
	color: #e8eff9;
}

.mp-participant-page.is-dark .mp-chat-msg.is-self .mp-chat-msg__bubble {
	background: #4a90d9;
	border-color: #4a90d9;
	color: #ffffff;
}

.mp-participant-page.is-dark .mp-chat-modal__composer textarea {
	background: #111d2e;
	border-color: rgba(255, 255, 255, 0.1);
	color: #e8eff9;
}

.mp-participant-page.is-dark .mp-chat-modal__close {
	background: #111d2e;
	border-color: rgba(255, 255, 255, 0.12);
	color: #9fb7d2;
}

/* ── 8. Notification items ── */
.mp-participant-page.is-dark.is-authenticated .mp-notification-item {
	background: #111d2e;
	border-color: rgba(255, 255, 255, 0.08);
}

.mp-participant-page.is-dark.is-authenticated .mp-notification-item:hover {
	background: #162033;
	border-color: rgba(255, 255, 255, 0.12);
}

.mp-participant-page.is-dark.is-authenticated .mp-notification-item.is-unread {
	background: rgba(74, 144, 217, 0.07);
	border-color: rgba(74, 144, 217, 0.20);
}

.mp-participant-page.is-dark.is-authenticated .mp-notification-item:not(.is-unread) {
	background: #0f1926;
	border-color: rgba(255, 255, 255, 0.06);
}

.mp-participant-page.is-dark .mp-notification-item__thread-bell {
	color: #a1b5cf;
}

.mp-participant-page.is-dark .mp-notification-item__thread-bell:hover {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.14);
	color: #e8eff9;
}

.mp-participant-page.is-dark .mp-notification-item__thread-bell:focus-visible {
	background: rgba(74, 144, 217, 0.20);
	border-color: rgba(74, 144, 217, 0.46);
	box-shadow: 0 0 0 3px rgba(74, 144, 217, 0.25);
}

.mp-participant-page.is-dark .mp-notification-item__thread-bell.is-muted {
	background: rgba(74, 144, 217, 0.20);
	border-color: rgba(74, 144, 217, 0.42);
	color: #9ec9ff;
}

/* ── 9. Hero cards (home + profil) ── */
.mp-participant-page.is-dark.is-authenticated .mp-participant-home-hero,
.mp-participant-page.is-dark.is-authenticated .mp-profile-hero,
.mp-participant-page.is-dark.is-authenticated .mp-participant-qr-card,
.mp-participant-page.is-dark.is-authenticated .mp-participant-inline-card,
.mp-participant-page.is-dark.is-authenticated .mp-participant-stat-card,
.mp-participant-page.is-dark.is-authenticated .mp-home-booking-card,
.mp-participant-page.is-dark.is-authenticated .mp-available-event-card,
.mp-participant-page.is-dark.is-authenticated .mp-profile-card,
.mp-participant-page.is-dark.is-authenticated .mp-profile-stats-strip,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-toolbar,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-filter-empty {
	background: var(--mp-participant-surface);
	border-color: var(--mp-participant-border);
	box-shadow: var(--mp-participant-shadow);
}

/* ── 10. Profile avatar ── */
.mp-participant-page.is-dark.is-authenticated .mp-profile-hero__avatar {
	background: linear-gradient(145deg, #1a2d4a 0%, #1e3358 100%);
}

.mp-participant-page.is-dark.is-authenticated .mp-profile-hero__avatar span {
	background: #0d1520;
	color: #4a90d9;
}

/* ── 11. Profile stats strip ── */
.mp-participant-page.is-dark .mp-profile-stats-strip div + div {
	border-left-color: rgba(255, 255, 255, 0.07);
}

/* ── 12. Profile info / menu rows ── */
.mp-participant-page.is-dark.is-authenticated .mp-profile-info-row > .mp-icon:first-child,
.mp-participant-page.is-dark.is-authenticated .mp-profile-info-row > svg:first-child,
.mp-participant-page.is-dark.is-authenticated .mp-profile-menu-row__icon,
.mp-participant-page.is-dark.is-authenticated .mp-profile-menu-row__icon--gold,
.mp-participant-page.is-dark.is-authenticated .mp-profile-menu-row__icon--navy,
.mp-participant-page.is-dark.is-authenticated .mp-profile-menu-row__icon--success,
.mp-participant-page.is-dark.is-authenticated .mp-profile-menu-row__icon--accent {
	background: rgba(74, 144, 217, 0.12);
	color: #4a90d9;
}

.mp-participant-page.is-dark.is-authenticated .mp-profile-menu-row + .mp-profile-menu-row {
	border-top-color: rgba(255, 255, 255, 0.06);
}

.mp-participant-page.is-dark .mp-profile-info-row em,
.mp-participant-page.is-dark .mp-profile-menu-row em {
	color: rgba(255, 255, 255, 0.18);
}

/* ── 13. Logout profil ── */
.mp-participant-page.is-dark .mp-profile-logout {
	background: rgba(224, 80, 96, 0.07);
	border-color: rgba(224, 80, 96, 0.18);
	color: #e08080;
}

.mp-participant-page.is-dark .mp-profile-logout:hover {
	background: rgba(224, 80, 96, 0.13);
	border-color: rgba(224, 80, 96, 0.28);
}

/* ── 14. Bottom nav ── */
.mp-participant-page.is-dark.is-authenticated .mp-participant-bottom-nav {
	background: rgba(13, 21, 32, 0.95);
	border-color: rgba(255, 255, 255, 0.08);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5), 0 1px 0 rgba(255, 255, 255, 0.05) inset;
}

/* ── 15. Booking cards ── */
.mp-participant-page.is-dark .mp-participant-profile-item,
.mp-participant-page.is-dark .mp-participant-booking-card {
	background: #111d2e;
	border-color: rgba(255, 255, 255, 0.08);
}

.mp-participant-page.is-dark .mp-participant-profile-item span,
.mp-participant-page.is-dark .mp-participant-booking-card__eyebrow,
.mp-participant-page.is-dark .mp-participant-booking-card__footer span {
	color: #7090b0;
}

.mp-participant-page.is-dark .mp-participant-profile-item strong,
.mp-participant-page.is-dark .mp-participant-booking-card__footer strong {
	color: #c2d5ef;
}

.mp-participant-page.is-dark .mp-participant-booking-card__meta {
	color: #7090b0;
}

.mp-participant-page.is-dark .mp-participant-booking-card__qr {
	background: linear-gradient(135deg, #111d2e 0%, #0f1926 100%);
	border-color: rgba(255, 255, 255, 0.08);
}

.mp-participant-page.is-dark .mp-participant-booking-card__qr-media {
	background: #0f1926;
	border-color: rgba(255, 255, 255, 0.08);
	box-shadow: none;
}

.mp-participant-page.is-dark .mp-participant-booking-card__qr-kicker {
	color: #7090b0;
}

.mp-participant-page.is-dark .mp-participant-booking-card__qr-content p:last-child {
	color: #7090b0;
}

/* ── 16. Status pills ── */
.mp-participant-page.is-dark .mp-status-pill--neutral {
	background: rgba(255, 255, 255, 0.07);
	color: #90afc9;
}

.mp-participant-page.is-dark .mp-status-pill--success {
	background: rgba(58, 176, 122, 0.14);
	color: #5fd49b;
}

.mp-participant-page.is-dark .mp-status-pill--warning {
	background: rgba(208, 154, 48, 0.14);
	color: #d4aa50;
}

.mp-participant-page.is-dark .mp-status-pill--danger {
	background: rgba(224, 80, 96, 0.14);
	color: #e07880;
}

/* ── 17. Home booking card ── */
.mp-participant-page.is-dark .mp-home-booking-card__date {
	background: rgba(255, 255, 255, 0.05);
}

.mp-participant-page.is-dark .mp-available-event-card__tag {
	background: rgba(255, 255, 255, 0.07);
	color: #c2d5ef;
}

/* ── 18. Masterclass — toolbar ── */
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-toolbar {
	background: #111d2e;
	border-color: rgba(255, 255, 255, 0.07);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-overview__card {
	background: rgba(255, 255, 255, 0.04);
	border-color: rgba(255, 255, 255, 0.07);
}

/* ── 19. Masterclass — search ── */
.mp-participant-page.is-dark .mp-masterclass-search__input {
	background: rgba(255, 255, 255, 0.04);
	border-color: rgba(255, 255, 255, 0.10);
	color: #d4e3f5;
}

.mp-participant-page.is-dark .mp-masterclass-search__input::placeholder {
	color: #4a6280;
}

.mp-participant-page.is-dark .mp-masterclass-search__input:focus {
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(74, 144, 217, 0.40);
	box-shadow: 0 0 0 3px rgba(74, 144, 217, 0.12);
	outline: none;
}

/* ── 20. Masterclass — filtres ── */
.mp-participant-page.is-dark.is-authenticated .mp-filter-tab {
	background: rgba(255, 255, 255, 0.04);
	border-color: rgba(255, 255, 255, 0.08);
	color: #7090b0;
}

.mp-participant-page.is-dark.is-authenticated .mp-filter-tab:hover {
	background: rgba(255, 255, 255, 0.07);
	color: #c2d5ef;
	border-color: rgba(255, 255, 255, 0.12);
}

.mp-participant-page.is-dark.is-authenticated .mp-filter-tab.is-active {
	background: linear-gradient(135deg, #1a2d4a 0%, #254070 100%);
	border-color: transparent;
	color: #c2d5ef;
}

/* ── 21. Masterclass — cartes ── */
.mp-participant-page.is-dark .mp-masterclass-card__lead {
	color: #7090b0;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__meta li {
	background: rgba(255, 255, 255, 0.03);
	border-color: rgba(255, 255, 255, 0.06);
	color: #7090b0;
}

.mp-participant-page.is-dark .mp-masterclass-card__status--open {
	background: rgba(74, 144, 217, 0.14);
	color: #5fa0e8;
}

.mp-participant-page.is-dark .mp-masterclass-card__status--tentative {
	background: rgba(208, 154, 48, 0.14);
	color: #d4aa50;
}

.mp-participant-page.is-dark .mp-masterclass-card__status--closed {
	background: rgba(255, 255, 255, 0.07);
	color: #7090b0;
}

.mp-participant-page.is-dark .mp-masterclass-card__cat {
	background: rgba(255, 255, 255, 0.07);
	color: #c2d5ef;
}

.mp-participant-page.is-dark .mp-masterclass-card__progress {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0.02) 100%);
	border-color: rgba(74, 144, 217, 0.12);
}

.mp-participant-page.is-dark .mp-masterclass-card__progress-track {
	background: rgba(255, 255, 255, 0.08);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__footer {
	border-top-color: rgba(255, 255, 255, 0.06);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-filter-empty {
	background: rgba(255, 255, 255, 0.03);
	border-color: rgba(255, 255, 255, 0.07);
	color: #7090b0;
}

/* ── 22. Masterclass — ghost btn ── */
.mp-participant-page.is-dark.is-authenticated .mp-btn--ghost,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__actions .mp-btn--ghost {
	background: rgba(255, 255, 255, 0.05);
	border-color: rgba(255, 255, 255, 0.10);
	color: #90afc9;
}

/* ── 23. LMS overview nav ── */
.mp-participant-page.is-dark .mp-lms-overview__nav-link {
	background: #111d2e;
	border-color: rgba(255, 255, 255, 0.08);
	color: #90afc9;
}

.mp-participant-page.is-dark .mp-lms-overview__nav-link:hover,
.mp-participant-page.is-dark .mp-lms-overview__nav-link:focus-visible {
	background: #162033;
	border-color: rgba(255, 255, 255, 0.12);
	color: #c2d5ef;
}

.mp-participant-page.is-dark .mp-lms-overview__nav-link.is-active {
	background: rgba(124, 183, 255, 0.14);
	border-color: rgba(124, 183, 255, 0.28);
	color: rgba(239, 246, 255, 0.96);
}

.mp-participant-page.is-dark .mp-lms-overview__nav-link.is-active {
	background: rgba(124, 183, 255, 0.14);
	border-color: rgba(124, 183, 255, 0.28);
	color: rgba(239, 246, 255, 0.96);
}

/* ── 24. LMS shelf — état vide ── */
.mp-participant-page.is-dark .mp-lms-overview-shelf--empty {
	background: linear-gradient(180deg, #111d2e 0%, #0f1926 100%);
	border-color: rgba(255, 255, 255, 0.08);
	color: #90afc9;
}

/* ── 25. LMS player ── */
.mp-participant-page.is-dark .mp-lp {
	background: #090e18;
}

.mp-participant-page.is-dark .mp-lp__main {
	background: #0d1520;
}

/* ── 26. Toast ── */
.mp-participant-page.is-dark.is-authenticated .mp-toast {
	background: #1a2d4a;
	color: #d4e3f5;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
}

/* ── 27. Formulaires ── */
.mp-participant-page.is-dark .mp-booking-form input[type='text'],
.mp-participant-page.is-dark .mp-booking-form input[type='email'],
.mp-participant-page.is-dark .mp-booking-form input[type='tel'],
.mp-participant-page.is-dark .mp-booking-form input[type='password'],
.mp-participant-page.is-dark .mp-booking-form select,
.mp-participant-page.is-dark .mp-booking-form textarea {
	background: rgba(255, 255, 255, 0.04);
	border-color: rgba(255, 255, 255, 0.10);
	color: #d4e3f5;
	-webkit-text-fill-color: #d4e3f5;
	caret-color: #d4e3f5;
}

.mp-participant-page.is-dark .mp-booking-form input:focus,
.mp-participant-page.is-dark .mp-booking-form select:focus,
.mp-participant-page.is-dark .mp-booking-form textarea:focus {
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(74, 144, 217, 0.45);
	box-shadow: 0 0 0 3px rgba(74, 144, 217, 0.12);
}

.mp-participant-page.is-dark .mp-booking-form label,
.mp-participant-page.is-dark .mp-booking-form .mp-booking-form__col label,
.mp-participant-page.is-dark .mp-booking-form .mp-booking-form__section > label {
	color: #7090b0;
}

.mp-participant-page.is-dark .mp-profile-avatar-edit {
	background: rgba(16, 28, 44, 0.72);
	border-color: rgba(128, 163, 201, 0.3);
}

.mp-participant-page.is-dark .mp-profile-avatar-edit__preview {
	background: linear-gradient(145deg, rgba(43, 61, 84, 0.92) 0%, rgba(28, 41, 58, 0.96) 100%);
	border-color: rgba(255, 255, 255, 0.1);
	color: #e6f1fe;
}

.mp-participant-page.is-dark .mp-profile-avatar-edit__fields > label {
	color: #e6f0fb;
}

.mp-participant-page.is-dark .mp-profile-avatar-edit__hint,
.mp-participant-page.is-dark .mp-profile-avatar-edit__remove {
	color: #a9c1da;
}

.mp-participant-page.is-dark .mp-booking-form input:-webkit-autofill,
.mp-participant-page.is-dark .mp-booking-form input:-webkit-autofill:hover,
.mp-participant-page.is-dark .mp-booking-form input:-webkit-autofill:focus,
.mp-participant-page.is-dark .mp-booking-form input:-webkit-autofill:active {
	-webkit-text-fill-color: #d4e3f5;
	caret-color: #d4e3f5;
	box-shadow: 0 0 0 1000px #111d2e inset;
	transition: background-color 9999s ease-out 0s;
}

/* ── 28. Notices frontend ── */
.mp-participant-page.is-dark .mp-front-notice--info {
	background: rgba(74, 144, 217, 0.10);
	border-color: rgba(74, 144, 217, 0.22);
	color: #90afc9;
}

.mp-participant-page.is-dark .mp-front-notice--success {
	border-color: rgba(58, 176, 122, 0.22);
}

.mp-participant-page.is-dark .mp-front-notice--error {
	border-color: rgba(224, 80, 96, 0.22);
}

/* ── 29. Bouton dark-mode toggle ── */
.mp-dark-toggle {
	display: inline-grid;
	place-items: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--mp-participant-text-muted, #66798d);
	cursor: pointer;
	flex-shrink: 0;
	transition: background-color 0.18s ease, color 0.18s ease;
}

.mp-dark-toggle:hover {
	background: rgba(19, 34, 64, 0.07);
	color: var(--mp-participant-text, #17324d);
}

.mp-dark-toggle:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(74, 144, 217, 0.20);
}

.mp-participant-page.is-dark .mp-dark-toggle {
	color: rgba(255, 255, 255, 0.50);
}

.mp-participant-page.is-dark .mp-dark-toggle:hover {
	background: rgba(255, 255, 255, 0.07);
	color: rgba(255, 255, 255, 0.88);
}

/* Icône lune visible en mode clair, soleil caché */
.mp-dark-toggle__icon { display: grid; place-items: center; }
.mp-dark-toggle__icon--sun  { display: none; }
.mp-dark-toggle__icon--moon { display: grid; }

/* Icône soleil visible en mode nuit, lune cachée */
.mp-participant-page.is-dark .mp-dark-toggle__icon--sun  { display: grid; }
.mp-participant-page.is-dark .mp-dark-toggle__icon--moon { display: none; }

.mp-participant-page.is-authenticated .mp-participant-topbar__actions .mp-dark-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 1px solid rgba(148, 163, 184, 0.2);
	border-radius: 12px;
	background: rgba(248, 250, 252, 0.96);
	color: var(--mp-participant-accent-strong);
}

.mp-participant-page.is-authenticated .mp-participant-topbar__actions .mp-dark-toggle:hover,
.mp-participant-page.is-authenticated .mp-participant-topbar__actions .mp-dark-toggle:focus-visible {
	background: #ffffff;
	border-color: rgba(59, 130, 246, 0.24);
	color: var(--mp-participant-accent);
}

.mp-participant-page.is-dark .mp-participant-topbar {
	background: transparent;
	border-color: transparent;
	box-shadow: none;
}

.mp-participant-page.is-dark .mp-participant-topbar__eyebrow,
.mp-participant-page.is-dark .mp-participant-topbar__copy span,
.mp-participant-page.is-dark .mp-participant-topbar__profile-copy small,
.mp-participant-page.is-dark .mp-participant-topbar__profile-chevron {
	color: rgba(255, 255, 255, 0.62);
}

.mp-participant-page.is-dark .mp-participant-topbar__copy strong,
.mp-participant-page.is-dark .mp-participant-topbar__profile-copy strong {
	color: rgba(255, 255, 255, 0.94);
}

.mp-participant-page.is-dark .mp-participant-topbar__profile,
.mp-participant-page.is-dark .mp-participant-topbar__icon-btn,
.mp-participant-page.is-dark .mp-participant-topbar__actions .mp-dark-toggle,
.mp-participant-page.is-dark .mp-participant-main__notif {
	background: rgba(20, 30, 46, 0.92);
	border-color: rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.88);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-topbar__profile:hover,
.mp-participant-page.is-dark.is-authenticated .mp-participant-topbar__profile:focus-visible,
.mp-participant-page.is-dark.is-authenticated .mp-participant-topbar__icon-btn:not(.is-active):hover,
.mp-participant-page.is-dark.is-authenticated .mp-participant-topbar__icon-btn:not(.is-active):focus-visible,
.mp-participant-page.is-dark.is-authenticated .mp-participant-topbar__actions .mp-dark-toggle:hover,
.mp-participant-page.is-dark.is-authenticated .mp-participant-topbar__actions .mp-dark-toggle:focus-visible,
.mp-participant-page.is-dark.is-authenticated .mp-participant-main__notif:not(.is-active):hover,
.mp-participant-page.is-dark.is-authenticated .mp-participant-main__notif:not(.is-active):focus-visible {
	background: rgba(28, 42, 64, 0.98);
	border-color: rgba(124, 183, 255, 0.32);
	color: rgba(241, 247, 255, 0.96);
	box-shadow: 0 10px 24px rgba(3, 7, 18, 0.35);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-topbar__profile:hover .mp-participant-topbar__profile-copy strong,
.mp-participant-page.is-dark.is-authenticated .mp-participant-topbar__profile:focus-visible .mp-participant-topbar__profile-copy strong {
	color: rgba(241, 247, 255, 0.96);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-topbar__profile:hover .mp-participant-topbar__profile-copy small,
.mp-participant-page.is-dark.is-authenticated .mp-participant-topbar__profile:focus-visible .mp-participant-topbar__profile-copy small {
	color: rgba(194, 213, 239, 0.88);
}

.mp-participant-page.is-dark .mp-participant-topbar__profile-avatar {
	background: linear-gradient(145deg, rgba(43, 61, 84, 0.92) 0%, rgba(28, 41, 58, 0.96) 100%);
	border-color: rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.9);
}

.mp-participant-page.is-dark .mp-participant-sidebar-rail {
	background: rgba(18, 27, 42, 0.94);
	border-color: rgba(148, 163, 184, 0.18);
	color: rgba(241, 245, 249, 0.92);
	box-shadow: 0 14px 28px rgba(3, 7, 18, 0.34);
}

.mp-participant-page.is-dark .mp-participant-sidebar-rail:hover,
.mp-participant-page.is-dark .mp-participant-sidebar-rail:focus-visible {
	background: rgba(24, 36, 55, 0.98);
	border-color: rgba(96, 165, 250, 0.24);
	color: #ffffff;
}

.mp-participant-page.is-dark.is-authenticated .mp-quick-action:hover,
.mp-participant-page.is-dark.is-authenticated .mp-quick-action:focus-visible {
	background: rgba(24, 36, 55, 0.96);
	border-color: rgba(124, 183, 255, 0.28);
	color: rgba(241, 247, 255, 0.96);
}

.mp-participant-page.is-dark.is-authenticated .mp-quick-action:hover .mp-quick-action__copy strong,
.mp-participant-page.is-dark.is-authenticated .mp-quick-action:focus-visible .mp-quick-action__copy strong {
	color: rgba(241, 247, 255, 0.96);
}

.mp-participant-page.is-dark.is-authenticated .mp-quick-action:hover .mp-quick-action__copy small,
.mp-participant-page.is-dark.is-authenticated .mp-quick-action:focus-visible .mp-quick-action__copy small {
	color: rgba(194, 213, 239, 0.86);
}

@media (max-width: 980px) {
	.mp-participant-topbar {
		gap: 14px;
	}

	.mp-participant-topbar__copy strong {
		font-size: 16px;
	}

	.mp-participant-topbar__copy span {
		max-width: 420px;
	}
}

@media (max-width: 782px) {
	.mp-participant-main__topbar {
		min-height: 48px;
		margin-bottom: 10px;
		padding-left: 72px;
		padding-right: 0;
	}

	.mp-participant-topbar {
		gap: 10px;
	}

	.mp-participant-topbar__eyebrow,
	.mp-participant-topbar__copy span,
	.mp-participant-topbar__profile-copy,
	.mp-participant-topbar__profile-chevron {
		display: none;
	}

	.mp-participant-topbar__copy strong {
		font-size: 14px;
	}

	.mp-participant-topbar__actions {
		gap: 8px;
	}

	.mp-participant-topbar__profile {
		padding: 3px;
		border-radius: 12px;
	}

	.mp-participant-topbar__profile-avatar {
		width: 32px;
		height: 32px;
		font-size: 12px;
	}
}

/* ═════════════════════════════════════════════════════════════
   FIX — Dégagement barre supérieure / padding-top écrans
   Les écrans sont position:absolute inset:0 (top=0) tandis que
   la topbar est en flux normal z-index:8 (hauteur ≈ 84px desktop).
   Le padding-top doit être ≥ hauteur topbar pour que le contenu
   commence sous la barre et ne soit pas caché.
   ═════════════════════════════════════════════════════════════ */

/* Variable topbar height helper */
.mp-participant-page.is-authenticated {
	--mp-topbar-h: 90px;
}

/* Desktop ≥ 900px — correction padding-top */
@media (min-width: 900px) {
	.mp-participant-page.is-authenticated .mp-participant-screen {
		padding-top: var(--mp-topbar-h, 90px);
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen {
		padding-top: var(--mp-topbar-h, 90px) !important;
	}
}

/* Palette ajustée ≤ 980px (barre plus compacte, ≈ 78px) */
@media (min-width: 900px) and (max-width: 980px) {
	.mp-participant-page.is-authenticated {
		--mp-topbar-h: 82px;
	}
}

/* Si barre d'admin active, compenser son offset */
body.admin-bar .mp-participant-page.is-authenticated {
	--mp-topbar-h: 90px;
}

/* ═══════════════════════════════════════════════════════════════════
   COMMUNITY PREMIUM — styles écran participant
   ═══════════════════════════════════════════════════════════════════ */

.mp-community-notice { margin-bottom:12px; border:1px solid #d9e2ee; box-shadow:none; }
.mp-community-notice--success { border-color:#c8ddd0; background:#f7fbf8; }
.mp-community-notice--danger { border-color:#efd4d4; background:#fff8f8; }
.mp-community-index-head { display:grid; gap:4px; margin-bottom:12px; }
.mp-community-index-head h2 { margin:0; font-size:24px; line-height:1.2; }
.mp-community-index-head p { margin:0; max-width:760px; font-size:13px; line-height:1.6; color:#66758a; }
.mp-community-index,
.mp-community-feed,
.mp-community-thread { display:grid; gap:10px; }
.mp-community-layout { display:grid; grid-template-columns:minmax(0, 1fr) 300px; gap:16px; align-items:start; }
.mp-community-layout__main { min-width:0; display:grid; gap:10px; }
.mp-community-entry,
.mp-community-post { display:grid; gap:10px; padding:14px 16px; border:1px solid #dbe4ef; border-radius:14px; background:#fff; box-shadow:none; }
.mp-community-entry { grid-template-columns:minmax(0, 1fr) auto; align-items:start; column-gap:14px; }
.mp-community-entry__main,
.mp-community-entry__side { display:grid; gap:8px; }
.mp-community-entry__head { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.mp-community-entry__head h3 { margin:0; font-size:16px; line-height:1.3; color:#1f2c3a; }
.mp-community-entry__meta,
.mp-community-entry__note { margin:0; font-size:12px; line-height:1.55; color:#66758a; }
.mp-community-entry__chips { display:flex; flex-wrap:wrap; gap:6px; }
.mp-community-entry__chips span,
.mp-community-entry__sync { display:inline-flex; align-items:center; min-height:24px; padding:4px 8px; border:1px solid #dbe4ef; border-radius:999px; background:#f8fbfe; font-size:11px; font-weight:600; color:#54657b; }
.mp-community-entry__side { justify-items:end; min-width:120px; }
.mp-community-entry__actions { display:flex; justify-content:flex-end; }
.mp-community-stream-head { display:grid; gap:10px; margin-bottom:10px; }
.mp-community-stream-head__top { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.mp-community-back { display:inline-flex; align-items:center; gap:6px; font-size:11px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:#556882; text-decoration:none; }
.mp-community-back:hover,
.mp-community-back:focus-visible { color:#21384d; text-decoration:none; }
.mp-community-back::before { content:'←'; font-size:12px; }
.mp-community-stream-head__event { font-size:18px; font-weight:700; line-height:1.3; color:#1f2c3a; }
.mp-community-stream-head__description { margin:0; font-size:12px; line-height:1.55; color:#6d7f95; }
.mp-community-composer { border:1px solid #dbe4ef; box-shadow:none; }
.mp-community-composer--minimal { padding:14px 16px; }
.mp-community-composer__lead { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.mp-community-composer__eyebrow { margin:0; font-size:11px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:#6b7d93; }
.mp-community-composer-trigger { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 16px; border:1px solid #dbe4ef; box-shadow:none; }
.mp-community-composer-trigger__copy { display:grid; gap:4px; min-width:0; }
.mp-community-composer-trigger__eyebrow { margin:0; font-size:10.5px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:#6b7d93; }
.mp-community-composer-trigger__copy strong { font-size:14px; line-height:1.3; color:#1f2c3a; }
.mp-community-composer-trigger__copy p { margin:0; font-size:12px; line-height:1.6; color:#66758a; }
.mp-community-form { display:grid; gap:10px; }
.mp-community-composer textarea,
.mp-community-composer input[type="text"] { width:100%; border:1px solid #d7e1ec; border-radius:12px; background:#fbfdff; font-size:13px; color:#203041; box-shadow:none; }
.mp-community-composer textarea { min-height:94px; padding:12px 13px; line-height:1.55; resize:vertical; }
.mp-community-composer textarea::placeholder { color:#8696aa; }
.mp-community-form__foot { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; }
.mp-community-form__hint { font-size:11.5px; color:#66758a; }
.mp-community-file { display:grid; gap:4px; font-size:11.5px; color:#66758a; }
.mp-community-file input[type="file"] { font-size:11.5px; }
.mp-community-thread__replies { position:relative; display:grid; gap:10px; padding-left:28px; margin-top:-2px; }
.mp-community-thread__replies::before { content:""; position:absolute; left:14px; top:-8px; bottom:26px; width:2px; border-radius:999px; background:#d9e2ec; }
.mp-community-post--reply { position:relative; margin-left:0; border-left:0; overflow:visible; }
.mp-community-post--reply::before { content:""; position:absolute; left:-14px; top:30px; width:14px; height:2px; border-radius:999px; background:#d9e2ec; }
.mp-community-post--reply::after { content:none; }
.mp-community-post--feed { gap:12px; }
.mp-community-post.is-thread-trigger { cursor:pointer; transition:border-color .16s ease, transform .16s ease, background-color .16s ease; }
.mp-community-post.is-thread-trigger:hover,
.mp-community-post.is-thread-trigger:focus-visible { border-color:#bfd0e2; background:#fcfdff; transform:translateY(-1px); }
.mp-community-post__head { display:flex; justify-content:space-between; gap:12px; }
.mp-community-post__identity { display:flex; align-items:flex-start; gap:10px; min-width:0; }
.mp-community-post__identity > div { min-width:0; }
.mp-community-post__identity > div > strong { display:block; font-size:12.5px; color:#1f2c3a; line-height:1.3; }
.mp-community-post__identity > div > span { display:block; font-size:11.5px; color:#728198; line-height:1.5; }
.mp-community-post__avatar { position:relative; width:32px; height:32px; border-radius:50%; background:#eef3f8; color:#31465d; display:inline-grid; place-items:center; font-size:11px; font-weight:700; line-height:1; text-align:center; text-transform:uppercase; flex-shrink:0; overflow:visible; }
.mp-community-post__avatar img { display:block; width:100%; height:100%; border-radius:50%; object-fit:cover; }
.mp-community-post__avatar-text { line-height:1; }
.mp-community-avatar-badge { --mp-community-badge-fill:#1f3f63; position:absolute; right:-3px; bottom:-3px; width:16px; height:16px; border-radius:50%; border:0; background-color:var(--mp-community-badge-fill); background-image:radial-gradient(circle at 0 0, transparent 34%, var(--mp-community-badge-fill) 36%); color:#f4f9ff; display:inline-flex; align-items:center; justify-content:center; font-size:7px; font-weight:700; letter-spacing:0; line-height:1; text-transform:uppercase; box-sizing:border-box; overflow:hidden; }
.mp-community-avatar-badge--member { right:-2px; bottom:-2px; width:15px; height:15px; font-size:6.8px; }
.mp-community-post__body { display:grid; gap:12px; min-width:0; }
.mp-community-post--has-image .mp-community-post__body { grid-template-columns:minmax(0, 1fr) 116px; align-items:start; }
.mp-community-post__copy { display:grid; gap:8px; min-width:0; }
.mp-community-post__title { margin:0; font-size:16px; line-height:1.35; color:#1e3044; }
.mp-community-post__content { font-size:12.5px; line-height:1.68; color:#223042; }
.mp-community-post--feed .mp-community-post__content { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.mp-community-post__content p:last-child { margin-bottom:0; }
.mp-community-post__thumb { width:116px; height:116px; padding:0; border:1px solid #d9e3ef; border-radius:12px; overflow:hidden; background:#f7f9fc; cursor:pointer; box-shadow:none; }
.mp-community-post__thumb img { display:block; width:100%; height:100%; object-fit:cover; }
.mp-community-post__thumb:hover,
.mp-community-post__thumb:focus-visible { border-color:#9fb1c4; transform:translateY(-1px); }
.mp-community-post__attachment img { display:block; max-width:100%; height:auto; border-radius:10px; }
.mp-community-post__foot { display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; padding-top:2px; }
.mp-community-post__meta { display:flex; flex-wrap:wrap; gap:10px; font-size:11.5px; color:#728198; }
.mp-community-post__actions { display:flex; flex-wrap:wrap; gap:8px; }
.mp-community-post__actions form { margin:0; }
.mp-community-post__icon-btn { display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; padding:0; border:0; background:transparent; color:#7a8aa0; cursor:pointer; box-shadow:none; }
.mp-community-post__icon-btn svg { display:block; width:18px; height:18px; }
.mp-community-post__icon-btn path { fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.mp-community-post__icon-btn:hover,
.mp-community-post__icon-btn:focus-visible { color:#365d8a; transform:translateY(-1px); }
.mp-community-post__icon-btn.is-active { color:#2d5f97; }
.mp-community-post__icon-btn.is-active path { fill:currentColor; stroke:currentColor; }
.mp-community-sidebar { position:sticky; top:18px; }
.mp-community-sidebar__card { border:1px solid #dbe4ef; border-radius:16px; background:#fff; overflow:hidden; box-shadow:none; }
.mp-community-sidebar__media { aspect-ratio:16 / 10; background:#f5f8fc; }
.mp-community-sidebar__media img { display:block; width:100%; height:100%; object-fit:cover; }
.mp-community-sidebar__body { display:grid; gap:14px; padding:14px; }
.mp-community-sidebar__eyebrow { margin:0; font-size:10.5px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:#6b7d93; }
.mp-community-sidebar__body h3 { margin:0; font-size:17px; line-height:1.3; color:#1f2c3a; }
.mp-community-sidebar__subtitle { margin:0; font-size:12px; line-height:1.65; color:#617287; white-space:pre-line; }
.mp-community-sidebar__stats { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:8px; }
.mp-community-sidebar__stat { border:1px solid #e6edf5; border-radius:12px; padding:10px 8px; background:#fbfdff; text-align:center; }
.mp-community-sidebar__stat strong { display:block; font-size:15px; line-height:1.1; color:#1f2c3a; }
.mp-community-sidebar__stat span { display:block; margin-top:3px; font-size:10.5px; color:#728198; }
.mp-community-sidebar__activity { margin:0; font-size:11.5px; color:#6d7f95; }
.mp-community-sidebar__rules { width:100%; justify-content:center; }
.mp-community-sidebar__create { width:100%; justify-content:center; }
.mp-community-sidebar__members { display:grid; gap:10px; padding-top:2px; border-top:1px solid #eef3f8; }
.mp-community-sidebar__members-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.mp-community-sidebar__members-head strong { font-size:12px; color:#1f2c3a; }
.mp-community-sidebar__members-head span,
.mp-community-sidebar__more,
.mp-community-sidebar__empty { margin:0; font-size:11px; color:#728198; }
.mp-community-sidebar__members-list { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
.mp-community-sidebar__member { display:flex; align-items:center; gap:9px; min-width:0; }
.mp-community-sidebar__member-avatar { position:relative; width:32px; height:32px; border-radius:50%; overflow:visible; background:#edf3f8; display:inline-grid; place-items:center; flex-shrink:0; color:#40566e; font-size:11px; font-weight:700; line-height:1; text-align:center; text-transform:uppercase; }
.mp-community-sidebar__member-avatar img { display:block; width:100%; height:100%; border-radius:50%; object-fit:cover; }
.mp-community-sidebar__member-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; color:#243547; }
.mp-community-post .mp-btn--sm,
.mp-community-entry .mp-btn--sm,
.mp-community-pagination .mp-btn--sm { min-height:32px; padding:6px 11px; font-size:11.5px; box-shadow:none; }
.mp-community-pagination { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:10px; }
.mp-community-modal[hidden] { display:none; }
.mp-community-modal { position:fixed; inset:0; z-index:9999; display:grid; place-items:center; padding:24px; }
.mp-community-modal__backdrop { position:absolute; inset:0; background:rgba(20, 30, 45, 0.44); backdrop-filter:blur(3px); }
.mp-community-modal__dialog { position:relative; z-index:1; width:min(100%, 760px); display:grid; gap:14px; border:1px solid #dce5ef; border-radius:18px; background:#fff; box-shadow:0 18px 42px rgba(21, 33, 51, 0.16); overflow:hidden; }
.mp-community-modal__head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:16px 18px 0; }
.mp-community-modal__eyebrow { margin:0 0 4px; font-size:10.5px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:#6b7d93; }
.mp-community-modal__head h3 { margin:0; font-size:18px; line-height:1.3; color:#1f2c3a; }
.mp-community-modal__description { margin:6px 0 0; font-size:12px; line-height:1.6; color:#66758a; }
.mp-community-modal__close { width:34px; height:34px; border:1px solid #dbe4ef; border-radius:999px; background:#fff; color:#40556c; font-size:20px; line-height:1; cursor:pointer; }
.mp-community-modal__form { padding:0 18px 18px; }
.mp-community-modal__fields { display:grid; gap:12px; }
.mp-community-modal__field { display:grid; gap:6px; }
.mp-community-modal__field label { font-size:11.5px; font-weight:700; color:#213446; }
.mp-community-modal__field input[type="text"],
.mp-community-modal__field textarea { width:100%; border:1px solid #d7e1ec; border-radius:12px; background:#fbfdff; box-sizing:border-box; font-size:13px; color:#203041; box-shadow:none; }
.mp-community-modal__field input[type="text"] { min-height:44px; padding:10px 12px; }
.mp-community-modal__field textarea { min-height:200px; padding:12px 13px; line-height:1.6; resize:vertical; }
.mp-community-modal__field input[type="text"]::placeholder,
.mp-community-modal__field textarea::placeholder { color:#8b99ac; }
.mp-community-modal__assistant { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.mp-community-modal__assistant-hint { margin:0; font-size:11px; line-height:1.5; color:#687c94; }
.mp-community-modal__assistant-status { margin:0; padding:8px 10px; border:1px solid #dbe4ef; border-radius:10px; background:#f8fbff; font-size:11.5px; line-height:1.55; color:#5c7088; }
.mp-community-modal__assistant-status[data-tone="success"] { border-color:#cde7db; background:#f1faf5; color:#1f6b4f; }
.mp-community-modal__assistant-status[data-tone="error"] { border-color:#eccfd6; background:#fff5f7; color:#8e3744; }
[data-mp-community-ai-suggest].is-loading { opacity:.72; pointer-events:none; }
.mp-community-modal__foot { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; }
.mp-community-modal__actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.mp-community-modal--onboarding { z-index:10040; }
.mp-community-modal--onboarding .mp-community-modal__dialog { width:min(100%, 560px); }
.mp-community-onboarding__form { display:grid; gap:12px; padding-top:2px; }
.mp-community-onboarding__checkbox { display:grid; grid-template-columns:16px minmax(0,1fr); align-items:flex-start; gap:10px; font-size:12px; line-height:1.55; color:#2a3d53; }
.mp-community-onboarding__checkbox input { margin-top:2px; }
.mp-community-onboarding__hint { margin:0; font-size:11.5px; line-height:1.6; color:#657a92; }
.mp-community-onboarding__hint a { color:#2c5f99; text-decoration:underline; }
.mp-community-onboarding__actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.mp-community-image-viewer[hidden] { display:none; }
.mp-community-image-viewer { position:fixed; inset:0; z-index:10030; display:grid; place-items:center; padding:24px; }
.mp-community-image-viewer__backdrop { position:absolute; inset:0; background:rgba(15, 24, 39, 0.78); backdrop-filter:blur(3px); }
.mp-community-image-viewer__dialog { position:relative; z-index:1; width:min(100%, 1040px); display:grid; gap:10px; }
.mp-community-image-viewer__close { position:absolute; top:-10px; right:-10px; width:38px; height:38px; border:1px solid rgba(255,255,255,0.28); border-radius:999px; background:rgba(17, 26, 39, 0.92); color:#fff; font-size:22px; line-height:1; cursor:pointer; }
.mp-community-image-viewer__media { border-radius:18px; overflow:hidden; background:#0f1723; box-shadow:0 22px 50px rgba(15, 23, 35, 0.34); }
.mp-community-image-viewer__media img { display:block; width:100%; max-height:min(80vh, 920px); object-fit:contain; background:#0f1723; }
.mp-community-image-viewer__caption { margin:0; text-align:center; font-size:12px; line-height:1.6; color:#dce5ef; }
.mp-community-thread-modal[hidden] { display:none; }
.mp-community-thread-modal { position:fixed; inset:0; z-index:10020; display:grid; place-items:center; padding:20px; }
.mp-community-thread-modal__backdrop { position:absolute; inset:0; background:rgba(16, 24, 39, 0.58); backdrop-filter:blur(3px); }
.mp-community-thread-modal__dialog { position:relative; z-index:1; width:min(100%, 760px); height:min(88vh, 980px); max-height:min(88vh, 980px); border:1px solid #dbe4ef; border-radius:22px; background:#fff; box-shadow:0 26px 56px rgba(15, 23, 35, 0.22); overflow:hidden; display:flex; flex-direction:column; }
.mp-community-thread-modal__close { position:absolute; top:12px; right:12px; width:34px; height:34px; border:1px solid #d7e0eb; border-radius:999px; background:#fff; color:#465b73; font-size:20px; line-height:1; cursor:pointer; z-index:2; }
.mp-community-thread-modal__body { overflow-y:auto; overflow-x:hidden; padding:18px 18px 20px; background:#f8fafc; min-height:0; flex:1 1 auto; display:flex; flex-direction:column; scrollbar-gutter:stable; }
.mp-community-thread-modal__body::-webkit-scrollbar { width:8px; }
.mp-community-thread-modal__body::-webkit-scrollbar-thumb { background:#d4dee9; border-radius:999px; }
.mp-community-thread-modal.is-loading .mp-community-thread-modal__body { opacity:.45; }
.mp-community-thread-panel { display:grid; gap:12px; }
.mp-community-thread-panel.is-modal { gap:14px; min-height:0; display:grid; }
.mp-community-thread-panel__head { display:grid; gap:4px; padding-right:40px; }
.mp-community-thread-panel__eyebrow { margin:0; font-size:10.5px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:#6b7d93; }
.mp-community-thread-panel__head h3 { margin:0; font-size:17px; line-height:1.32; color:#1f2c3a; }
.mp-community-thread-panel__viewport { min-width:0; min-height:0; }
.mp-community-thread-panel__viewport.is-modal { overflow:visible; padding-right:0; margin-right:0; }
.mp-community-thread--modal { gap:12px; align-content:start; }
.mp-community-composer--thread-modal { border-color:#d9e3ef; background:#fff; position:sticky; bottom:0; z-index:2; margin-top:2px; box-shadow:0 -10px 22px rgba(248, 250, 252, 0.96); overflow:visible; }
.mp-community-composer--thread-modal::before { content:""; position:absolute; left:14px; top:-18px; width:2px; height:18px; border-radius:999px; background:#d9e2ec; }

@media (max-width: 1080px) {
	.mp-community-layout { grid-template-columns:minmax(0, 1fr) 276px; }
}

@media (max-width: 782px) {
	.mp-community-layout { grid-template-columns:1fr; }
	.mp-community-entry,
	.mp-community-entry__side,
	.mp-community-stream-head__top,
	.mp-community-post__head,
	.mp-community-post__foot,
	.mp-community-form__foot { flex-direction:column; align-items:stretch; }
	.mp-community-entry { grid-template-columns:1fr; }
	.mp-community-entry__side { justify-items:start; min-width:0; }
	.mp-community-thread__replies { padding-left:20px; }
	.mp-community-thread__replies::before { left:10px; top:-6px; bottom:22px; }
	.mp-community-post--reply::before { left:-10px; width:10px; top:30px; }
	.mp-community-composer--thread-modal::before { left:10px; }
	.mp-community-post--has-image .mp-community-post__body { grid-template-columns:minmax(0, 1fr) 88px; }
	.mp-community-post__thumb { width:88px; height:88px; }
	.mp-community-sidebar { position:static; }
	.mp-community-sidebar__stats { grid-template-columns:repeat(3, minmax(0, 1fr)); }
		.mp-community-composer-trigger,
		.mp-community-modal__assistant,
		.mp-community-modal__foot { flex-direction:column; align-items:stretch; }
		.mp-community-onboarding__actions { justify-content:stretch; }
		.mp-community-onboarding__actions .mp-btn { width:100%; justify-content:center; }
		.mp-community-modal { padding:14px; }
		.mp-community-modal__dialog { width:100%; border-radius:16px; }
	.mp-community-image-viewer { padding:12px; }
	.mp-community-image-viewer__close { top:8px; right:8px; }
	.mp-community-thread-modal { padding:10px; }
	.mp-community-thread-modal__dialog { width:100%; height:min(90vh, 920px); max-height:90vh; border-radius:18px; }
	.mp-community-thread-modal__body { padding:14px; }
}

.mp-participant-page.is-dark.is-authenticated .mp-community-modal__assistant-status {
	border-color: rgba(116, 146, 186, 0.34);
	background: rgba(20, 34, 51, 0.86);
	color: #d4e0ec;
}

.mp-participant-page.is-dark.is-authenticated .mp-community-modal__assistant-status[data-tone="success"] {
	border-color: rgba(96, 178, 140, 0.44);
	background: rgba(17, 49, 37, 0.8);
	color: #bfe6d2;
}

.mp-participant-page.is-dark.is-authenticated .mp-community-modal__assistant-status[data-tone="error"] {
	border-color: rgba(200, 109, 127, 0.46);
	background: rgba(63, 23, 33, 0.8);
	color: #f2c9d4;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-onboarding__checkbox,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-onboarding__hint {
	color: #b9cde2;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-onboarding__hint a {
	color: #d8e8f8;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-screen-body {
	color: #d6e5f6;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-index-head h2 {
	color: #f2f8ff;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-stream-head__event,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-entry__head h3,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__title,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__identity > div > strong {
	color: #f2f8ff;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-entry,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-composer-trigger,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-composer,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-modal__dialog,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-thread-modal__dialog {
	background: linear-gradient(160deg, rgba(15, 27, 42, 0.94) 0%, rgba(18, 33, 51, 0.94) 100%);
	border-color: rgba(137, 171, 208, 0.28);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-entry:hover,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post.is-thread-trigger:hover,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post.is-thread-trigger:focus-visible {
	background: linear-gradient(160deg, rgba(18, 33, 51, 0.97) 0%, rgba(23, 40, 61, 0.97) 100%);
	border-color: rgba(160, 194, 229, 0.34);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-index-head p,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-entry__meta,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-entry__note,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-stream-head__description,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__identity > div > span,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__meta,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-form__hint,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-file,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-back {
	color: #9fb7cf;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__content,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__content p,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__content li {
	color: #dbe9f8;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__content a {
	color: #e7f2ff;
	text-decoration-color: rgba(231, 242, 255, 0.45);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__content a:hover,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__content a:focus-visible,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-back:hover,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-back:focus-visible {
	color: #ffffff;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-entry__chips span,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-entry__sync {
	border-color: rgba(138, 170, 206, 0.28);
	background: rgba(20, 35, 52, 0.78);
	color: #c1d4e9;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-notice {
	border-color: rgba(130, 165, 202, 0.26);
	background: rgba(19, 34, 52, 0.82);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-notice p {
	color: #d4e4f5;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__icon-btn {
	color: #9fb7cf;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__icon-btn:hover,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__icon-btn:focus-visible {
	color: #ffffff;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-post__icon-btn.is-active {
	color: #e5f1ff;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-composer textarea,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-composer input[type="text"],
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-modal__field input[type="text"],
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-modal__field textarea {
	background: rgba(14, 25, 39, 0.82);
	border-color: rgba(130, 165, 202, 0.28);
	color: #e2eefc;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-composer textarea::placeholder,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-composer input[type="text"]::placeholder,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-modal__field input[type="text"]::placeholder,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-modal__field textarea::placeholder {
	color: #86a2bf;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__card {
	background: linear-gradient(165deg, #0d1725 0%, #122033 100%);
	border-color: rgba(150, 188, 229, 0.24);
	box-shadow: 0 16px 34px rgba(0, 0, 0, 0.38);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__media {
	background: #0b1522;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__eyebrow {
	color: #9ab5d2;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__body h3,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__stat strong,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__members-head strong,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__member-name {
	color: #f0f7ff;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__subtitle,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__stat span,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__activity,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__members-head span,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__more,
.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__empty {
	color: #9ab3cd;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__stat {
	background: rgba(18, 34, 52, 0.86);
	border-color: rgba(134, 168, 205, 0.32);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__members {
	border-top-color: rgba(126, 160, 198, 0.26);
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-sidebar__member-avatar {
	background: #1a3049;
	color: #d5e7fb;
}

.mp-participant-page.is-dark.is-authenticated .mp-participant-screen--community .mp-community-avatar-badge {
	--mp-community-badge-fill: #7fb2e6;
	background-color: var(--mp-community-badge-fill);
	background-image: radial-gradient(circle at 0 0, transparent 34%, var(--mp-community-badge-fill) 36%);
	color: #10243a;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-page-head h2 {
	color: #f2f8ff;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-controls,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-toolbar {
	background: linear-gradient(160deg, rgba(15, 27, 42, 0.94) 0%, rgba(18, 33, 51, 0.94) 100%);
	border-color: rgba(137, 171, 208, 0.28);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-toolbar__intro h2,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-results strong,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__title,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__title,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__price,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__price,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__summary strong,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__progress-head strong {
	color: #f2f8ff;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-toolbar__intro p:last-child,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-results,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-search__label,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__lead,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__summary span,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__progress-head span,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__lead,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__meta li,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__remaining,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__status small {
	color: #9fb7cf;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-search__input,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-sort__select {
	background: rgba(14, 25, 39, 0.82);
	border-color: rgba(130, 165, 202, 0.28);
	color: #e2eefc;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-search__input::placeholder {
	color: #86a2bf;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-search__input:focus,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-sort__select:focus {
	border-color: rgba(164, 201, 237, 0.46);
	box-shadow: 0 0 0 3px rgba(108, 158, 210, 0.18);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-overview__card {
	background: rgba(19, 34, 52, 0.86);
	border-color: rgba(137, 171, 208, 0.24);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-overview__card strong {
	color: #eef6ff;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-overview__card span {
	color: #9ab3cd;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card {
	background: linear-gradient(160deg, rgba(15, 27, 42, 0.94) 0%, rgba(18, 33, 51, 0.94) 100%);
	border-color: rgba(137, 171, 208, 0.28);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card:hover {
	border-color: rgba(160, 194, 229, 0.34);
	background: linear-gradient(160deg, rgba(18, 33, 51, 0.97) 0%, rgba(23, 40, 61, 0.97) 100%);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__meta li,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__progress {
	background: rgba(20, 35, 52, 0.76);
	border-color: rgba(134, 168, 205, 0.26);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__progress-track {
	background: rgba(140, 172, 205, 0.22);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__footer {
	border-top-color: rgba(126, 160, 198, 0.24);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-filter-empty {
	background: rgba(19, 34, 52, 0.82);
	border-color: rgba(126, 160, 198, 0.24);
	color: #9fb7cf;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-list-shell {
	background: transparent;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row {
	background: linear-gradient(160deg, rgba(15, 27, 42, 0.94) 0%, rgba(18, 33, 51, 0.94) 100%);
	border-color: rgba(137, 171, 208, 0.28);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row:hover {
	border-color: rgba(160, 194, 229, 0.34);
	background: linear-gradient(160deg, rgba(18, 33, 51, 0.97) 0%, rgba(23, 40, 61, 0.97) 100%);
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.34);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__thumb,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__thumb-placeholder {
	background: linear-gradient(135deg, #1a3049 0%, #213b59 100%);
	border-color: rgba(134, 168, 205, 0.26);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__title-link {
	color: inherit;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__title-link:hover,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__title-link:focus-visible {
	color: #ffffff;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__meta .mp-icon {
	color: #b7cfe6;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__actions .mp-btn--ghost,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__actions .mp-btn--ghost {
	background: rgba(20, 35, 52, 0.78);
	border-color: rgba(134, 168, 205, 0.28);
	color: #c7d9ec;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__actions .mp-btn--ghost:hover,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__actions .mp-btn--ghost:hover,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__actions .mp-btn--ghost:focus-visible,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__actions .mp-btn--ghost:focus-visible {
	color: #ffffff;
	border-color: rgba(164, 201, 237, 0.46);
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__actions .mp-wishlist-btn__button,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__actions .mp-wishlist-btn__button {
	background: rgba(20, 35, 52, 0.84);
	border-color: rgba(134, 168, 205, 0.34);
	color: #dcebf9;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__actions .mp-wishlist-btn__button .mp-icon,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__actions .mp-wishlist-btn__button .mp-icon {
	color: currentColor;
	opacity: 1;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__actions .mp-wishlist-btn__button:hover,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__actions .mp-wishlist-btn__button:hover,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__actions .mp-wishlist-btn__button:focus-visible,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__actions .mp-wishlist-btn__button:focus-visible {
	background: rgba(27, 46, 68, 0.92);
	border-color: rgba(164, 201, 237, 0.48);
	color: #ffffff;
}

.mp-participant-page.is-dark.is-authenticated .mp-masterclass-card__actions .mp-wishlist-btn__button.is-active,
.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__actions .mp-wishlist-btn__button.is-active {
	background: rgba(119, 29, 47, 0.44);
	border-color: rgba(251, 113, 133, 0.36);
	color: #ffd5df;
}

/* ═════════════════════════════════════════════════════════════
   Participant LMS polish — topbar spacing + fixed centered LMS
   ═════════════════════════════════════════════════════════════ */
@media (min-width: 900px) {
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-main__topbar {
		margin-bottom: 6px;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen--learning {
		top: var(--mp-topbar-h, 90px) !important;
		padding: 8px 24px 16px !important;
		overflow: hidden !important;
		align-content: stretch !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen--learning .mp-lp {
		width: min(1380px, 100%);
		height: 100% !important;
		margin: 0 auto;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen--learning .mp-lp__sidebar,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen--learning .mp-lp__main {
		height: 100%;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen--learning .mp-lp__sidebar {
		position: relative;
		top: 0;
	}
}

/* ==========================================================================
   Participant mobile refresh
   Source unique de verite <= 899px. Le desktop reste volontairement intact.
   ========================================================================== */
@media (max-width: 899px) {
	html:has(body.mp-participant-app-page),
	body.mp-participant-app-page {
		min-height: 100%;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		background:
			radial-gradient(circle at top left, rgba(201, 168, 76, 0.12) 0%, transparent 32%),
			linear-gradient(180deg, #f6f8fb 0%, #edf2f7 100%);
	}

	body.mp-participant-app-page main.mp-participant-page {
		margin: 0 !important;
		padding: 0 !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated {
		--mp-mobile-page-bg: radial-gradient(circle at top left, rgba(201, 168, 76, 0.12) 0%, transparent 32%), linear-gradient(180deg, #f6f8fb 0%, #edf2f7 100%);
		--mp-mobile-surface: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, #f7f9fc 100%);
		--mp-mobile-surface-solid: rgba(255, 255, 255, 0.94);
		--mp-mobile-border: rgba(209, 219, 231, 0.92);
		--mp-mobile-border-strong: rgba(191, 204, 220, 0.98);
		--mp-mobile-shadow: 0 18px 38px rgba(15, 23, 42, 0.08);
		--mp-mobile-text: var(--mp-participant-text, #18324c);
		--mp-mobile-muted: var(--mp-participant-text-muted, #66778d);
		--mp-mobile-topbar-offset: calc(var(--mp-admin-bar-offset, 0px) + 14px);
		--mp-mobile-topbar-height: 52px;
		--mp-mobile-bottom-nav-height: calc(88px + env(safe-area-inset-bottom, 0px));
		--mp-mobile-horizontal-pad: 14px;
		padding: 0 0 calc(var(--mp-mobile-bottom-nav-height) + 22px) !important;
		background: var(--mp-mobile-page-bg) !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-dark.is-authenticated {
		--mp-mobile-page-bg: linear-gradient(180deg, #09111d 0%, #0f1726 100%);
		--mp-mobile-surface: linear-gradient(180deg, rgba(18, 27, 42, 0.96) 0%, rgba(10, 16, 30, 0.98) 100%);
		--mp-mobile-surface-solid: rgba(12, 19, 33, 0.94);
		--mp-mobile-border: rgba(112, 130, 156, 0.26);
		--mp-mobile-border-strong: rgba(139, 157, 181, 0.30);
		--mp-mobile-shadow: 0 20px 42px rgba(0, 0, 0, 0.34);
		--mp-mobile-text: rgba(241, 247, 255, 0.96);
		--mp-mobile-muted: rgba(194, 213, 239, 0.78);
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-shell {
		position: relative !important;
		inset: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 100dvh !important;
		margin: 0 !important;
		padding: 0 !important;
		display: block !important;
		overflow: visible !important;
		background: transparent !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-space {
		display: block !important;
		min-height: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-space > .mp-front-notice {
		position: relative;
		z-index: 1;
		margin: calc(var(--mp-mobile-topbar-offset) + var(--mp-mobile-topbar-height) + 10px) var(--mp-mobile-horizontal-pad) 0 !important;
		padding: 14px 16px !important;
		border-radius: 20px !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-app,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-main {
		display: block !important;
		grid-template-columns: none !important;
		height: auto !important;
		min-height: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
	}

	.mp-participant-sidebar,
	.mp-participant-sidebar-rail,
	.mp-participant-sidebar-backdrop,
	.mp-participant-topbar__icon-btn--sidebar {
		display: none !important;
	}

	/* Screens : un seul visible — spécificité haute pour écraser toute règle concurrente */
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen:not(.is-active),
	.mp-participant-screen:not(.is-active) {
		display: none !important;
	}

	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen.is-active,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-screen--learning.is-active {
		position: relative !important;
		inset: auto !important;
		top: auto !important;
		height: auto !important;
		min-height: 0 !important;
		display: grid !important;
		align-content: start !important;
		gap: 16px;
		overflow: visible !important;
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		padding:
			calc(var(--mp-mobile-topbar-offset) + var(--mp-mobile-topbar-height) + 16px)
			var(--mp-mobile-horizontal-pad)
			calc(var(--mp-mobile-bottom-nav-height) + 18px)
			!important;
	}

	.mp-participant-main__topbar,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-main__topbar {
		position: fixed !important;
		top: var(--mp-mobile-topbar-offset) !important;
		/* Centrage sans transform (transform briserait position:fixed des popups enfants) */
		left: 0 !important;
		right: 0 !important;
		width: min(calc(100% - 28px), 430px) !important;
		margin-left: auto !important;
		margin-right: auto !important;
		min-height: var(--mp-mobile-topbar-height) !important;
		height: var(--mp-mobile-topbar-height) !important;
		padding: 0 10px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		border: 1px solid rgba(255, 255, 255, 0.68) !important;
		border-radius: 999px !important;
		background: rgba(255, 255, 255, 0.80) !important;
		box-shadow: 0 12px 32px rgba(15, 23, 42, 0.14), 0 1px 0 rgba(255, 255, 255, 0.92) inset !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
		transform: none !important;
		z-index: 1204 !important;
	}

	.mp-participant-main__topbar::before,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-main__topbar::before {
		content: '';
		position: absolute;
		inset: 0;
		z-index: -1;
		border-radius: inherit;
		backdrop-filter: blur(18px);
		-webkit-backdrop-filter: blur(18px);
		pointer-events: none;
	}

	.mp-participant-page.is-dark.is-authenticated .mp-participant-main__topbar {
		background: rgba(10, 16, 30, 0.84) !important;
		border-color: rgba(255, 255, 255, 0.12) !important;
		box-shadow: 0 16px 34px rgba(0, 0, 0, 0.34) !important;
	}

	.mp-participant-topbar {
		width: 100% !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 6px !important;
		padding: 0 !important;
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
	}

	.mp-participant-topbar__context,
	.mp-participant-topbar__icon-btn--wishlist,
	.mp-participant-topbar__profile-copy,
	.mp-participant-topbar__profile-chevron {
		display: none !important;
	}

	.mp-dark-toggle,
	.mp-participant-chat-btn,
	.mp-participant-notif-btn {
		width: 38px !important;
		height: 38px !important;
		min-width: 38px !important;
		min-height: 38px !important;
		border: 1px solid rgba(224, 231, 239, 0.92) !important;
		border-radius: 14px !important;
		background: rgba(255, 255, 255, 0.72) !important;
		box-shadow: none !important;
		color: var(--mp-mobile-text) !important;
	}

	.mp-participant-page.is-dark.is-authenticated .mp-dark-toggle,
	.mp-participant-page.is-dark.is-authenticated .mp-participant-chat-btn,
	.mp-participant-page.is-dark.is-authenticated .mp-participant-notif-btn {
		border-color: rgba(255, 255, 255, 0.10) !important;
		background: rgba(255, 255, 255, 0.06) !important;
		color: var(--mp-mobile-text) !important;
	}

	.mp-participant-topbar__profile {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
	}

	.mp-participant-topbar__profile-avatar {
		width: 34px !important;
		height: 34px !important;
		min-width: 34px !important;
		border-radius: 14px !important;
		border: 2px solid rgba(201, 168, 76, 0.54) !important;
	}

	.mp-participant-page.is-dark.is-authenticated .mp-participant-topbar__profile-avatar {
		border-color: rgba(201, 168, 76, 0.64) !important;
	}

	body.mp-panel-open {
		overflow: hidden;
		padding-right: var(--mp-scrollbar-width, 0px);
	}

	body.mp-panel-open::after {
		content: '';
		position: fixed;
		inset: 0;
		z-index: 1202;
		background: rgba(8, 15, 27, 0.28);
	}

	body.mp-panel-open .mp-participant-screen.is-active,
	body.mp-panel-open .mp-participant-bottom-nav {
		filter: blur(4px);
		pointer-events: none;
	}

	body.mp-panel-open .mp-participant-main__topbar {
		z-index: 1204 !important;
	}

	.mp-participant-notification-center,
	.mp-participant-chat-center {
		position: static !important;
		margin: 0 !important;
	}

	.mp-notification-popover,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-notification-popover,
	.mp-chat-popover,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-chat-popover {
		position: fixed !important;
		top: calc(var(--mp-mobile-topbar-offset) + var(--mp-mobile-topbar-height) + 12px) !important;
		/* Centrage sans transform */
		left: 0 !important;
		right: 0 !important;
		width: min(calc(100% - 28px), 430px) !important;
		margin-left: auto !important;
		margin-right: auto !important;
		max-width: none !important;
		max-height: min(68vh, 560px);
		display: flex !important;
		flex-direction: column !important;
		overflow: hidden !important;
		border: 1px solid var(--mp-mobile-border-strong) !important;
		border-radius: 24px !important;
		background: var(--mp-mobile-surface-solid) !important;
		box-shadow: 0 26px 58px rgba(10, 22, 40, 0.22) !important;
		transform: none !important;
		z-index: 1205 !important;
	}

	.mp-notification-popover__head,
	.mp-notification-popover__footer,
	.mp-chat-popover__head,
	.mp-chat-popover__search {
		flex-shrink: 0;
		background: transparent;
	}

		.mp-notification-popover__body,
		.mp-chat-popover__body {
			max-height: min(52vh, 420px) !important;
			overflow-y: auto !important;
		}

		.mp-notification-popover[hidden],
		body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-notification-popover[hidden],
		.mp-chat-popover[hidden],
		body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-chat-popover[hidden] {
			display: none !important;
		}

		.mp-chat-modal {
			align-items: flex-end;
			padding: 0 6px 0;
		}

	.mp-chat-modal__dialog {
		width: min(430px, calc(100vw - 12px));
		height: min(82dvh, 760px);
		border-radius: 24px 24px 0 0;
		padding-bottom: env(safe-area-inset-bottom, 0px);
	}

	.mp-participant-bottom-nav {
		position: fixed !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 12px !important;
		width: min(calc(100% - 28px), 430px) !important;
		margin-left: auto !important;
		margin-right: auto !important;
		transform: none !important;
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 4px;
		padding: 10px 8px calc(10px + env(safe-area-inset-bottom, 0px));
		border: 1px solid rgba(255, 255, 255, 0.70);
		border-radius: 28px;
		background: rgba(255, 255, 255, 0.88);
		box-shadow: 0 18px 38px rgba(10, 22, 40, 0.14), 0 1px 0 rgba(255, 255, 255, 0.92) inset;
		backdrop-filter: blur(18px);
		-webkit-backdrop-filter: blur(18px);
		z-index: 1201;
	}

	.mp-participant-page.is-dark.is-authenticated .mp-participant-bottom-nav {
		border-color: rgba(255, 255, 255, 0.10);
		background: rgba(10, 16, 30, 0.90);
		box-shadow: 0 18px 40px rgba(0, 0, 0, 0.34);
	}

	.mp-participant-bottom-nav__item {
		gap: 6px;
		padding: 2px 0;
		font-size: 10px;
		font-weight: 700;
		color: var(--mp-mobile-muted);
	}

	.mp-participant-bottom-nav__item span:last-child {
		white-space: nowrap;
	}

	.mp-participant-bottom-nav__icon {
		width: 38px;
		height: 38px;
		border-radius: 14px;
		background: transparent;
	}

	.mp-participant-bottom-nav__item.is-active {
		color: var(--mp-mobile-text);
	}

	.mp-participant-bottom-nav__item.is-active .mp-participant-bottom-nav__icon,
	.mp-participant-bottom-nav__item:focus-visible .mp-participant-bottom-nav__icon {
		background: rgba(255, 255, 255, 0.82);
		color: var(--mp-participant-accent);
	}

	.mp-participant-page.is-dark.is-authenticated .mp-participant-bottom-nav__item {
		color: var(--mp-mobile-muted);
	}

	.mp-participant-page.is-dark.is-authenticated .mp-participant-bottom-nav__item.is-active {
		color: var(--mp-mobile-text);
	}

	.mp-participant-page.is-dark.is-authenticated .mp-participant-bottom-nav__item.is-active .mp-participant-bottom-nav__icon,
	.mp-participant-page.is-dark.is-authenticated .mp-participant-bottom-nav__item:focus-visible .mp-participant-bottom-nav__icon {
		background: rgba(255, 255, 255, 0.08);
		color: #9ac1ff;
	}

	.mp-toast {
		left: 50% !important;
		bottom: calc(var(--mp-mobile-bottom-nav-height) + 12px) !important;
		width: min(calc(100% - 28px), 380px);
		max-width: none;
		border-radius: 18px;
		transform: translateX(-50%) translateY(20px);
		z-index: 1250;
	}

	.mp-participant-section__head,
	.mp-profile-card__head,
	.mp-participant-screen-head,
	.mp-record-card__header,
	.mp-dashboard-lms-focus__head,
	.mp-home-booking-card,
	.mp-profile-avatar-edit,
	.mp-profile-edit-form__actions,
	.mp-participant-inline-card {
		flex-direction: column;
		align-items: flex-start;
	}

	.mp-dashboard-grid,
	.mp-quick-actions,
	.mp-profile-info-list,
	.mp-profile-menu,
	.mp-wishlist-grid {
		grid-template-columns: 1fr !important;
	}

	.mp-profile-card,
	.mp-home-booking-card,
	.mp-available-event-card,
	.mp-dashboard-lms-focus,
	.mp-record-card,
	.mp-notification-item,
	.mp-security-tip,
	.mp-data-table-wrap,
	.mp-empty-state,
	.mp-participant-inline-card,
	.mp-wishlist-card,
	.mp-masterclass-controls {
		border: 1px solid var(--mp-mobile-border) !important;
		border-radius: 24px !important;
		background: var(--mp-mobile-surface) !important;
		box-shadow: var(--mp-mobile-shadow) !important;
	}

	.mp-participant-page.is-dark.is-authenticated .mp-status-pill--neutral,
	.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__availability,
	.mp-participant-page.is-dark.is-authenticated .mp-masterclass-row__status,
	.mp-participant-page.is-dark.is-authenticated .mp-profile-info-row,
	.mp-participant-page.is-dark.is-authenticated .mp-profile-menu-row,
	.mp-participant-page.is-dark.is-authenticated .mp-security-tip {
		border-color: var(--mp-mobile-border);
		background: rgba(255, 255, 255, 0.03);
	}

	.mp-profile-card,
	.mp-home-booking-card,
	.mp-available-event-card,
	.mp-dashboard-lms-focus,
	.mp-record-card,
	.mp-security-tip,
	.mp-data-table-wrap,
	.mp-participant-inline-card,
	.mp-wishlist-card,
	.mp-masterclass-controls,
	.mp-empty-state {
		padding: 18px !important;
	}

	.mp-participant-screen-head h2,
	.mp-profile-card__head h3,
	.mp-participant-section__head h2 {
		font-size: clamp(1.24rem, 4.6vw, 1.5rem);
		line-height: 1.15;
		color: var(--mp-mobile-text);
	}

	.mp-participant-screen-head p,
	.mp-record-card__meta,
	.mp-record-card__note,
	.mp-dashboard-lms-focus__meta,
	.mp-dashboard-lms-focus__note,
	.mp-profile-edit-form__hint,
	.mp-profile-avatar-edit__hint,
	.mp-wishlist-card__excerpt,
	.mp-wishlist-card__meta,
	.mp-wishlist-card__kicker {
		color: var(--mp-mobile-muted);
	}

	.mp-status-pill {
		min-height: 31px;
		padding: 7px 11px;
		font-size: 11px;
	}

	.mp-screen-head__stats,
	.mp-inline-pills,
	.mp-record-card__actions {
		width: 100%;
	}

	.mp-inline-pills,
	.mp-screen-head__stats {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
	}

	.mp-quick-actions {
		gap: 12px;
	}

	.mp-quick-action,
	.mp-profile-menu-row,
	.mp-profile-info-row {
		border: 1px solid var(--mp-mobile-border);
		border-radius: 20px;
		background: rgba(255, 255, 255, 0.78);
	}

	.mp-participant-page.is-dark.is-authenticated .mp-quick-action,
	.mp-participant-page.is-dark.is-authenticated .mp-profile-menu-row,
	.mp-participant-page.is-dark.is-authenticated .mp-profile-info-row {
		background: rgba(255, 255, 255, 0.03);
	}

	.mp-dashboard-lms-focus {
		grid-template-columns: 1fr !important;
		gap: 16px;
	}

	.mp-dashboard-lms-focus__media {
		min-height: 190px !important;
		border-radius: 18px;
	}

	.mp-record-card {
		grid-template-columns: 1fr !important;
		gap: 14px;
	}

	.mp-record-card__aside {
		align-items: flex-start !important;
		text-align: left !important;
		padding-top: 12px;
		border-top: 1px solid var(--mp-mobile-border);
	}

	.mp-record-card__aside strong {
		font-size: 15px;
		color: var(--mp-mobile-text);
	}

	.mp-record-card__actions {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
		gap: 10px;
	}

	.mp-record-card__actions .mp-btn {
		width: 100%;
		justify-content: center;
	}

	.mp-masterclass-controls {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	.mp-masterclass-search__input,
	.mp-masterclass-sort__select,
	.mp-booking-form input[type='text'],
	.mp-booking-form input[type='email'],
	.mp-booking-form input[type='tel'],
	.mp-booking-form input[type='password'],
	.mp-booking-form input[type='file'],
	.mp-booking-form select {
		min-height: 48px;
		border-radius: 14px;
		font-size: 15px;
	}

	.mp-masterclass-results {
		justify-self: start !important;
		display: inline-flex;
		align-items: center;
		gap: 8px;
		padding: 8px 12px;
		border-radius: 999px;
		background: rgba(231, 238, 247, 0.86);
		color: var(--mp-mobile-text);
	}

	.mp-participant-page.is-dark.is-authenticated .mp-masterclass-results {
		background: rgba(255, 255, 255, 0.06);
	}

	.mp-masterclass-filters {
		display: flex;
		flex-wrap: nowrap;
		gap: 8px;
		overflow-x: auto;
		padding: 2px 2px 2px 0;
		scrollbar-width: none;
	}

	.mp-masterclass-filters::-webkit-scrollbar {
		display: none;
	}

	.mp-filter-tab {
		min-height: 40px;
		padding: 0 14px;
		border-radius: 999px;
		white-space: nowrap;
	}

	.mp-masterclass-row {
		grid-template-columns: 1fr !important;
		gap: 14px !important;
		padding: 18px !important;
		border: 1px solid var(--mp-mobile-border) !important;
		border-radius: 26px !important;
		background: var(--mp-mobile-surface) !important;
		box-shadow: var(--mp-mobile-shadow) !important;
	}

	.mp-masterclass-row__thumb {
		width: 100% !important;
		height: 188px !important;
		border-radius: 20px !important;
	}

	.mp-masterclass-row__meta {
		display: grid;
		gap: 8px;
	}

	.mp-masterclass-row__meta li {
		font-size: 12px !important;
	}

	.mp-masterclass-row__availability,
	.mp-masterclass-row__status {
		padding: 12px 14px;
		border: 1px solid var(--mp-mobile-border);
		border-radius: 18px;
		background: rgba(255, 255, 255, 0.76);
	}

	.mp-masterclass-row__actions {
		display: grid !important;
		grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
		gap: 10px;
		width: 100%;
	}

	.mp-masterclass-row__actions .mp-btn {
		width: 100%;
		justify-content: center;
	}

	.mp-data-table-wrap {
		overflow: visible !important;
		padding: 0 !important;
	}

	.mp-participant-screen--payments .mp-data-table,
	.mp-participant-screen--payments .mp-data-table thead,
	.mp-participant-screen--payments .mp-data-table tbody,
	.mp-participant-screen--payments .mp-data-table tr,
	.mp-participant-screen--payments .mp-data-table td {
		display: block;
		width: 100%;
	}

	.mp-participant-screen--payments .mp-data-table {
		min-width: 0;
		border-collapse: separate;
	}

	.mp-participant-screen--payments .mp-data-table thead {
		display: none;
	}

	.mp-participant-screen--payments .mp-data-table tbody {
		display: grid;
		gap: 12px;
	}

	.mp-participant-screen--payments .mp-data-table tr {
		padding: 18px;
		border: 1px solid var(--mp-mobile-border);
		border-radius: 22px;
		background: var(--mp-mobile-surface);
		box-shadow: var(--mp-mobile-shadow);
	}

	.mp-participant-screen--payments .mp-data-table td {
		padding: 10px 0;
		border-bottom: 1px solid var(--mp-mobile-border);
	}

	.mp-participant-screen--payments .mp-data-table td:last-child {
		padding-bottom: 0;
		border-bottom: 0;
	}

	.mp-participant-screen--payments .mp-data-table td::before {
		display: block;
		margin-bottom: 4px;
		font-size: 10px;
		font-weight: 700;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		color: var(--mp-mobile-muted);
	}

	.mp-participant-screen--payments .mp-data-table td:nth-child(1)::before { content: 'Date'; }
	.mp-participant-screen--payments .mp-data-table td:nth-child(2)::before { content: 'Reference'; }
	.mp-participant-screen--payments .mp-data-table td:nth-child(3)::before { content: 'Masterclass'; }
	.mp-participant-screen--payments .mp-data-table td:nth-child(4)::before { content: 'Methode'; }
	.mp-participant-screen--payments .mp-data-table td:nth-child(5)::before { content: 'Montant'; }
	.mp-participant-screen--payments .mp-data-table td:nth-child(6)::before { content: 'Paye'; }
	.mp-participant-screen--payments .mp-data-table td:nth-child(7)::before { content: 'Statut'; }
	.mp-participant-screen--payments .mp-data-table td:nth-child(8)::before { content: 'Action'; }

	.mp-participant-screen--payments .mp-data-table td code {
		word-break: break-all;
	}

	.mp-wishlist-grid {
		grid-template-columns: 1fr !important;
		gap: 14px !important;
	}

	.mp-wishlist-card {
		gap: 16px;
	}

	.mp-wishlist-card__media {
		aspect-ratio: 4 / 3;
		border-radius: 20px;
	}

	.mp-wishlist-card__body h3 {
		font-size: 1.18rem;
		color: var(--mp-mobile-text);
	}

	.mp-wishlist-card__actions {
		display: grid;
		grid-template-columns: auto 1fr;
		gap: 10px;
		align-items: center;
	}

	.mp-wishlist-card__actions .mp-btn {
		width: 100%;
		justify-content: center;
	}

	.mp-wishlist-btn--remove .mp-wishlist-btn__button {
		width: 44px;
		height: 44px;
		min-width: 44px;
		border-radius: 14px;
	}

	.mp-profile-avatar-edit {
		padding: 16px;
		border-radius: 20px;
	}

	.mp-booking-form__row {
		display: grid;
		gap: 12px;
	}

	.mp-profile-edit-form__actions {
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
	}

	.mp-profile-edit-form__actions .mp-btn,
	.mp-profile-password-action .mp-btn,
	.mp-participant-inline-card .mp-btn,
	.mp-participant-auth__actions > * {
		width: 100%;
		min-width: 0;
		justify-content: center;
	}

	.mp-security-tips,
	.mp-participant-screen--security .mp-dashboard-grid {
		grid-template-columns: 1fr !important;
	}

	.mp-participant-guest-active {
		min-height: 100dvh;
		height: auto;
		overflow-x: hidden;
		overflow-y: auto;
		background:
			radial-gradient(circle at top left, rgba(201, 168, 76, 0.10) 0%, transparent 34%),
			linear-gradient(180deg, #f6f8fb 0%, #edf2f7 100%);
	}

	.mp-participant-page--standalone {
		min-height: 100dvh;
		height: auto;
		padding: 18px 14px 28px;
		overflow: visible;
	}

	.mp-participant-auth-shell {
		width: 100%;
		height: auto;
	}

	.mp-participant-page--standalone .mp-participant-space {
		height: auto;
		min-height: calc(100dvh - 36px);
		padding-top: 76px;
		gap: 16px;
		overflow: visible;
	}

	.mp-participant-page--standalone .mp-participant-space__back {
		top: 14px;
		left: 14px;
	}

	.mp-participant-page--standalone .mp-participant-auth {
		width: 100%;
		max-width: none;
	}

	.mp-participant-page--standalone .mp-participant-auth-card {
		width: 100%;
		max-width: none;
		max-height: none;
		padding: 24px 18px 20px;
		border-radius: 28px;
	}

	.mp-participant-page--standalone .mp-participant-auth-tabs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.mp-participant-page--standalone .mp-participant-auth-tab {
		justify-content: center;
		min-height: 44px;
	}

	.mp-participant-page--standalone .mp-participant-auth__actions {
		display: grid;
		grid-template-columns: 1fr;
	}
}

@media (max-width: 380px) {
	.mp-participant-bottom-nav {
		width: calc(100% - 20px) !important;
	}

	.mp-participant-bottom-nav__item {
		font-size: 9px;
	}

	.mp-participant-bottom-nav__icon {
		width: 34px;
		height: 34px;
	}

	.mp-participant-main__topbar,
	body.mp-participant-app-page .mp-participant-page.is-authenticated .mp-participant-main__topbar {
		width: calc(100% - 20px) !important;
		padding-inline: 8px !important;
	}
}
