.participant-page { min-height:100vh; padding:28px 32px 80px; background:var(--cream); }
.participant-header { display:flex; align-items:center; justify-content:space-between; max-width:1116px; margin:0 auto; padding-bottom:28px; border-bottom:1px solid var(--line); }
.participant-header-actions { display:flex; align-items:center; gap:22px; }
.participant-header .brand { display:flex; align-items:center; gap:10px; font-family:"Playfair Display",serif; font-size:21px; line-height:.9; }
.participant-header .brand-logo { width:48px; height:48px; object-fit:contain; }
.participant-back,.participant-secondary-link { color:#b66c78; font-size:13px; }
.participant-back:hover,.participant-secondary-link:hover { color:var(--ink); }
.participant-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; align-items:start; max-width:1116px; margin:0 auto; padding:100px 0; }
.participant-intro { padding-top:16px; }
.participant-intro h1,.participant-state h1 { max-width:670px; margin:18px 0 28px; font-family:"Playfair Display",serif; font-size:clamp(48px,6vw,78px); line-height:.98; font-weight:500; letter-spacing:-.055em; }
.participant-intro > p:not(.eyebrow):not(.participant-places) { max-width:510px; color:rgba(81,53,33,.7); line-height:1.7; }
.participant-meta { display:flex; flex-direction:column; gap:7px; margin-bottom:30px; color:var(--muted); font-size:13px; }
.participant-meta strong { color:var(--ink); font-size:15px; }
.participant-places { display:inline-flex; width:max-content; margin-top:30px; padding:9px 12px; border-radius:100px; color:var(--ink); background:#f7e7dd; font-size:12px; font-weight:700; }
.participant-card { padding:32px; border:1px solid var(--line); border-radius:18px; background:rgba(255,255,255,.48); box-shadow:0 18px 45px rgba(81,53,33,.06); }
.participant-login-card { max-width:620px; margin:0 auto; padding:96px 0 70px; }
.participant-login-card h1 { max-width:620px; margin:18px 0 20px; font-family:"Playfair Display",serif; font-size:clamp(48px,6vw,76px); line-height:.98; font-weight:500; letter-spacing:-.055em; }
.participant-login-card > p:not(.eyebrow):not(.participant-saved) { max-width:470px; color:var(--muted); line-height:1.7; }
.participant-login-card .participant-form { max-width:470px; margin-top:28px; }
.participant-card h2 { margin:0 0 10px; font-family:"Playfair Display",serif; font-size:34px; font-weight:500; }
.participant-help { margin:0 0 26px; color:var(--muted); font-size:13px; line-height:1.6; }
.participant-field { margin-bottom:18px; }
.participant-field label { display:block; margin-bottom:8px; font-size:12px; font-weight:700; }
.participant-field label span { color:rgba(81,53,33,.5); font-weight:400; }
.participant-field input:not([type=checkbox]),.participant-field textarea { width:100%; padding:13px 0; border:0; border-bottom:1px solid var(--line); outline:0; color:var(--ink); background:transparent; font:inherit; }
.participant-field textarea { min-height:92px; resize:vertical; }
.participant-field input:focus,.participant-field textarea:focus { border-color:var(--pink); }
.participant-consent { display:flex; align-items:flex-start; gap:10px; margin:22px 0 6px; color:var(--muted); font-size:12px; line-height:1.45; cursor:pointer; }
.participant-consent input { flex:0 0 auto; margin-top:2px; accent-color:var(--pink); }
.errorlist { margin:6px 0 0; padding:0; color:#a65b63; list-style:none; font-size:12px; }
.participant-card .button,.participant-state .button { margin-top:20px; }
.participant-state { max-width:760px; margin:0 auto; padding:125px 0 80px; }
.participant-state > p:not(.eyebrow):not(.participant-small) { max-width:570px; color:var(--muted); line-height:1.7; }
.participant-summary { display:flex; flex-direction:column; gap:7px; margin:30px 0; padding:20px 22px; border-left:3px solid var(--pink); border-radius:0 12px 12px 0; background:#f7e7dd; font-size:13px; }
.participant-summary strong { font-family:"Playfair Display",serif; font-size:22px; font-weight:500; }
.participant-small { margin-top:30px; color:var(--muted); font-size:12px; }
.participant-status { display:inline-flex; margin-bottom:4px; padding:8px 12px; border-radius:100px; font-size:12px; font-weight:700; }
.status-pending_payment,.status-waitlisted { color:#9a6c36; background:#fff0d8; }
.status-confirmed,.status-attended { color:#487254; background:#e7f0e9; }
.status-cancelled { color:#a65b63; background:#f8dfe3; }
.participant-note { margin-top:52px; padding-top:24px; border-top:1px solid var(--line); }
.participant-note strong { font-size:13px; }
.participant-note p { margin:8px 0 13px; color:var(--muted); font-size:13px; line-height:1.6; }
.participant-payments-page { max-width:880px; }
.participant-payment-list { margin-top:38px; }
.participant-payment-card { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:19px 0; border-top:1px solid var(--line); }
.participant-payment-card > div:first-child { display:flex; flex-direction:column; gap:5px; }
.participant-payment-card strong { font-family:"Playfair Display",serif; font-size:20px; font-weight:500; }
.participant-payment-card > div:first-child span { color:var(--muted); font-size:11px; }
.participant-payment-meta { display:flex; align-items:center; gap:13px; flex-wrap:wrap; justify-content:flex-end; }
.participant-payment-meta b { font-size:14px; }
.participant-payment-meta a { color:#b66c78; font-size:12px; font-weight:700; }
.participant-empty { padding:25px 0; color:var(--muted); font-size:13px; }
.status-paid { color:#487254; background:#e7f0e9; }
.status-pending { color:#9a6c36; background:#fff0d8; }
.status-failed,.status-expired { color:#a65b63; background:#f8dfe3; }
.participant-updates { margin-top:48px; padding-top:28px; border-top:1px solid var(--line); }
.participant-updates .eyebrow { margin-bottom:18px; }
.participant-updates article { padding:15px 0; border-top:1px solid var(--line); }
.participant-updates article div { display:flex; align-items:baseline; justify-content:space-between; gap:15px; }
.participant-updates article strong { font-size:13px; }
.participant-updates article time { color:var(--muted); font-size:11px; }
.participant-updates article p { margin:8px 0 0; color:var(--muted); font-size:13px; line-height:1.6; }
.participant-formations { margin-top:40px; }
.formation-card { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.formation-card > div { display:flex; flex-direction:column; gap:5px; }
.formation-card strong { font-family:"Playfair Display",serif; font-size:20px; font-weight:500; }
.formation-card span { color:#b66c78; font-size:11px; font-weight:700; }
.formation-card p { margin:2px 0 0 !important; }
.formation-page { max-width:1116px; margin:0 auto; padding:90px 0; }
.formation-hero { display:grid; grid-template-columns:1fr .7fr; gap:70px; align-items:end; padding-bottom:52px; border-bottom:1px solid var(--line); }
.formation-cover { display:block; max-width:280px; max-height:170px; margin-bottom:28px; border-radius:14px; object-fit:cover; }
.formation-hero h1 { max-width:710px; margin:18px 0 20px; font-family:"Playfair Display",serif; font-size:clamp(48px,6vw,82px); line-height:.98; font-weight:500; letter-spacing:-.055em; }
.formation-hero p:not(.eyebrow) { max-width:610px; color:var(--muted); line-height:1.7; }
.formation-progress { padding:22px; border-radius:14px; background:#f7e7dd; }
.formation-progress strong { display:block; font-family:"Playfair Display",serif; font-size:45px; font-weight:500; }
.formation-progress span { color:var(--muted); font-size:12px; }
.formation-progress > div { height:8px; margin-top:20px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.7); }
.formation-progress i { display:block; height:100%; border-radius:inherit; background:var(--pink); }
.participant-saved { margin:22px 0 -10px; padding:12px 14px; border-radius:9px; color:#487254; background:#e7f0e9; font-size:13px; }
.formation-modules { max-width:820px; margin:62px auto 0; }
.formation-module { margin-bottom:48px; }
.formation-module h2 { margin:7px 0 8px; font-family:"Playfair Display",serif; font-size:32px; font-weight:500; }
.module-description { margin:0 0 20px; color:var(--muted); font-size:13px; line-height:1.6; }
.lesson-card { margin-top:16px; padding:24px; border:1px solid var(--line); border-radius:15px; background:rgba(255,255,255,.48); box-shadow:0 10px 25px rgba(81,53,33,.04); }
.lesson-card.is-complete { border-color:rgba(113,165,126,.45); background:#fbfdfb; }
.lesson-heading { display:flex; align-items:flex-start; gap:15px; }
.lesson-heading > span { display:grid; place-items:center; flex:0 0 34px; width:34px; height:34px; border-radius:10px; color:var(--ink); background:#f3c2c9; font-size:11px; font-weight:700; }
.lesson-heading h3 { margin:4px 0 0; font-family:"Playfair Display",serif; font-size:24px; font-weight:500; }
.lesson-heading small { display:block; margin-top:5px; color:#487254; font-size:11px; font-weight:700; }
.lesson-body { margin:20px 0 0; color:rgba(81,53,33,.72); font-size:14px; line-height:1.7; }
.lesson-body p { margin:0 0 12px; }
.lesson-resource { display:inline-flex; margin:15px 12px 0 0; color:#b66c78; font-size:12px; font-weight:700; }
.lesson-image { display:block; max-width:100%; max-height:360px; margin-top:20px; border-radius:12px; object-fit:cover; }
.lesson-action { margin-top:22px; padding-top:20px; border-top:1px solid var(--line); }
.lesson-action label { display:block; margin-bottom:9px; color:var(--ink); font-size:13px; font-weight:700; line-height:1.45; }
.lesson-action textarea { display:block; width:100%; padding:12px; border:1px solid var(--line); border-radius:10px; outline:0; color:var(--ink); background:rgba(255,255,255,.65); font:inherit; resize:vertical; }
.lesson-action textarea:focus { border-color:var(--pink); }
.lesson-action .button { margin-top:14px; }
@media(max-width:800px) { .formation-page { padding:65px 0; }.formation-hero { grid-template-columns:1fr; gap:35px; }.formation-progress { max-width:420px; }.formation-modules { margin-top:45px; } }
@media(max-width:520px) { .formation-card { align-items:flex-start; flex-direction:column; }.formation-card .participant-secondary-link { align-self:flex-end; }.lesson-card { padding:20px; } }
@media(max-width:800px) { .participant-page { padding:20px 20px 50px; }.participant-layout { grid-template-columns:1fr; gap:42px; padding:65px 0; }.participant-intro h1,.participant-state h1 { font-size:clamp(46px,13vw,70px); }.participant-state { padding:75px 0 50px; } }
@media(max-width:520px) { .participant-header .brand span { display:none; }.participant-header-actions { gap:12px; }.participant-back { font-size:12px; }.participant-card { padding:24px; }.participant-payment-card { align-items:flex-start; flex-direction:column; }.participant-payment-meta { justify-content:flex-start; } }
.participant-cancelled { color:#487254; background:#e7f0e9; }
.participant-cancel-form { margin-top:18px; }
.participant-danger-link { padding:0; border:0; color:#a65b63; background:transparent; font:inherit; font-size:12px; font-weight:700; cursor:pointer; }
.participant-danger-link:hover { text-decoration:underline; }
.quiz-form { text-align:left; }
.quiz-intro { display:flex; align-items:center; gap:10px; margin-bottom:18px; color:var(--ink); }
.quiz-badge { display:inline-flex; padding:6px 9px; border-radius:100px; color:#a65b63; background:#f8dfe3; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.quiz-question { min-width:0; margin:18px 0 0; padding:16px; border:1px solid var(--line); border-radius:12px; }
.quiz-question legend { max-width:100%; padding:0 4px; color:var(--ink); font-size:14px; font-weight:700; line-height:1.45; }
.quiz-options { display:grid; gap:8px; margin-top:12px; }
.quiz-option { display:flex; align-items:center; gap:10px; padding:10px 12px; border:1px solid rgba(81,53,33,.1); border-radius:10px; color:var(--muted); background:rgba(255,255,255,.55); cursor:pointer; font-size:13px; transition:border-color .2s ease, background .2s ease; }
.quiz-option:hover,.quiz-option.is-selected { border-color:rgba(232,137,160,.62); background:#fff7f4; }
.quiz-option input { accent-color:var(--pink); }
.quiz-feedback,.quiz-explanation { margin:10px 0 0; color:var(--muted); font-size:12px; line-height:1.5; }
.quiz-feedback.is-correct { color:#487254; font-weight:700; }
.quiz-explanation { padding:9px 10px; border-radius:8px; background:#f7e7dd; }
.quiz-score { margin:16px 0 0; color:var(--muted); font-size:13px; }
.quiz-score strong { color:var(--ink); }
.formation-preview-bar { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:11px 28px; color:var(--ink); background:#f3c2c9; font-size:12px; font-weight:700; }
.formation-preview-bar a { color:var(--ink); }
@media(max-width:520px) { .formation-preview-bar { align-items:flex-start; flex-direction:column; gap:5px; padding:10px 20px; } }
.learning-stats { display:grid; gap:12px; }
.xp-card { display:flex; flex-direction:column; gap:4px; padding:18px 22px; border-radius:14px; color:var(--ink); background:#f3c2c9; }
.xp-card span,.xp-card small { color:rgba(81,53,33,.65); font-size:11px; }
.xp-card strong { font-family:"Playfair Display",serif; font-size:29px; font-weight:500; }
.streak-card { display:flex; flex-direction:column; gap:4px; padding:18px 22px; border-radius:14px; color:var(--ink); background:#e7f0e9; }
.streak-card span,.streak-card small { color:rgba(72,114,84,.72); font-size:11px; }
.streak-card strong { font-family:"Playfair Display",serif; font-size:25px; font-weight:500; }
.continue-card { display:flex; align-items:center; justify-content:space-between; gap:20px; max-width:820px; margin:34px auto 0; padding:20px 22px; border:1px solid rgba(232,137,160,.45); border-radius:15px; background:#fff7f4; }
.continue-card > div { display:flex; flex-direction:column; gap:5px; }
.continue-card .eyebrow { margin:0; }
.continue-card strong { font-family:"Playfair Display",serif; font-size:22px; font-weight:500; }
.continue-card span { color:var(--muted); font-size:11px; }
.continue-card .button { margin:0; }
.learning-map { max-width:820px; margin:50px auto 0; }
.learning-unit { margin-bottom:34px; padding:24px; border:1px solid var(--line); border-radius:17px; background:rgba(255,255,255,.38); }
.unit-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.unit-heading h2 { margin:7px 0 0; font-family:"Playfair Display",serif; font-size:30px; font-weight:500; }
.unit-heading > span { padding:7px 9px; border-radius:100px; color:#b66c78; background:#f9e6dd; font-size:11px; font-weight:700; white-space:nowrap; }
.lesson-road { position:relative; display:grid; gap:10px; margin-top:22px; }
.lesson-road::before { content:""; position:absolute; left:22px; top:22px; bottom:22px; width:1px; background:rgba(81,53,33,.13); }
.lesson-node { position:relative; z-index:1; display:flex; align-items:center; gap:13px; min-width:0; padding:13px 14px 13px 7px; border:1px solid transparent; border-radius:13px; color:var(--ink); background:rgba(255,255,255,.48); transition:transform .2s ease, border-color .2s ease, background .2s ease; }
.lesson-node:hover { transform:translateX(3px); border-color:rgba(232,137,160,.5); background:#fff; }
.lesson-node.is-current { border-color:rgba(232,137,160,.48); background:#fff7f4; }
.lesson-node.is-complete { background:#fbfdfb; }
.lesson-node.is-locked { color:rgba(81,53,33,.46); background:rgba(81,53,33,.035); }
.lesson-node-icon { display:grid; place-items:center; flex:0 0 32px; width:32px; height:32px; border:1px solid rgba(81,53,33,.14); border-radius:50%; color:var(--ink); background:#fff; font-size:11px; font-weight:800; }
.lesson-node.is-complete .lesson-node-icon { color:#487254; border-color:#b9d6be; background:#e7f0e9; }
.lesson-node.is-current .lesson-node-icon { border-color:var(--pink); background:#f3c2c9; }
.lesson-node-copy { display:flex; flex:1; min-width:0; flex-direction:column; gap:4px; }
.lesson-node-copy strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }
.lesson-node-copy small { color:var(--muted); font-size:11px; }
.lesson-node-arrow { color:#b66c78; font-size:20px; }
.lesson-page { max-width:820px; margin:0 auto; padding:70px 0 80px; }
.lesson-topline { display:flex; align-items:center; justify-content:space-between; gap:16px; color:#b66c78; font-size:12px; }
.lesson-topline a { color:inherit; font-weight:700; }
.lesson-topline span { color:var(--muted); }
.lesson-progress-line { height:7px; margin-top:16px; overflow:hidden; border-radius:99px; background:#f7e7dd; }
.lesson-progress-line i { display:block; height:100%; border-radius:inherit; background:var(--pink); }
.lesson-view-card { margin-top:34px; padding:34px; border:1px solid var(--line); border-radius:18px; background:rgba(255,255,255,.48); box-shadow:0 18px 45px rgba(81,53,33,.05); }
.lesson-view-header { display:flex; align-items:flex-start; justify-content:space-between; gap:22px; padding-bottom:25px; border-bottom:1px solid var(--line); }
.lesson-view-header h1 { max-width:650px; margin:11px 0 0; font-family:"Playfair Display",serif; font-size:clamp(37px,6vw,62px); line-height:1; font-weight:500; letter-spacing:-.05em; }
.lesson-done-badge { padding:8px 10px; border-radius:100px; color:#487254; background:#e7f0e9; font-size:11px; font-weight:700; white-space:nowrap; }
.lesson-blocks { display:grid; gap:18px; margin-top:28px; }
.lesson-blocks > h2 { margin:8px 0 -4px; font-family:"Playfair Display",serif; font-size:28px; font-weight:500; }
.lesson-blocks > h3 { margin:8px 0 -7px; font-size:16px; }
.lesson-blocks .lesson-body { margin:0; }
.lesson-callout { padding:18px 20px; border-left:3px solid var(--pink); border-radius:0 12px 12px 0; background:#f7e7dd; }
.lesson-callout strong { display:block; margin-bottom:7px; font-family:"Playfair Display",serif; font-size:21px; font-weight:500; }
.lesson-callout p { margin:0 0 8px; color:var(--muted); font-size:13px; line-height:1.6; }
.lesson-media-link { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 16px; border-radius:11px; color:#b66c78; background:#f9e6dd; font-size:13px; font-weight:700; }
.lesson-media-link:hover { color:var(--ink); background:#f3c2c9; }
.lesson-completion-form { margin-top:30px; padding-top:22px; border-top:1px solid var(--line); }
.lesson-completion-form label { display:block; margin-bottom:9px; color:var(--ink); font-size:13px; font-weight:700; }
.lesson-completion-form textarea { display:block; width:100%; padding:12px; border:1px solid var(--line); border-radius:10px; outline:0; color:var(--ink); background:rgba(255,255,255,.7); font:inherit; resize:vertical; }
.lesson-completion-form .button { margin-top:16px; }
.lesson-navigation { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:22px; }
.lesson-navigation > a:not(.button) { color:#b66c78; font-size:12px; font-weight:700; }
.lesson-navigation .button { margin:0; }
.preview-lesson-card { margin-top:13px; padding:21px; border:1px solid var(--line); border-radius:14px; background:rgba(255,255,255,.48); }
.preview-lesson-card .lesson-heading h3 { font-size:21px; }
.formation-preview-page { padding-top:64px; }
.formation-preview-slideshow { width:100%; max-width:1116px; margin:50px auto 0; }
.formation-preview-slideshow .lesson-slides { min-height:340px; }
.formation-preview-slideshow .lesson-view-header h1 { max-width:560px; font-size:clamp(32px,5vw,52px); }
.preview-slide-context { display:flex; flex-direction:column; gap:5px; margin-bottom:18px; padding-bottom:15px; border-bottom:1px solid var(--line); }
.preview-slide-context span { color:#b66c78; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.preview-slide-context strong { font-family:"Playfair Display",serif; font-size:22px; font-weight:500; }
.formation-preview-slideshow .lesson-action-slide { min-height:250px; }
@media(max-width:800px) { .formation-preview-slideshow { margin-top:38px; }.formation-preview-slideshow .lesson-slides { min-height:300px; } }
@media(max-width:520px) { .formation-preview-page { padding-top:45px; }.formation-preview-slideshow { margin-top:32px; }.formation-preview-slideshow .lesson-view-header h1 { font-size:32px; }.preview-slide-context strong { font-size:20px; } }
@media(max-width:800px) { .learning-hero { gap:32px; }.lesson-page { padding:55px 0 65px; } }
@media(max-width:520px) { .continue-card,.lesson-view-header,.lesson-topline,.lesson-navigation { align-items:flex-start; flex-direction:column; }.continue-card .button { align-self:flex-end; }.learning-unit,.lesson-view-card { padding:20px; }.unit-heading { align-items:flex-start; flex-direction:column; }.lesson-node-copy strong { white-space:normal; }.lesson-navigation .button { align-self:stretch; text-align:center; } }

/* Lecture guidée : chaque bloc devient une diapositive courte et actionnable. */
.lesson-slideshow { overflow:hidden; }
.lesson-slide-status { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:22px; padding:12px 14px; border-radius:12px; background:#f7e7dd; }
.lesson-slide-status .eyebrow { margin:0 0 3px; font-size:9px; }
.lesson-slide-status strong { font-family:"Playfair Display",serif; font-size:23px; font-weight:500; }
.lesson-slide-status strong small { color:var(--muted); font-family:"DM Sans",sans-serif; font-size:12px; font-weight:500; }
.lesson-slide-status > span { color:#b66c78; font-size:11px; font-weight:700; }
.lesson-slides { min-height:260px; margin-top:24px; }
.lesson-slide[hidden] { display:none; }
.lesson-slide { animation:lesson-slide-in .28s ease both; }
.lesson-slide-kicker { display:flex; align-items:center; gap:9px; margin-bottom:18px; color:#b66c78; }
.lesson-slide-kicker > span { display:grid; place-items:center; width:28px; height:28px; border-radius:10px; color:var(--ink); background:#f3c2c9; font-size:10px; font-weight:800; }
.lesson-slide-kicker small { font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.lesson-slide > .lesson-blocks { margin-top:0; }
.lesson-slide-controls { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:27px; padding-top:18px; border-top:1px solid var(--line); }
.lesson-slide-button { min-width:112px; padding:10px 13px; border:0; border-radius:100px; color:#b66c78; background:transparent; cursor:pointer; font-size:12px; font-weight:700; }
.lesson-slide-button:hover:not(:disabled) { color:var(--ink); background:#f7e7dd; }
.lesson-slide-button:disabled { visibility:hidden; }
.lesson-slide-button[hidden] { display:none; }
.lesson-slide-indicator { display:flex; align-items:center; gap:10px; min-width:0; }
.lesson-slide-indicator small { color:var(--muted); font-size:10px; white-space:nowrap; }
.lesson-slide-dots { display:flex; align-items:center; gap:5px; max-width:220px; overflow:hidden; }
.lesson-slide-dot { width:7px; height:7px; padding:0; border:0; border-radius:50%; background:rgba(81,53,33,.17); cursor:pointer; transition:width .2s ease, background .2s ease; }
.lesson-slide-dot.is-active { width:21px; border-radius:99px; background:var(--pink); }
.lesson-slide-dot[aria-current="false"] { opacity:.7; }
.lesson-complete-screen { max-width:470px; margin:15px auto 26px; text-align:center; }
.lesson-complete-icon { display:grid; place-items:center; width:48px; height:48px; margin:0 auto 17px; border-radius:50%; color:#487254; background:#e7f0e9; font-size:21px; font-weight:800; }
.lesson-complete-screen .eyebrow { margin-bottom:7px; }
.lesson-complete-screen h2 { margin:0 0 10px; font-family:"Playfair Display",serif; font-size:30px; font-weight:500; }
.lesson-complete-screen p:last-child { margin:0; color:var(--muted); font-size:13px; line-height:1.6; }
.lesson-action-slide { padding:13px 0 4px; text-align:center; }
.lesson-action-slide .lesson-completion-form { margin-top:0; padding-top:0; border-top:0; }
.lesson-action-slide .lesson-completion-form label { text-align:left; }
.lesson-action-slide .button { margin-top:0; }
.lesson-action-slide .quiz-score { margin-bottom:0; }
.lesson-slides-form { margin:0; }
.quiz-slide-topline { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.quiz-slide-topline small { color:var(--muted); font-size:11px; }
.quiz-slide .quiz-question { margin-top:20px; }
.lesson-empty-slide { display:grid; min-height:220px; place-items:center; align-content:center; gap:10px; color:var(--muted); text-align:center; }
.lesson-empty-slide p { margin:0; font-size:13px; }
@keyframes lesson-slide-in { from { opacity:0; transform:translateX(10px); } to { opacity:1; transform:translateX(0); } }
@media(max-width:520px) {
  .lesson-slide-status { align-items:flex-start; flex-direction:column; gap:5px; }
  .lesson-slides { min-height:300px; }
  .lesson-slide-controls { gap:6px; }
  .lesson-slide-button { min-width:82px; padding:9px 6px; }
  .lesson-slide-button span { display:none; }
  .lesson-slide-indicator { flex:1; justify-content:center; }
  .lesson-slide-dots { max-width:145px; }
  .lesson-complete-screen h2 { font-size:26px; }
}
