.lesson-viewer{max-width:800px;margin:0 auto;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.lesson-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e5e7eb}.lesson-title{font-size:2.5rem;font-weight:700;color:#1f2937;margin:0 0 1rem;line-height:1.2}.lesson-subtitle{font-size:1.25rem;color:#6b7280;margin:0 0 1.5rem;line-height:1.5}.lesson-objectif{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.lesson-objectif h3{font-size:1.125rem;font-weight:600;color:#166534;margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.lesson-objectif h3:before{content:"🎯";font-size:1.25rem}.lesson-objectif p{color:#166534;margin:0;line-height:1.6}.lesson-meta{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.duration{background:#fef3c7;color:#92400e;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:.5rem}.premium-badge{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#78350f;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 4px #fbbf244d}.lesson-content{margin:2rem 0}.content-html{line-height:1.7;color:#374151}.content-html h1{font-size:2rem;font-weight:700;color:#1f2937;margin:2rem 0 1rem;line-height:1.3;border-bottom:3px solid #A87D5A;padding-bottom:.5rem}.content-html h2{font-size:1.5rem;font-weight:600;color:#374151;margin:1.75rem 0 1rem;line-height:1.4;border-left:4px solid #A87D5A;padding-left:1rem}.content-html h3{font-size:1.25rem;font-weight:600;color:#4b5563;margin:1.5rem 0 .75rem;line-height:1.4}.content-html p{margin:1rem 0;line-height:1.7}.content-html strong{font-weight:600;color:#1f2937;background:linear-gradient(135deg,#fef3c7,#fde68a);padding:.125rem .25rem;border-radius:4px}.content-html em{font-style:italic;color:#4b5563;background:#f3f4f6;padding:.125rem .25rem;border-radius:4px}.content-html u{text-decoration:underline;text-decoration-color:#a87d5a;text-decoration-thickness:2px}.content-html ul,.content-html ol{margin:1rem 0;padding-left:2rem}.content-html li{margin:.5rem 0;line-height:1.6}.content-html ul li::marker{color:#a87d5a;font-size:1.2rem}.content-html ol li::marker{color:#a87d5a;font-weight:600}.content-html blockquote{border-left:4px solid #A87D5A;margin:1.5rem 0;padding:1rem 1.5rem;background:linear-gradient(135deg,#fafafa,#f3f4f6);border-radius:0 8px 8px 0;font-style:italic;color:#4b5563}.content-html blockquote p{margin:0}.content-html code{background:#1f2937;color:#f9fafb;padding:.25rem .5rem;border-radius:6px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem;box-shadow:0 2px 4px #0000001a}.content-html a{color:#a87d5a;text-decoration:underline;text-decoration-color:#a87d5a;font-weight:500;transition:all .2s}.content-html a:hover{color:#9d6f4a;text-decoration-color:#9d6f4a}.content-html p[style*="text-align: center"]{text-align:center}.content-html p[style*="text-align: right"]{text-align:right}.lesson-description{margin-top:2rem;padding:1.5rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px}.lesson-description h3{font-size:1.125rem;font-weight:600;color:#374151;margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.lesson-description h3:before{content:"📝";font-size:1.25rem}.lesson-description p{color:#6b7280;margin:0;line-height:1.6}@media(max-width:768px){.lesson-viewer{padding:1rem}.lesson-title{font-size:2rem}.lesson-subtitle{font-size:1.125rem}.content-html h1{font-size:1.75rem}.content-html h2{font-size:1.375rem}.content-html h3{font-size:1.125rem}}:root{--color-primary: #3B82F6;--color-primary-hover: #2563EB;--color-primary-light: rgba(59, 130, 246, .1);--color-dark: #1a1a1a;--color-dark-lighter: #333;--color-dark-light: #444;--color-gray: #6b7280;--color-gray-light: #9ca3af;--color-gray-lighter: #a1a1a1;--color-gray-lightest: #f5f5f5;--color-white: #ffffff;--color-danger: #dc2626;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-weight:400;line-height:1.6;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;padding:0;background-color:var(--color-gray-lightest);color:var(--color-dark);min-height:100vh}.card{background:var(--color-white);border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:1.5rem;margin-bottom:1.5rem;transition:all .3s ease}.card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-1px)}.sticky-filters{position:sticky!important;top:57px!important;z-index:10!important;box-shadow:0 2px 8px #0000001a!important;margin-bottom:1.5rem}.sticky-filters:hover{transform:none!important;box-shadow:0 2px 8px #0000001a!important}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.875rem;font-weight:600;color:var(--color-dark);margin-bottom:.5rem;letter-spacing:.025em}.form-control{width:100%;padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:.9rem;background:var(--color-white);color:var(--color-dark);transition:all .3s ease}.form-control:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-control::placeholder{color:var(--color-gray-light)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.875rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s ease;letter-spacing:.025em}.btn-primary{background:var(--color-primary);color:var(--color-white);box-shadow:0 4px 6px -1px #3b82f64d}.btn-primary:hover{background:var(--color-primary-hover);box-shadow:0 6px 8px -1px #3b82f666;transform:translateY(-1px);color:#fff}.btn-danger:hover{background:#c82333}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#545b62}.table{width:100%;border-collapse:collapse;margin:1rem 0}.table th,.table td{padding:.75rem;text-align:left;border-bottom:1px solid #dee2e6}.table th{font-weight:600;background:#f8f9fa}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-control{width:100%;padding:.375rem .75rem;border:1px solid #ced4da;border-radius:4px;font-size:1rem}.form-control:focus{border-color:#007bff;outline:0;box-shadow:0 0 0 .2rem #007bff40}.text-danger{color:#dc3545}.text-success{color:#28a745}.loading{display:inline-block;width:20px;height:20px;border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}body{background-color:#f8f9fa}}
