/* V603 — pédagogie, exercices paginés, choix orangés */
:root{--leka-orange:#f59e0b;--leka-orange-2:#fb923c;--leka-orange-soft:rgba(245,158,11,.14);--leka-orange-border:rgba(245,158,11,.55)}
.rl-mode-intro{margin:0 0 16px;padding:14px 16px;border-radius:14px;background:linear-gradient(135deg,rgba(245,158,11,.13),rgba(251,146,60,.06));border:1px solid rgba(245,158,11,.28)}
.rl-mode-intro strong{display:block;color:#fbbf24;margin-bottom:4px}.rl-mode-intro p{margin:0;line-height:1.55}
.rl-exercise-progress{display:flex;align-items:center;gap:10px;margin:12px 0 16px;height:28px}.rl-exercise-progress>span{display:block;height:8px;flex:1;border-radius:999px;background:linear-gradient(90deg,var(--leka-orange),var(--leka-orange-2));box-shadow:0 0 18px rgba(245,158,11,.18)}.rl-exercise-progress small{min-width:54px;text-align:right;font-weight:800;opacity:.8}
.rl-stage{min-height:280px}.rl-item[hidden]{display:none!important}.rl-item{padding:18px;border:1px solid rgba(148,163,184,.22);border-radius:16px;background:rgba(15,23,42,.32);box-shadow:0 8px 24px rgba(0,0,0,.08)}
.rl-item-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.rl-item-head>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--leka-orange-soft);border:1px solid var(--leka-orange-border);color:#fbbf24;font-weight:900}.rl-item-head small{font-weight:800;text-transform:uppercase;letter-spacing:.06em;opacity:.65}
.rl-task-help{display:grid;gap:3px;margin:0 0 14px;padding:10px 12px;border-radius:11px;background:rgba(245,158,11,.08);border-left:3px solid var(--leka-orange)}.rl-task-help strong{font-size:.82rem;color:#fbbf24}.rl-task-help span{font-size:.91rem;line-height:1.45}
.rl-q{font-size:1.04rem;line-height:1.55;margin-bottom:14px}
.rl-options{gap:10px}.rl-option{position:relative;min-height:48px;padding:11px 13px;border-radius:12px;background:rgba(245,158,11,.055);border:1px solid rgba(245,158,11,.22);transition:background .15s,border-color .15s,transform .15s;cursor:pointer}.rl-option:hover{background:rgba(245,158,11,.11);border-color:rgba(245,158,11,.42)}.rl-option.is-selected,.rl-option:has(input:checked){background:linear-gradient(135deg,rgba(245,158,11,.32),rgba(251,146,60,.18));border-color:#f59e0b;box-shadow:0 0 0 2px rgba(245,158,11,.12),0 8px 22px rgba(245,158,11,.10);transform:translateY(-1px)}.rl-option input{accent-color:#f59e0b}
.rl-input,.rl-select{background:rgba(15,23,42,.62)!important;color:#f8fafc!important;border:1px solid rgba(148,163,184,.38)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035);caret-color:#fbbf24}.rl-input::placeholder{color:rgba(226,232,240,.55)}.rl-input:focus,.rl-select:focus{outline:none;border-color:#f59e0b!important;box-shadow:0 0 0 3px rgba(245,158,11,.14)}.rl-select option{background:#111827;color:#f8fafc}
.rl-btn-primary,.rl-btn-next{background:linear-gradient(135deg,#f59e0b,#ea580c)!important;border-color:#f59e0b!important;color:#17120a!important;box-shadow:0 7px 20px rgba(245,158,11,.18)}.rl-btn-primary:hover,.rl-btn-next:hover{filter:brightness(1.06)}
.rl-feedback{min-height:0}.rl-feedback>p{margin:10px 0 0}.rl-retry-note{padding:9px 11px;border-radius:10px;background:rgba(245,158,11,.08)}.rl-why{margin-top:12px;padding:12px 14px;border-radius:12px;background:rgba(59,130,246,.08);border:1px solid rgba(96,165,250,.18)}.rl-why strong{display:block;margin-bottom:4px;color:#93c5fd}.rl-why p{margin:0;line-height:1.55}
.rl-pager-nav{margin-top:15px}.rl-btn-next{width:100%;min-height:48px}.rl-section-done{padding:12px 14px;border-radius:12px;background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.24);color:#86efac;text-align:center}
.rl-checkpoint{text-align:center;padding:22px 18px;border:1px solid rgba(245,158,11,.32);border-radius:18px;background:linear-gradient(160deg,rgba(245,158,11,.14),rgba(15,23,42,.48));box-shadow:0 14px 36px rgba(0,0,0,.14)}.rl-checkpoint-icon{font-size:2rem}.rl-checkpoint h3{margin:6px 0}.rl-checkpoint p{max-width:650px;margin:0 auto 14px;line-height:1.6}
@media(max-width:640px){.rl-stage{min-height:240px}.rl-item{padding:14px}.rl-task-help{padding:9px 10px}.rl-option{padding:10px}.rl-exercise-progress{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.rl-option{transition:none}.rl-option.is-selected,.rl-option:has(input:checked){transform:none}}

/* V604 — rappel pédagogique intégré aux exercices */
.rl-reference-trigger{display:inline-flex;align-items:center;gap:8px;margin:-4px 0 14px;padding:8px 12px;border:1px solid rgba(245,158,11,.34);border-radius:999px;background:rgba(245,158,11,.09);color:#fbbf24;font:inherit;font-size:.88rem;font-weight:800;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}
.rl-reference-trigger:hover,.rl-reference-trigger:focus-visible{background:rgba(245,158,11,.17);border-color:#f59e0b;outline:none;transform:translateY(-1px)}
.rl-reference-backdrop[hidden]{display:none!important}.rl-reference-backdrop{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px;background:rgba(2,6,23,.78);backdrop-filter:blur(8px)}
.rl-reference-dialog{width:min(760px,100%);max-height:min(84vh,820px);overflow:auto;border:1px solid rgba(245,158,11,.42);border-radius:22px;background:linear-gradient(180deg,#111b2e,#0b1425);color:#e5e7eb;box-shadow:0 30px 90px rgba(0,0,0,.48);outline:none}
.rl-reference-head{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 14px;background:linear-gradient(180deg,rgba(17,27,46,.99),rgba(17,27,46,.94));border-bottom:1px solid rgba(148,163,184,.14)}
.rl-reference-kicker{display:block;margin-bottom:5px;color:#f59e0b;font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.rl-reference-head h2{margin:0;color:#f8fafc;font-size:clamp(1.15rem,3vw,1.55rem);line-height:1.25}
.rl-reference-close{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid rgba(148,163,184,.28);border-radius:50%;background:rgba(255,255,255,.04);color:#f8fafc;font-size:1.55rem;cursor:pointer}.rl-reference-close:hover,.rl-reference-close:focus-visible{border-color:#f59e0b;background:rgba(245,158,11,.12);outline:none}
.rl-reference-intro{margin:18px 22px 8px;padding:11px 13px;border-left:3px solid #f59e0b;border-radius:8px;background:rgba(245,158,11,.07);line-height:1.55;color:#cbd5e1}
.rl-reference-content{display:grid;gap:12px;padding:10px 22px 18px}.rl-reference-section{padding:14px 15px;border:1px solid rgba(148,163,184,.16);border-radius:14px;background:rgba(15,23,42,.46)}.rl-reference-section h3{margin:0 0 7px;color:#fbbf24;font-size:.96rem}.rl-reference-section p{margin:0;line-height:1.62}.rl-reference-section ul{margin:0;padding-left:1.25rem}.rl-reference-section li{margin:.38rem 0;line-height:1.5}.rl-reference-examples li::marker{color:#f59e0b}
.rl-reference-foot{position:sticky;bottom:0;padding:13px 22px 18px;background:linear-gradient(0deg,rgba(11,20,37,.99),rgba(11,20,37,.94));border-top:1px solid rgba(148,163,184,.12)}.rl-reference-done{width:100%;min-height:46px}.rl-modal-open{overflow:hidden}
@media(max-width:640px){.rl-reference-backdrop{padding:8px}.rl-reference-dialog{max-height:92vh;border-radius:17px}.rl-reference-head{padding:16px 15px 12px}.rl-reference-intro{margin:14px 15px 6px}.rl-reference-content{padding:8px 15px 14px}.rl-reference-foot{padding:11px 15px 14px}.rl-reference-trigger{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.rl-reference-trigger{transition:none}.rl-reference-trigger:hover,.rl-reference-trigger:focus-visible{transform:none}}

/* V617 — repère de niveau discret, sans modifier l'identité visuelle */
.rich-lesson{--lesson-level-accent:#f59e0b;--lesson-level-soft:rgba(245,158,11,.11);--lesson-level-border:rgba(245,158,11,.34)}
.rich-lesson[data-level-band="a1"]{--lesson-level-accent:#f59e0b;--lesson-level-soft:rgba(245,158,11,.11);--lesson-level-border:rgba(245,158,11,.34)}
.rich-lesson[data-level-band="a1a2"]{--lesson-level-accent:#84a83e;--lesson-level-soft:rgba(132,168,62,.11);--lesson-level-border:rgba(132,168,62,.34)}
.rich-lesson[data-level-band="a2"]{--lesson-level-accent:#14b8a6;--lesson-level-soft:rgba(20,184,166,.10);--lesson-level-border:rgba(20,184,166,.32)}
.rich-lesson[data-level-band="a2b1"]{--lesson-level-accent:#3b82f6;--lesson-level-soft:rgba(59,130,246,.10);--lesson-level-border:rgba(59,130,246,.32)}
.rich-lesson[data-level-band="b1b2"]{--lesson-level-accent:#8b5cf6;--lesson-level-soft:rgba(139,92,246,.10);--lesson-level-border:rgba(139,92,246,.32)}
.rich-lesson[data-level-band="b2plus"]{--lesson-level-accent:#d9467d;--lesson-level-soft:rgba(217,70,125,.10);--lesson-level-border:rgba(217,70,125,.32)}
.rich-lesson .rl-hero{position:relative;border-top:3px solid var(--lesson-level-accent);box-shadow:inset 0 1px 0 var(--lesson-level-soft)}
.rl-level-badge{display:inline-flex;align-items:center;gap:8px;margin:8px 0 10px;padding:6px 11px;border:1px solid var(--lesson-level-border);border-radius:999px;background:var(--lesson-level-soft);color:inherit;font-size:.82rem;line-height:1}
.rl-level-badge strong{font-weight:900;letter-spacing:.035em}.rl-level-dot{width:9px;height:9px;border-radius:50%;background:var(--lesson-level-accent);box-shadow:0 0 0 4px var(--lesson-level-soft)}
.rich-lesson .rl-step>h2{position:relative}.rich-lesson .rl-step>h2::after{content:"";display:inline-block;width:24px;height:3px;margin-left:9px;border-radius:999px;background:var(--lesson-level-accent);vertical-align:middle;opacity:.72}
.rich-lesson .rl-exercise-progress>span{background:linear-gradient(90deg,var(--lesson-level-accent),var(--leka-orange-2));box-shadow:0 0 18px var(--lesson-level-soft)}
.rich-lesson .rl-mode-intro{border-color:var(--lesson-level-border);background:linear-gradient(135deg,var(--lesson-level-soft),rgba(15,23,42,.08))}
.rich-lesson .rl-mode-intro strong{color:var(--lesson-level-accent)}
@media(max-width:640px){.rl-level-badge{margin-top:6px}.rich-lesson .rl-step>h2::after{width:18px}}
