.navbar{width:100%;max-width:100vw;background:#23272f;color:#f3f3f3;box-shadow:0 2px 8px #0000001f;position:sticky;top:0;z-index:1000;display:flex;justify-content:center;overflow:visible;box-sizing:border-box;height:70px;min-height:70px;max-height:70px}.navbar__container{width:100%;max-width:1200px;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;box-sizing:border-box;flex-direction:row!important;direction:ltr!important;text-align:left!important;height:70px;flex-shrink:0;margin:0 auto}.navbar__logo{display:flex;align-items:center;gap:.75rem;font-size:1.5rem;font-weight:700;color:#f3f3f3;text-decoration:none;margin-left:1rem;margin-right:0;direction:ltr!important;text-align:left!important;cursor:pointer;transition:opacity .3s ease}.navbar__logo:hover{opacity:.9}.navbar__logo-image{height:clamp(32px,8vw,65px);width:auto;object-fit:contain;border-radius:4px;transition:transform .3s ease,height .3s ease}.navbar__logo-image:hover{transform:scale(1.05)}.navbar__logo-text{color:#f3f3f3;font-size:1.5rem;font-weight:700;margin:0;display:block;direction:ltr!important;text-align:left!important}.navbar__hamburger{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:.5rem;gap:.25rem;z-index:1001}.navbar__hamburger span{width:25px;height:3px;background:#f3f3f3;transition:all .3s ease;transform-origin:center}.navbar__hamburger.open span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.navbar__hamburger.open span:nth-child(2){opacity:0}.navbar__hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.navbar__links{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:2rem;direction:ltr!important;text-align:left!important;flex-shrink:0}.navbar__links li{margin:0;direction:ltr!important;text-align:left!important}.navbar__links a{color:#f3f3f3;text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:6px;transition:all .3s ease;font-size:1rem;direction:ltr!important;text-align:left!important}.navbar__links a:hover{background:#ffffff1a;color:#fff}.navbar__controls{display:flex;align-items:center;gap:1rem;direction:ltr!important;text-align:left!important;flex-shrink:0;max-width:300px;width:auto;justify-content:flex-end;overflow:visible}@media (min-width: 769px){.navbar__controls{display:flex!important;overflow:visible!important}}.navbar__auth-buttons{display:flex;align-items:center;gap:.5rem;flex-shrink:0;min-width:140px}.navbar__auth-btn{padding:.6rem 1rem;margin:.3rem;border-radius:6px;text-decoration:none;font-weight:600;font-size:.85rem;transition:all .3s ease;border:2px solid transparent;min-width:70px;max-width:100px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.navbar__auth-btn.login{color:#f3f3f3;border-color:#ffffff4d}.navbar__auth-btn.login:hover{background:#ffffff1a;border-color:#ffffff80}.navbar__auth-btn.signup{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.navbar__auth-btn.signup:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea4d}.navbar__user-menu{position:relative;min-width:200px;max-width:250px;flex-shrink:0;overflow:visible}.navbar__user-trigger{display:flex;align-items:center;gap:.75rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:.6rem 1rem;cursor:pointer;transition:all .3s ease;color:#f3f3f3;font-size:.9rem;width:100%;min-width:0}.navbar__user-trigger:hover{background:#ffffff26;border-color:#ffffff4d;transform:translateY(-1px)}.navbar__user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:#fff;flex-shrink:0}.navbar__user-info{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.navbar__user-name{font-weight:600;font-size:.9rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.navbar__user-role{font-size:.75rem;opacity:.8;line-height:1;margin-top:.1rem;color:#cbd5e0}.navbar__dropdown-arrow{font-size:.7rem;transition:transform .3s ease;opacity:.7;flex-shrink:0}.navbar__dropdown-arrow.open{transform:rotate(180deg)}.navbar__user-dropdown{position:fixed;top:75px;right:50px;background:#fff;border-radius:12px;box-shadow:0 10px 30px #0003;padding:.5rem;min-width:160px;z-index:9999;border:1px solid rgba(0,0,0,.1)}.navbar__dropdown-item{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border:none;background:transparent;border-radius:8px;cursor:pointer;transition:all .3s ease;font-size:.85rem;font-weight:500;color:#2d3748;text-align:left}.navbar__dropdown-item:hover{background:#f7fafc;transform:translate(2px)}.navbar__dropdown-item.dashboard{color:#667eea}.navbar__dropdown-item.dashboard:hover{background:#667eea1a}.navbar__dropdown-item.logout{color:#e53e3e}.navbar__dropdown-item.logout:hover{background:#e53e3e1a}.dropdown-icon{font-size:.9rem;flex-shrink:0}.navbar__user-menu-overlay{position:fixed;inset:0;z-index:999}.navbar__auth-mobile,.navbar__user-mobile,.navbar__dashboard-btn-mobile,.navbar__logout-btn-mobile{display:none}.navbar__user-info-mobile{display:flex;align-items:center;gap:1rem;padding:0 1rem}.navbar__user-avatar-mobile{width:45px;height:45px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;color:#fff}.navbar__user-details-mobile{display:flex;flex-direction:column}.navbar__user-name-mobile{font-weight:600;font-size:1rem;color:#f3f3f3}.navbar__user-role-mobile{font-size:.85rem;opacity:.8;color:#f3f3f3}.navbar__dashboard-btn-mobile,.navbar__logout-btn-mobile{width:100%;padding:.75rem 1rem;border:none;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease;margin:.25rem 0}.navbar__dashboard-btn-mobile{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.navbar__logout-btn-mobile{background:#e53e3e1a;color:#e53e3e;border:1px solid rgba(229,62,62,.3)}.navbar__dashboard-btn-mobile:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea4d}.navbar__logout-btn-mobile:hover{background:#e53e3e33}.navbar__language-toggle{background:#ffffff1a;color:#f3f3f3;border:1px solid rgba(255,255,255,.2);padding:.5rem 1rem;border-radius:8px;cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:500;direction:ltr!important;text-align:center!important;min-width:80px;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.navbar__language-toggle:hover{background:#ffffff26;border-color:#ffffff4d}.navbar__language-mobile{display:none}.navbar__language-desktop{display:block}.navbar__overlay{display:none}@media (max-width: 768px){.navbar__container{padding:.5rem 1rem}.navbar__hamburger{display:flex}.navbar__links{position:fixed;top:0;right:-100%;width:280px;height:100vh;background:#1a1e23;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:5rem 0 2rem;gap:0;transition:right .3s ease;overflow-y:auto;z-index:1000;box-shadow:-5px 0 15px #0000004d}.navbar__links.open{right:0}.navbar__links li{width:100%;margin:0}.navbar__links a{display:block;width:100%;padding:1rem 2rem;border-radius:0;border-bottom:1px solid rgba(255,255,255,.1)}.navbar__controls{display:none}.navbar__auth-mobile{display:block}.navbar__user-mobile{display:block;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.navbar__dashboard-btn-mobile,.navbar__logout-btn-mobile{display:block}.navbar__language-mobile{display:block;width:100%;padding:1rem 2rem;border-top:1px solid rgba(255,255,255,.1)}.navbar__language-desktop{display:none}.navbar__overlay{display:block;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:999}}@media (max-width: 480px){.navbar__container{padding:.5rem}.navbar__logo{margin-left:.5rem}.navbar__logo-text{font-size:1.2rem}.navbar__links{width:100%;right:-100%}.navbar__user-info-mobile{padding:0 1.5rem}.navbar__links a,.navbar__language-mobile{padding:1rem 1.5rem}}.footer{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;margin-top:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.footer-container{max-width:1200px;margin:0 auto;padding:0 20px}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding:60px 0 40px;border-bottom:1px solid rgba(255,255,255,.1)}.footer-brand{max-width:350px}.footer-logo{display:flex;align-items:center;gap:16px;margin-bottom:20px}.logo-image{width:50px;height:50px;border-radius:12px;object-fit:cover}.brand-info h3{margin:0 0 4px;font-size:24px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.brand-info p{margin:0;font-size:14px;opacity:.8;font-style:italic}.brand-description{margin:0 0 24px;line-height:1.6;color:#cbd5e1;font-size:14px}.social-links{display:flex;gap:12px}.social-link{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#ffffff1a;border-radius:12px;color:#fff;text-decoration:none;transition:all .3s ease;font-size:18px}.social-link:hover{transform:translateY(-2px);box-shadow:0 8px 25px #ffffff1a}.social-link.whatsapp:hover{background:#25d366}.social-link.youtube:hover{background:red}.social-link.twitter:hover{background:#1da1f2}.social-link.linkedin:hover{background:#0077b5}.footer-section{display:flex;flex-direction:column}.footer-section h4{margin:0 0 20px;font-size:18px;font-weight:600;color:#fff;position:relative}.footer-section h4:after{content:"";position:absolute;bottom:-8px;left:0;width:30px;height:2px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:2px}.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.footer-link{color:#cbd5e1;text-decoration:none;font-size:14px;transition:all .2s ease;background:none;border:none;padding:0;text-align:left;cursor:pointer;line-height:1.4}.footer-link:hover{color:#667eea;transform:translate(4px)}.payment-methods{padding:30px 0;border-bottom:1px solid rgba(255,255,255,.1);text-align:center}.payment-methods h4{margin:0 0 20px;font-size:16px;font-weight:600;color:#cbd5e1}.payment-icons{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.payment-icon{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;transition:all .2s ease;min-width:80px}.payment-icon:hover{background:#ffffff1a;transform:translateY(-2px)}.payment-icon span{font-size:20px}.payment-icon small{font-size:11px;font-weight:600;color:#cbd5e1;text-transform:uppercase;letter-spacing:.5px}.payment-icon.mada:hover{border-color:#10b981;box-shadow:0 4px 12px #10b98133}.payment-icon.visa:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f633}.payment-icon.mastercard:hover{border-color:#ef4444;box-shadow:0 4px 12px #ef444433}.payment-icon.applepay:hover{border-color:#6b7280;box-shadow:0 4px 12px #6b728033}.payment-icon.stcpay:hover{border-color:#8b5cf6;box-shadow:0 4px 12px #8b5cf633}.footer-bottom{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.1)}.footer-bottom-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.copyright{flex:1}.copyright p{margin:0;font-size:14px;color:#94a3b8;line-height:1.5}.copyright strong{color:#fff;font-weight:600}.footer-meta{display:flex;align-items:center;gap:20px;font-size:13px;color:#94a3b8}.current-language{background:#ffffff1a;padding:4px 12px;border-radius:16px;font-weight:500}.platform-info{display:flex;align-items:center;gap:8px}.separator{color:#64748b}.trust-section{padding:24px 0;text-align:center}.trust-items{display:flex;justify-content:center;gap:32px;flex-wrap:wrap}.trust-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#94a3b8;font-weight:500}.trust-icon{font-size:16px}.footer.rtl{direction:rtl}.footer.rtl .footer-section h4:after{left:auto;right:0}.footer.rtl .footer-link:hover{transform:translate(-4px)}.footer.rtl .footer-logo,.footer.rtl .trust-item{flex-direction:row-reverse}@media (max-width: 768px){.footer-main{grid-template-columns:1fr;gap:32px;padding:40px 0 30px}.footer-brand{max-width:none;text-align:center}.footer-logo,.social-links{justify-content:center}.footer-section{text-align:center}.footer-section h4:after{left:50%;transform:translate(-50%)}.footer.rtl .footer-section h4:after{right:50%;transform:translate(50%)}.payment-icons{gap:12px}.payment-icon{min-width:70px;padding:10px 12px}.footer-bottom-content{flex-direction:column;text-align:center;gap:12px}.footer-meta{flex-direction:column;gap:8px}.trust-items{gap:20px}.trust-item{font-size:12px}}@media (max-width: 480px){.footer-container{padding:0 16px}.footer-main{padding:30px 0 20px}.brand-info h3{font-size:20px}.payment-icons{grid-template-columns:repeat(3,1fr);gap:8px}.payment-icon{min-width:60px;padding:8px 10px}.payment-icon span{font-size:18px}.trust-items{grid-template-columns:repeat(2,1fr);gap:16px}}@media (prefers-contrast: high){.footer{background:#000;border-top:3px solid #fff}.footer-link:hover{background:#fff;color:#000;padding:2px 6px;border-radius:4px}.payment-icon{border-width:2px}}@media (prefers-reduced-motion: reduce){.social-link:hover,.payment-icon:hover,.footer-link:hover{transform:none}.social-link,.payment-icon,.footer-link{transition:none}}@media print{.footer{background:#fff!important;color:#000!important}.social-links,.payment-methods,.trust-section{display:none}.footer-main{grid-template-columns:1fr 1fr;gap:20px}}.home-page{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#e2e8f0)}.hero-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:6rem 0;position:relative;overflow:hidden}.hero-section:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="20" cy="20" r="2" fill="white" opacity="0.1"/><circle cx="80" cy="80" r="3" fill="white" opacity="0.05"/><circle cx="40" cy="60" r="1" fill="white" opacity="0.1"/></svg>');animation:float 20s infinite}.hero-container{max-width:1400px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;position:relative;z-index:1}.hero-content{text-align:left}.hero-title{font-size:4rem;font-weight:800;margin-bottom:1.5rem;line-height:1.2;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.hero-subtitle{font-size:1.4rem;opacity:.95;margin-bottom:3rem;line-height:1.6;max-width:500px}.hero-stats{display:flex;gap:3rem;margin-bottom:3rem}.hero-actions{display:flex;gap:1.5rem}.hero-cta{padding:1.2rem 2.5rem;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.hero-cta.primary{background:linear-gradient(135deg,#ed8936,#f6ad55);color:#fff}.hero-cta.primary:hover{transform:translateY(-3px);box-shadow:0 12px 30px #ed893666}.hero-cta.secondary{background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-cta.secondary:hover{background:#ffffff4d;transform:translateY(-2px)}.hero-illustration{position:relative;height:400px;display:flex;align-items:center;justify-content:center}.floating-card{position:absolute;background:#ffffff26;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);padding:1.5rem;border-radius:20px;text-align:center;animation:floatCard 6s ease-in-out infinite}.floating-card.card-1{top:10%;left:10%;animation-delay:0s}.floating-card.card-2{top:60%;right:20%;animation-delay:2s}.floating-card.card-3{bottom:20%;left:30%;animation-delay:4s}@keyframes floatCard{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.card-icon{font-size:2rem;margin-bottom:.5rem}.card-text{font-size:.9rem;font-weight:600;white-space:nowrap}.features-section{padding:6rem 0;background:#fff}.features-container{max-width:1400px;margin:0 auto;padding:0 2rem}.section-header{text-align:center;margin-bottom:4rem}.section-header h2{font-size:3rem;font-weight:700;color:#2d3748;margin-bottom:1rem}.section-header p{font-size:1.2rem;color:#718096;max-width:600px;margin:0 auto}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2.5rem}.feature-card{background:linear-gradient(135deg,#f8fafc,#edf2f7);padding:3rem 2rem;border-radius:20px;text-align:center;transition:all .4s ease;border:1px solid #e2e8f0;position:relative;overflow:hidden}.feature-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001a;background:linear-gradient(135deg,#fff,#f8fafc)}.feature-icon{font-size:4rem;margin-bottom:1.5rem}.feature-card h3{font-size:1.5rem;font-weight:700;color:#2d3748;margin-bottom:1rem}.feature-card p{color:#718096;line-height:1.6;margin-bottom:1.5rem}.feature-highlight{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600;display:inline-block}.how-it-works-section{padding:6rem 0;background:linear-gradient(135deg,#f7fafc,#edf2f7)}.how-it-works-container{max-width:1400px;margin:0 auto;padding:0 2rem}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem}.step-card{background:#fff;padding:3rem 2rem;border-radius:20px;text-align:center;position:relative;box-shadow:0 10px 30px #00000014;transition:all .3s ease}.step-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #0000001f}.step-number{position:absolute;top:-1.5rem;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;width:3rem;height:3rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700}.step-icon{font-size:3rem;margin-bottom:1.5rem}.step-card h3{font-size:1.4rem;font-weight:700;color:#2d3748;margin-bottom:1rem}.step-card p{color:#718096;line-height:1.6}.instructors-section{padding:6rem 0;background:linear-gradient(135deg,#2d3748,#4a5568);color:#fff}.instructors-container{max-width:1400px;margin:0 auto;padding:0 2rem}.instructors-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.instructors-text h2{font-size:3rem;font-weight:700;margin-bottom:1.5rem}.instructors-text p{font-size:1.2rem;opacity:.9;margin-bottom:2rem;line-height:1.6}.instructors-benefits{list-style:none;padding:0;margin-bottom:3rem}.instructors-benefits li{padding:.75rem 0 .75rem 2rem;position:relative;font-size:1.1rem}.instructors-benefits li:before{content:"✓";position:absolute;left:0;color:#68d391;font-weight:700}.instructors-cta{background:linear-gradient(135deg,#ed8936,#f6ad55);color:#fff;border:none;padding:1.2rem 2.5rem;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.instructors-cta:hover{transform:translateY(-3px);box-shadow:0 12px 30px #ed893666}.instructors-visual{display:flex;justify-content:center}.instructor-placeholder{background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);padding:2rem;border-radius:20px;text-align:center;max-width:300px;display:flex;flex-direction:column;align-items:center;gap:1rem}.placeholder-icon{font-size:4rem;margin-bottom:.5rem}.placeholder-text h4{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:#fff}.placeholder-text p{opacity:.8;margin:0;color:#fff}.final-cta-section{padding:6rem 0;background:#fff}.final-cta-container{max-width:1000px;margin:0 auto;padding:0 2rem}.final-cta-content{text-align:center}.final-cta-content h2{font-size:3rem;font-weight:700;color:#2d3748;margin-bottom:1.5rem}.final-cta-content p{font-size:1.2rem;color:#718096;margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto}.final-cta-actions{display:flex;justify-content:center;gap:1.5rem;margin-bottom:3rem}.final-cta-btn{padding:1.2rem 2.5rem;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.final-cta-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.final-cta-btn.primary:hover{transform:translateY(-3px);box-shadow:0 12px 30px #667eea66}.final-cta-btn.secondary{background:transparent;color:#667eea;border:2px solid #667eea}.final-cta-btn.secondary:hover{background:#667eea;color:#fff;transform:translateY(-2px)}.trust-indicators{display:flex;justify-content:center;gap:3rem;margin-top:3rem}.trust-item{display:flex;align-items:center;gap:.5rem;color:#718096;font-weight:500}.trust-icon{font-size:1.2rem}@media (max-width: 1024px){.hero-container{grid-template-columns:1fr;text-align:center;gap:3rem}.hero-content{text-align:center}.instructors-content{grid-template-columns:1fr;text-align:center}}@media (max-width: 768px){.hero-section{padding:4rem 0}.hero-title{font-size:2.8rem}.hero-stats{flex-direction:column;gap:1.5rem}.hero-actions{flex-direction:column;align-items:center}.hero-cta{width:100%;max-width:300px}.section-header h2{font-size:2.5rem}.features-grid,.steps-grid{grid-template-columns:1fr;gap:2rem}.floating-card{display:none}.final-cta-actions{flex-direction:column;align-items:center}.final-cta-btn{width:100%;max-width:300px}.trust-indicators{flex-direction:column;gap:1.5rem}}@media (max-width: 480px){.hero-title{font-size:2.2rem}.section-header h2{font-size:2rem}.instructors-text h2,.final-cta-content h2{font-size:2.2rem}.feature-card,.step-card{padding:2rem 1.5rem}}.courses-page{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#e2e8f0)}.courses-container{max-width:1400px;margin:0 auto;padding:0 2rem}.courses-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4rem 0;border-radius:0 0 30px 30px;margin:0 -2rem 3rem;text-align:center;position:relative;overflow:hidden}.courses-header:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="20" cy="20" r="2" fill="white" opacity="0.1"/><circle cx="80" cy="80" r="3" fill="white" opacity="0.05"/><circle cx="40" cy="60" r="1" fill="white" opacity="0.1"/></svg>');animation:float 20s infinite}.header-content h1{font-size:3.5rem;font-weight:800;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.header-content p{font-size:1.3rem;opacity:.95;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}.header-stats{display:flex;justify-content:center;gap:3rem;margin-top:2rem}.stat{text-align:center}.stat-number{display:block;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.loading-state,.error-state,.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;margin:2rem 0}.loading-spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.error-icon,.empty-icon{font-size:4rem;margin-bottom:1rem}.error-state h3,.empty-state h3{color:#2d3748;margin-bottom:1rem;font-size:1.5rem}.error-state p,.empty-state p{color:#718096;font-size:1.1rem;margin-bottom:1.5rem}.retry-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 2rem;border-radius:10px;font-weight:600;cursor:pointer;transition:transform .3s ease}.retry-btn:hover{transform:translateY(-2px)}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:2rem;margin-bottom:4rem}.course-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #00000014;transition:all .4s ease;height:100%}.course-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000026}.course-card-inner{height:100%;display:flex;flex-direction:column}.course-image{height:200px;position:relative;overflow:hidden;background:linear-gradient(135deg,#f7fafc,#edf2f7)}.course-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.course-card:hover .course-image img{transform:scale(1.05)}.course-badge{position:absolute;top:1rem;right:1rem}.badge{padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.badge.free{background:linear-gradient(135deg,#38a169,#68d391);color:#fff}.badge.paid{background:linear-gradient(135deg,#ed8936,#f6ad55);color:#fff}.course-content{padding:1.5rem;flex:1;display:flex;flex-direction:column}.course-meta{display:flex;gap:.5rem;margin-bottom:1rem}.course-language,.course-audience{background:#f7fafc;color:#4a5568;padding:.3rem .8rem;border-radius:15px;font-size:.8rem;font-weight:500}.course-title{font-size:1.3rem;font-weight:700;color:#2d3748;margin-bottom:1rem;line-height:1.4;min-height:2.8rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-description{color:#718096;line-height:1.6;margin-bottom:1.5rem;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.instructor-info{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:#f8fafc;border-radius:12px}.instructor-avatar{font-size:2rem}.instructor-label{font-size:.8rem;color:#718096;text-transform:uppercase;letter-spacing:.5px}.instructor-name{font-weight:600;color:#2d3748}.course-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem}.course-price{display:flex;flex-direction:column;gap:.25rem}.price-label{font-size:.8rem;color:#718096;text-transform:uppercase;letter-spacing:.5px}.price-value{font-size:1.3rem;font-weight:700;color:#38a169;display:flex;align-items:center;gap:.5rem}.original-price{font-size:.9rem;color:#a0aec0;text-decoration:line-through;font-weight:400}.course-cta{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 1.5rem;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;text-transform:uppercase;letter-spacing:.5px;font-size:.9rem}.course-cta:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.cta-arrow{transition:transform .3s ease}.course-cta:hover .cta-arrow{transform:translate(3px)}.courses-cta-section{background:linear-gradient(135deg,#2d3748,#4a5568);color:#fff;padding:4rem 2rem;border-radius:20px;text-align:center;margin:4rem 0}.cta-content h2{font-size:2.5rem;margin-bottom:1rem;font-weight:700}.cta-content p{font-size:1.2rem;opacity:.9;margin-bottom:2rem}.cta-button{background:linear-gradient(135deg,#ed8936,#f6ad55);color:#fff;border:none;padding:1.2rem 3rem;border-radius:15px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.cta-button:hover{transform:translateY(-3px);box-shadow:0 12px 30px #ed893666}@media (max-width: 768px){.courses-container{padding:0 1rem}.courses-header{margin:0 -1rem 2rem;padding:3rem 1rem}.header-content h1{font-size:2.5rem}.header-stats{flex-direction:column;gap:1.5rem}.courses-grid{grid-template-columns:1fr;gap:1.5rem}.course-footer{flex-direction:column;align-items:stretch;gap:1rem}.course-cta{width:100%;justify-content:center}.cta-content h2{font-size:2rem}}@media (max-width: 480px){.header-content h1{font-size:2rem}.header-content p{font-size:1.1rem}.course-content{padding:1.25rem}.instructor-info{padding:.75rem}}.course-details-page{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#e2e8f0)}#study-video-section{transition:all .3s ease;scroll-margin-top:20px}#study-video-section.lesson-changed{animation:lessonHighlight 1s ease-out}@keyframes lessonHighlight{0%{background-color:#667eea1a;transform:scale(1.02)}to{background-color:transparent;transform:scale(1)}}.course-details-container{max-width:1400px;margin:0 auto;padding:4rem 2rem}.loading-state,.error-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a}.loading-spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 2rem}.error-state h3{color:#2d3748;margin-bottom:1rem;font-size:2rem}.error-state p{color:#718096;margin-bottom:2rem;font-size:1.1rem}.back-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-weight:600;cursor:pointer;transition:transform .3s ease}.back-btn:hover{transform:translateY(-2px)}.course-hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4rem 0 6rem;position:relative;overflow:hidden}.course-hero:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="20" cy="20" r="2" fill="white" opacity="0.1"/><circle cx="80" cy="80" r="3" fill="white" opacity="0.05"/><circle cx="40" cy="60" r="1" fill="white" opacity="0.1"/></svg>');animation:float 20s infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.course-hero-container{max-width:1400px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:2fr 1fr;gap:4rem;align-items:start;position:relative;z-index:1}.course-hero-content{padding-top:2rem}.course-breadcrumb{font-size:.9rem;margin-bottom:1.5rem;opacity:.9}.course-breadcrumb span:first-child{cursor:pointer;text-decoration:underline}.breadcrumb-separator{margin:0 .5rem}.course-badges{display:flex;gap:1rem;margin-bottom:2rem}.course-badge{padding:.5rem 1rem;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.course-badge.free{background:linear-gradient(135deg,#38a169,#68d391)}.course-badge.paid{background:linear-gradient(135deg,#ed8936,#f6ad55)}.course-badge.category{background:#fff3;border:1px solid rgba(255,255,255,.3)}.course-hero-title{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;line-height:1.2;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.course-hero-subtitle{font-size:1.3rem;opacity:.95;margin-bottom:3rem;line-height:1.6}.course-instructor-info{display:flex;align-items:center;gap:1rem;margin-bottom:3rem;padding:1.5rem;background:#ffffff26;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.instructor-avatar{font-size:3rem}.instructor-details{display:flex;flex-direction:column}.instructor-label{font-size:.9rem;opacity:.8;text-transform:uppercase;letter-spacing:.5px}.instructor-name{font-size:1.2rem;font-weight:600}.course-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.stat{text-align:center;background:#ffffff1a;padding:1.5rem 1rem;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-icon{font-size:2rem;display:block;margin-bottom:.5rem}.stat-value{display:block;font-size:2rem;font-weight:700;margin-bottom:.5rem}.stat-label{font-size:.9rem;opacity:.9;text-transform:uppercase;letter-spacing:.5px}.course-hero-sidebar{margin-top:2rem}.course-preview-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 20px 40px #00000026;position:sticky;top:2rem}.preview-image{height:200px;background:linear-gradient(135deg,#f7fafc,#edf2f7);position:relative;overflow:hidden}.preview-image img{width:100%;height:100%;object-fit:cover}.image-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#a0aec0}.placeholder-icon{font-size:3rem;margin-bottom:.5rem}.preview-content{padding:2rem}.price-section{margin-bottom:2rem;text-align:center}.current-price{font-size:2.5rem;font-weight:700;color:#38a169}.original-price{font-size:1.2rem;color:#a0aec0;text-decoration:line-through;margin-left:.5rem}.enrollment-section{margin-bottom:2rem}.action-btn{width:100%;padding:1.2rem 2rem;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;text-transform:uppercase;letter-spacing:.5px}.action-btn.enroll-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.action-btn.enrolled{background:linear-gradient(135deg,#38a169,#68d391);color:#fff}.action-btn.login-required{background:linear-gradient(135deg,#ed8936,#f6ad55);color:#fff}.action-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0003}.btn-icon{font-size:1.2rem}.role-note{width:100%;padding:1rem;border-radius:12px;text-align:center;display:flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600}.role-note.instructor{background:linear-gradient(135deg,#3182ce,#63b3ed);color:#fff}.role-note.admin{background:linear-gradient(135deg,#805ad5,#b794f6);color:#fff}.note-icon{font-size:1.2rem}.features-list{border-top:1px solid #e2e8f0;padding-top:2rem}.feature-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;color:#4a5568}.feature-icon{font-size:1.2rem}.course-content{background:#fff;margin-top:-3rem;position:relative;z-index:2;border-radius:30px 30px 0 0}.course-content-container{max-width:1400px;margin:0 auto;padding:3rem 2rem}.course-tabs{display:flex;gap:0;margin-bottom:3rem;background:#f7fafc;border-radius:15px;padding:.5rem}.tab-btn{flex:1;padding:1rem 2rem;border:none;background:transparent;color:#718096;font-weight:600;border-radius:12px;cursor:pointer;transition:all .3s ease}.tab-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea4d}.tab-btn:hover:not(.active){background:#e2e8f0;color:#4a5568}.tab-content{min-height:400px}.study-content{opacity:0;transform:translateY(-20px);transition:all .5s cubic-bezier(.4,0,.2,1);max-height:0;overflow:hidden}.study-content.slide-in{opacity:1;transform:translateY(0);max-height:5000px;transition:all .6s cubic-bezier(.4,0,.2,1)}.overview-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.course-description h2,.what-you-learn h2{font-size:2rem;font-weight:700;color:#2d3748;margin-bottom:1.5rem}.course-description p{color:#718096;line-height:1.6;font-size:1.1rem}.learning-objectives{display:flex;flex-direction:column;gap:1rem}.objective-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f8fafc;border-radius:12px;border-left:4px solid #38a169}.objective-icon{color:#38a169;font-weight:700;font-size:1.2rem}.curriculum-content{max-width:1000px}.curriculum-header{text-align:center;margin-bottom:3rem}.curriculum-header h2{font-size:2.5rem;font-weight:700;color:#2d3748;margin-bottom:1rem}.curriculum-header p{color:#718096;font-size:1.2rem}.chapters-list{display:flex;flex-direction:column;gap:1.5rem}.chapter-card{background:#f8fafc;border-radius:15px;overflow:hidden;border:1px solid #e2e8f0}.chapter-header{padding:2rem;background:#fff;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}.chapter-header:hover{background:#f7fafc}.chapter-info{display:flex;flex-direction:column;gap:.5rem}.chapter-number{font-size:.9rem;color:#667eea;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.chapter-title{font-size:1.4rem;font-weight:700;color:#2d3748;margin:0}.chapter-meta{font-size:.9rem;color:#718096}.chapter-toggle{background:#f7fafc;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.chapter-toggle.expanded{background:#667eea;color:#fff;transform:rotate(180deg)}.toggle-icon{font-size:1.2rem}.lessons-list{padding:0 2rem 2rem}.lesson-item{background:#fff;padding:.75rem 1rem;border-radius:8px;margin-bottom:.5rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:all .3s ease;border:1px solid #e2e8f0}.lesson-item:hover{background:#f7fafc;transform:translate(5px)}.lesson-item.locked{opacity:.6}.lesson-item.locked:hover{background:#fff5f5;border-color:#fed7d7}.lesson-info{display:flex;align-items:center;gap:.75rem;flex:1}.lesson-number{background:#667eea;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.8rem}.lesson-details{flex:1}.lesson-title{font-size:1rem;font-weight:600;color:#2d3748;margin:0 0 .2rem}.lesson-description{color:#718096;font-size:.85rem;margin:0;line-height:1.4}.lesson-meta{display:flex;align-items:center;gap:.75rem}.lesson-duration{background:#e2e8f0;color:#4a5568;padding:.25rem .75rem;border-radius:15px;font-size:.8rem;font-weight:600}.lesson-lock{font-size:1.2rem;opacity:.7}.no-content{text-align:center;padding:4rem 2rem;color:#718096}.no-content-icon{font-size:4rem;margin-bottom:1rem}.no-content h3{color:#2d3748;margin-bottom:1rem}.instructor-content{max-width:800px;margin:0 auto}.instructor-profile{display:flex;flex-direction:column;gap:3rem}.instructor-card{background:linear-gradient(135deg,#f7fafc,#edf2f7);padding:3rem;border-radius:20px;display:flex;align-items:center;gap:2rem}.instructor-avatar-large{font-size:5rem;background:#fff;width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px #0000001a}.instructor-info h2{font-size:2rem;color:#2d3748;margin-bottom:.5rem}.instructor-title{color:#667eea;font-weight:600;margin-bottom:1.5rem}.instructor-stats{display:flex;gap:2rem}.instructor-stat{text-align:center}.stat-number{display:block;font-size:1.5rem;font-weight:700;color:#2d3748}.stat-label{font-size:.9rem;color:#718096;text-transform:uppercase;letter-spacing:.5px}.instructor-bio{background:#fff;padding:2rem;border-radius:15px;box-shadow:0 4px 20px #00000014}.instructor-bio h3{color:#2d3748;margin-bottom:1rem}.instructor-bio p{color:#718096;line-height:1.6}.success-notification{position:fixed;top:2rem;right:2rem;background:linear-gradient(135deg,#38a169,#68d391);color:#fff;padding:1rem 2rem;border-radius:12px;box-shadow:0 10px 30px #38a1694d;z-index:1000;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.enrollment-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:3rem;border-radius:20px;text-align:center;max-width:400px;box-shadow:0 20px 40px #0003}.modal-content h3{color:#2d3748;margin-bottom:1rem}.modal-content p{color:#718096;margin-bottom:2rem}.modal-btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;margin:0 .5rem;transition:transform .3s ease}.modal-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-btn.secondary{background:#e2e8f0;color:#4a5568}.modal-btn:hover{transform:translateY(-2px)}@media (max-width: 1024px){.course-hero-container{grid-template-columns:1fr;gap:3rem}.course-stats{grid-template-columns:repeat(2,1fr)}.overview-content{grid-template-columns:1fr;gap:2rem}.instructor-card{flex-direction:column;text-align:center}}@media (max-width: 768px){.course-hero{padding:3rem 0 4rem}.course-hero-container,.course-content-container,.course-details-container{padding:0 1rem}.course-hero-title{font-size:2.5rem}.course-stats{grid-template-columns:1fr;gap:1rem}.course-tabs{flex-direction:column}.instructor-stats{flex-direction:column;gap:1rem}.chapter-header{padding:1.5rem}.lessons-list{padding:0 1.5rem 1.5rem}.lesson-item{flex-direction:column;align-items:flex-start;gap:1rem}.lesson-meta{width:100%;justify-content:space-between}}@media (max-width: 480px){.course-hero-title{font-size:2rem}.course-badges{flex-direction:column;gap:.5rem}.instructor-card{padding:2rem}.instructor-avatar-large{width:80px;height:80px;font-size:3rem}.modal-content{margin:1rem;padding:2rem}}.study-content{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000001a}.study-layout{display:flex;min-height:80vh}.study-sidebar{width:350px;background:#f8fafc;border-right:1px solid #e2e8f0;padding:2rem;overflow-y:auto}.study-progress{margin-bottom:2rem}.study-progress h3{color:#2d3748;margin-bottom:1rem;font-size:1.2rem}.progress-text{font-size:.9rem;color:#718096}.lessons-navigation h3{color:#2d3748;margin-bottom:1rem;font-size:1.2rem}.chapter-nav{margin-bottom:1.5rem}.chapter-nav-header{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fff;border-radius:8px;margin-bottom:.5rem;box-shadow:0 2px 8px #0000000d}.chapter-nav-number{width:24px;height:24px;background:#667eea;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600}.chapter-nav-title{font-weight:600;color:#2d3748}.lessons-nav-list{padding-left:1rem}.lesson-nav-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem;border-radius:6px;cursor:pointer;transition:all .2s ease;margin-bottom:.25rem}.lesson-nav-item:hover{background:#fff;box-shadow:0 2px 8px #0000000d}.lesson-nav-item.active{background:#667eea;color:#fff}.lesson-nav-item.completed{background:#48bb78;color:#fff}.lesson-nav-info{display:flex;align-items:center;gap:.5rem}.lesson-nav-number{width:20px;height:20px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600}.lesson-nav-item:not(.active):not(.completed) .lesson-nav-number{background:#e2e8f0;color:#718096}.lesson-nav-title{font-size:.9rem;font-weight:500}.lesson-nav-status{font-size:.9rem}.lesson-completed{color:#48bb78}.lesson-current{color:#667eea}.lesson-pending{color:#cbd5e0}.study-main{flex:1;padding:2rem;overflow-y:auto}.lesson-player{max-width:900px}.lesson-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.lesson-chapter{color:#667eea;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.lesson-title{color:#2d3748;font-size:2rem;margin:.5rem 0;font-weight:700}.btn-complete{background:#48bb78;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-complete:hover{background:#38a169;transform:translateY(-2px)}.lesson-content{margin-bottom:2rem}.video-player{background:#000;border-radius:12px;overflow:hidden;margin-bottom:2rem}.video-player video{width:100%;height:auto;display:block}.no-video{text-align:center;padding:4rem 2rem;background:#f8fafc;border-radius:12px;margin-bottom:2rem}.no-video h3{color:#2d3748;margin-bottom:.5rem}.no-video p{color:#718096}.lesson-materials{background:#f8fafc;padding:1.5rem;border-radius:12px;margin-bottom:2rem}.lesson-materials h3{color:#2d3748;margin-bottom:1rem}.material-link{display:inline-flex;align-items:center;gap:.5rem;background:#fff;padding:.75rem 1rem;border-radius:8px;color:#667eea;text-decoration:none;font-weight:600;transition:all .2s ease;box-shadow:0 2px 8px #0000000d}.material-link:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0000001a}.material-icon{font-size:1.2rem}.lesson-notes{background:#f8fafc;padding:1.5rem;border-radius:12px;margin-bottom:2rem}.lesson-notes h3{color:#2d3748;margin-bottom:1rem}.notes-textarea{width:100%;min-height:120px;padding:1rem;border:1px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:1rem;resize:vertical;margin-bottom:1rem}.notes-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.save-notes-btn{background:#667eea;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease}.save-notes-btn:hover{background:#5a67d8}.lesson-navigation{text-align:center}.next-lesson-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-weight:600;font-size:1.1rem;cursor:pointer;transition:all .2s ease}.next-lesson-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.no-lesson-selected{text-align:center;padding:4rem 2rem}.welcome-study h2{color:#2d3748;font-size:2.5rem;margin-bottom:1rem}.welcome-study p{color:#718096;font-size:1.2rem;margin-bottom:3rem}.study-tips{text-align:left;max-width:500px;margin:0 auto;background:#f8fafc;padding:2rem;border-radius:12px}.study-tips h3{color:#2d3748;margin-bottom:1rem}.study-tips ul{list-style:none;padding:0}.study-tips li{color:#718096;position:relative;padding:.5rem 0 .5rem 2rem}.study-tips li:before{content:"✓";position:absolute;left:0;color:#48bb78;font-weight:600}.tab-icon{margin-right:.5rem}@media (max-width: 1024px){.study-layout{flex-direction:column}.study-sidebar{width:100%;border-right:none;border-bottom:1px solid #e2e8f0}.lesson-header{flex-direction:column;gap:1rem}.lesson-title{font-size:1.5rem}}.course-progress-section{margin:2rem 0;background:linear-gradient(135deg,#f7fafc,#edf2f7);padding:2rem;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 4px 12px #0000000d}.progress-title{color:#2d3748;font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.progress-title:before{content:"📊";font-size:1.5rem}.progress-overview{display:flex;flex-direction:column;gap:1rem}.progress-stats{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1rem}.progress-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.progress-number{font-size:2rem;font-weight:700;color:#667eea;line-height:1}.progress-label{font-size:.875rem;color:#718096;font-weight:500}.progress-divider{font-size:1.5rem;color:#a0aec0;margin:0 .5rem}.course-progress-bar{width:100%;height:12px;background:#e2e8f0;border-radius:6px;overflow:hidden;position:relative;box-shadow:inset 0 2px 4px #0000001a}.course-progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:6px;transition:width .6s ease;position:relative;box-shadow:0 2px 4px #667eea4d}.course-progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:progress-shine 3s infinite}.last-activity{text-align:center;color:#718096;font-size:.875rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.progress-stat{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;box-shadow:0 4px 12px #667eea33}.progress-stat .stat-icon{filter:brightness(0) invert(1)}.progress-stat .stat-value,.progress-stat .stat-label{color:#fff}@media (max-width: 768px){.course-progress-section{margin:1.5rem 0;padding:1.5rem}.progress-title{font-size:1.125rem}.progress-stats{flex-direction:row;gap:.75rem}.progress-number{font-size:1.75rem}.progress-label{font-size:.8rem}.course-progress-bar{height:10px}}.lesson-details{min-height:100vh;background:#f8f9fa;padding:2rem 0}.lesson-details__container{max-width:1400px;margin:0 auto;padding:0 2rem}.lesson-details__header{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:2rem;margin-bottom:2rem}.lesson-details__back-btn{background:none;border:none;color:#667eea;font-size:1rem;font-weight:500;cursor:pointer;padding:.5rem 0;margin-bottom:1rem;transition:color .3s ease}.lesson-details__back-btn:hover{color:#5a67d8}.lesson-details__title{font-size:2.5rem;font-weight:700;color:#23272f;margin:0 0 1rem;line-height:1.2}.lesson-details__meta{display:flex;gap:2rem;align-items:center}.lesson-details__duration{background:#e3f2fd;color:#1976d2;padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.9rem}.lesson-details__instructor{color:#6c757d;font-weight:500}.lesson-details__content{display:grid;grid-template-columns:2fr 1fr;gap:2rem;align-items:start}.lesson-details__left{display:flex;flex-direction:column;gap:2rem}.lesson-details__video-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;overflow:hidden}.lesson-details__video-container{position:relative;width:100%;height:0;padding-bottom:56.25%}.lesson-details__video{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.lesson-details__video-loading{position:absolute;top:0;left:0;width:100%;height:100%;background:#f8f9fa;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6c757d}.lesson-details__loading-spinner{width:40px;height:40px;border:4px solid #e9ecef;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.lesson-details__description-section,.lesson-details__objectives-section,.lesson-details__notes-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:2rem}.lesson-details__section-title{font-size:1.5rem;font-weight:700;color:#23272f;margin:0 0 1.5rem;padding-bottom:.5rem;border-bottom:2px solid #e9ecef}.lesson-details__description{font-size:1.1rem;line-height:1.7;color:#495057;margin:0}.lesson-details__objectives-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.lesson-details__objective{display:flex;align-items:flex-start;gap:1rem;font-size:1rem;line-height:1.6;color:#495057}.lesson-details__objective-icon{color:#28a745;font-weight:700;font-size:1.2rem;flex-shrink:0;margin-top:.1rem}.lesson-details__notes{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;padding:1.5rem}.lesson-details__notes p{margin:0;color:#856404;font-size:1rem;line-height:1.6}.lesson-details__right{display:flex;flex-direction:column;gap:2rem}.lesson-details__materials-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:2rem}.lesson-details__materials-list{display:flex;flex-direction:column;gap:1rem}.lesson-details__material{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f8f9fa;border-radius:8px;transition:background-color .3s ease}.lesson-details__material:hover{background:#e9ecef}.lesson-details__material-icon{font-size:1.5rem;flex-shrink:0}.lesson-details__material-name{flex:1;font-weight:500;color:#495057}.lesson-details__download-btn{background:#667eea;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.lesson-details__download-btn:hover{background:#5a67d8;transform:translateY(-1px)}.lesson-details__navigation-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:2rem}.lesson-details__nav-btn{width:100%;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .3s ease;text-align:left;margin-bottom:1rem}.lesson-details__nav-btn:last-child{margin-bottom:0}.lesson-details__nav-btn:hover{background:#e9ecef;border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea26}.lesson-details__nav-btn--next{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.lesson-details__nav-btn--next:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1)}.lesson-details__nav-icon{font-size:1.5rem;font-weight:700;flex-shrink:0}.lesson-details__nav-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.lesson-details__nav-label{font-size:.9rem;opacity:.8;font-weight:500}.lesson-details__nav-title{font-size:1rem;font-weight:600}.lesson-details__progress-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:2rem}.lesson-details__progress-bar{width:100%;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden;margin-bottom:1rem}.lesson-details__progress-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;transition:width .3s ease}.lesson-details__progress-text{text-align:center;font-weight:600;color:#495057;margin:0}@media (max-width: 1024px){.lesson-details__content{grid-template-columns:1fr;gap:1.5rem}.lesson-details__right{order:-1}}@media (max-width: 768px){.lesson-details{padding:1rem 0}.lesson-details__container{padding:0 1rem}.lesson-details__header{padding:1.5rem;margin-bottom:1.5rem}.lesson-details__title{font-size:2rem}.lesson-details__meta{flex-direction:column;gap:1rem;align-items:flex-start}.lesson-details__description-section,.lesson-details__objectives-section,.lesson-details__notes-section,.lesson-details__materials-section,.lesson-details__navigation-section,.lesson-details__progress-section{padding:1.5rem}}@media (max-width: 480px){.lesson-details__container{padding:0 .5rem}.lesson-details__header{padding:1rem}.lesson-details__title{font-size:1.5rem}.lesson-details__description-section,.lesson-details__objectives-section,.lesson-details__notes-section,.lesson-details__materials-section,.lesson-details__navigation-section,.lesson-details__progress-section,.lesson-details__nav-btn{padding:1rem}}.lesson-viewer{min-height:100vh;background:#f8fafc}.lesson-loading,.lesson-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:2rem}.loading-spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:2rem}.error-icon{font-size:4rem;margin-bottom:1rem}.lesson-error h3{color:#2d3748;margin-bottom:1rem;font-size:2rem}.lesson-error p{color:#718096;margin-bottom:2rem}.back-btn{background:#667eea;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.back-btn:hover{background:#5a67d8;transform:translateY(-2px)}.lesson-header{background:#fff;border-bottom:1px solid #e2e8f0;padding:1rem 0;position:sticky;top:0;z-index:100}.lesson-header-content{max-width:1400px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.lesson-breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.breadcrumb-link{background:none;border:none;color:#667eea;cursor:pointer;font-weight:600;padding:0;font-size:inherit;transition:color .2s ease}.breadcrumb-link:hover{color:#5a67d8}.breadcrumb-separator{color:#cbd5e0}.breadcrumb-chapter{color:#718096;font-weight:500}.breadcrumb-lesson{color:#2d3748;font-weight:600}.lesson-meta{display:flex;align-items:center;gap:1rem}.lesson-progress{color:#718096;font-size:.9rem;font-weight:500}.complete-btn{background:#48bb78;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease}.complete-btn:hover{background:#38a169;transform:translateY(-1px)}.completed-badge{background:#48bb78;color:#fff;padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:.25rem}.lesson-content{max-width:1400px;margin:0 auto;padding:2rem;display:grid;grid-template-columns:1fr 350px;gap:2rem}.lesson-main{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 20px #0000000d}.lesson-title-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e2e8f0}.lesson-title{color:#2d3748;font-size:2.5rem;font-weight:700;margin-bottom:1rem;line-height:1.2}.lesson-description{color:#718096;font-size:1.1rem;line-height:1.6;margin:0}.video-section{margin-bottom:3rem}.video-player-container{background:#000;border-radius:12px;overflow:hidden;position:relative;aspect-ratio:16/9}.video-player-container video{width:100%;height:100%;object-fit:contain}.no-video-section{margin-bottom:3rem}.no-video-placeholder{background:#f8fafc;border-radius:12px;padding:4rem 2rem;text-align:center;border:2px dashed #e2e8f0}.no-video-icon{font-size:4rem;margin-bottom:1rem}.no-video-placeholder h3{color:#2d3748;margin-bottom:.5rem}.no-video-placeholder p{color:#718096}.materials-section{margin-bottom:3rem}.materials-section h3{color:#2d3748;margin-bottom:1.5rem;font-size:1.25rem}.materials-grid{display:grid;gap:1rem}.material-item{display:flex;align-items:center;gap:1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;text-decoration:none;color:inherit;transition:all .2s ease}.material-item:hover{background:#fff;border-color:#667eea;transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.material-icon{font-size:2rem;width:60px;height:60px;background:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000001a}.material-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.material-title{font-weight:600;color:#2d3748;font-size:1.1rem}.material-action{color:#667eea;font-size:.9rem;font-weight:500}.notes-section{margin-bottom:2rem}.notes-section h3{color:#2d3748;margin-bottom:1rem;font-size:1.25rem}.notes-input{width:100%;min-height:150px;padding:1rem;border:1px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:1rem;resize:vertical;margin-bottom:1rem;background:#fafafa}.notes-input:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.save-notes-btn{background:#667eea;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.save-notes-btn:hover{background:#5a67d8;transform:translateY(-1px)}.lesson-sidebar{display:flex;flex-direction:column}.lesson-nav-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 20px #0000000d;position:sticky;top:100px;max-height:calc(100vh - 120px);overflow-y:auto}.lesson-nav-card h3{color:#2d3748;margin-bottom:1.5rem;font-size:1.2rem}.nav-progress{margin-bottom:2rem}.progress-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease}.progress-text{font-size:.9rem;color:#718096;font-weight:500}.nav-buttons{margin-bottom:2rem;display:flex;flex-direction:column;gap:.75rem}.nav-btn{display:flex;align-items:center;gap:.75rem;padding:1rem;border:1px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;transition:all .2s ease;text-align:left}.nav-btn:hover:not(:disabled){border-color:#667eea;background:#f8fafc}.nav-btn:disabled{opacity:.5;cursor:not-allowed}.nav-btn.prev{justify-content:flex-start}.nav-btn.next{justify-content:flex-end}.nav-icon{font-size:1.2rem;color:#667eea}.nav-text{display:flex;flex-direction:column;gap:.25rem;min-width:0;flex:1}.nav-label{font-size:.8rem;color:#718096;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.nav-lesson-title{font-size:.9rem;color:#2d3748;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.all-lessons h4{color:#2d3748;margin-bottom:1rem;font-size:1rem}.lessons-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.lesson-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border:1px solid transparent;border-radius:6px;background:#f8fafc;cursor:pointer;transition:all .2s ease;text-align:left}.lesson-item:hover{background:#fff;border-color:#e2e8f0}.lesson-item.active{background:#667eea;color:#fff;border-color:#667eea}.lesson-number{width:24px;height:24px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;flex-shrink:0}.lesson-item:not(.active) .lesson-number{background:#e2e8f0;color:#718096}.lesson-name{font-size:.9rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}@media (max-width: 1024px){.lesson-content{grid-template-columns:1fr;gap:1.5rem}.lesson-nav-card{position:static;max-height:none}.nav-buttons{flex-direction:row}.nav-btn{flex:1}}@media (max-width: 768px){.lesson-header-content{flex-direction:column;gap:1rem;align-items:flex-start}.lesson-content{padding:1rem}.lesson-main{padding:1.5rem}.lesson-title{font-size:2rem}.breadcrumb-lesson,.breadcrumb-chapter{display:none}}.lesson-progress-section{margin:1.5rem 0;padding:1rem;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-radius:12px;border:1px solid #e2e8f0}.progress-info{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem;flex-wrap:wrap}.progress-label{display:flex;align-items:center;gap:.5rem}.completed-badge{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;padding:.5rem 1rem;border-radius:25px;font-weight:600;font-size:.875rem;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 4px #48bb7833}.in-progress-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.5rem 1rem;border-radius:25px;font-weight:600;font-size:.875rem;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 4px #667eea33}.not-started-badge{background:linear-gradient(135deg,#a0aec0,#718096);color:#fff;padding:.5rem 1rem;border-radius:25px;font-weight:600;font-size:.875rem;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 4px #a0aec033}.watch-time{color:#4a5568;font-size:.875rem;background:#fff;padding:.375rem .75rem;border-radius:20px;border:1px solid #e2e8f0;display:flex;align-items:center;gap:.25rem}.progress-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;position:relative}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:progress-shine 2s infinite}@keyframes progress-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (max-width: 768px){.lesson-progress-section{margin:1rem 0;padding:.75rem}.progress-info{flex-direction:column;align-items:flex-start;gap:.75rem}.completed-badge,.in-progress-badge,.not-started-badge{font-size:.8rem;padding:.375rem .75rem}.watch-time{font-size:.8rem;padding:.25rem .5rem}}.student-lesson-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;color:#fff;text-align:center;padding:2rem}.loading-spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.error-container h2{margin-bottom:1rem;font-size:2rem}.error-container p{margin-bottom:2rem;opacity:.9}.lesson-header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.2);padding:.5rem 0;position:sticky;top:0;z-index:100}.header-content{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;gap:1rem}.header-navigation{display:flex;align-items:center;gap:.75rem}.back-btn{display:flex;align-items:center;gap:.3rem;background:none;border:2px solid #667eea;color:#667eea;padding:.4rem .8rem;border-radius:20px;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .3s ease;white-space:nowrap}.back-btn:hover{background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.lessons-menu-btn{display:flex;align-items:center;gap:.3rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.4rem .8rem;border-radius:20px;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .3s ease;white-space:nowrap}.lessons-menu-btn:hover{background:linear-gradient(135deg,#7c8df0,#8a6bb8);transform:translateY(-1px);box-shadow:0 3px 10px #667eea4d}.lesson-info{flex:1;min-width:0}.lesson-title{font-size:1rem;font-weight:700;color:#2d3748;margin:0 0 .1rem;line-height:1.2}.breadcrumb{display:flex;align-items:center;gap:.3rem;color:#718096;font-size:.75rem}.breadcrumb i{font-size:.6rem}.course-name,.chapter-name{font-weight:500}.lesson-completion{display:flex;align-items:center;min-width:120px}.completed-status{display:flex;align-items:center;gap:.4rem}.completed-text{font-size:.75rem;font-weight:600;color:#48bb78;white-space:nowrap}.completed-icon{color:#48bb78;font-size:.9rem}.complete-btn{display:flex;align-items:center;gap:.3rem;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border:none;padding:.3rem .6rem;border-radius:15px;font-size:.7rem;font-weight:600;cursor:pointer;transition:background .2s ease;white-space:nowrap}.complete-btn:hover:not(:disabled){background:linear-gradient(135deg,#5ba86e,#319c5c);transform:none}.complete-btn:active:not(:disabled){background:linear-gradient(135deg,#4a9f5f,#2a8c4e);transform:none}.complete-btn:disabled,.complete-btn.loading{opacity:.7;cursor:not-allowed;transform:none}.complete-btn .fa-spinner{animation:spin 1s linear infinite}.lesson-content{flex:1;max-width:1200px;margin:0 auto;padding:1rem 2rem 5rem;width:100%;min-height:auto}.video-section{margin-bottom:1.5rem}.video-container{background:#fffffff2;border-radius:16px;padding:.75rem;box-shadow:0 8px 25px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lesson-video{width:100%;max-height:60vh;border-radius:10px;box-shadow:0 6px 20px #00000026}.video-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#e53e3e;text-align:center}.video-error i{font-size:3rem;margin-bottom:1rem;opacity:.7}.video-error p{margin-bottom:1.5rem;font-size:1.1rem}.pdf-section{margin-bottom:1.5rem}.pdf-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;padding:0 .75rem}.pdf-header h3{display:flex;align-items:center;gap:.4rem;color:#fff;font-size:1.1rem;margin:0}.pdf-header i{color:#e53e3e}.pdf-container{background:#fffffff2;border-radius:16px;padding:.75rem;box-shadow:0 8px 25px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lesson-pdf{width:100%;height:400px;border:none;border-radius:10px}.description-section{background:#fffffff2;border-radius:16px;padding:1rem;box-shadow:0 8px 25px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:1rem}.description-section h3{color:#2d3748;font-size:1rem;margin-bottom:.5rem;font-weight:600}.lesson-description{color:#4a5568;line-height:1.6;font-size:.95rem}.lesson-navigation{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.2);padding:.6rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;position:fixed;bottom:0;left:0;right:0;z-index:100}.nav-btn{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.5rem .8rem;border-radius:20px;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .3s ease;min-width:120px}.nav-btn:hover:not(:disabled){background:linear-gradient(135deg,#7c8df0,#8a6bb8);transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.nav-btn:disabled{background:#cbd5e0;color:#a0aec0;cursor:not-allowed;transform:none;box-shadow:none}.prev-btn{justify-content:flex-start}.next-btn{justify-content:flex-end}.nav-btn span{display:flex;flex-direction:column;align-items:inherit}.nav-btn small{font-size:.7rem;opacity:.8;font-weight:400}.nav-lesson-title{font-size:.75rem;font-weight:500;margin-top:.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:110px}.lesson-counter{background:#667eea1a;color:#667eea;padding:.3rem .6rem;border-radius:15px;font-weight:600;font-size:.7rem}.btn{padding:.75rem 1.5rem;border-radius:50px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;border:none;font-size:.9rem}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.btn-secondary:hover{background:#cbd5e0;transform:translateY(-2px)}.btn-outline{background:transparent;border:2px solid #667eea;color:#667eea}.btn-outline:hover{background:#667eea;color:#fff;transform:translateY(-2px)}@media (max-width: 768px){.lesson-header{padding:.4rem 0}.header-content{flex-direction:column;gap:.6rem;align-items:stretch;padding:0 1rem}.header-navigation{justify-content:center;gap:.5rem}.back-btn,.lessons-menu-btn{padding:.3rem .6rem;font-size:.75rem}.lesson-info{text-align:center}.lesson-title{font-size:.9rem}.breadcrumb{font-size:.7rem}.lesson-completion{justify-content:center;min-width:auto}.lesson-content{padding:.75rem 1rem 4rem}.video-container,.pdf-container,.description-section{padding:.75rem}.lesson-navigation{flex-direction:column;gap:.5rem;padding:.5rem 1rem}.nav-btn{min-width:auto;width:100%;justify-content:center;padding:.4rem .6rem;font-size:.75rem}.nav-lesson-title{max-width:200px}.pdf-header{flex-direction:column;gap:.75rem;align-items:stretch}.lesson-pdf{height:350px}}@media (max-width: 480px){.lesson-header{padding:.3rem 0}.header-content{padding:0 .75rem;gap:.5rem}.lesson-content{padding:.5rem .75rem 3.5rem}.video-container,.pdf-container,.description-section{padding:.75rem}.lesson-title{font-size:.85rem}.breadcrumb{font-size:.65rem}.lesson-navigation{padding:.3rem .75rem}.nav-btn{padding:.4rem .6rem;font-size:.75rem}}.admin-viewing-notice{margin-top:1rem;padding:12px 16px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:8px;text-align:center;color:#fff}.admin-badge{display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600;margin-bottom:4px}.admin-viewing-notice p{margin:0;font-size:14px;opacity:.9}.lesson-pdf{height:300px}} .create-course{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem 0}.create-course__container{max-width:800px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000001a;overflow:hidden}.create-course__header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;text-align:center}.create-course__header h1{margin:0 0 .5rem;font-size:2.5rem;font-weight:700}.create-course__header p{margin:0;font-size:1.1rem;opacity:.9}.create-course__form{padding:2rem}.form-section{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid #e1e5e9}.form-section:last-of-type{border-bottom:none;margin-bottom:1rem}.form-section h2{color:#2d3748;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.form-section p{color:#718096;margin-bottom:1.5rem;font-size:.95rem}.form-group{margin-bottom:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#2d3748;font-size:.95rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:border-color .2s ease;background:#fff}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.char-count{display:block;text-align:right;font-size:.8rem;color:#718096;margin-top:.25rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem;border-top:1px solid #e1e5e9}.btn-primary,.btn-secondary{padding:.75rem 2rem;border:none;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease;min-width:120px}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background:#e2e8f0;color:#4a5568}.btn-secondary:hover:not(:disabled){background:#cbd5e0}.create-course__error{background:#fed7d7;color:#c53030;padding:1rem;border-radius:8px;margin:1rem 2rem;border:1px solid #feb2b2}.create-course__success{background:#c6f6d5;color:#22543d;padding:1rem;border-radius:8px;margin:1rem 2rem;border:1px solid #9ae6b4}@media (max-width: 768px){.create-course{padding:1rem}.create-course__container{border-radius:8px}.create-course__header{padding:1.5rem}.create-course__header h1{font-size:2rem}.create-course__form{padding:1.5rem}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}@media (max-width: 480px){.create-course__header h1{font-size:1.75rem}.create-course__form{padding:1rem}}.login{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:2rem}.login__container{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;overflow:hidden;width:100%;max-width:450px}.login__content{padding:3rem 2rem}.login__title{font-size:2rem;font-weight:700;color:#23272f;margin:0 0 .5rem;text-align:center}.login__subtitle{color:#6c757d;text-align:center;margin:0 0 2rem;font-size:1rem}.login__error{background:#f8d7da;color:#721c24;padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem;border:1px solid #f5c6cb;text-align:center}.login__success{background:#d4edda;color:#155724;padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem;border:1px solid #c3e6cb;text-align:center}.login__form{display:flex;flex-direction:column;gap:1.5rem}.login__form-group{display:flex;flex-direction:column;gap:.5rem}.login__label{font-weight:600;color:#495057;font-size:.9rem}.login__input{padding:.75rem 1rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:border-color .3s ease;background:#f8f9fa}.login__input:focus{outline:none;border-color:#667eea;background:#fff}.login__input--error{border-color:#dc3545;background:#fff5f5}.login__input--error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.login__input:disabled{background:#f8f9fa;cursor:not-allowed;opacity:.7}.login__error-text{color:#dc3545;font-size:.8rem}.login__forgot-password{display:flex;justify-content:flex-end;margin-top:.5rem}.login__forgot-link{background:none;border:none;color:#667eea;font-size:.8rem;font-weight:600;cursor:pointer;text-decoration:underline;transition:color .2s ease;padding:0}.login__forgot-link:hover:not(:disabled){color:#5a67d8}.login__forgot-link:disabled{opacity:.7;cursor:not-allowed}.login__submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:1rem}.login__submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.login__submit:disabled{cursor:not-allowed;opacity:.7;transform:none}.login__submit--loading{position:relative;color:transparent}.login__submit--loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid transparent;border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.login__footer{text-align:center;margin-top:2rem;color:#6c757d;font-size:.9rem}.login__link{color:#667eea;text-decoration:none;font-weight:600;transition:color .3s ease}.login__link:hover{color:#5a67d8}@media (max-width: 480px){.login{padding:1rem}.login__content{padding:2rem 1.5rem}.login__title{font-size:1.75rem}}.signup{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:2rem}.signup__container{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;overflow:hidden;width:100%;max-width:450px}.signup__content{padding:3rem 2rem}.signup__title{font-size:2rem;font-weight:700;color:#23272f;margin:0 0 .5rem;text-align:center}.signup__subtitle{color:#6c757d;text-align:center;margin:0 0 2rem;font-size:1rem}.signup__error{background:#f8d7da;color:#721c24;padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem;border:1px solid #f5c6cb;text-align:center}.signup__form{display:flex;flex-direction:column;gap:1.5rem}.signup__form-group{display:flex;flex-direction:column;gap:.5rem}.signup__label{font-weight:600;color:#495057;font-size:.9rem}.signup__input,.signup__select{padding:.75rem 1rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:border-color .3s ease;background:#f8f9fa}.signup__input:focus,.signup__select:focus{outline:none;border-color:#667eea;background:#fff}.signup__input--error{border-color:#dc3545;background:#fff5f5}.signup__input--error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.signup__input:disabled{background:#f8f9fa;cursor:not-allowed;opacity:.7}.signup__error-text{color:#dc3545;font-size:.8rem;margin-top:.25rem}.signup__select{cursor:pointer}.signup__submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:1rem}.signup__submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.signup__submit:disabled{cursor:not-allowed;opacity:.7;transform:none}.signup__submit--loading{position:relative;color:transparent}.signup__submit--loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid transparent;border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.signup__footer{text-align:center;margin-top:2rem;color:#6c757d;font-size:.9rem}.signup__link{color:#667eea;text-decoration:none;font-weight:600;transition:color .3s ease}.signup__link:hover{color:#5a67d8}@media (max-width: 480px){.signup{padding:1rem}.signup__content{padding:2rem 1.5rem}.signup__title{font-size:1.75rem}}.forgot-password{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.forgot-password__container{width:100%;max-width:400px;background:#fff;border-radius:12px;box-shadow:0 10px 25px #0000001a;overflow:hidden}.forgot-password__content{padding:40px 30px}.forgot-password__title{font-size:28px;font-weight:700;color:#1a202c;text-align:center;margin-bottom:8px}.forgot-password__subtitle{font-size:16px;color:#718096;text-align:center;margin-bottom:32px;line-height:1.5}.forgot-password__form{margin-bottom:24px}.forgot-password__form-group{margin-bottom:20px}.forgot-password__label{display:block;font-size:14px;font-weight:600;color:#4a5568;margin-bottom:8px}.forgot-password__input{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:16px;transition:all .2s ease;box-sizing:border-box}.forgot-password__input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.forgot-password__input:disabled{background-color:#f7fafc;cursor:not-allowed}.forgot-password__submit{width:100%;padding:14px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:8px}.forgot-password__submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.forgot-password__submit:disabled{opacity:.7;cursor:not-allowed;transform:none}.forgot-password__submit--loading{position:relative;color:transparent}.forgot-password__submit--loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid transparent;border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.forgot-password__error{background-color:#fed7d7;color:#c53030;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;border:1px solid #feb2b2}.forgot-password__success{background-color:#c6f6d5;color:#2f855a;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;border:1px solid #9ae6b4}.forgot-password__footer{text-align:center}.forgot-password__back-link{background:none;border:none;color:#667eea;font-size:14px;font-weight:600;cursor:pointer;text-decoration:underline;transition:color .2s ease}.forgot-password__back-link:hover:not(:disabled){color:#5a67d8}.forgot-password__back-link:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 480px){.forgot-password__content{padding:30px 20px}.forgot-password__title{font-size:24px}.forgot-password__subtitle{font-size:14px}}.reset-password{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.reset-password__container{width:100%;max-width:400px;background:#fff;border-radius:12px;box-shadow:0 10px 25px #0000001a;overflow:hidden}.reset-password__content{padding:40px 30px}.reset-password__title{font-size:28px;font-weight:700;color:#1a202c;text-align:center;margin-bottom:8px}.reset-password__subtitle{font-size:16px;color:#718096;text-align:center;margin-bottom:32px;line-height:1.5}.reset-password__form{margin-bottom:24px}.reset-password__form-group{margin-bottom:20px}.reset-password__label{display:block;font-size:14px;font-weight:600;color:#4a5568;margin-bottom:8px}.reset-password__input{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:16px;transition:all .2s ease;box-sizing:border-box}.reset-password__input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.reset-password__input:disabled{background-color:#f7fafc;cursor:not-allowed}.reset-password__input--error{border-color:#e53e3e}.reset-password__error-text{display:block;font-size:12px;color:#e53e3e;margin-top:4px}.reset-password__submit{width:100%;padding:14px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:8px}.reset-password__submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.reset-password__submit:disabled{opacity:.7;cursor:not-allowed;transform:none}.reset-password__submit--loading{position:relative;color:transparent}.reset-password__submit--loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid transparent;border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.reset-password__error{background-color:#fed7d7;color:#c53030;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;border:1px solid #feb2b2}.reset-password__success{background-color:#c6f6d5;color:#2f855a;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;border:1px solid #9ae6b4}.reset-password__footer{text-align:center}.reset-password__back-link{background:none;border:none;color:#667eea;font-size:14px;font-weight:600;cursor:pointer;text-decoration:underline;transition:color .2s ease}.reset-password__back-link:hover:not(:disabled){color:#5a67d8}.reset-password__back-link:disabled{opacity:.7;cursor:not-allowed}.reset-password__back-btn{width:100%;padding:12px 20px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:16px}.reset-password__back-btn:hover{background:#5a67d8;transform:translateY(-1px)}@media (max-width: 480px){.reset-password__content{padding:30px 20px}.reset-password__title{font-size:24px}.reset-password__subtitle{font-size:14px}}.password-reset-success{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.password-reset-success__container{width:100%;max-width:500px;background:#fff;border-radius:12px;box-shadow:0 10px 25px #0000001a;overflow:hidden}.password-reset-success__content{padding:40px 30px;text-align:center}.password-reset-success__icon{font-size:48px;margin-bottom:20px;display:block}.password-reset-success__icon--success{color:#48bb78}.password-reset-success__icon--error{color:#e53e3e}.password-reset-success__title{font-size:28px;font-weight:700;color:#1a202c;margin-bottom:12px}.password-reset-success__subtitle{font-size:16px;color:#718096;margin-bottom:32px;line-height:1.5}.password-reset-success__info{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;margin-bottom:24px;text-align:left}.password-reset-success__info h3{font-size:18px;font-weight:600;color:#2d3748;margin-bottom:12px}.password-reset-success__info ul{list-style:none;padding:0;margin:0}.password-reset-success__info li{font-size:14px;color:#4a5568;margin-bottom:8px;padding-left:20px;position:relative}.password-reset-success__info li:before{content:"✓";position:absolute;left:0;color:#48bb78;font-weight:700}.password-reset-success__info li:last-child{margin-bottom:0}.password-reset-success__error{background-color:#fed7d7;color:#c53030;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;border:1px solid #feb2b2}.password-reset-success__actions{display:flex;flex-direction:column;gap:12px}.password-reset-success__btn{padding:14px 20px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block;text-align:center}.password-reset-success__btn--primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.password-reset-success__btn--primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.password-reset-success__btn--secondary{background:#f7fafc;color:#4a5568;border:2px solid #e2e8f0}.password-reset-success__btn--secondary:hover{background:#edf2f7;border-color:#cbd5e0}.password-reset-success__loading{text-align:center}.password-reset-success__spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.password-reset-success__loading p{color:#718096;font-size:16px;margin:0}@media (max-width: 480px){.password-reset-success__content{padding:30px 20px}.password-reset-success__title{font-size:24px}.password-reset-success__subtitle{font-size:14px}.password-reset-success__actions{flex-direction:column}}.student-dashboard{padding:1.5rem;background:#f8fafc;min-height:100vh;width:100%;margin:0}.student-dashboard__header{margin-bottom:2rem}.welcome-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:2rem;color:#fff;text-align:center}.welcome-section h1{font-size:2.2rem;font-weight:700;margin:0 0 .5rem;color:#fff}.welcome-section p{font-size:1.1rem;margin:0;opacity:.9}.student-dashboard__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.dashboard-stat{background:#fff;border-radius:12px;padding:1.5rem;text-align:center;border:1px solid #e2e8f0;transition:all .2s ease}.dashboard-stat:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.dashboard-stat__number{font-size:2.5rem;font-weight:700;color:#2d3748;margin-bottom:.5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard-stat__label{font-size:.9rem;color:#718096;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.student-dashboard__section{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:2rem;border:1px solid #e2e8f0}.student-dashboard__section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.student-dashboard__section-header h2{font-size:1.5rem;font-weight:600;color:#2d3748;margin:0}.section-count{color:#718096;font-size:.9rem;margin-left:.5rem}.student-dashboard__courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.course-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .2s ease;cursor:pointer}.course-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0000001f;border-color:#667eea}.course-card__image{position:relative;height:160px;overflow:hidden;background:#f7fafc}.course-card__image img{width:100%;height:100%;object-fit:cover}.course-card__content{padding:1.5rem}.course-card__title{font-size:1.2rem;font-weight:600;color:#2d3748;margin:0 0 .5rem;line-height:1.4}.course-card__instructor{color:#718096;font-size:.9rem;margin-bottom:1rem}.course-card__progress{margin-bottom:1rem}.progress-bar{background:#f1f5f9;border-radius:8px;height:8px;overflow:hidden;margin-bottom:.5rem}.progress-bar__fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;transition:width .3s ease}.progress-text{font-size:.8rem;color:#718096;text-align:right}.course-card__actions{display:flex;gap:.5rem}.student-course-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .2s ease;cursor:pointer}.student-course-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0000001f;border-color:#667eea}.student-course-card__image{position:relative;height:160px;overflow:hidden;background:#f7fafc}.student-course-card__image img{width:100%;height:100%;object-fit:cover}.course-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#f7fafc,#edf2f7);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1rem}.placeholder-icon{font-size:2.5rem;margin-bottom:.5rem;opacity:.6}.placeholder-text{font-size:.9rem;font-weight:600;color:#718096;line-height:1.3}.student-course-card__content{padding:1.5rem}.student-course-card__title{font-size:1.2rem;font-weight:600;color:#2d3748;margin:0 0 .5rem;line-height:1.4}.student-course-card__instructor{color:#718096;font-size:.9rem;margin-bottom:1rem}.student-course-card__progress{margin-bottom:1rem}.progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.progress-text{font-size:.9rem;font-weight:600;color:#2d3748}.lesson-count{font-size:.8rem;color:#718096}.student-course-card__meta{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1rem;padding:.8rem;background:#f8fafc;border-radius:8px}.enrollment-date,.last-activity,.last-accessed{font-size:.8rem;color:#718096}.student-course-card__continue{width:100%;padding:.8rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease}.student-course-card__continue:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn{padding:.6rem 1.2rem;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-outline{background:transparent;color:#667eea;border:1px solid #667eea}.btn-outline:hover{background:#667eea;color:#fff}.recommended-course-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .2s ease;cursor:pointer}.recommended-course-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0000001f;border-color:#667eea}.recommended-course-card__image{height:140px;overflow:hidden;background:#f7fafc}.recommended-course-card__image img{width:100%;height:100%;object-fit:cover}.recommended-course-card__content{padding:1.2rem}.recommended-course-card__title{font-size:1.1rem;font-weight:600;color:#2d3748;margin:0 0 .5rem;line-height:1.4}.recommended-course-card__instructor{color:#718096;font-size:.85rem;margin-bottom:.8rem}.recommended-course-card__description{color:#4a5568;font-size:.9rem;line-height:1.5;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recommended-course-card__meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.5rem 0}.course-price{font-size:1.1rem;font-weight:600;color:#667eea}.course-language{font-size:.8rem;color:#718096;background:#f1f5f9;padding:.2rem .6rem;border-radius:4px}.recommended-course-card__view{width:100%;padding:.8rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s ease;font-family:inherit;outline:none;text-decoration:none}.recommended-course-card__view:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66;color:#fff}.student-dashboard__quick-actions{background:#fff;border-radius:12px;padding:1.5rem;border:1px solid #e2e8f0}.student-dashboard__quick-actions h2{font-size:1.5rem;font-weight:600;color:#2d3748;margin:0 0 1.5rem}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.quick-action{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .2s ease;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.8rem;font-family:inherit;font-size:inherit;outline:none;text-decoration:none}.quick-action:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.quick-action:hover .quick-action__icon,.quick-action:hover .quick-action__text{color:#fff}.quick-action__icon{font-size:2rem}.quick-action__text{font-size:1rem;font-weight:500}.student-dashboard__loading,.student-dashboard__error,.student-dashboard__empty{text-align:center;padding:3rem;color:#718096}.student-dashboard__error button,.student-dashboard__empty button{margin-top:1rem}@media (max-width: 768px){.student-dashboard{padding:1rem}.welcome-section{padding:1.5rem;text-align:center}.welcome-section h1{font-size:1.8rem}.student-dashboard__stats{grid-template-columns:repeat(2,1fr);gap:.8rem}.dashboard-stat{padding:1rem}.dashboard-stat__number{font-size:2rem}.student-dashboard__courses-grid{grid-template-columns:1fr;gap:1rem}.student-dashboard__section-header{flex-direction:column;align-items:flex-start;gap:1rem}.quick-actions-grid{grid-template-columns:1fr}}@media (max-width: 480px){.student-dashboard__stats{grid-template-columns:1fr}.welcome-section h1{font-size:1.6rem}.course-card__content,.recommended-course-card__content{padding:1rem}}.instructor-dashboard{padding:2rem;background:#f5f5f5;min-height:100vh}.dashboard__section h3{font-size:1.3rem;color:#333;margin-bottom:1rem;padding-left:.5rem;border-left:3px solid #667eea}.stat-card h3{font-size:2rem;color:#667eea;margin-bottom:.5rem;border:none;padding:0}.section-header h2{margin-bottom:0;border:none;padding:0}.create-course-btn{background:#667eea;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:5px;font-size:.9rem;cursor:pointer;transition:background .3s}.create-course-btn:hover{background:#5a6fd8}.courses-list{display:flex;flex-direction:column;gap:1rem}.course-item{background:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center;gap:1rem}.course__image{width:120px;height:80px;border-radius:8px;overflow:hidden;background:#f7fafc;flex-shrink:0}.course__image img{width:100%;height:100%;object-fit:cover}.course-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#f7fafc,#edf2f7);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:.5rem}.placeholder-icon{font-size:1.5rem;margin-bottom:.2rem;opacity:.6}.placeholder-text{font-size:.7rem;font-weight:600;color:#718096;line-height:1.2}.course__info h4{font-size:1.1rem;color:#333;margin-bottom:.5rem}.status{display:inline-block;padding:.25rem .75rem;border-radius:15px;font-size:.8rem;font-weight:500;margin-bottom:.5rem}.status.active{background:#d4edda;color:#155724}.status.draft{background:#fff3cd;color:#856404}.course__stats{display:flex;gap:1.5rem;margin-bottom:.5rem}.course__stat{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.8rem;color:#666}.stat-value{font-size:.9rem;color:#333;font-weight:500}.course__actions{display:flex;flex-direction:column;gap:.5rem}.course__btn{padding:.5rem 1rem;border:none;border-radius:5px;font-size:.9rem;cursor:pointer;transition:background .3s}.course__btn.primary{background:#667eea;color:#fff}.course__btn.primary:hover{background:#5a6fd8}.course__btn.secondary{background:#f8f9fa;color:#333;border:1px solid #e9ecef}.course__btn.secondary:hover{background:#e9ecef}.dashboard__side-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem}.students-list{display:flex;flex-direction:column;gap:1rem}.student-item{background:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;gap:1rem}.student__info h4{font-size:1rem;color:#333;margin-bottom:.25rem}.student__course{color:#667eea;font-size:.9rem;font-weight:500;margin-bottom:.25rem}.student__joined{color:#666;font-size:.8rem}.student__progress{display:flex;flex-direction:column;gap:.25rem}.progress-bar{width:100%;height:6px;background:#e9ecef;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:3px;transition:width .3s ease}.student__progress span{font-size:.8rem;color:#666}.student__actions{display:flex;justify-content:flex-end}.student__btn{padding:.5rem 1rem;background:#667eea;color:#fff;border:none;border-radius:5px;font-size:.9rem;cursor:pointer;transition:background .3s}.student__btn:hover{background:#5a6fd8}.reviews-list{display:flex;flex-direction:column;gap:1rem}.review-item{background:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;gap:1rem}.review__info h4{font-size:1rem;color:#333;margin-bottom:.25rem}.review__student{color:#666;font-size:.9rem;margin-bottom:.25rem}.review__course{color:#667eea;font-size:.9rem;font-weight:500;margin-bottom:.25rem}.review__date{color:#999;font-size:.8rem}.review__actions{display:flex;gap:.5rem}.review__btn{padding:.5rem 1rem;border:none;border-radius:5px;font-size:.9rem;cursor:pointer;transition:background .3s}.review__btn.primary{background:#28a745;color:#fff}.review__btn.primary:hover{background:#218838}.review__btn.secondary{background:#6c757d;color:#fff}.review__btn.secondary:hover{background:#5a6268}@media (max-width: 1024px){.dashboard__side-content{grid-template-columns:1fr}}@media (max-width: 768px){.instructor-dashboard{padding:1rem}.dashboard__header h1{font-size:2rem}.section-header{flex-direction:column;gap:1rem;align-items:flex-start}.course-item{flex-direction:column;align-items:flex-start;gap:1rem}.course__stats{flex-direction:column;gap:.5rem}.course__actions{width:100%;flex-direction:row}.actions-grid{grid-template-columns:1fr}}@media (max-width: 480px){.stats-grid{grid-template-columns:repeat(2,1fr)}.course__btn,.student__btn,.review__btn{padding:.75rem 1rem;font-size:1rem}}.loading{text-align:center;padding:2rem;color:#718096;font-size:1.1rem}.empty-state{text-align:center;padding:3rem 2rem;background:#f7fafc;border-radius:12px;border:2px dashed #cbd5e0}.empty-state h3{color:#2d3748;margin-bottom:.5rem;font-size:1.5rem}.empty-state p{color:#718096;margin-bottom:1.5rem}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.course__description{color:#718096;font-size:.9rem;margin-top:.5rem;line-height:1.4}.course__btn.danger{background:#e53e3e;color:#fff}.course__btn.danger:hover{background:#c53030}.course__btn.warning{background:#f6ad55;color:#fff}.course__btn.warning:hover{background:#ed8936}.status{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.status.draft{background:#fed7d7;color:#c53030}.status.published{background:#c6f6d5;color:#22543d}.status.archived{background:#e2e8f0;color:#4a5568}.status.under_review,.status.pending_approval{background:#fef5e7;color:#d69e2e}.status.approved{background:#c6f6d5;color:#22543d}.status.rejected{background:#fed7d7;color:#c53030}.archive-notice{margin-top:8px;padding:6px 12px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;text-align:center}.archive-notice small{color:#856404;font-weight:500}.status-breakdown{background:#f8fafc;padding:1.5rem;border-radius:12px;margin-top:2rem;border:1px solid #e2e8f0}.status-breakdown h3{color:#2d3748;font-size:1.2rem;margin-bottom:1rem;border-left:3px solid #667eea;padding-left:.75rem}.status-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.status-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fff;border-radius:8px;border:1px solid #e2e8f0;transition:all .3s ease}.status-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.status-badge.draft{background:#e2e8f0;color:#4a5568}.status-badge.pending_approval{background:#feebc8;color:#c05621}.status-badge.approved{background:#c6f6d5;color:#22543d}.status-badge.published{background:#bee3f8;color:#2b6cb0}.status-badge.rejected{background:#fed7d7;color:#c53030}.loading{text-align:center;padding:2rem;color:#718096;font-size:1rem}.error-message{background:#fed7d7;color:#c53030;padding:1rem;border-radius:8px;margin-bottom:1rem;border:1px solid #feb2b2}.empty-state{text-align:center;padding:2rem;color:#718096}.empty-state p{font-size:1rem;margin:0}@media (max-width: 768px){.status-items{grid-template-columns:1fr}.status-item{flex-direction:column;gap:.5rem;text-align:center}}.enrollment-manager-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.enrollment-manager{background:#fff;border-radius:12px;box-shadow:0 20px 40px #00000026;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.enrollment-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px 12px 0 0}.user-info h2{margin:0 0 8px;font-size:24px;font-weight:700}.user-details{margin:0;display:flex;flex-direction:column;gap:4px}.user-details strong{font-size:18px;font-weight:600}.user-email{font-size:14px;opacity:.9}.role-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;margin-top:4px;width:fit-content}.role-student{background:#22c55e33;color:#15803d;border:1px solid rgba(34,197,94,.3)}.role-instructor{background:#3b82f633;color:#1d4ed8;border:1px solid rgba(59,130,246,.3)}.role-admin{background:#ef444433;color:#dc2626;border:1px solid rgba(239,68,68,.3)}.error-message{margin:16px 24px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px}.loading-state{padding:60px 24px;text-align:center}.enrollments-section{padding:24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h3{margin:0;font-size:20px;font-weight:600;color:#1f2937}.enrollments-list{display:flex;flex-direction:column;gap:16px}.enrollment-card{display:flex;justify-content:space-between;align-items:flex-start;padding:20px;border:1px solid #e5e7eb;border-radius:12px;background:#f9fafb;transition:all .2s}.enrollment-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #0000000d}.course-info{flex:1;margin-right:16px}.course-title{margin:0 0 8px;font-size:18px;font-weight:600;color:#1f2937;line-height:1.3}.course-description{margin:0 0 12px;color:#6b7280;font-size:14px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px;font-size:13px}.course-price{font-weight:600;color:#059669}.enrollment-date,.instructor-name{color:#6b7280}.status-badge{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.status-enrolled{background:#d1fae5;color:#065f46}.status-completed{background:#dbeafe;color:#1e40af}.status-dropped{background:#fee2e2;color:#991b1b}.progress-info{display:flex;align-items:center;gap:12px}.progress-bar{flex:1;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:4px;transition:width .3s ease}.progress-text{font-size:13px;font-weight:600;color:#374151;white-space:nowrap}.enrollment-actions{display:flex;flex-direction:column;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;white-space:nowrap}.btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.btn-sm{padding:6px 12px;font-size:13px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1001;padding:20px}.modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #00000026;max-width:500px;width:100%;max-height:80vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;font-size:18px;font-weight:600;color:#1f2937}.modal-content{padding:24px}.modal-content p{margin:0 0 16px;color:#374151}.course-select{margin-bottom:16px}.form-control{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s}.form-control:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.selected-course-info{padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:16px}.course-preview h4{margin:0 0 8px;font-size:16px;font-weight:600;color:#1f2937}.course-preview p{margin:0 0 12px;color:#6b7280;font-size:14px;line-height:1.4}.course-details{display:flex;gap:16px;font-size:13px}.course-details .price{font-weight:600;color:#059669}.course-details .instructor{color:#6b7280}.no-courses{text-align:center;padding:20px;color:#6b7280}.modal-actions{display:flex;gap:12px;justify-content:flex-end;padding:20px 24px;border-top:1px solid #e5e7eb}@media (max-width: 768px){.enrollment-manager-overlay{padding:10px}.enrollment-manager{max-height:95vh}.enrollment-header{padding:16px}.user-info h2{font-size:20px}.enrollments-section{padding:16px}.enrollment-card{flex-direction:column;align-items:stretch}.course-info{margin-right:0;margin-bottom:16px}.enrollment-actions{flex-direction:row;justify-content:flex-end}.section-header{flex-direction:column;align-items:stretch;gap:12px}.course-meta{flex-direction:column;gap:4px}.progress-info{flex-direction:column;align-items:stretch;gap:8px}.progress-text{text-align:center}.modal{margin:10px;max-height:90vh}.modal-actions{flex-direction:column-reverse}}@media (prefers-contrast: high){.enrollment-card{border-width:2px}.btn-primary{background:#000;border:2px solid #fff}.progress-bar{border:1px solid #000}}@media (prefers-reduced-motion: reduce){.enrollment-card{transition:none}.btn:hover{transform:none}.loading-spinner{animation:none}}.admin-course-viewer-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.admin-course-viewer{background:#fff;border-radius:12px;box-shadow:0 20px 40px #00000026;max-width:1000px;width:100%;max-height:90vh;overflow-y:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.viewer-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px 12px 0 0}.course-info{flex:1}.course-title-section h2{margin:0 0 12px;font-size:24px;font-weight:700}.course-meta{display:flex;gap:12px;margin-bottom:12px;flex-wrap:wrap}.status-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase}.status-approved{background:#22c55e33;color:#15803d;border:1px solid rgba(34,197,94,.3)}.status-published{background:#3b82f633;color:#1d4ed8;border:1px solid rgba(59,130,246,.3)}.status-archived{background:#f59e0b33;color:#92400e;border:1px solid rgba(245,158,11,.3)}.status-rejected{background:#ef444433;color:#dc2626;border:1px solid rgba(239,68,68,.3)}.status-draft{background:#6b728033;color:#374151;border:1px solid rgba(107,114,128,.3)}.status-pending_approval{background:#f59e0b33;color:#92400e;border:1px solid rgba(245,158,11,.3)}.price-badge{background:#22c55e33;color:#15803d;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;border:1px solid rgba(34,197,94,.3)}.date-badge{background:#fff3;color:#fff;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;border:1px solid rgba(255,255,255,.3)}.course-description{margin:0;font-size:14px;opacity:.9;line-height:1.4}.close-btn{background:none;border:none;font-size:28px;color:#fff;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.close-btn:hover{background:#fff3}.viewer-actions{padding:20px 24px;border-bottom:1px solid #e5e7eb;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.instructor-info{margin-left:auto;font-size:14px;color:#6b7280}.viewer-content{padding:24px}.error-message{padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:20px}.loading-state{text-align:center;padding:60px 20px}.loading-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top:3px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.loading-state p{margin:0;color:#6b7280}.course-structure{max-width:100%}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.content-header h3{margin:0;font-size:20px;font-weight:600;color:#1f2937}.content-stats{display:flex;gap:16px;font-size:14px;color:#6b7280}.empty-state{text-align:center;padding:60px 20px}.empty-icon{font-size:48px;margin-bottom:16px}.empty-state h4{margin:0 0 8px;font-size:18px;font-weight:600;color:#374151}.empty-state p{margin:0 0 20px;color:#6b7280}.chapters-list{display:flex;flex-direction:column;gap:16px}.chapter-item{border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s}.chapter-item:hover{border-color:#d1d5db;box-shadow:0 4px 12px #0000000d}.chapter-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#f9fafb;cursor:pointer;transition:background-color .2s}.chapter-header:hover{background:#f3f4f6}.chapter-info{display:flex;align-items:center;gap:12px;flex:1}.chapter-number{background:#667eea;color:#fff;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:600}.chapter-title{margin:0;font-size:16px;font-weight:600;color:#1f2937}.lesson-count{font-size:13px;color:#6b7280;background:#e5e7eb;padding:2px 8px;border-radius:12px}.chapter-description{padding:0 20px 16px;margin:0;color:#6b7280;font-size:14px;line-height:1.4;background:#f9fafb}.expand-icon{font-size:14px;color:#6b7280;transition:transform .2s}.lessons-list{background:#fff;border-top:1px solid #e5e7eb}.lesson-item{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid #f3f4f6;transition:background-color .2s}.lesson-item:last-child{border-bottom:none}.lesson-item:hover{background:#f9fafb}.lesson-info{display:flex;align-items:center;gap:12px;flex:1}.lesson-info.clickable{cursor:pointer;transition:all .2s;padding:8px;border-radius:6px}.lesson-info.clickable:hover{background:#f3f4f6;transform:translate(4px)}.lesson-number{color:#6b7280;font-weight:600;min-width:24px}.lesson-title{font-weight:500;color:#1f2937}.lesson-meta{display:flex;gap:8px;margin-left:12px}.lesson-type{display:flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.type-video{background:#dbeafe;color:#1e40af}.type-text{background:#f3e8ff;color:#7c3aed}.type-quiz{background:#fef3c7;color:#92400e}.type-pdf{background:#ecfdf5;color:#065f46}.lesson-duration{font-size:11px;color:#6b7280;background:#f3f4f6;padding:2px 6px;border-radius:8px}.free-badge{font-size:10px;background:#10b981;color:#fff;padding:2px 6px;border-radius:8px;font-weight:600}.lesson-actions{display:flex;gap:8px}.no-lessons{padding:20px;text-align:center;color:#6b7280;font-style:italic}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;gap:6px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.btn-info{background:#06b6d4;color:#fff}.btn-info:hover:not(:disabled){background:#0891b2;transform:translateY(-1px);box-shadow:0 4px 12px #06b6d44d}.btn-sm{padding:4px 12px;font-size:12px}@media (max-width: 768px){.admin-course-viewer-overlay{padding:10px}.admin-course-viewer{max-height:95vh}.viewer-header{padding:16px;flex-direction:column;align-items:stretch;gap:16px}.viewer-actions{flex-direction:column;align-items:stretch}.course-meta{flex-direction:column;gap:8px}.chapter-info,.lesson-info{flex-direction:column;align-items:flex-start;gap:8px}.lesson-meta{margin-left:0}.content-header{flex-direction:column;align-items:stretch;gap:12px}.content-stats{justify-content:center}}@media (prefers-contrast: high){.chapter-item{border-width:2px}.btn-primary{background:#000;border:2px solid #fff}.lesson-item{border-bottom-width:2px}}@media (prefers-reduced-motion: reduce){.chapter-item,.lesson-item,.btn{transition:none}.loading-spinner{animation:none}.btn:hover{transform:none}}.admin-dashboard{padding:2rem;background:#f5f5f5;min-height:100vh}.dashboard__header{text-align:center;margin-bottom:3rem}.dashboard__header h1{font-size:2.5rem;color:#333;margin-bottom:.5rem}.dashboard__header p{font-size:1.1rem;color:#666}.dashboard__content{max-width:1200px;margin:0 auto}.dashboard__section{margin-bottom:3rem}.dashboard__section h2{font-size:1.8rem;color:#333;margin-bottom:1.5rem;border-bottom:2px solid #667eea;padding-bottom:.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{margin-bottom:0;border-bottom:none;padding-bottom:0}.users-table,.courses-table{animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.filter-section{margin-bottom:1.5rem;display:flex;align-items:center;gap:1rem}.filter-section label{font-weight:600;color:#333}.status-filter{padding:.5rem;border:1px solid #ddd;border-radius:4px;background:#fff;font-size:.9rem}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.status-badge.status-pending_approval{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.status-badge.status-approved{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-badge.status-rejected{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.status-badge.status-published{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.status-badge.status-draft{background:#e2e3e5;color:#383d41;border:1px solid #d6d8db}.status-badge.status-archived{background:#f8f9fa;color:#6c757d;border:1px solid #dee2e6}.action-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.btn-warning{background:#ffc107;color:#212529;border:1px solid #ffc107}.btn-warning:hover{background:#e0a800;border-color:#d39e00}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.stat-card{background:#fff;border-radius:10px;padding:1.5rem;text-align:center;box-shadow:0 2px 4px #0000001a;transition:transform .3s}.stat-card:hover{transform:translateY(-2px)}.stat-card h3{font-size:2rem;color:#667eea;margin-bottom:.5rem}.stat-card p{color:#666;font-size:.9rem}.approval-section{margin-bottom:2rem}.approval-section h3{font-size:1.3rem;color:#333;margin-bottom:1rem;padding-left:.5rem;border-left:3px solid #667eea}.approval-list{display:flex;flex-direction:column;gap:1rem}.approval-item{background:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.approval__info h4{font-size:1.1rem;color:#333;margin-bottom:.5rem}.approval__email,.approval__instructor{color:#666;font-size:.9rem;margin-bottom:.25rem}.approval__specialization,.approval__category{color:#667eea;font-size:.9rem;font-weight:500;margin-bottom:.25rem}.approval__date{color:#999;font-size:.8rem}.approval__actions{display:flex;gap:.5rem}.approval__btn{padding:.5rem 1rem;border:none;border-radius:5px;font-size:.9rem;cursor:pointer;transition:background .3s}.approval__btn.approve{background:#28a745;color:#fff}.approval__btn.approve:hover{background:#218838}.approval__btn.reject{background:#dc3545;color:#fff}.approval__btn.reject:hover{background:#c82333}.approval__btn.view{background:#667eea;color:#fff}.approval__btn.view:hover{background:#5a6fd8}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{background:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;display:flex;align-items:center;gap:1rem}.activity__icon{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#f8f9fa;border-radius:50%}.activity__content{flex:1}.activity__message{font-size:1rem;color:#333;margin-bottom:.25rem}.activity__timestamp{font-size:.8rem;color:#999}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.action-card{background:#fff;border:none;border-radius:10px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;text-align:left;cursor:pointer;transition:transform .3s,box-shadow .3s}.action-card:hover{transform:translateY(-2px);box-shadow:0 8px 15px #0003}.action-card h4{font-size:1.2rem;color:#333;margin-bottom:.5rem}.action-card p{color:#666;font-size:.9rem;line-height:1.4}.action-card .action-icon{font-size:2rem;margin-bottom:1rem;display:block;text-align:center}.action-card{text-align:center;transition:all .3s ease}.action-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026}.action-card:active{transform:translateY(-2px)}html{scroll-behavior:smooth}@media (max-width: 768px){.admin-dashboard{padding:1rem}.dashboard__header h1{font-size:2rem}.approval-item{flex-direction:column;align-items:flex-start;gap:1rem}.approval__actions{width:100%;justify-content:flex-start}.activity-item{flex-direction:column;align-items:flex-start;gap:.75rem}.activity__icon{align-self:flex-start}.actions-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}.users-table{overflow-x:auto;margin-top:1rem}.users-table table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.users-table th,.users-table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.users-table th{background:#f8f9fa;font-weight:600;color:#333}.users-table tr:hover{background:#f8f9fa}.role-badge{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;text-transform:uppercase}.role-student{background:#e3f2fd;color:#1976d2}.role-instructor{background:#f3e5f5;color:#7b1fa2}.role-admin{background:#ffebee;color:#d32f2f}.user-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.user-actions .btn{white-space:nowrap}@media (max-width: 768px){.user-actions{flex-direction:column;gap:4px;align-items:stretch}.user-actions .btn{font-size:12px;padding:4px 8px}}.btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;margin-right:8px;transition:background-color .2s}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover{background:#0056b3}.btn-danger{background:#dc3545;color:#fff}.btn-danger:hover{background:#c82333}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#545b62}.btn-sm{padding:4px 8px;font-size:12px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;padding:24px;border-radius:8px;max-width:400px;width:90%;box-shadow:0 4px 6px #0000001a}.modal h3{margin:0 0 16px;color:#333}.modal p{margin:0 0 20px;color:#666}.role-options{display:flex;gap:8px;margin-bottom:20px}.courses-table{overflow-x:auto}.courses-table table{width:100%;border-collapse:collapse;margin-top:1rem}.courses-table th,.courses-table td{padding:1rem;text-align:left;border-bottom:1px solid #e2e8f0}.courses-table th{background:#f7fafc;font-weight:600;color:#2d3748}.course-info h4{margin:0 0 .5rem;color:#2d3748;font-size:1.1rem}.course-description{margin:0;color:#718096;font-size:.9rem;line-height:1.4}.btn-success{background:#48bb78;color:#fff}.btn-success:hover{background:#38a169}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#2d3748}.form-group textarea{width:100%;padding:.75rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;resize:vertical;min-height:100px}.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.role-option{flex:1;padding:12px;border:2px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s}.role-option:hover{border-color:#007bff}.role-option.active{border-color:#007bff;background:#007bff;color:#fff}.modal-actions{display:flex;justify-content:flex-end;gap:8px}.error-message{background:#f8d7da;color:#721c24;padding:12px;border-radius:4px;margin-bottom:16px;border:1px solid #f5c6cb}.loading{text-align:center;padding:20px;color:#666}.analytics-dashboard{background:#fff;border-radius:12px;padding:2rem;margin-top:1.5rem;box-shadow:0 4px 6px #0000001a}.analytics-section{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid #e2e8f0}.analytics-section:last-child{border-bottom:none;margin-bottom:0}.analytics-section h3{color:#2d3748;font-size:1.4rem;margin-bottom:1.5rem;font-weight:600}.analytics-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.analytics-section .stat-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;border-radius:12px;text-align:center;box-shadow:0 4px 12px #667eea4d;transition:transform .3s ease}.analytics-section .stat-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.analytics-section .stat-card h4{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:#fff}.analytics-section .stat-card p{font-size:.9rem;opacity:.9;margin:0}.status-distribution{background:#f8fafc;padding:1.5rem;border-radius:8px;margin-top:1rem}.status-distribution h4{color:#2d3748;margin-bottom:1rem;font-size:1.1rem}.status-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.status-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fff;border-radius:6px;border:1px solid #e2e8f0}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.status-published{background:#c6f6d5;color:#22543d}.status-badge.status-pending_approval{background:#feebc8;color:#c05621}.status-badge.status-draft{background:#e2e8f0;color:#4a5568}.status-badge.status-rejected{background:#fed7d7;color:#c53030}.status-badge.status-archived{background:#d6d6d6;color:#4a4a4a}.status-count{font-weight:600;color:#2d3748;font-size:1.1rem}.top-instructors-list{background:#f8fafc;border-radius:8px;padding:1.5rem}.instructor-item{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid #e2e8f0}.instructor-item:last-child{border-bottom:none}.instructor-item .rank{background:#667eea;color:#fff;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;flex-shrink:0}.instructor-item .name{flex:1;font-weight:500;color:#2d3748}.instructor-item .course-count{color:#718096;font-size:.9rem}.trends-info{background:#f8fafc;padding:1.5rem;border-radius:8px;border-left:4px solid #667eea}.trends-info p{margin:.5rem 0;color:#4a5568;font-size:.95rem}.trends-info p:first-child{margin-top:0}.trends-info p:last-child{margin-bottom:0}.empty-state{text-align:center;padding:3rem 1rem;color:#718096}.empty-state h3{color:#4a5568;margin-bottom:.5rem}@media (max-width: 768px){.analytics-stats{grid-template-columns:1fr;gap:1rem}.status-grid{grid-template-columns:1fr}.instructor-item{flex-direction:column;align-items:flex-start;gap:.5rem}.instructor-item .rank{align-self:flex-start}}.manage-course{max-width:1200px;margin:0 auto;padding:80px 20px 20px;font-family:Inter,sans-serif;min-height:100vh}.manage-course__header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;padding:30px;margin-bottom:20px;display:flex;flex-direction:column;gap:20px;position:relative;z-index:2}.header__content{display:flex;justify-content:space-between;align-items:flex-start;gap:30px}.course-title-section{flex:1}.title-with-status{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:10px}.archived-badge{display:flex;flex-direction:column;align-items:center;padding:8px 16px;background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:8px;text-align:center;animation:pulse-warning 2s infinite;box-shadow:0 4px 12px #f59e0b33}.archived-badge span{font-size:14px;font-weight:700;color:#92400e;letter-spacing:.5px}.archived-badge small{font-size:12px;color:#b45309;margin-top:2px;font-weight:500}@keyframes pulse-warning{0%,to{box-shadow:0 4px 12px #f59e0b33}50%{box-shadow:0 4px 12px #f59e0b66}}.course-id-badge{display:inline-flex;align-items:center;background:#ffffff26;border:1px solid rgba(255,255,255,.3);border-radius:20px;padding:6px 16px;margin-bottom:15px;font-size:.85rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background-color .3s ease}.course-id-badge:hover{background:#fff3}.course-id-label{font-weight:600;margin-right:8px;opacity:.9}.course-id-value{font-family:Monaco,Consolas,monospace;font-weight:500;opacity:.95;font-size:.8rem}.header__content h1{margin:0 0 10px;font-size:2.5rem;font-weight:700}.course-description{margin:0 0 20px;font-size:1.1rem;opacity:.9;line-height:1.6}.course-image-container{flex-shrink:0;width:200px;height:120px;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #0000001a;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);cursor:pointer;transition:all .3s ease;position:relative}.course-image-container:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026;border-color:#fff6}.image-overlay-container{position:relative;width:100%;height:100%}.course-thumbnail{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.image-overlay{position:absolute;inset:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;color:#fff;font-size:.9rem}.course-image-container:hover .image-overlay{opacity:1}.overlay-icon{font-size:2rem;margin-bottom:8px}.overlay-text{font-weight:500;font-size:.85rem;text-align:center}.course-thumbnail-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#ffffff1a;border:2px dashed rgba(255,255,255,.3);color:#ffffffb3;font-size:.9rem;text-align:center;transition:all .3s ease}.course-thumbnail-placeholder:hover,.course-image-container:hover .course-thumbnail-placeholder{background:#ffffff26;border-color:#ffffff80;color:#ffffffe6}.placeholder-icon{font-size:2rem;margin-bottom:8px;opacity:.6}.placeholder-text{font-weight:500;font-size:.85rem}.course-stats{display:flex;gap:30px;justify-content:center;padding:20px 0;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.stat{text-align:center;flex:1}.stat strong{display:block;font-size:1.8rem;font-weight:700;margin-bottom:5px}.stat span{font-size:.9rem;opacity:.8;text-transform:uppercase;letter-spacing:.5px}.header__actions{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.header__actions .btn{padding:12px 20px;border-radius:8px;font-weight:600;text-decoration:none;text-align:center;transition:all .3s ease;border:none;cursor:pointer}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb;transform:translateY(-2px)}.btn-secondary{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3)}.btn-secondary:hover{background:#ffffff4d;transform:translateY(-2px)}.btn-outline{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.5)}.btn-outline:hover{background:#ffffff1a;border-color:#fff;transform:translateY(-2px)}.manage-course__content{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;overflow:hidden;margin-top:40px;position:relative;z-index:1}.course-content{padding:30px}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px 0;border-bottom:2px solid #f1f5f9;background:#fff;position:relative;z-index:3}.content-header h2{margin:0;font-size:1.8rem;font-weight:700;color:#1e293b}.empty-content{text-align:center;padding:60px 20px;color:#64748b}.empty-content h3{margin:0 0 10px;font-size:1.5rem;color:#475569}.empty-content p{margin:0 0 30px;font-size:1.1rem}.chapters-list{display:flex;flex-direction:column;gap:20px}.chapter-item{border:2px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .3s ease}.chapter-item:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.chapter-header{background:#f8fafc;padding:20px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.chapter-info h3{margin:0 0 8px;font-size:1.3rem;font-weight:600;color:#1e293b}.chapter-info p{margin:0 0 12px;color:#64748b;line-height:1.5}.chapter-meta{display:flex;gap:15px;font-size:.9rem;color:#64748b}.chapter-actions{display:flex;gap:8px;flex-wrap:wrap}.chapter-actions .btn{padding:8px 12px;border-radius:6px;font-size:.9rem;font-weight:500;border:none;cursor:pointer;transition:all .2s ease}.btn-sm{padding:6px 10px;font-size:.85rem}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.lessons-list{padding:20px;background:#fff;border-top:1px solid #e2e8f0}.lesson-item{display:flex;justify-content:space-between;align-items:flex-start;padding:15px;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:10px;transition:all .2s ease}.lesson-item:hover{border-color:#3b82f6;background:#f8fafc}.lesson-item:last-child{margin-bottom:0}.lesson-info h4{margin:0 0 5px;font-size:1.1rem;font-weight:600;color:#1e293b}.lesson-info p{margin:0 0 8px;color:#64748b;font-size:.9rem;line-height:1.4}.lesson-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.lesson-type{padding:4px 8px;border-radius:4px;font-size:.8rem;font-weight:500;text-transform:uppercase}.lesson-type.video{background:#dbeafe;color:#1d4ed8}.lesson-type.pdf{background:#fef3c7;color:#d97706}.lesson-type.text{background:#dcfce7;color:#15803d}.lesson-type.quiz{background:#fce7f3;color:#be185d}.free-badge,.preview-badge{padding:2px 6px;border-radius:4px;font-size:.75rem;font-weight:600}.free-badge{background:#dcfce7;color:#15803d}.preview-badge{background:#fef3c7;color:#d97706}.lesson-actions{display:flex;gap:6px;flex-wrap:wrap}.empty-lessons{text-align:center;padding:30px 20px;color:#64748b}.empty-lessons p{margin:0 0 15px;font-size:1rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal{background:#fff;border-radius:12px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-large{max-width:700px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #e2e8f0}.modal-header h3{margin:0;font-size:1.3rem;font-weight:600;color:#1e293b}.modal-header button{background:none;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.modal-header button:hover{background:#f1f5f9;color:#1e293b}.modal form{padding:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-group textarea{resize:vertical;min-height:80px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid #e2e8f0}.modal-actions button{padding:12px 20px;border-radius:8px;font-weight:600;border:none;cursor:pointer;transition:all .2s ease}.modal-actions button[type=button]{background:#f1f5f9;color:#64748b}.modal-actions button[type=button]:hover{background:#e2e8f0}.modal-actions button[type=submit]{background:#3b82f6;color:#fff}.modal-actions button[type=submit]:hover{background:#2563eb}@media (max-width: 768px){.manage-course{padding:15px}.manage-course__header{flex-direction:column;text-align:center}.header__actions{flex-direction:row;justify-content:center;min-width:auto}.course-stats{justify-content:center;gap:20px}.header__content{flex-direction:column;align-items:center;text-align:center}.course-image-container{width:100%;max-width:300px;height:180px}.course-stats{gap:20px}.header__actions{flex-direction:column;align-items:center}.header__actions .btn{width:100%;max-width:250px}.content-header{flex-direction:column;gap:15px;text-align:center}.chapter-header{flex-direction:column;gap:15px}.chapter-actions{justify-content:center}.lesson-item{flex-direction:column;gap:15px}.lesson-actions{justify-content:center}.form-row{grid-template-columns:1fr}.modal{margin:10px;max-height:95vh}}@media (max-width: 480px){.header__content h1{font-size:2rem}.course-stats{flex-direction:column;gap:15px}.chapter-meta{flex-direction:column;gap:5px}.lesson-meta{flex-direction:column;align-items:flex-start;gap:5px}}.manage-course__content .course-details__chapters{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:2rem;margin-top:2rem}.manage-course__content .course-details__chapters-title{font-size:1.5rem;font-weight:700;color:#23272f;margin:0 0 2rem;padding-bottom:1rem;border-bottom:2px solid #e9ecef}.manage-course__content .course-details__chapters-list{display:flex;flex-direction:column;gap:1rem}.empty-chapters{text-align:center;padding:40px 20px;background:#f9fafb;border:2px dashed #d1d5db;border-radius:12px;margin:20px 0}.empty-chapters .empty-icon{font-size:48px;margin-bottom:16px}.empty-chapters h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#374151}.empty-chapters p{margin:0 0 20px;color:#6b7280;font-size:14px}.manage-course__content .course-details__chapter{border:1px solid #e9ecef;border-radius:8px;overflow:hidden;transition:all .3s ease}.manage-course__content .course-details__chapter:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a}.manage-course__content .course-details__chapter-header{width:100%;background:#f8f9fa;border:none;padding:1.5rem;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease;text-align:left}.manage-course__content .course-details__chapter-header:hover{background:#e9ecef}.manage-course__content .course-details__chapter-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.manage-course__content .course-details__chapter-title{font-size:1.1rem;font-weight:600;margin:0;color:#23272f}.manage-course__content .course-details__chapter-lessons{font-size:.9rem;color:#6c757d}.manage-course__content .chapter-actions{display:flex;gap:.5rem;align-items:center}.manage-course__content .course-details__lessons{background:#fff;max-height:none}.manage-course__content .course-details__lesson{padding:1rem 1.5rem;border-bottom:1px solid #f1f3f4;transition:background-color .2s ease;display:flex;justify-content:space-between;align-items:center}.manage-course__content .course-details__lesson:last-child{border-bottom:none}.manage-course__content .course-details__lesson:hover{background:#f8f9fa}.manage-course__content .course-details__lesson-info{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex:1}.manage-course__content .course-details__lesson-title{font-size:.95rem;color:#495057;font-weight:500;flex:1}.manage-course__content .course-details__lesson-duration{font-size:.85rem;color:#6c757d;background:#e9ecef;padding:.25rem .5rem;border-radius:4px;white-space:nowrap}.manage-course__content .lesson-actions{display:flex;gap:.5rem;align-items:center}.manage-course__content .empty-lessons{padding:2rem;text-align:center;color:#6c757d}.manage-course__content .empty-lessons p{margin:0 0 1rem}.manage-course__content .public-view .course-details__chapter-header,.manage-course__content .public-view .course-details__lesson{cursor:pointer}.manage-course__content .public-view .course-details__lesson:hover{background:#f8f9fa}.manage-course__content .btn-sm{padding:.375rem .75rem;font-size:.875rem;border-radius:6px;border:none;cursor:pointer;transition:all .2s ease;font-weight:500}.manage-course__content .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 2px 8px #667eea4d}.manage-course__content .btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.manage-course__content .btn-secondary{background:#6c757d;color:#fff}.manage-course__content .btn-secondary:hover{background:#5a6268;transform:translateY(-1px)}.manage-course__content .btn-danger{background:#dc3545;color:#fff}.manage-course__content .btn-danger:hover{background:#c82333;transform:translateY(-1px)}.manage-course__content .btn-outline{background:transparent;color:#667eea;border:2px solid #667eea}.manage-course__content .btn-outline:hover{background:#667eea;color:#fff;transform:translateY(-1px)}.manage-course__content .content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e9ecef}.manage-course__content .content-header h2{font-size:1.5rem;font-weight:700;color:#23272f;margin:0}.manage-course__content .course-details__lesson{cursor:grab;-webkit-user-select:none;user-select:none;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;border-radius:8px;background:#fff}.manage-course__content .course-details__lesson:hover{background:#f8f9ff;box-shadow:0 4px 12px #667eea26;transform:translateY(-1px)}.manage-course__content .course-details__lesson:active{cursor:grabbing}.manage-course__content .course-details__lesson.dragging{opacity:.8;transform:rotate(3deg) scale(1.02);box-shadow:0 12px 30px #667eea4d;z-index:1000;background:#f8f9ff;border:2px solid #667eea}.manage-course__content .course-details__lesson.drag-over{border-top:4px solid #667eea;background:linear-gradient(135deg,#f8f9ff,#e3f2fd);transform:translateY(-2px);box-shadow:0 8px 25px #667eea33}.manage-course__content .course-details__lesson.drag-over:before{content:"";position:absolute;top:-4px;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px;animation:pulse 1s infinite}.manage-course__content .course-details__lesson:after{content:"";position:absolute;left:8px;top:50%;transform:translateY(-50%);width:4px;height:20px;background:repeating-linear-gradient(to bottom,#d1d5db 0px,#d1d5db 2px,transparent 2px,transparent 4px);opacity:0;transition:opacity .2s ease;border-radius:2px}.manage-course__content .course-details__lesson:hover:after{opacity:.6}.manage-course__content .course-details__lesson.dragging:after{opacity:1;background:repeating-linear-gradient(to bottom,#667eea 0px,#667eea 2px,transparent 2px,transparent 4px)}.manage-course__content .course-details__lesson-info{margin-left:16px;transition:margin-left .2s ease}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.manage-course__content .lesson-actions button{transition:all .2s ease;transform:translateY(0)}.manage-course__content .lesson-actions button:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.manage-course__content .course-details__lessons.reordering{pointer-events:none}.manage-course__content .course-details__lessons.reordering .course-details__lesson{opacity:.7;transition:opacity .3s ease}@keyframes reorderSuccess{0%{background-color:#f0f9ff;transform:scale(1)}50%{background-color:#dbeafe;transform:scale(1.01)}to{background-color:#fff;transform:scale(1)}}.manage-course__content .course-details__lesson.reorder-success{animation:reorderSuccess .6s ease-out}.manage-course__content .public-view .course-details__lesson{cursor:default}.manage-course__content .public-view .course-details__lesson:after{display:none}.manage-course__content .public-view .course-details__lesson:hover{background:#f8f9fa;transform:none;box-shadow:none}.manage-course__content .course-details__chapter{transition:all .3s ease;overflow:hidden}.manage-course__content .course-details__chapter:hover{box-shadow:0 8px 25px #667eea1f}.manage-course__content .chapter-actions button,.manage-course__content .lesson-actions button{border-radius:6px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.manage-course__content .chapter-actions{gap:8px}.manage-course__content .lesson-actions{gap:6px}.manage-course__content .reordering-spinner{display:inline-block;width:20px;height:20px;border:2px solid #f3f3f3;border-top:2px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-left:8px}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.manage-course__content .course-details__lesson{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.manage-course__content .course-details__lesson:before{content:"Drag to reorder";position:absolute;left:-8px;top:50%;transform:translateY(-50%) translate(-100%);background:#333;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:1001}.manage-course__content .course-details__lesson:before:after{content:"";position:absolute;right:-4px;top:50%;transform:translateY(-50%);border:4px solid transparent;border-left-color:#333}.manage-course__content .course-details__lesson:hover:before{opacity:1;transition-delay:.5s}.manage-course__content .course-details__lesson.dragging:before{opacity:0}.manage-course__content .empty-lessons{padding:3rem 2rem;text-align:center;color:#6c757d;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;border:2px dashed #dee2e6;transition:all .3s ease}.manage-course__content .empty-lessons:hover{border-color:#667eea;background:linear-gradient(135deg,#f8f9ff,#e3f2fd)}.manage-course__content .empty-lessons p{margin:0 0 1rem;font-size:1.1rem;font-weight:500}.manage-course__content .btn{position:relative;overflow:hidden}.manage-course__content .btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.manage-course__content .btn:hover:before{left:100%}.manage-course__content .course-details__chapter{margin-bottom:1.5rem}.manage-course__content .course-details__chapter:last-child{margin-bottom:0}@media (max-width: 768px){.manage-course__content .course-details__lesson-info{margin-left:12px}.manage-course__content .lesson-actions{flex-direction:column;gap:4px}.manage-course__content .lesson-actions button{font-size:.8rem;padding:.25rem .5rem}.manage-course__content .course-details__lesson:before{display:none}}.manage-course__content .drag-handle{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:16px;color:#9ca3af;cursor:grab;-webkit-user-select:none;user-select:none;transition:all .2s ease;z-index:10;padding:4px;border-radius:4px}.manage-course__content .drag-handle:hover{color:#667eea;background:#667eea1a;transform:translateY(-50%) scale(1.1)}.manage-course__content .course-details__lesson.dragging .drag-handle{color:#667eea;background:#667eea33}.manage-course__content .course-details__lesson-info{margin-left:40px}.lesson-manager{max-width:1000px;margin:0 auto;padding:20px;font-family:Inter,sans-serif}.lesson-manager__header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;padding:30px;margin-bottom:30px}.back-btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:8px 16px;border-radius:6px;text-decoration:none;display:inline-block;margin-bottom:20px;transition:all .3s ease;cursor:pointer}.back-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.lesson-manager__header h1{margin:0 0 20px;font-size:2rem;font-weight:700}.lesson-info{display:flex;flex-direction:column;gap:8px}.lesson-info p{margin:0;font-size:1rem;opacity:.9}.lesson-manager__content{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;overflow:hidden}.lesson-form{padding:30px}.form-section{margin-bottom:40px;padding-bottom:30px;border-bottom:1px solid #e2e8f0}.form-section:last-child{border-bottom:none;margin-bottom:0}.form-section h2{margin:0 0 20px;font-size:1.5rem;font-weight:600;color:#1e293b}.form-group{margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#374151;font-size:.9rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .2s ease;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:100px}.form-group small{display:block;margin-top:5px;color:#64748b;font-size:.85rem}.checkbox-group{display:flex;align-items:center;gap:8px}.checkbox-group input[type=checkbox]{width:auto;margin:0}.checkbox-group label{margin:0;font-weight:500;cursor:pointer}.form-group input[type=file]{width:100%;padding:.75rem;border:2px dashed #d1d5db;border-radius:8px;background:#f9fafb;cursor:pointer;transition:all .3s ease}.form-group input[type=file]:hover{border-color:#667eea;background:#f0f4ff}.form-group input[type=file]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.current-file{margin-top:.5rem;padding:.75rem;background:#f3f4f6;border-radius:6px;border-left:4px solid #10b981}.current-file p{margin:0;font-size:.9rem;color:#374151}.current-file a{color:#667eea;text-decoration:none;font-weight:500}.quiz-placeholder{padding:20px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;text-align:center}.quiz-placeholder p{margin:0 0 10px;color:#64748b}.quiz-placeholder p:last-child{margin-bottom:0}.preview-content{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:12px;padding:2rem;margin-top:1rem}.preview-content h3{margin:0 0 .75rem;color:#1e293b;font-size:1.5rem;font-weight:600;border-bottom:2px solid #667eea;padding-bottom:.5rem}.preview-content>p{margin:0 0 1.5rem;color:#64748b;font-size:1rem;line-height:1.6}.video-preview,.pdf-preview,.text-preview{margin-top:1.5rem;padding:1.5rem;background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;border-left:4px solid #667eea}.video-preview h4,.pdf-preview h4,.text-preview h4{margin:0 0 1rem;color:#1e293b;font-size:1.1rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.video-container{background:#000;border-radius:10px;overflow:hidden;box-shadow:0 4px 12px #0000004d;margin-bottom:.75rem}.video-container video{width:100%;max-height:400px;display:block}.pdf-container{background:#f8fafc;border-radius:8px;padding:1rem;border:1px solid #e2e8f0}.pdf-container iframe{margin-top:1rem;border-radius:8px;box-shadow:0 2px 8px #0000001a}.pdf-link{color:#667eea;text-decoration:none;font-weight:600;padding:.5rem 1rem;background:#f0f4ff;border-radius:6px;display:inline-block;transition:all .2s ease}.pdf-link:hover{background:#667eea;color:#fff;transform:translateY(-1px)}.file-info{margin:.75rem 0 0;padding:.5rem .75rem;background:#f1f5f9;border-radius:6px;font-size:.9rem;color:#475569;border-left:3px solid #10b981}.file-size{margin:.5rem 0 0;font-size:.85rem;color:#64748b;font-style:italic}.content-preview{background:#fff;padding:1.5rem;border-radius:8px;border:1px solid #e2e8f0;white-space:pre-wrap;line-height:1.7;color:#374151;font-size:.95rem}.no-content,.empty-preview{text-align:center;padding:2rem;color:#94a3b8;font-style:italic;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:8px;margin:1rem 0}.pdf-preview p{margin:0;color:#64748b}.pdf-preview a{color:#3b82f6;text-decoration:none}.pdf-preview a:hover{text-decoration:underline}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:2rem;border-top:1px solid #e5e7eb;margin-top:2rem}.form-actions .btn{min-width:120px;padding:.75rem 1.5rem;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease}.form-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.form-actions .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.form-actions .btn-primary:disabled{opacity:.6;cursor:not-allowed}.form-actions .btn-secondary{background:#6b7280;color:#fff}.form-actions .btn-secondary:hover{background:#4b5563;transform:translateY(-1px)}.loading{text-align:center;padding:60px 20px;color:#64748b;font-size:1.1rem}.error-message{background:#fef2f2;color:#dc2626;padding:15px;border-radius:8px;margin-bottom:20px;border:1px solid #fecaca}.empty-state{text-align:center;padding:60px 20px;color:#64748b}@media (max-width: 768px){.lesson-manager{padding:15px}.lesson-manager__header{padding:20px}.lesson-manager__header h1{font-size:1.5rem}.lesson-form{padding:20px}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}.preview-content{padding:1rem}.video-preview,.pdf-preview,.text-preview{padding:1rem;margin-top:1rem}.video-container video{max-height:250px}.pdf-container iframe{height:300px}}@media (max-width: 480px){.lesson-info{gap:5px}.lesson-info p{font-size:.9rem}}.file-upload-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.file-upload-header label{font-size:16px;font-weight:600;color:#2d3748;margin:0}.file-limits{font-size:12px;color:#718096}.limit-info{background:#edf2f7;padding:4px 8px;border-radius:6px;font-weight:500}.compression-hint{font-size:.85rem;color:#059669;background:#ecfdf5;padding:8px 12px;border-radius:6px;margin-top:8px;border-left:3px solid #10b981}.compression-hint a{color:#06c;text-decoration:underline}.file-input{width:100%;padding:12px;border:2px dashed #e2e8f0;border-radius:8px;background:#fafbfc;font-size:14px;transition:all .2s ease;cursor:pointer}.file-input:hover:not(:disabled){border-color:#667eea;background:#f8f9ff;box-shadow:0 0 0 3px #667eea1a}.file-input:disabled{background:#f7fafc;cursor:not-allowed;opacity:.6;border-color:#cbd5e0}.upload-status-container{min-height:90px;margin-top:15px;display:flex;flex-direction:column;justify-content:flex-start}.upload-status-container:empty{min-height:20px;margin-top:5px}.upload-progress{padding:15px;background:#f0f8ff;border:1px solid #bee3f8;border-radius:8px;animation:fadeIn .3s ease;display:flex;align-items:center;gap:10px}.upload-spinner{font-size:18px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.progress-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;transition:width .3s ease;position:relative}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.progress-text{font-size:14px;color:#2d3748;font-weight:500;text-align:center}.upload-error{padding:12px 15px;background:#fed7d7;border:1px solid #fc8181;border-radius:8px;display:flex;align-items:center;gap:8px;animation:fadeIn .3s ease}.error-icon{font-size:16px}.error-message{color:#c53030;font-size:14px;font-weight:500}.current-file{margin-top:15px;padding:12px 15px;background:#f0fff4;border:1px solid #9ae6b4;border-radius:8px;display:flex;align-items:center;gap:8px}.file-icon{font-size:16px}.current-file a{color:#38a169;text-decoration:none;font-weight:500;font-size:14px}.current-file a:hover{text-decoration:underline}.upload-tips{margin-top:10px}.upload-tips small{display:block;color:#718096;font-size:13px;line-height:1.4;padding:8px 12px;background:#fffaf0;border:1px solid #fbd38d;border-radius:6px}.upload-success{padding:12px 15px;background:#f0fff4;border:1px solid #9ae6b4;border-radius:8px;display:flex;align-items:center;gap:8px;color:#38a169;font-weight:500;font-size:14px;animation:fadeIn .3s ease}.upload-success .success-icon{font-size:16px}.progress-fill.completed{background:linear-gradient(90deg,#38a169,#68d391)}@media (max-width: 768px){.upload-progress{padding:12px}.upload-error,.upload-success{padding:10px 12px}}#root{width:100vw;height:100vh;min-height:100vh;min-width:100vw;margin:0;padding:0;box-sizing:border-box;display:flex;flex-direction:column}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.app{min-height:100vh;display:flex;flex-direction:column;width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box}html[dir=rtl]{direction:rtl}html[dir=ltr]{direction:ltr}html[dir=rtl] body{text-align:right;font-family:Segoe UI,Tahoma,Arial,sans-serif}html[dir=ltr] body{text-align:left;font-family:Segoe UI,Tahoma,Arial,sans-serif}.main-content{flex:1;display:flex;flex-direction:column}*{box-sizing:border-box}nav.navbar{width:100%!important;max-width:100vw!important;box-sizing:border-box!important;overflow:hidden!important}.navbar__container{transition:none!important;width:100%!important;max-width:1200px!important;margin:0 auto!important}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}html,body{width:100vw;height:100vh;min-width:100vw;min-height:100vh;margin:0;padding:0;box-sizing:border-box}body{background-color:#fff;color:#213547}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
