:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;letter-spacing:.18px;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font:18px/145% system-ui,Segoe UI,Roboto,sans-serif}@media (width<=1024px){:root{font-size:16px}}html,body{min-height:100%;margin:0}body{background:radial-gradient(ellipse 640px 640px at 10% 12%, #0f766e17, transparent 60%), radial-gradient(ellipse 720px 720px at 92% 88%, #f973161f, transparent 60%), var(--color-surface-muted);background-attachment:fixed}#root{flex-direction:column;min-height:100svh;display:flex}:root{--color-primary:#0f766e;--color-primary-hover:#115e59;--color-primary-light:#f0fdfa;--color-accent:#f97316;--color-accent-dark:#9a3412;--color-accent-light:#fff7ed;--color-success:#166534;--color-success-bg:#f0fdf4;--color-success-border:#bbf7d0;--color-warning:#92400e;--color-warning-bg:#fffbeb;--color-warning-border:#fde68a;--color-danger:#b91c1c;--color-danger-bg:#fef2f2;--color-danger-border:#fecaca;--color-text-primary:#111827;--color-text-secondary:#6b7280;--color-text-muted:#9ca3af;--color-border:#e5e7eb;--color-surface:#fff;--color-surface-muted:#f9fafb;--radius-md:8px;--radius-lg:12px}.app{background:var(--color-surface-muted);width:100%;max-width:640px;min-height:100vh;color:var(--color-text-primary);box-sizing:border-box;flex-direction:column;margin:0 auto;padding:0 1rem;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:flex}@media (width>=768px){.app{max-width:720px}}@media (width>=1024px){.app{max-width:860px;padding:0 1.5rem}}@media (width>=1440px){.app{max-width:980px}}.app-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem;padding:1.25rem 0 1rem;display:flex}.app-header__leading{align-items:center;gap:.5rem;min-width:0;display:flex}.app-header__brand-block{min-width:0;color:inherit;text-decoration:none}.app-header__back{color:var(--color-primary);flex-shrink:0;padding:.2rem;font-size:1.4rem;line-height:1;text-decoration:none}.app-header__actions{flex-shrink:0;align-items:center;gap:.5rem;padding-top:.35rem;display:flex}.app-header__account{color:var(--color-primary);font-size:.85rem;text-decoration:none}.app-header__notifications{font-size:1.1rem;text-decoration:none;position:relative}.notification-badge{background:var(--color-danger);color:#fff;text-align:center;border-radius:999px;min-width:1rem;padding:.2rem .35rem;font-size:.65rem;font-weight:700;line-height:1;position:absolute;top:-.4rem;right:-.6rem}.streak-badge{color:var(--color-accent-dark);background:var(--color-accent-light);border-radius:999px;align-items:center;gap:.25rem;padding:.2rem .6rem;font-size:.85rem;font-weight:700;display:inline-flex}.app-header__brand{letter-spacing:.02em;color:var(--color-primary);font-size:2.25rem;font-weight:800;line-height:1.1;display:block}.app-header__tagline{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);margin-top:.15rem;font-size:.95rem;font-weight:500;display:block}@media (width<=400px){.app-header__brand{font-size:1.75rem}.app-header__tagline{font-size:.75rem}}.app-content{text-align:center;flex:1 0 auto;padding-bottom:2rem}.app-footer{text-align:center;color:var(--color-text-muted);border-top:1px solid var(--color-border);margin-top:auto;padding:1rem 0;font-size:.8rem}.tagline{color:var(--color-text-secondary);margin-top:-.5rem}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-align:left;margin:1rem 0;padding:1rem 1.25rem}.card h2{margin-top:0;font-size:1.1rem}.card input{border:1px solid var(--color-border);border-radius:6px;margin-right:.5rem;padding:.4rem .6rem}.card button{border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;cursor:pointer;border-radius:6px;padding:.4rem .9rem}.card button:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.card button:disabled{opacity:.6;cursor:default}button.button--secondary{border:1px solid var(--color-border);color:var(--color-text-secondary);background:0 0}button.button--secondary:hover:not(:disabled){background:var(--color-surface-muted);border-color:var(--color-text-muted);color:var(--color-text-primary)}.picker-row{gap:1.5rem;margin:1rem 0;display:flex}.picker-row label{color:var(--color-text-secondary);flex-direction:column;gap:.3rem;font-size:.9rem;display:flex}.picker-row select{border:1px solid var(--color-border);border-radius:6px;padding:.4rem .6rem}.error{color:var(--color-danger)}.progress{color:var(--color-text-secondary);font-size:.9rem}.passage{background:var(--color-surface-muted);border-radius:8px;padding:.75rem 1rem;font-style:italic}.options{margin:1rem 0;padding:0;list-style:none}.options li{margin:.4rem 0}.options label{cursor:pointer;align-items:center;gap:.6rem;display:flex}.level-badge{color:var(--color-accent);border:2px solid var(--color-accent);border-radius:999px;margin:1rem 0;padding:.5rem 1.5rem;font-size:2rem;font-weight:700;display:inline-block}.lesson-list{flex-direction:column;gap:.6rem;margin:1rem 0;padding:0;list-style:none;display:flex}.lesson-item{border:1px solid var(--color-border);border-radius:8px;padding:.75rem 1rem}.lesson-item a{color:var(--color-primary);font-weight:500;text-decoration:none}.lesson-item--locked{color:var(--color-text-muted)}.lesson-item--completed{background:var(--color-success-bg);border-color:var(--color-success-border)}.annotation-note{color:var(--color-text-secondary);margin:.35rem 0 0;font-size:.85rem;font-style:italic}.progress-bar{background:var(--color-border);border-radius:999px;height:8px;margin:.5rem 0 1rem;overflow:hidden}.progress-bar__fill{background:var(--color-accent);border-radius:999px;height:100%;transition:width .3s}.lesson-complete-card{background:var(--color-accent-light);border:1px solid var(--color-accent);border-radius:var(--radius-lg);text-align:center;padding:1.25rem}.lesson-complete-card h2{color:var(--color-accent-dark);margin-top:0}.pacing-message{border:1px solid;border-radius:8px;margin:1rem 0;padding:.75rem 1rem}.pacing-message--confortable{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success)}.pacing-message--soutenu{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning)}.pacing-message--intensif{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger)}
