*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;font-weight:400;--primary: #3b82f6;--primary-dark: #2563eb;--primary-light: #60a5fa;--bg-light: #ffffff;--bg-light-secondary: #f9fafb;--text-light: #111827;--text-light-secondary: #6b7280;--border-light: #e5e7eb;--bg-dark: #111827;--bg-dark-secondary: #1f2937;--text-dark: #f9fafb;--text-dark-secondary: #d1d5db;--border-dark: #374151;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh;transition:background-color .3s ease}body.light{background-color:var(--bg-light);color:var(--text-light)}body.dark{background-color:var(--bg-dark);color:var(--text-dark)}#root{width:100%;min-height:100vh}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lazy-load-image-background.blur{filter:blur(15px)}.lazy-load-image-background.blur.lazy-load-image-loaded{filter:blur(0);transition:filter .3s}.lazy-load-image-background.blur>img{opacity:0}.lazy-load-image-background.blur.lazy-load-image-loaded>img{opacity:1;transition:opacity .3s}.landing-container{min-height:100vh;background:var(--bg-solid, #1a1a2e);color:var(--text-light, white);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden;width:100vw;margin:0;padding:0}body:not(.dark) .landing-container{--bg-solid: #f0f0f0;--text-light: #1a1a1a;--text-secondary: #666;--primary-color: #8b5cf6;--secondary-color: #ec4899;--accent-color: #f59e0b;--card-bg: #ffffff;--card-shadow: rgba(0, 0, 0, .1);--border-color: #e5e7eb}body.dark .landing-container{--bg-solid: #1a1a2e;--text-light: #f9fafb;--text-secondary: #9ca3af;--primary-color: #8b5cf6;--secondary-color: #ec4899;--accent-color: #f59e0b;--card-bg: #2d3748;--card-shadow: rgba(0, 0, 0, .3);--border-color: #374151}.scroll-progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));z-index:1000;transition:width .1s ease}.hero-section{display:flex;min-height:100vh;position:relative;padding-top:5rem;z-index:0;overflow:hidden}.hero-content{width:100%;max-width:60%;z-index:1;position:relative;pointer-events:auto;perspective:1000px;transform-style:preserve-3d;padding:2rem 6rem 0;display:flex;flex-direction:column}.scene-3d-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:0;overflow:visible;pointer-events:none}.main-header{position:fixed;top:0;left:0;right:0;width:100vw;display:flex;justify-content:space-between;align-items:center;padding:1.5rem 4rem;background:#1a1a2eb3;border-bottom:1px solid var(--border-color);z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}body:not(.dark) .main-header{background:#f0f0f0b3}.brand-name{font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.header-nav{display:flex;gap:1rem;align-items:center}.nav-link-btn{background:transparent;border:none;color:var(--text-light);padding:.5rem 1rem;font-size:.95rem;font-weight:500;cursor:pointer;transition:color .2s}.nav-link-btn:hover{color:var(--primary-color)}.cta-btn-small{background:var(--primary-color);color:#fff;border:none;padding:.625rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.cta-btn-small:hover{transform:translateY(-2px);box-shadow:0 8px 20px #8b5cf666}.hero-main{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding-top:2rem;padding-bottom:3rem;margin-top:0;gap:2.5rem;max-width:600px;min-height:calc(100vh - 10rem);transform-style:preserve-3d;will-change:transform,opacity}.hero-label{display:inline-block;width:fit-content;padding:.5rem 1.25rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:50px;font-size:.875rem;font-weight:500;color:var(--primary-color)}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;width:fit-content;padding:.5rem 1rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:50px;font-size:.875rem;font-weight:500;color:var(--text-light);margin-bottom:.5rem}.hero-badge span:first-child{font-size:1.1rem}.hero-trust{margin-bottom:1.5rem}.trust-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;background:linear-gradient(135deg,#8b5cf626,#ec489926);border:1px solid var(--primary-color);border-radius:50px;font-size:.9rem;font-weight:600;color:var(--text-light)}.badge-icon{font-size:1.1rem}.hero-features{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem;margin-bottom:.5rem}.feature-tag{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;font-size:.875rem;font-weight:500;color:var(--text-light);transition:all .3s}.feature-tag .checkmark{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:900;font-size:1rem}.feature-tag:hover{border-color:var(--secondary-color);transform:translateY(-2px)}.hero-description{font-size:1.05rem;line-height:1.6;color:var(--text-secondary);margin:0;max-width:480px}.hero-heading{font-size:2.75rem;font-weight:800;line-height:1.2;margin:0;margin-bottom:1.5rem;letter-spacing:-.02em}.gradient-text{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtext{font-size:1rem;line-height:1.6;color:var(--text-secondary);margin:0}.hero-cta{display:flex;gap:1rem;margin-top:1.5rem}.primary-cta{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 8px 20px #8b5cf64d}.primary-cta:hover{transform:translateY(-3px);box-shadow:0 12px 28px #8b5cf666}.secondary-cta{background:var(--card-bg);color:var(--text-light);border:2px solid var(--border-color);padding:1rem 2rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.secondary-cta:hover{border-color:var(--primary-color);transform:translateY(-3px)}.hero-stats{display:flex;gap:4rem;margin-top:2.5rem;padding-top:2.5rem;border-top:1px solid var(--border-color)}.stat-item{display:flex;flex-direction:column;gap:.25rem}.stat-item strong{font-size:2rem;font-weight:700;color:var(--primary-color)}.stat-item span{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.section-wrapper{max-width:1200px;margin:0 auto;padding:0 2rem}.section-header-block{text-align:center;margin-bottom:4rem}.section-heading{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-light)}.section-subheading{font-size:1.125rem;color:var(--text-secondary)}.popular-courses-section{padding:6rem 0;background:transparent;position:relative}.popular-courses-section .section-header-block{margin-bottom:3rem}.popular-courses-section .loading-message{text-align:center;padding:3rem 0;font-size:1.125rem;color:var(--text-secondary)}.popular-courses-section .course-carousel{margin:0 -1rem;padding:1rem 0}.categories-section{padding:6rem 0;background:linear-gradient(135deg,#8b5cf60d,#ec48990d,#8b5cf608),var(--card-bg);position:relative}.categories-section:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--primary-color),transparent);opacity:.5}.categories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.category-card{background:linear-gradient(135deg,var(--card-bg) 0%,rgba(139,92,246,.05) 100%);border:2px solid var(--border-color);padding:3rem 2rem;border-radius:24px;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 6px var(--card-shadow)}.category-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));opacity:0;transition:opacity .4s;z-index:0}.category-card:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(139,92,246,.1) 0%,transparent 70%);opacity:0;transition:opacity .4s;z-index:0}.category-card:hover:before{opacity:.08}.category-card:hover:after{opacity:1}.category-card:hover{transform:translateY(-16px) scale(1.03);box-shadow:0 24px 56px var(--card-shadow),0 0 0 1px var(--primary-color);border-color:var(--primary-color)}.category-card>*{position:relative;z-index:1}.category-icon{font-size:4rem;margin-bottom:1.5rem;transition:all .4s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;color:var(--primary-color);filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.category-card:hover .category-icon{transform:scale(1.2) rotate(10deg);filter:drop-shadow(0 8px 16px rgba(139,92,246,.4));color:var(--secondary-color)}.category-title{font-size:1.35rem;font-weight:700;margin-bottom:.75rem;color:var(--text-light);transition:color .3s}.category-card:hover .category-title{color:var(--primary-color)}.category-count{font-size:.95rem;color:var(--text-secondary);font-weight:500;transition:color .3s}.category-card:hover .category-count{color:var(--secondary-color)}.benefits-section{padding:6rem 0;background:linear-gradient(135deg,#ec48990d,#8b5cf60d,#ec489908),var(--card-bg);position:relative}.benefits-section:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--secondary-color),transparent);opacity:.5}.section-divider{height:1px;background:linear-gradient(90deg,transparent,var(--primary-color) 20%,var(--secondary-color) 50%,var(--primary-color) 80%,transparent);opacity:.5;margin:0 auto;max-width:80%}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:3rem}.benefit-card{text-align:center;padding:3rem 2rem;border-radius:20px;transition:all .4s cubic-bezier(.4,0,.2,1);background:transparent;border:2px solid transparent;position:relative}.benefit-card:before{content:"";position:absolute;inset:0;border-radius:20px;padding:2px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:0;transition:opacity .4s}.benefit-card:hover:before{opacity:1}.benefit-card:hover{transform:translateY(-12px);background:linear-gradient(135deg,#8b5cf60d,#ec48990d);box-shadow:0 16px 40px #8b5cf626}.benefit-icon{font-size:4.5rem;margin-bottom:1.75rem;display:inline-flex;align-items:center;justify-content:center;transition:all .4s cubic-bezier(.4,0,.2,1);color:var(--secondary-color);filter:drop-shadow(0 4px 12px rgba(0,0,0,.1))}.benefit-card:hover .benefit-icon{transform:scale(1.25) rotate(-8deg);filter:drop-shadow(0 8px 20px rgba(236,72,153,.4));color:var(--primary-color)}.benefit-title{font-size:1.4rem;font-weight:700;margin-bottom:1rem;color:var(--text-light);transition:color .3s}.benefit-card:hover .benefit-title{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.benefit-description{font-size:1rem;color:var(--text-secondary);line-height:1.6}.how-it-works-section{padding:6rem 2rem;background:transparent;position:relative;z-index:1}.steps-container{display:flex;align-items:center;justify-content:center;gap:2rem;max-width:1000px;margin:0 auto}.step-card{flex:1;background:var(--card-bg);border:2px solid var(--border-color);padding:2.5rem 2rem;border-radius:20px;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.step-card:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));transform:scaleX(0);transition:transform .4s}.step-card:hover:after{transform:scaleX(1)}.step-card:hover{transform:translateY(-8px);border-color:var(--primary-color);box-shadow:0 16px 40px var(--card-shadow)}.step-number{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;border-radius:50%;font-size:1.75rem;font-weight:700;margin-bottom:1.5rem;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #8b5cf64d}.step-card:hover .step-number{transform:scale(1.15) rotate(360deg);box-shadow:0 8px 24px #8b5cf680}.step-title{font-size:1.25rem;font-weight:600;margin-bottom:.75rem;color:var(--text-light)}.step-description{font-size:.95rem;color:var(--text-secondary);line-height:1.6}.step-arrow{font-size:2rem;color:var(--primary-color);font-weight:700}.final-cta-section{padding:6rem 0;background:var(--card-bg)}.cta-wrapper{max-width:700px;margin:0 auto;text-align:center}.cta-heading{font-size:2.75rem;font-weight:700;margin-bottom:1rem;color:var(--text-light)}.cta-subheading{font-size:1.25rem;color:var(--text-secondary);margin-bottom:2.5rem}.cta-large{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;border:none;padding:1.25rem 3rem;border-radius:12px;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 12px 32px #8b5cf64d}.cta-large:hover{transform:translateY(-4px);box-shadow:0 16px 40px #8b5cf666}.cta-note{margin-top:1.5rem;font-size:.875rem;color:var(--text-secondary)}.main-footer{padding:3rem 0;background:var(--bg-solid);border-top:1px solid var(--border-color)}.footer-wrapper{max-width:1200px;margin:0 auto;padding:0 2rem;text-align:center}.footer-brand{margin-bottom:2rem}.footer-logo{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.footer-tagline{font-size:.95rem;color:var(--text-secondary)}.footer-links{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem}.footer-link{color:var(--text-secondary);text-decoration:none;font-size:.95rem;transition:color .2s}.footer-link:hover{color:var(--primary-color)}.footer-copyright{font-size:.875rem;color:var(--text-secondary)}.section-header-block{animation:fadeInUp .6s ease-out}@media(max-width:1024px){.hero-section{flex-direction:column}.hero-content{max-width:100%;padding:2rem 3rem}.scene-3d-container{width:100%;height:50vh;position:relative}.hero-heading{font-size:2.5rem}.steps-container{flex-direction:column}.step-arrow{transform:rotate(90deg)}}@media(max-width:768px){.main-header{flex-direction:column;gap:1rem;align-items:flex-start}.hero-heading{font-size:2rem}.hero-cta{flex-direction:column;width:100%}.primary-cta,.secondary-cta{width:100%}.hero-stats{flex-wrap:wrap;gap:2rem}.categories-grid,.benefits-grid{grid-template-columns:1fr}}.auth-page{min-height:100vh;background:var(--bg-solid, #1a1a2e);transition:background .3s;position:relative;overflow:hidden}.auth-page:before{content:"";position:absolute;width:200%;height:200%;top:-50%;left:-50%;background-image:radial-gradient(circle at 20% 30%,rgba(139,92,246,.15) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(236,72,153,.12) 0%,transparent 50%),radial-gradient(circle at 40% 80%,rgba(249,115,22,.1) 0%,transparent 50%);animation:floatingBackground 20s ease-in-out infinite;pointer-events:none}body:not(.dark) .auth-page{--bg-solid: #f0f0f0;--text-light: #1a1a1a;--text-secondary: #666;--card-bg: #ffffff;--border-color: #e5e7eb;--input-bg: #f9fafb;--card-shadow: rgba(0, 0, 0, .08)}body.dark .auth-page{--bg-solid: #0b1020;--text-light: #f9fafb;--text-secondary: #9ca3af;--card-bg: #151827;--border-color: #272a3a;--input-bg: #0b1020;--card-shadow: rgba(0, 0, 0, .35)}.auth-header-nav{position:fixed;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:1.5rem 4rem;background:#0a0c18bf;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border-color);z-index:100;transition:background .3s,border-color .3s}body:not(.dark) .auth-header-nav{background:#f0f0f0cc}.theme-toggle-btn{background:var(--card-bg);border:1px solid var(--border-color);padding:.5rem .75rem;border-radius:10px;cursor:pointer;font-size:1.25rem;transition:transform .2s,box-shadow .2s,border-color .2s}.auth-card{width:100%;max-width:480px;background:radial-gradient(circle at 0% 0%,rgba(139,92,246,.25),transparent 60%),radial-gradient(circle at 100% 100%,rgba(236,72,153,.22),transparent 60%),var(--card-bg);border-radius:24px;padding:3rem;border:1px solid var(--border-color);box-shadow:0 24px 70px var(--card-shadow);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;position:relative;overflow:hidden;animation:cardEntrance .6s ease-out}@keyframes cardEntrance{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-card:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at 0% 0%,rgba(139,92,246,.32),transparent 60%);opacity:.4;pointer-events:none;animation:rotateGradient 15s linear infinite}@keyframes rotateGradient{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-card:after{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,#8b5cf666,#ec489966,#f9731666,#8b5cf666);background-size:300% 300%;border-radius:24px;opacity:0;z-index:-1;transition:opacity .4s ease;animation:gradientShift 8s ease infinite}.auth-card:hover:after{opacity:1}.auth-card:hover{transform:translateY(-8px);box-shadow:0 32px 110px #8b5cf680;border-color:#8b5cf6cc}.auth-content{width:100%;position:relative;z-index:1}.auth-title-section{text-align:center;margin-bottom:2.5rem;animation:titleFadeIn .8s ease-out .2s both}@keyframes titleFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.auth-title{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:var(--text-light);background:linear-gradient(135deg,#8b5cf6,#ec4899,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% auto;animation:shimmer 3s linear infinite}.auth-subtitle{font-size:1rem;color:var(--text-secondary);animation:subtitleFadeIn .8s ease-out .4s both}@keyframes subtitleFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-input{width:100%;padding:.875rem 1rem;background:var(--input-bg);border:2px solid var(--border-color);border-radius:12px;font-size:1rem;color:var(--text-light);transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;position:relative}.form-input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf62e,0 8px 20px #8b5cf626;transform:translateY(-2px);background:var(--card-bg)}body.dark .form-input:focus{box-shadow:0 0 0 4px #8b5cf640,0 8px 20px #8b5cf633}.form-input:hover{border-color:#8b5cf680}.password-toggle{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1.25rem;opacity:.6;transition:opacity .2s,transform .15s;padding:0}.password-toggle:hover{opacity:1;transform:translateY(-50%) scale(1.05)}.form-options{display:flex;justify-content:space-between;align-items:center;margin-top:-.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-input{width:1rem;height:1rem;cursor:pointer;accent-color:#8b5cf6}.submit-button{width:100%;padding:1rem;background:linear-gradient(135deg,#8b5cf6,#ec4899,#f97316);background-size:200% 200%;color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 10px 28px #8b5cf673;margin-top:.5rem;font-family:inherit;position:relative;overflow:hidden;animation:buttonPulse 2s ease-in-out infinite}@keyframes buttonPulse{0%,to{box-shadow:0 10px 28px #8b5cf673}50%{box-shadow:0 10px 35px #8b5cf699}}.submit-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.submit-button:hover:before{width:300px;height:300px}.submit-button:hover{transform:translateY(-3px) scale(1.02);background-position:100% 0;box-shadow:0 18px 45px #8b5cf6a6}.submit-button:active{transform:translateY(-1px) scale(.98);box-shadow:0 8px 20px #8b5cf666}.divider{margin:2rem 0 1.5rem;text-align:center;position:relative}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border-color);z-index:0}.divider span{font-size:.875rem;color:var(--text-light);font-weight:500;background:var(--card-bg);padding:0 1rem;position:relative;z-index:1}.social-buttons{display:block;margin-bottom:2rem;width:100%;text-align:center}.social-button-wrapper{display:block!important;text-align:center!important;width:100%!important}.social-button-wrapper>div{display:inline-block!important;margin:0 auto!important}.social-button{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem;background:var(--input-bg);border:2px solid var(--border-color);border-radius:12px;font-size:.875rem;font-weight:600;color:var(--text-light);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;position:relative;overflow:hidden}.social-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#8b5cf61a;transform:translate(-50%,-50%);transition:width .5s,height .5s}.social-button:hover:before{width:300px;height:300px}.social-button:hover{border-color:#8b5cf6;transform:translateY(-3px) scale(1.02);box-shadow:0 12px 28px #8b5cf640}.social-button:active{transform:translateY(-1px) scale(.98)}.social-button:disabled{opacity:.5;cursor:not-allowed}.social-button:disabled:hover{transform:none;box-shadow:none;border-color:var(--border-color)}.social-icon{font-size:1.1rem;font-weight:700;opacity:.9;position:relative;z-index:1;transition:transform .3s ease}.social-button:hover .social-icon{transform:scale(1.15) rotate(5deg)}@media(max-width:480px){.auth-header-nav{padding:1rem}.auth-card{padding:1.5rem}.form-options{flex-direction:column;gap:1rem;align-items:flex-start}}.auth-error-banner{background:linear-gradient(135deg,#ef444426,#dc26261a);border:1px solid rgba(239,68,68,.4);border-radius:12px;padding:1rem 1.25rem;color:#ef4444;font-size:.9rem;font-weight:500;margin-bottom:1rem;animation:errorShake .5s ease-in-out;display:flex;align-items:center;gap:.5rem}.auth-error-banner:before{content:"⚠️";font-size:1.1rem}@keyframes errorShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}body:not(.dark) .auth-error-banner{background:linear-gradient(135deg,#ef44441a,#dc26260d);color:#dc2626}.submit-button:disabled{opacity:.7;cursor:not-allowed;animation:none;transform:none}.submit-button:disabled:hover{transform:none;box-shadow:0 10px 28px #8b5cf673}.auth-page{min-height:100vh;background:var(--bg-solid, #1a1a2e);transition:background .3s}body:not(.dark) .auth-page{--bg-solid: #f0f0f0;--text-light: #1a1a1a;--text-secondary: #666;--card-bg: #ffffff;--border-color: #e5e7eb;--input-bg: #f9fafb;--card-shadow: rgba(0, 0, 0, .1)}body.dark .auth-page{--bg-solid: #1a1a2e;--text-light: #f9fafb;--text-secondary: #9ca3af;--card-bg: #2d3748;--border-color: #374151;--input-bg: #1a1a2e;--card-shadow: rgba(0, 0, 0, .3)}.auth-header-nav{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:1.5rem 4rem;background:#1a1a2eb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);z-index:100;transition:background .3s}body:not(.dark) .auth-header-nav{background:#f0f0f0b3}.auth-logo{cursor:pointer;transition:transform .2s}.auth-logo:hover{transform:scale(1.05)}.auth-brand{font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.theme-toggle-btn{background:var(--card-bg);border:1px solid var(--border-color);padding:.5rem .75rem;border-radius:8px;cursor:pointer;font-size:1.25rem;transition:all .2s}.theme-toggle-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--card-shadow)}.auth-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8rem 2rem 4rem}.auth-card{width:100%;max-width:480px;background:var(--card-bg);border:2px solid var(--border-color);border-radius:24px;padding:3rem;box-shadow:0 20px 60px var(--card-shadow);transition:all .3s}.auth-content{width:100%}.auth-title-section{text-align:center;margin-bottom:2.5rem}.auth-title{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:var(--text-light)}.auth-subtitle{font-size:1rem;color:var(--text-secondary)}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-label{font-size:.875rem;font-weight:600;color:var(--text-light)}.form-input{width:100%;padding:.875rem 1rem;background:var(--input-bg);border:2px solid var(--border-color);border-radius:12px;font-size:1rem;color:var(--text-light);transition:all .2s;font-family:inherit}.form-input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf626}body.dark .form-input:focus{box-shadow:0 0 0 3px #8b5cf633}.form-input::placeholder{color:#6b7280}body:not(.dark) .form-input::placeholder{color:#9ca3af}.password-input-wrapper{position:relative}.password-toggle{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1.25rem;opacity:.6;transition:opacity .2s;padding:0}.password-toggle:hover{opacity:1}.checkbox-label{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1.5}.checkbox-label.terms{margin-top:-.5rem}.checkbox-input{width:1rem;height:1rem;cursor:pointer;flex-shrink:0;margin-top:.125rem;accent-color:#8b5cf6}.link-button{background:none;border:none;color:var(--text-secondary);font-size:.875rem;cursor:pointer;transition:color .2s;padding:0;font-family:inherit}.link-button:hover{color:#8b5cf6}.link-button.primary{color:#8b5cf6;font-weight:600}.link-button.primary:hover{color:#7c3aed}.submit-button{width:100%;padding:1rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 8px 20px #8b5cf64d;margin-top:.5rem;font-family:inherit}.submit-button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #8b5cf666}.submit-button:active{transform:translateY(0)}.password-strength{display:flex;gap:.25rem;margin-top:.5rem}.strength-bar{flex:1;height:4px;background:var(--border-color);border-radius:2px;transition:background .3s}.strength-bar.active{background:#8b5cf6}.strength-bar.active.weak{background:#ef4444}.strength-bar.active.medium{background:#f59e0b}.strength-bar.active.strong{background:#10b981}.strength-text{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem}.divider{position:relative;text-align:center;margin:2rem 0 1.5rem}.divider:before,.divider:after{content:"";position:absolute;top:50%;width:45%;height:1px;background:var(--border-color)}.divider:before{left:0}.divider:after{right:0}.divider span{background:var(--card-bg);padding:0 1rem;font-size:.875rem;color:var(--text-secondary)}.social-buttons{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}.social-button{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem;background:var(--input-bg);border:2px solid var(--border-color);border-radius:12px;font-size:.875rem;font-weight:600;color:var(--text-light);cursor:pointer;transition:all .2s;font-family:inherit}.social-button:hover{border-color:#8b5cf6;transform:translateY(-2px)}.social-icon{font-size:1.25rem;font-weight:700}.auth-footer-text{text-align:center;font-size:.875rem;color:var(--text-secondary)}.back-button{margin-top:2rem;background:none;border:none;color:var(--text-secondary);font-size:1rem;cursor:pointer;transition:color .2s;font-family:inherit;padding:.5rem 1rem}.back-button:hover{color:#8b5cf6}@media(max-width:768px){.auth-header-nav{padding:1rem 2rem}.auth-brand{font-size:1.5rem}.auth-container{padding:7rem 1.5rem 3rem}.auth-card{padding:2rem}.auth-title{font-size:1.75rem}.social-buttons{grid-template-columns:1fr}}@media(max-width:480px){.auth-header-nav{padding:1rem}.auth-card{padding:1.5rem}.form-group{gap:.375rem}}.home-page{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);transition:background .3s ease;padding-top:0}body.dark .home-page{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.home-navbar{position:sticky;top:0;z-index:1000;background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(236,72,153,.1);box-shadow:0 4px 24px #8b5cf614;transition:all .3s ease}body.dark .home-navbar{background:#110a1fe6;border-bottom-color:#8b5cf633;box-shadow:0 4px 24px #ec489926}.home-main{padding:6rem 0 3rem;min-height:100vh}.home-container{max-width:1400px;margin:0 auto;padding:0 3rem}.home-layout{display:grid;grid-template-columns:240px 1fr 260px;gap:2rem;align-items:start;padding-bottom:2rem}.left-sidebar{position:sticky;top:100px;display:flex;flex-direction:column;gap:1.5rem}.sidebar-card{background:#fff;border:2px solid rgba(139,92,246,.1);border-radius:20px;padding:1.5rem;box-shadow:0 4px 20px #8b5cf614;transition:all .3s ease;overflow:hidden}.sidebar-card.navigation-menu{padding:1rem}body.dark .sidebar-card{background:#8b5cf60d;border-color:#8b5cf633}.sidebar-card:hover{transform:translateY(-2px);box-shadow:0 8px 28px #8b5cf626}.sidebar-title{font-size:1.125rem;font-weight:800;color:var(--text-color);margin:0 0 1.25rem;letter-spacing:-.01em}.quick-links{display:flex;flex-direction:column;gap:.75rem}.quick-link-btn{width:100%;padding:1rem;background:#fff;border:2px solid rgba(139,92,246,.1);border-radius:12px;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .3s ease;text-align:left}body.dark .quick-link-btn{background:#8b5cf60d;border-color:#8b5cf633}.quick-link-btn:hover{background:#8b5cf60d;border-color:#8b5cf6;transform:translate(4px);box-shadow:0 4px 16px #8b5cf61a}.quick-icon{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#8b5cf6;flex-shrink:0;transition:all .3s ease}.quick-link-btn:hover .quick-icon{color:#ec4899;transform:scale(1.1)}.explore-courses-btn{width:100%;margin-top:1.5rem;padding:.875rem 1.25rem;background:#8b5cf614;border:2px solid rgba(139,92,246,.2);border-radius:12px;display:flex;align-items:center;justify-content:center;gap:.625rem;cursor:pointer;transition:all .3s ease;color:#8b5cf6;font-size:.9375rem;font-weight:600;box-shadow:none}body.dark .explore-courses-btn{background:#8b5cf61f;border-color:#8b5cf64d;color:#a78bfa}.explore-courses-btn:hover{background:linear-gradient(135deg,#8b5cf6,#ec4899);border-color:transparent;color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf659}.explore-icon{font-size:1.25rem;display:flex;align-items:center;justify-content:center}.quick-text{flex:1}.quick-label{font-size:.9375rem;font-weight:700;color:var(--text-color);margin-bottom:.25rem}.quick-count{font-size:.8125rem;color:#a855f7;font-weight:600}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-empty{text-align:center;padding:2rem 1rem;color:#a0a0a0;font-size:.875rem}body.dark .activity-empty{color:#666}.activity-item{display:flex;gap:.875rem;align-items:flex-start}.activity-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.activity-icon.completed{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.activity-icon.progress{background:linear-gradient(135deg,#8b5cf6,#ec4899)}.activity-icon.certificate{background:linear-gradient(135deg,#f59e0b,#d97706)}.activity-icon.forum{background:linear-gradient(135deg,#3b82f6,#2563eb)}.activity-icon.info{background:linear-gradient(135deg,#06b6d4,#0891b2)}.activity-details{flex:1}.activity-text{font-size:.875rem;font-weight:600;color:var(--text-color);line-height:1.4;margin-bottom:.25rem}.activity-time{font-size:.75rem;color:#a855f7;font-weight:500}.main-content{min-width:0;padding:2rem;background:#fff;border-radius:24px;border:2px solid rgba(139,92,246,.08);box-shadow:0 4px 24px #8b5cf60f}body.dark .main-content{background:#8b5cf608;border-color:#8b5cf626}.hero-section{background:#fff;border:2px solid rgba(139,92,246,.1);border-radius:24px;padding:2rem 2.5rem;margin-bottom:2rem;box-shadow:0 8px 32px #8b5cf61f;transition:all .3s ease}body.dark .hero-section{background:#8b5cf60d;border-color:#8b5cf633}.hero-welcome{margin-bottom:1.75rem;text-align:center}.welcome-title{font-size:2.25rem;font-weight:800;color:var(--text-color);margin-bottom:.5rem;letter-spacing:-.03em;line-height:1.2}.welcome-subtitle{font-size:1.125rem;color:#a855f7;font-weight:500;line-height:1.6}body.dark .welcome-subtitle{color:#c084fc}.hero-section .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.welcome-section{margin-bottom:2rem}.stats-section{margin-bottom:4rem}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.stat-card{position:relative;padding:1.25rem;background:#fff;border-radius:16px;border:2px solid rgba(139,92,246,.08);display:flex;align-items:center;gap:1rem;transition:all .3s ease;overflow:hidden;box-shadow:0 2px 12px #8b5cf60f;min-height:110px}body.dark .stat-card{background:#8b5cf608;border-color:#8b5cf626}.stat-card:hover{transform:translateY(-6px);border-color:#8b5cf640;box-shadow:0 12px 32px #8b5cf626}.stat-decoration{position:absolute;top:-30%;right:-15%;width:120px;height:120px;background:radial-gradient(circle,rgba(139,92,246,.08) 0%,transparent 70%);border-radius:50%;transition:all .3s ease}.stat-card:hover .stat-decoration{transform:scale(1.3);opacity:.6}.stat-icon-large{width:56px;height:56px;background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.75rem;color:#8b5cf6;flex-shrink:0;transition:all .3s ease;border:2px solid rgba(139,92,246,.15)}.stat-card:hover .stat-icon-large{background:linear-gradient(135deg,#8b5cf626,#ec489926);transform:rotate(10deg) scale(1.05);border-color:#8b5cf64d}.stat-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.stat-number{font-size:2.25rem;font-weight:800;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;letter-spacing:-.02em}.stat-text{font-size:.875rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}body.dark .stat-label{color:#c084fc}.section{margin-bottom:3.5rem}.section.continue-section,.section.categories-section,.section.courses-section{background:transparent;border:none;border-radius:0;padding:0;box-shadow:none}body.dark .section.continue-section,body.dark .section.categories-section,body.dark .section.courses-section{background:transparent;border:none}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.section-title{font-size:2rem;font-weight:800;color:var(--text-color);letter-spacing:-.02em}.view-all-btn{padding:.75rem 1.5rem;background:#8b5cf614;border:2px solid rgba(139,92,246,.2);border-radius:12px;font-size:.9375rem;font-weight:700;color:#8b5cf6;cursor:pointer;transition:all .3s ease}.view-all-btn:hover{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border-color:transparent;transform:translate(4px);box-shadow:0 6px 20px #8b5cf64d}.continue-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.continue-card{background:#fff;border-radius:20px;overflow:hidden;border:2px solid rgba(139,92,246,.1);transition:all .3s ease;box-shadow:0 4px 20px #8b5cf614}body.dark .continue-card{background:#8b5cf60d;border-color:#8b5cf633}.continue-card:hover{transform:translateY(-8px);border-color:#8b5cf6;box-shadow:0 20px 40px #8b5cf633}.continue-image{height:200px;background-size:cover;background-position:center;position:relative}.image-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(139,92,246,.8) 100%)}.continue-content{padding:2rem}.continue-title{font-size:1.375rem;font-weight:700;color:var(--text-color);margin-bottom:.5rem;line-height:1.3;letter-spacing:-.01em}.continue-instructor{font-size:.9375rem;color:#a855f7;font-weight:600;margin-bottom:1.5rem}.continue-progress-section{margin-bottom:1.5rem}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.progress-label{font-size:.875rem;font-weight:600;color:var(--text-color)}.progress-percentage{font-size:.875rem;font-weight:700;color:#8b5cf6}.progress-bar{width:100%;height:10px;background:#8b5cf626;border-radius:10px;overflow:hidden;margin-bottom:1rem}.progress-fill{height:100%;background:linear-gradient(90deg,#8b5cf6,#ec4899);border-radius:10px;transition:width .6s ease;box-shadow:0 2px 12px #8b5cf666}.next-lesson{font-size:.9375rem;font-weight:600;color:var(--text-color);margin-bottom:.25rem}.time-left{font-size:.875rem;color:#a855f7}.continue-btn{width:100%;padding:1rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #8b5cf64d}.continue-btn:hover{transform:translateY(-2px);box-shadow:0 12px 32px #8b5cf666}.explore-link{background:#8b5cf614;border:2px solid rgba(139,92,246,.2);border-radius:8px;padding:.5rem 1rem;color:#8b5cf6;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit;font-size:inherit}body.dark .explore-link{background:#8b5cf61f;border-color:#8b5cf64d;color:#a78bfa}.explore-link:hover{background:linear-gradient(135deg,#8b5cf6,#ec4899);border-color:transparent;color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf64d}.categories-section{margin-bottom:2rem!important}.categories-section .section-header{margin-bottom:1.5rem}.categories-section .section-title{font-size:1.5rem;margin-bottom:0;position:relative;display:inline-block}.categories-grid{display:flex;flex-wrap:wrap;gap:.875rem;justify-content:flex-start}.category-btn{padding:.75rem 1.5rem;background:#fff;border:2px solid rgba(139,92,246,.2);border-radius:12px;font-size:.9375rem;font-weight:600;color:var(--text-color);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;gap:.625rem;box-shadow:0 2px 8px #8b5cf614;white-space:nowrap;position:relative;overflow:hidden}.category-btn:before{display:none}body.dark .category-btn{background:#8b5cf614;border-color:#8b5cf640}.category-btn:hover:before{display:none}.category-btn:hover{border-color:#8b5cf680;transform:translateY(-2px);box-shadow:0 4px 16px #8b5cf626}.category-btn:hover .category-icon{transform:scale(1.15);color:#ec4899}.category-btn.active{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border-color:transparent;box-shadow:0 4px 20px #8b5cf659;transform:translateY(-2px)}.category-btn.active .category-icon{color:#fff}.category-btn.active:before{display:none}.category-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#8b5cf6;transition:all .3s ease;margin:0;padding:0}.category-name{font-size:.9375rem;font-weight:600;letter-spacing:.01em;line-height:1.2;display:flex;align-items:center;margin:0;padding:0}.courses-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid rgba(139,92,246,.15)}body.dark .courses-section .section-header{border-bottom-color:#8b5cf640}.courses-section .section-title{font-size:1.5rem}.courses-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.course-card{background:#fff;border-radius:20px;overflow:hidden;border:2px solid rgba(139,92,246,.1);transition:all .3s ease;display:flex;flex-direction:column;box-shadow:0 4px 20px #8b5cf614}body.dark .course-card{background:#8b5cf60d;border-color:#8b5cf633}.course-card:hover{transform:translateY(-12px);border-color:#8b5cf6;box-shadow:0 24px 48px #8b5cf633}.course-image{height:220px;background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-start;justify-content:flex-end;padding:1rem}.course-image-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 100%)}.course-badge{position:relative;z-index:1;padding:.5rem 1rem;border-radius:8px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px #0000004d}.course-badge.bestseller{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.course-badge.hot{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.course-content{padding:1.75rem;display:flex;flex-direction:column;gap:1rem;flex:1}.course-title{font-size:1.25rem;font-weight:700;color:var(--text-color);line-height:1.4;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-instructor{font-size:.9375rem;color:#a855f7;font-weight:600}.course-meta{display:flex;flex-direction:column;gap:.75rem}.course-rating{display:flex;align-items:center;gap:.5rem}.rating-value{font-weight:700;color:var(--text-color);font-size:.9375rem}.rating-count{font-size:.875rem;color:#a855f7}.course-stats{display:flex;gap:1.25rem;font-size:.875rem;color:#a855f7;font-weight:600}.course-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:2px solid rgba(139,92,246,.1)}.level-badge{padding:.375rem .875rem;border-radius:8px;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.level-badge.beginner{background:#22c55e26;color:#16a34a}.level-badge.intermediate{background:#fbbf2426;color:#d97706}.level-badge.advanced{background:#8b5cf626;color:#8b5cf6}.course-free-badge{display:flex;align-items:center}.free-tag{padding:.5rem 1.25rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:1rem;font-weight:800;border-radius:10px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px #10b9814d}.enroll-btn{width:100%;padding:1rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:auto;box-shadow:0 6px 20px #8b5cf64d}.enroll-btn svg{width:20px;height:20px;transition:transform .3s ease}.enroll-btn:hover{transform:translateY(-2px);box-shadow:0 12px 32px #8b5cf666}.enroll-btn:hover svg{transform:translate(4px)}.cta-section{position:relative;padding:5rem 4rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:24px;overflow:hidden;margin-top:5rem;display:flex;align-items:center;justify-content:space-between;box-shadow:0 24px 60px #8b5cf64d}.cta-content{position:relative;z-index:2;max-width:600px}.cta-title{font-size:3rem;font-weight:800;color:#fff;margin-bottom:1.25rem;line-height:1.2;letter-spacing:-.02em}.cta-text{font-size:1.25rem;color:#fffffff2;margin-bottom:2.5rem;line-height:1.6}.cta-btn{padding:1.25rem 3rem;background:#fff;color:#8b5cf6;border:none;border-radius:14px;font-size:1.125rem;font-weight:800;cursor:pointer;transition:all .3s ease;box-shadow:0 12px 32px #0003}.cta-btn:hover{transform:translateY(-4px);box-shadow:0 20px 48px #0000004d}.cta-decoration{position:absolute;right:0;top:0;bottom:0;width:50%;pointer-events:none}.decoration-circle{position:absolute;border-radius:50%;background:#ffffff1a}.circle-1{width:400px;height:400px;top:-100px;right:-50px}.circle-2{width:280px;height:280px;bottom:-80px;right:100px}.circle-3{width:180px;height:180px;top:50%;right:20px;transform:translateY(-50%)}.right-sidebar{position:sticky;top:100px;display:flex;flex-direction:column;gap:1.5rem}.goals-list{display:flex;flex-direction:column;gap:1.25rem}.goal-item{display:flex;flex-direction:column;gap:.75rem}.goal-header{display:flex;justify-content:space-between;align-items:center}.goal-name{font-size:.9375rem;font-weight:700;color:var(--text-color)}.goal-progress-text{font-size:.875rem;font-weight:700;color:#8b5cf6}.goal-progress-bar{width:100%;height:8px;background:#8b5cf626;border-radius:10px;overflow:hidden}.goal-progress-fill{height:100%;background:linear-gradient(90deg,#8b5cf6,#ec4899);border-radius:10px;transition:width .6s ease;box-shadow:0 2px 8px #8b5cf64d}.goal-progress-fill.completed{background:linear-gradient(90deg,#10b981,#059669)}.achievements-grid{display:flex;flex-direction:column;gap:.75rem;width:100%}.achievement-badge{display:flex;align-items:center;gap:.875rem;padding:.875rem;border-radius:12px;transition:all .3s ease;width:100%;box-sizing:border-box}.achievement-badge.earned{background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border:2px solid rgba(139,92,246,.3);cursor:pointer}.achievement-badge.earned:hover{transform:translate(4px);border-color:#8b5cf6;box-shadow:0 4px 16px #8b5cf640}.achievement-badge.locked{background:#6b72801a;border:2px solid rgba(107,114,128,.2);opacity:.6}.badge-icon{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.achievement-badge.earned .badge-icon{background:linear-gradient(135deg,#8b5cf6,#ec4899)}.achievement-badge.locked .badge-icon{background:#e5e7eb}.badge-name{font-size:.875rem;font-weight:700;color:var(--text-color);flex:1;text-align:left}.reminder-content{display:flex;flex-direction:column;gap:1rem}.reminder-text{font-size:.9375rem;color:#a855f7;line-height:1.5;margin:0 0 .5rem}.reminder-days-text{font-size:.875rem;color:#6b7280;line-height:1.5;margin:0 0 1rem;padding:.5rem;background:#8b5cf60d;border-radius:8px;text-align:center}body.dark .reminder-days-text{color:#9ca3af;background:#8b5cf61a}.reminder-btn{width:100%;padding:.875rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:10px;font-size:.9375rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #8b5cf64d}.reminder-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #8b5cf666}.customize-goals-btn{width:100%;margin-top:1rem;padding:.75rem;background:#8b5cf61a;color:#8b5cf6;border:1px solid rgba(139,92,246,.3);border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease}.customize-goals-btn:hover{background:#8b5cf633;border-color:#8b5cf680;transform:translateY(-1px)}body.dark .customize-goals-btn{background:#8b5cf626;color:#c4b5fd;border-color:#8b5cf666}body.dark .customize-goals-btn:hover{background:#8b5cf640;border-color:#8b5cf699}.leaderboard-list{display:flex;flex-direction:column;gap:.875rem}.leaderboard-item{display:flex;align-items:center;gap:1rem;padding:.875rem;background:#8b5cf60d;border-radius:12px;transition:all .3s ease}.leaderboard-item:hover{background:#8b5cf61a;transform:translate(4px)}.leaderboard-item.current{background:linear-gradient(135deg,#8b5cf626,#ec489926);border:2px solid #8b5cf6}.rank{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9375rem;flex-shrink:0}.rank.gold{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;box-shadow:0 4px 12px #fbbf2466}.rank.silver{background:linear-gradient(135deg,#94a3b8,#64748b);color:#fff;box-shadow:0 4px 12px #94a3b866}.rank.bronze{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;box-shadow:0 4px 12px #f9731666}.user-details{flex:1}.user-name{font-size:.9375rem;font-weight:700;color:var(--text-color);margin-bottom:.125rem}.user-points{font-size:.8125rem;color:#a855f7;font-weight:600}@media(max-width:1280px){.home-layout{grid-template-columns:220px 1fr 240px;gap:1.25rem}.courses-grid,.continue-grid{gap:1.25rem}.left-sidebar,.right-sidebar{top:80px}}@media(max-width:1024px){.home-layout{grid-template-columns:1fr}.hero-section{padding:2.5rem}.hero-section .stats-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}.section.continue-section,.section.categories-section,.section.courses-section{padding:2rem}.courses-grid,.continue-grid{grid-template-columns:1fr}.left-sidebar,.right-sidebar{position:static;max-width:100%}.right-sidebar{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.left-sidebar{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2rem}}@media(max-width:1024px){.home-nav-container{padding:.875rem 1.5rem}.home-container{padding:0 1.5rem}.section.continue-section,.section.categories-section,.section.courses-section{padding:0}.categories-grid{gap:.75rem}.category-btn{padding:.5rem 1rem;font-size:.8125rem;border-radius:6px}.courses-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.cta-section{padding:3.5rem 2.5rem;flex-direction:column;text-align:center}.cta-title{font-size:2.25rem}.cta-decoration{width:100%;height:300px;top:auto}}@media(max-width:768px){.home-nav-search{display:none}.hero-section{padding:2rem}.hero-welcome{margin-bottom:2rem}.hero-section .stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.left-sidebar,.right-sidebar{grid-template-columns:1fr}.welcome-title{font-size:2rem}.welcome-subtitle{font-size:1.125rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.stat-card{padding:1.5rem}.stat-icon{width:52px;height:52px;font-size:1.5rem}.stat-value{font-size:2rem}.continue-grid,.courses-grid{grid-template-columns:1fr;gap:1.25rem}.categories-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.category-btn{padding:1.5rem 1rem}.category-icon{width:64px;height:64px;font-size:2.5rem}.categories-grid{gap:.75rem}.category-btn{padding:.75rem 1.25rem;font-size:.875rem}.section.continue-section,.section.categories-section,.section.courses-section{padding:0}.categories-section .section-title{font-size:1.375rem}.categories-grid{gap:.625rem}.category-btn{padding:.625rem 1rem;font-size:.8125rem}.category-icon{font-size:1.125rem}.category-name{font-size:.8125rem}.courses-section .section-title{font-size:1.375rem}.section-title{font-size:1.5rem}.cta-title{font-size:1.75rem}.cta-text{font-size:1rem}}@media(max-width:480px){.home-nav-container{padding:.75rem 1rem;gap:1rem}.home-container{padding:0 1rem}.home-brand-name{display:none}.stats-grid{grid-template-columns:1fr}.user-dropdown{right:-1rem;width:260px}}.achievements-section{margin-bottom:3rem}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.achievement-card{background:#fff;border-radius:16px;padding:1.75rem;display:flex;gap:1.5rem;align-items:flex-start;border:2px solid rgba(139,92,246,.08);transition:all .3s ease;box-shadow:0 2px 8px #8b5cf60f}body.dark .achievement-card{background:#8b5cf608;border-color:#8b5cf626}.achievement-card:hover{transform:translateY(-4px);border-color:#8b5cf633;box-shadow:0 8px 24px #8b5cf61f}.achievement-icon{width:56px;height:56px;background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.75rem;flex-shrink:0}.achievement-content{flex:1}.achievement-title{font-size:1.125rem;font-weight:700;color:var(--text-primary);margin:0 0 .375rem}.achievement-desc{font-size:.9375rem;color:var(--text-secondary);margin:0 0 .625rem}.achievement-date{font-size:.8125rem;color:#a855f7;font-weight:600}.deadlines-section{margin-bottom:3rem}.deadlines-list{display:flex;flex-direction:column;gap:1rem}.deadline-item{background:#fff;border-radius:16px;padding:1.5rem;display:flex;gap:1.5rem;align-items:center;border:2px solid rgba(139,92,246,.08);transition:all .3s ease;box-shadow:0 2px 8px #8b5cf60f}body.dark .deadline-item{background:#8b5cf608;border-color:#8b5cf626}.deadline-item:hover{transform:translate(8px);border-color:#8b5cf633;box-shadow:0 4px 16px #8b5cf61f}.deadline-date{width:64px;height:64px;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.date-day{font-size:1.75rem;font-weight:800;line-height:1}.date-month{font-size:.75rem;font-weight:600;text-transform:uppercase;margin-top:.25rem}.deadline-details{flex:1}.deadline-title{font-size:1.0625rem;font-weight:700;color:var(--text-primary);margin:0 0 .375rem}.deadline-course{font-size:.875rem;color:var(--text-secondary);margin:0}.deadline-badge{padding:.5rem 1rem;border-radius:8px;font-size:.8125rem;font-weight:600;background:#8b5cf61a;color:#8b5cf6;white-space:nowrap}.deadline-badge.urgent{background:#ef44441a;color:#ef4444}@media(max-width:768px){.achievements-grid{grid-template-columns:1fr}.deadline-item{flex-direction:column;align-items:flex-start;gap:1rem}.deadline-badge{align-self:flex-start}}.home-navbar{position:fixed;top:0;left:0;right:0;z-index:9999;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(236,72,153,.1);box-shadow:0 4px 24px #8b5cf614;transition:all .3s ease}body.dark .home-navbar{background:#110a1ff2;border-bottom-color:#8b5cf633;box-shadow:0 4px 24px #ec489926}.home-nav-container{max-width:1400px;margin:0 auto;padding:.875rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.home-nav-left{display:flex;align-items:center;gap:2rem;flex:1}.home-logo{display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:transform .2s ease}.home-logo:hover{transform:translateY(-2px)}.home-logo-icon{width:40px;height:40px;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 16px #8b5cf64d}.home-logo-icon svg{width:24px;height:24px}.home-brand-name{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.home-nav-search{position:relative;flex:1;max-width:500px}.home-nav-search .search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#a855f7}.home-nav-search input{width:100%;padding:.75rem 1rem .75rem 3rem;background:#8b5cf60d;border:2px solid rgba(139,92,246,.15);border-radius:14px;font-size:.9375rem;color:var(--text-color);transition:all .3s ease}.home-nav-search input::placeholder{color:#a855f7;opacity:.6}.home-nav-search input:focus{outline:none;background:#fff;border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf61a,0 8px 24px #8b5cf626}body.dark .home-nav-search input{background:#8b5cf61a;border-color:#8b5cf633;color:#f3e8ff}body.dark .home-nav-search input:focus{background:#8b5cf626;border-color:#a855f7}.home-nav-right{display:flex;align-items:center;gap:1rem}.nav-icon-button{position:relative;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#8b5cf614;border:none;border-radius:12px;font-size:1.25rem;cursor:pointer;transition:all .3s ease}.nav-icon-button:hover{background:linear-gradient(135deg,#8b5cf6,#ec4899);transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf64d}body.dark .nav-icon-button{background:#8b5cf626}.nav-notifications{position:relative}.notification-badge{position:absolute;top:6px;right:6px;min-width:18px;height:18px;padding:0 5px;background:linear-gradient(135deg,#ec4899,#ef4444);color:#fff;font-size:.6875rem;font-weight:700;border-radius:10px;display:flex;align-items:center;justify-content:center;border:2px solid white;box-shadow:0 2px 8px #ec489966}body.dark .notification-badge{border-color:#1a0e1f}.nav-user-menu{position:relative}.user-avatar-btn{background:none;border:none;cursor:pointer;padding:0}.user-avatar{width:44px;height:44px;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem;box-shadow:0 4px 16px #8b5cf64d;transition:all .3s ease;overflow:hidden;position:relative}.user-avatar .avatar-image{width:100%;height:100%;object-fit:cover;border-radius:50%}.user-avatar .avatar-initials{position:relative;z-index:1}.user-avatar-btn:hover .user-avatar{transform:scale(1.08);box-shadow:0 6px 24px #8b5cf666}.user-avatar.large{width:56px;height:56px;font-size:1.25rem}.user-dropdown{position:absolute;top:calc(100% + 1rem);right:0;width:280px;background:#fff;border-radius:16px;box-shadow:0 20px 60px #8b5cf640;border:1px solid rgba(139,92,246,.1);overflow:hidden;z-index:1000;animation:dropdownFadeIn .3s ease}body.dark .user-dropdown{background:#1f1029;border-color:#8b5cf633}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-dropdown-header{padding:1.5rem;display:flex;align-items:center;gap:1rem;background:linear-gradient(135deg,#8b5cf614,#ec489914)}.user-info{flex:1}.user-name{font-weight:700;font-size:1rem;color:var(--text-color);margin-bottom:.25rem}.user-email{font-size:.8125rem;color:#a855f7}.user-dropdown-divider{height:1px;background:#8b5cf61a;margin:.5rem 0}.user-dropdown-item{width:100%;padding:.875rem 1.5rem;display:flex;align-items:center;gap:.875rem;background:none;border:none;font-size:.9375rem;font-weight:500;color:var(--text-color);cursor:pointer;transition:all .2s ease;text-align:left}.user-dropdown-item:hover{background:linear-gradient(135deg,#8b5cf614,#ec489914);padding-left:2rem}.user-dropdown-item.danger{color:#ef4444}.user-dropdown-item.danger:hover{background:#ef444414}.user-dropdown-item span{font-size:1.125rem}.nav-signin-btn{padding:.625rem 1.75rem;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s ease;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;box-shadow:0 4px 16px #8b5cf64d}.nav-signin-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px #8b5cf666}@media(max-width:768px){.home-nav-container{padding:.75rem 1rem}.home-nav-search{display:none}.home-brand-name{font-size:1.25rem}.home-logo-icon{width:36px;height:36px}.home-logo-icon svg{width:20px;height:20px}}:root{--gradient-primary: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);--gradient-hover: linear-gradient(135deg, #7c3aed 0%, #db2777 100%);--shadow-sm: 0 2px 8px rgba(139, 92, 246, .12);--shadow-md: 0 8px 24px rgba(139, 92, 246, .18);--shadow-lg: 0 16px 40px rgba(139, 92, 246, .25);--border-radius: 16px;--transition: all .3s cubic-bezier(.4, 0, .2, 1)}.explore-courses-page{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);transition:background .3s ease;padding-top:80px}body.dark .explore-courses-page{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.explore-main{min-height:calc(100vh - 80px);padding-top:2rem}.explore-container{max-width:1400px;margin:0 auto;padding:2rem}.explore-layout-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:1024px){.explore-layout-grid{grid-template-columns:260px 1fr}}.explore-main-content{display:flex;flex-direction:column;gap:1rem}.error-message{color:#ef4444;font-weight:600;padding:1rem;background:#ef44441a;border-radius:8px;border-left:4px solid #ef4444}.loading-message,.no-results-message{color:var(--text-secondary);font-weight:500;padding:2rem;text-align:center;background:#8b5cf60d;border-radius:12px}.categories-filter-section{display:flex;align-items:center;gap:1.25rem;margin-bottom:2.5rem;margin-top:2rem;padding:1.5rem;background:#ffffff80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--border-radius);border:1px solid rgba(139,92,246,.1);box-shadow:var(--shadow-sm)}body.dark .categories-filter-section{background:#11182780;border-color:#8b5cf633}.categories-scroll{display:flex;gap:.875rem;overflow-x:auto;flex:1;padding:.5rem 0;scrollbar-width:thin;scrollbar-color:#8b5cf6 transparent}.categories-scroll::-webkit-scrollbar{height:8px}.categories-scroll::-webkit-scrollbar-track{background:#8b5cf60d;border-radius:4px}.categories-scroll::-webkit-scrollbar-thumb{background:var(--gradient-primary);border-radius:4px;transition:var(--transition)}.categories-scroll::-webkit-scrollbar-thumb:hover{background:var(--gradient-hover)}.category-filter-btn{display:flex;align-items:center;gap:.625rem;padding:.875rem 1.75rem;background:#fff;border:2px solid rgba(139,92,246,.15);border-radius:12px;font-weight:600;font-size:.9375rem;color:var(--text-primary);cursor:pointer;transition:var(--transition);white-space:nowrap;flex-shrink:0;outline:none;position:relative;overflow:hidden}.category-filter-btn:before{content:"";position:absolute;inset:0;background:var(--gradient-primary);opacity:0;transition:opacity .3s ease}.category-filter-btn:hover:before{opacity:.05}body.dark .category-filter-btn{background:#111827cc;border-color:#8b5cf64d}.category-filter-btn:hover{border-color:#8b5cf6;transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf633}.category-filter-btn.active{background:var(--gradient-primary);color:#fff;border:none;transform:translateY(-2px);box-shadow:0 6px 24px #8b5cf666}.category-filter-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1}.filters-toggle-btn{display:flex;align-items:center;gap:.625rem;padding:.875rem 1.5rem;background:#fff;border:2px solid rgba(139,92,246,.15);border-radius:12px;font-weight:600;cursor:pointer;transition:var(--transition);color:var(--text-primary)}body.dark .filters-toggle-btn{background:#111827cc;border-color:#8b5cf64d}.filters-toggle-btn:hover{border-color:#8b5cf6;transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf633}.filter-sidebar{background:#fff;border-radius:20px;padding:1.75rem;border:2px solid rgba(139,92,246,.15);box-shadow:0 8px 24px #8b5cf61f;position:relative;overflow:hidden}body.dark .filter-sidebar{background:linear-gradient(145deg,#0f172a,#1e293b);border-color:#94a3b833;box-shadow:0 20px 50px #0f172a80}.filter-sidebar:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary);opacity:.8}.filter-sidebar h3{margin:0 0 1.25rem;font-size:1.25rem;font-weight:800;color:#1a1a2e;letter-spacing:-.5px}body.dark .filter-sidebar h3{color:#f9fafb}.filter-sidebar label{display:block;font-size:.875rem;font-weight:600;color:#4b5563;margin-bottom:.5rem;letter-spacing:.3px}body.dark .filter-sidebar label{color:#e5e7eb}.filter-sidebar select,.filter-sidebar input[type=text]{width:100%;padding:.75rem 1rem;border-radius:12px;border:2px solid rgba(139,92,246,.2);background:#f8f4ff80;color:#1a1a2e;font-size:.9375rem;outline:none;transition:var(--transition);font-weight:500}body.dark .filter-sidebar select,body.dark .filter-sidebar input[type=text]{border-color:#94a3b84d;background:#02061799;color:#f9fafb}.filter-sidebar select:hover,.filter-sidebar input[type=text]:hover{border-color:#8b5cf666;background:#f8f4ffcc}body.dark .filter-sidebar select:hover,body.dark .filter-sidebar input[type=text]:hover{border-color:#8b5cf680;background:#020617cc}.filter-sidebar select:focus,.filter-sidebar input[type=text]:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf633;background:#fff}body.dark .filter-sidebar select:focus,body.dark .filter-sidebar input[type=text]:focus{box-shadow:0 0 0 3px #8b5cf633;background:#020617e6}.filter-sidebar>div{margin-bottom:1.5rem}.filter-sidebar>div:last-child{margin-bottom:0}.search-bar{position:relative;width:280px}.search-bar span{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9ca3af;font-size:1rem;pointer-events:none;transition:color .3s ease}.search-bar:focus-within span{color:#8b5cf6}.search-bar input{width:100%;padding:.875rem 1rem .875rem 2.75rem;border-radius:12px;border:1px solid rgba(148,163,184,.3);background:#02061799;color:#f9fafb;font-size:.9375rem;outline:none;transition:var(--transition);font-weight:500}.search-bar input::placeholder{color:#6b7280}.search-bar input:hover{border-color:#8b5cf680;background:#020617cc}.search-bar input:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf633;background:#020617e6}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.section-title{font-size:2rem;font-weight:900;color:var(--text-primary);display:flex;align-items:center;gap:1rem;letter-spacing:-.5px}.section-icon{font-size:2.25rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.results-count{font-size:1rem;color:var(--text-secondary);font-weight:600;padding:.5rem 1rem;background:#8b5cf61a;border-radius:8px}.featured-section{margin-bottom:4rem}.featured-carousel{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:2rem}.featured-card{background:#fff;border-radius:20px;overflow:hidden;border:none;transition:var(--transition);box-shadow:var(--shadow-sm);cursor:pointer;position:relative}body.dark .featured-card{background:#11182799;border:1px solid rgba(139,92,246,.15)}.featured-card:before{content:"";position:absolute;inset:0;background:var(--gradient-primary);opacity:0;transition:opacity .3s ease;border-radius:20px;z-index:0;pointer-events:none}.featured-card:hover:before{opacity:.03}.featured-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.featured-image-container{position:relative;height:240px;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2)}.featured-image{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}.featured-card:hover .featured-image{transform:scale(1.15) rotate(1deg)}.featured-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.8) 100%);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.course-badge{position:absolute;top:1rem;left:1rem;padding:.5rem 1rem;border-radius:8px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 12px #0003}.course-badge.bestseller{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.course-badge.trending{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.featured-content{padding:1.75rem;display:flex;flex-direction:column;gap:1rem;position:relative;z-index:1}.featured-title{font-size:1.25rem;font-weight:800;color:var(--text-primary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;min-height:3.5rem;letter-spacing:-.3px}.featured-instructor{color:var(--text-secondary);font-size:.9375rem;font-weight:600;margin:0}.featured-stats{display:flex;gap:2rem;padding:1.25rem 0;border-top:2px solid rgba(139,92,246,.1);border-bottom:2px solid rgba(139,92,246,.1)}.stat-item{display:flex;align-items:center;gap:.625rem;flex:1}.stat-emoji{font-size:1.5rem;line-height:1;filter:grayscale(0)}.stat-value{font-size:1rem;font-weight:700;color:var(--text-primary);line-height:1}.stat-label{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.stat-icon{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;width:18px;height:18px}.featured-footer{display:flex;align-items:center;gap:1rem;padding-top:1rem}.course-level{padding:.35rem .75rem;background:#8b5cf61a;color:#8b5cf6;border-radius:8px;font-size:.8rem;font-weight:600;letter-spacing:.3px;margin-left:auto}.course-level.level-beginner{background:#22c55e26;color:#16a34a}.course-level.level-intermediate{background:#eab30826;color:#ca8a04}.course-level.level-advanced{background:#ef444426;color:#dc2626}body.dark .course-level.level-beginner{background:#22c55e33;color:#4ade80}body.dark .course-level.level-intermediate{background:#eab30833;color:#facc15}body.dark .course-level.level-advanced{background:#ef444433;color:#f87171}.course-price{margin-left:auto;font-size:1.5rem;font-weight:800;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.course-price.free{background:linear-gradient(135deg,#10b981,#059669);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.all-courses-section{margin-bottom:4rem}.courses-grid{display:grid;gap:2rem;grid-template-columns:repeat(4,minmax(0,1fr))}.course-card{background:#fff;border-radius:18px;overflow:hidden;border:none;transition:var(--transition);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:100%;cursor:pointer;position:relative}body.dark .course-card{background:#11182799;border:1px solid rgba(139,92,246,.15)}.course-card.enrolled{border:2px solid #10b981;box-shadow:0 4px 12px #10b98126}body.dark .course-card.enrolled{border:2px solid #10b981;box-shadow:0 4px 12px #10b98140}.course-card:before{content:"";position:absolute;inset:0;background:var(--gradient-primary);opacity:0;transition:opacity .3s ease;border-radius:18px;z-index:0;pointer-events:none}.course-card:hover:before{opacity:.03}.course-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}.course-image-wrapper{position:relative;height:200px;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2)}.enrollment-checkmark{position:absolute;top:12px;left:12px;z-index:10;background:#fff;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #10b98180;animation:bounceIn .6s ease}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.1)}to{transform:scale(1)}}.enrolled-badge{position:absolute;top:12px;right:12px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:6px 12px;border-radius:20px;font-size:.75rem;font-weight:700;z-index:10;display:flex;align-items:center;gap:5px;box-shadow:0 2px 8px #10b98166;animation:slideInRight .4s ease}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.enrolled-badge svg{width:16px;height:16px}.course-image{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}.course-card:hover .course-image{transform:scale(1.15) rotate(1deg)}.course-image-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.7) 100%);opacity:0;transition:opacity .3s ease;display:flex;align-items:flex-end;justify-content:center;padding:1rem}.course-content{padding:1.5rem;display:flex;flex-direction:column;flex:1;gap:.875rem;position:relative;z-index:1}.course-title{font-size:1.0625rem;font-weight:700;color:var(--text-primary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;letter-spacing:-.2px}.course-instructor{color:var(--text-secondary);font-size:.875rem;font-weight:600;margin:0}.course-meta{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:2px solid rgba(139,92,246,.1)}.course-rating{display:flex;align-items:center;gap:.375rem;color:#f59e0b;font-weight:700;font-size:.9375rem}.course-rating svg{width:16px;height:16px}.reviews-count{color:var(--text-secondary);font-weight:500;font-size:.8125rem;margin-left:.125rem}.course-level-badge{margin-left:auto;padding:.375rem .75rem;background:#8b5cf61a;color:#8b5cf6;border-radius:6px;font-size:.75rem;font-weight:700;letter-spacing:.3px}.course-info{display:flex;gap:1.25rem;padding:.75rem 0}.info-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.875rem;font-weight:600}.info-item svg{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;width:18px;height:18px}.course-footer{margin-top:auto;padding-top:.75rem}.enroll-btn{width:100%;padding:.875rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:10px;font-weight:700;font-size:.9375rem;cursor:pointer;transition:var(--transition);letter-spacing:.3px;text-transform:uppercase;position:relative;overflow:hidden}.enroll-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#7c3aed,#db2777);opacity:0;transition:opacity .3s ease}.enroll-btn:hover:before{opacity:1}.enroll-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #8b5cf680}.enroll-btn span{position:relative;z-index:1}.continue-btn{background:linear-gradient(135deg,#10b981,#059669)}.continue-btn:before{background:linear-gradient(135deg,#059669,#047857)}.continue-btn:hover{box-shadow:0 8px 20px #10b98180}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:3rem;padding:1.5rem;background:#ffffff80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--border-radius);border:1px solid rgba(139,92,246,.1)}body.dark .pagination{background:#11182780;border-color:#8b5cf633}.pagination button{padding:.75rem 1.25rem;border-radius:10px;border:1px solid rgba(148,163,184,.3);background:#fff;color:var(--text-primary);font-size:.875rem;font-weight:600;cursor:pointer;transition:var(--transition)}body.dark .pagination button{background:#020617cc;border-color:#94a3b84d}.pagination button:hover:not(:disabled){background:var(--gradient-primary);color:#fff;border-color:transparent;transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf64d}.pagination button:disabled{opacity:.3;cursor:not-allowed}.pagination span{color:var(--text-primary);font-size:.9375rem;font-weight:700;padding:.5rem 1rem;background:#8b5cf61a;border-radius:8px}@media(max-width:1024px){.courses-grid,.popular-section .courses-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search-bar{width:220px}}@media(max-width:768px){.explore-container{padding:1rem}.categories-filter-section{flex-direction:column;align-items:stretch;padding:1.25rem}.filters-toggle-btn{width:100%;justify-content:center}.courses-grid,.popular-section .courses-grid{grid-template-columns:1fr;gap:1.5rem}.section-title{font-size:1.5rem}.search-bar{width:100%}.filter-sidebar{padding:1.25rem}.featured-carousel{grid-template-columns:1fr}}@media(max-width:480px){.explore-container{padding:.75rem}.section-title{font-size:1.25rem}.featured-content,.course-content{padding:1.25rem}}.curriculum-accordion{display:flex;flex-direction:column;gap:.75rem}.curriculum-module{background:#8b5cf60d;border:1px solid rgba(139,92,246,.15);border-radius:12px;overflow:hidden;transition:all .3s ease}body.dark .curriculum-module{background:#0f172a80;border-color:#8b5cf633}.curriculum-module:hover{border-color:#8b5cf64d;box-shadow:0 4px 12px #8b5cf626}.curriculum-module-button{width:100%;padding:1rem 1.25rem;background:transparent;border:none;display:flex;align-items:center;gap:.875rem;cursor:pointer;transition:all .2s ease;text-align:left}.curriculum-module-button:hover{background:#8b5cf614}body.dark .curriculum-module-button:hover{background:#0f172ab3}.module-indicator{font-size:.75rem;color:#8b5cf6;width:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.module-title{font-weight:700;font-size:1rem;color:var(--text-primary);flex:1;letter-spacing:-.2px}.module-items-count{font-size:.85rem;color:#6b7280}body.dark .module-title{color:#f9fafb}.curriculum-items-list{padding:1rem 1.25rem;margin:0;display:flex;flex-direction:column;gap:1rem;border-top:1px solid rgba(139,92,246,.1)}.no-sections{color:#6b7280;font-style:italic;text-align:center;padding:1rem}.curriculum-item-expanded{background:#fff;border-radius:12px;border:1px solid rgba(139,92,246,.15);overflow:hidden;transition:all .2s ease}body.dark .curriculum-item-expanded{background:#11182799;border-color:#8b5cf633}.curriculum-item-expanded:hover{border-color:#8b5cf64d;box-shadow:0 4px 12px #8b5cf61a}.item-header{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#8b5cf60d;border-bottom:1px solid rgba(139,92,246,.1)}.curriculum-item-icon{font-size:1.25rem;flex-shrink:0;width:28px;display:flex;align-items:center;justify-content:center}.item-title{font-size:1rem;color:var(--text-primary);font-weight:600;line-height:1.5;flex:1}body.dark .item-title{color:#e5e7eb}.item-content{padding:1rem}.section-video-container{width:100%;border-radius:8px;overflow:hidden;background:#000}.section-video-container iframe,.section-video-container video{display:block;width:100%;max-height:400px;border-radius:8px}.section-image-container{width:100%;text-align:center}.section-image{max-width:100%;max-height:500px;border-radius:8px;box-shadow:0 4px 12px #0000001a}.section-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#8b5cf6,#a855f7);color:#fff;text-decoration:none;border-radius:8px;font-weight:500;transition:all .2s ease}.section-link:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf666}.section-file-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;text-decoration:none;border-radius:8px;font-weight:500;transition:all .2s ease}.section-file-link:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.section-text{font-size:1rem;line-height:1.7;color:var(--text-secondary)}.section-heading{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0}.curriculum-quiz-section{margin-top:1rem;border-radius:12px;overflow:hidden;border:2px solid rgba(139,92,246,.3);background:linear-gradient(135deg,#8b5cf60d,#a855f70d)}.quiz-preview{padding:0}.quiz-preview-header{padding:1rem 1.25rem;background:linear-gradient(135deg,#8b5cf626,#a855f726);border-bottom:1px solid rgba(139,92,246,.2);display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.quiz-title{font-size:1.1rem;font-weight:700;color:#7c3aed;margin:0;flex:1}body.dark .quiz-title{color:#a78bfa}.quiz-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.85rem;color:#6b7280}body.dark .quiz-meta{color:#9ca3af}.quiz-meta span{display:flex;align-items:center;gap:.25rem}.btn-toggle-answers{padding:.5rem 1rem;background:linear-gradient(135deg,#8b5cf6,#a855f7);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-toggle-answers:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf666}.quiz-questions-list{padding:1rem;display:flex;flex-direction:column;gap:.75rem}.quiz-question-preview{background:#fff;border:1px solid rgba(139,92,246,.15);border-radius:10px;overflow:hidden;transition:all .2s ease}body.dark .quiz-question-preview{background:#11182799;border-color:#8b5cf633}.quiz-question-preview:hover{border-color:#8b5cf64d}.question-header-preview{display:flex;align-items:center;gap:.75rem;padding:1rem;cursor:pointer;background:#8b5cf608;transition:background .2s ease}.question-header-preview:hover{background:#8b5cf614}.question-number{background:linear-gradient(135deg,#8b5cf6,#a855f7);color:#fff;padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:700;flex-shrink:0}.question-text-preview{flex:1;font-size:.95rem;color:#1f2937;line-height:1.4}body.dark .question-text-preview{color:#e5e7eb}.question-points-preview{font-size:.8rem;color:#6b7280;background:#8b5cf61a;padding:.25rem .5rem;border-radius:4px;flex-shrink:0}body.dark .question-points-preview{color:#9ca3af}.question-expand-icon{color:#8b5cf6;font-size:.8rem;flex-shrink:0}.question-details-preview{padding:1rem;border-top:1px solid rgba(139,92,246,.1);background:#8b5cf605}.question-type-badge{display:inline-block;font-size:.75rem;color:#7c3aed;background:#8b5cf61a;padding:.25rem .75rem;border-radius:20px;margin-bottom:.75rem}body.dark .question-type-badge{color:#a78bfa}.question-options-preview{display:flex;flex-direction:column;gap:.5rem}.option-preview{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:all .2s ease}body.dark .option-preview{background:#1f293780;border-color:#4b556380}.option-preview.correct{background:#10b9811a;border-color:#10b981}body.dark .option-preview.correct{background:#10b98126;border-color:#10b981}.option-letter{font-weight:700;color:#8b5cf6;flex-shrink:0}.option-text{flex:1;font-size:.9rem;color:#374151}body.dark .option-text{color:#d1d5db}.correct-badge{font-size:.75rem;color:#10b981;font-weight:600;background:#10b9811a;padding:.2rem .5rem;border-radius:4px}.question-explanation-preview{margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#8b5cf614,#a855f714);border:1px solid rgba(139,92,246,.2);border-radius:10px;border-left:4px solid #8b5cf6}.explanation-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.explanation-icon{font-size:1.25rem}.explanation-title{font-weight:700;color:#7c3aed;font-size:.9rem}body.dark .explanation-title{color:#a78bfa}.explanation-text{margin:0;font-size:.9rem;color:#4b5563;line-height:1.6}body.dark .explanation-text{color:#9ca3af}.no-quiz-questions{padding:1.5rem;text-align:center;color:#6b7280;font-style:italic}.instructor-card-component{background:#8b5cf60d;border:1px solid rgba(139,92,246,.15);border-radius:20px;padding:1.75rem;display:flex;gap:1.5rem;align-items:center;transition:all .3s ease}body.dark .instructor-card-component{background:#0f172a80;border-color:#8b5cf633}.instructor-card-component:hover{background:#8b5cf614;border-color:#8b5cf64d;transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf633}body.dark .instructor-card-component:hover{background:#0f172ab3}.instructor-avatar{width:80px;height:80px;border-radius:50%;border:3px solid rgba(139,92,246,.3);object-fit:cover;flex-shrink:0;box-shadow:0 4px 12px #8b5cf633}.instructor-avatar-placeholder{width:80px;height:80px;border-radius:50%;border:3px solid rgba(139,92,246,.3);flex-shrink:0;box-shadow:0 4px 12px #8b5cf633;background:linear-gradient(135deg,#8b5cf6e6,#ec4899e6);display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:1px}body.dark .instructor-avatar-placeholder{background:linear-gradient(135deg,#a78bfae6,#f472b6e6)}.instructor-info{flex:1;display:flex;flex-direction:column;gap:.625rem}.instructor-name{font-weight:800;font-size:1.375rem;color:var(--text-primary);margin:0;letter-spacing:-.3px}body.dark .instructor-name{color:#f9fafb}.instructor-bio{font-size:1rem;line-height:1.7;color:var(--text-secondary);margin:0;font-weight:500}body.dark .instructor-bio{color:#cbd5e1}.instructor-stats{font-size:.9375rem;color:#f59e0b;margin:0;font-weight:700}body.dark .instructor-stats{color:#fbbf24}@media(max-width:768px){.instructor-card-component{flex-direction:column;text-align:center}.instructor-avatar,.instructor-avatar-placeholder{width:100px;height:100px}.instructor-avatar-placeholder{font-size:2rem}}.qa-section{margin-top:2rem;padding:1.5rem;background:#8b5cf608;border-radius:16px;border:1px solid rgba(139,92,246,.1)}.qa-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.qa-form{margin-bottom:1.5rem}.qa-textarea{width:100%;padding:1rem;border:2px solid rgba(139,92,246,.2);border-radius:12px;font-size:1rem;font-family:inherit;resize:vertical;transition:all .2s ease;background:#fff}body.dark .qa-textarea{background:#11182799;border-color:#8b5cf64d;color:#f9fafb}.qa-textarea:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf626}.qa-submit-btn{margin-top:.75rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#8b5cf6,#a855f7);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.qa-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf666}.qa-submit-btn:disabled{opacity:.6;cursor:not-allowed}.qa-questions-list{display:flex;flex-direction:column;gap:1rem}.qa-empty{text-align:center;color:#6b7280;padding:2rem;font-style:italic}.qa-loading{text-align:center;padding:2rem;color:#8b5cf6}.qa-error{color:#ef4444;padding:.75rem;background:#ef44441a;border-radius:8px;margin-bottom:1rem}.qa-question-card{background:#fff;border-radius:12px;border:1px solid rgba(139,92,246,.15);overflow:hidden;transition:all .2s ease}body.dark .qa-question-card{background:#11182799;border-color:#8b5cf633}.qa-question-card.resolved{border-color:#10b9814d}.qa-question-card:hover{box-shadow:0 4px 12px #8b5cf61a}.qa-question-header{padding:1rem;cursor:pointer}.qa-question-meta{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem;flex-wrap:wrap}.qa-author{font-weight:600;color:#8b5cf6}.qa-date{font-size:.85rem;color:#6b7280}.qa-resolved-badge{padding:.25rem .5rem;background:#10b98126;color:#059669;border-radius:4px;font-size:.8rem;font-weight:600}.qa-question-content{font-size:1rem;color:var(--text-primary);line-height:1.6;margin:.5rem 0}body.dark .qa-question-content{color:#e5e7eb}.qa-question-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(139,92,246,.1)}.qa-answers-count{font-size:.9rem;color:#6b7280}.qa-expand-icon{color:#8b5cf6;font-size:.8rem}.qa-answers-section{padding:1rem;background:#8b5cf608;border-top:1px solid rgba(139,92,246,.1)}.qa-answers-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.qa-no-answers{text-align:center;color:#6b7280;font-style:italic;padding:1rem}.qa-answer-card{padding:1rem;background:#fff;border-radius:8px;border-left:3px solid #e5e7eb}body.dark .qa-answer-card{background:#11182766}.qa-answer-card.teacher-answer{border-left-color:#8b5cf6;background:#8b5cf60d}.qa-answer-card.accepted{border-left-color:#10b981;background:#10b9810d}.qa-answer-meta{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.teacher-badge{padding:.15rem .4rem;background:linear-gradient(135deg,#8b5cf6,#a855f7);color:#fff;border-radius:4px;font-size:.7rem;font-weight:600;margin-left:.25rem}.qa-accepted-badge{padding:.15rem .4rem;background:#10b98126;color:#059669;border-radius:4px;font-size:.75rem;font-weight:600}.qa-answer-content{font-size:.95rem;color:var(--text-primary);line-height:1.6;margin:0}body.dark .qa-answer-content{color:#d1d5db}.qa-add-answer{display:flex;gap:.75rem;align-items:flex-start;margin-top:1rem;padding-top:1rem;border-top:1px dashed rgba(139,92,246,.2)}.qa-answer-textarea{flex:1;padding:.75rem;border:1px solid rgba(139,92,246,.2);border-radius:8px;font-size:.9rem;font-family:inherit;resize:none;background:#fff}body.dark .qa-answer-textarea{background:#11182799;border-color:#8b5cf64d;color:#f9fafb}.qa-answer-textarea:focus{outline:none;border-color:#8b5cf6}.qa-answer-btn{padding:.75rem 1rem;background:#8b5cf6;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.qa-answer-btn:hover:not(:disabled){background:#7c3aed}.qa-answer-btn:disabled{opacity:.6;cursor:not-allowed}.review-list-container{width:100%;margin:24px 0}.review-list-header{margin-bottom:20px}.review-list-header h3{font-size:22px;font-weight:700;color:#1a1a2e;margin:0}.review-list-loading,.review-list-error,.review-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:#718096}.review-list-loading .spinner{width:40px;height:40px;border:4px solid rgba(102,126,234,.2);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.retry-button{margin-top:16px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.retry-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.review-list-empty{background-color:#f7fafc;border-radius:16px;border:2px dashed #cbd5e0}.empty-subtitle{font-size:14px;color:#718096;margin-top:8px}.review-list{display:flex;flex-direction:column;gap:16px}.review-item{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:24px;transition:all .3s ease;box-shadow:0 4px 6px #0000000d}.review-item:hover{border-color:#667eea;box-shadow:0 10px 15px #0000001a}.review-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.review-user-section{display:flex;gap:12px;flex:1}.review-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:18px;flex-shrink:0}.review-user-details{display:flex;flex-direction:column;gap:6px}.review-user-name{font-size:16px;font-weight:600;color:#1a202c;margin:0}.review-meta{display:flex;align-items:center;gap:12px}.review-stars{display:flex;gap:2px}.review-date{font-size:13px;color:#718096}.review-actions{position:relative}.review-menu-button{background:none;border:none;color:#a0aec0;cursor:pointer;padding:4px;border-radius:6px;transition:all .2s ease;display:flex;align-items:center}.review-menu-button:hover{background-color:#edf2f7;color:#4a5568}.review-dropdown-menu{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 10px 15px #0000001a;min-width:150px;z-index:10;overflow:hidden;animation:dropdownFadeIn .2s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.menu-item{width:100%;padding:12px 16px;border:none;background:none;color:#4a5568;font-size:14px;font-weight:500;text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;transition:all .2s ease}.menu-item:hover{background-color:#f7fafc}.menu-item.edit:hover{background-color:#ebf4ff;color:#667eea}.menu-item.delete:hover{background-color:#fff5f5;color:#f56565}.menu-item.report:hover{background-color:#fffaf0;color:#d69e2e}.review-comment{font-size:15px;line-height:1.6;color:#4a5568;margin:0;white-space:pre-wrap;word-wrap:break-word}.report-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1001;animation:fadeIn .2s ease-in-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.report-modal-content{background:#fff;border-radius:16px;padding:32px;max-width:500px;width:90%;box-shadow:0 20px 25px #0000001a;animation:slideUp .3s ease-out}.report-modal-content h3{font-size:22px;font-weight:700;color:#1a202c;margin:0 0 12px}.report-modal-description{font-size:14px;color:#718096;margin-bottom:20px}.report-textarea{width:100%;padding:14px;border-radius:10px;border:2px solid #e2e8f0;background-color:#fff;color:#1a202c;font-size:14px;font-family:inherit;resize:vertical;min-height:100px;transition:all .3s ease}.report-textarea:focus{outline:none;border-color:#f59e0b;background-color:#fff;box-shadow:0 0 0 3px #f59e0b1a}.character-count{font-size:13px;color:#718096;text-align:right;margin:8px 0 16px}.report-modal-actions{display:flex;gap:12px;justify-content:flex-end}.cancel-button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;background-color:#edf2f7;color:#4a5568}.cancel-button:hover:not(:disabled){background-color:#e2e8f0}.submit-button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 15px #f59e0b4d}.submit-button:hover:not(:disabled){box-shadow:0 6px 20px #f59e0b80;transform:translateY(-2px)}.cancel-button:disabled,.submit-button:disabled{opacity:.5;cursor:not-allowed}body.dark .review-list-header h3{color:#fff}body.dark .review-list-loading,body.dark .review-list-error,body.dark .review-list-empty{color:#a0aec0}body.dark .review-list-empty{background-color:#ffffff08;border:2px dashed rgba(255,255,255,.1)}body.dark .review-item{background:linear-gradient(135deg,#1a1a2ecc,#16213ecc);border:1px solid rgba(255,255,255,.1);box-shadow:none}body.dark .review-item:hover{border-color:#667eea4d;box-shadow:0 4px 16px #0000004d}body.dark .review-user-name{color:#fff}body.dark .review-date{color:#718096}body.dark .review-menu-button{color:#a0aec0}body.dark .review-menu-button:hover{background-color:#ffffff1a;color:#fff}body.dark .review-dropdown-menu{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(255,255,255,.1)}body.dark .menu-item{color:#fff}body.dark .menu-item:hover{background-color:#ffffff1a}body.dark .menu-item.edit:hover{background-color:#667eea33}body.dark .menu-item.delete:hover{background-color:#ef444433}body.dark .menu-item.report:hover{background-color:#f59e0b33}body.dark .review-comment{color:#cbd5e0}body.dark .report-modal-overlay{background-color:#000000b3}body.dark .report-modal-content{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 60px #00000080}body.dark .report-modal-content h3{color:#fff}body.dark .report-modal-description{color:#a0aec0}body.dark .report-textarea{background-color:#ffffff0d;border:2px solid rgba(255,255,255,.1);color:#fff}body.dark .report-textarea:focus{background-color:#ffffff14}body.dark .cancel-button{background-color:#ffffff1a;color:#fff}body.dark .cancel-button:hover:not(:disabled){background-color:#ffffff26}@media(max-width:768px){.review-item{padding:16px}.review-avatar{width:40px;height:40px;font-size:16px}.review-user-name{font-size:15px}.review-comment{font-size:14px}.report-modal-content{padding:24px}.report-modal-actions{flex-direction:column-reverse}.cancel-button,.submit-button{width:100%}}.review-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.review-modal-content{background:#fff;border-radius:16px;padding:32px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000026;animation:slideUp .3s ease-out;color:#1f2937;border:1px solid rgba(0,0,0,.05)}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.review-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.review-modal-header h2{font-size:24px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.review-modal-close{background:none;border:none;color:#6b7280;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .3s ease}.review-modal-close:hover{background-color:#f3f4f6;color:#111827;transform:rotate(90deg)}.review-modal-form{display:flex;flex-direction:column;gap:24px}.review-rating-section{display:flex;flex-direction:column;gap:12px}.review-label{font-size:16px;font-weight:600;color:#374151;margin-bottom:4px}.star-rating{display:flex;gap:8px;align-items:center}.star-button{background:none;border:none;cursor:pointer;padding:4px;transition:transform .2s ease;display:flex;align-items:center;justify-content:center}.star-button:hover{transform:scale(1.2)}.star-button:active{transform:scale(1.1)}.rating-text{font-size:14px;color:#6b7280;margin:0;font-weight:500}.review-comment-section{display:flex;flex-direction:column;gap:8px}.review-textarea{width:100%;padding:16px;border-radius:12px;border:2px solid #e5e7eb;background-color:#fff;color:#1f2937;font-size:15px;font-family:inherit;resize:vertical;min-height:150px;transition:all .3s ease}.review-textarea:focus{outline:none;border-color:#667eea;background-color:#fff;box-shadow:0 0 0 4px #667eea1a}.review-textarea::placeholder{color:#9ca3af}.character-count{font-size:13px;color:#6b7280;text-align:right;margin:0}.review-error-message{padding:12px 16px;background-color:#fef2f2;border:1px solid #fca5a5;border-radius:8px;color:#b91c1c;font-size:14px}.review-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.review-cancel-button,.review-submit-button{padding:12px 24px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.review-cancel-button{background-color:#f3f4f6;color:#4b5563}.review-cancel-button:hover:not(:disabled){background-color:#e5e7eb;color:#111827;transform:translateY(-2px)}.review-submit-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.review-submit-button:hover:not(:disabled){box-shadow:0 6px 20px #667eea99;transform:translateY(-2px)}.review-cancel-button:disabled,.review-submit-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.review-modal-content::-webkit-scrollbar{width:8px}.review-modal-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.review-modal-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.review-modal-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}body.dark .review-modal-overlay{background-color:#000c}body.dark .review-modal-content{background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 60px #00000080}body.dark .review-modal-header{border-bottom:2px solid rgba(255,255,255,.1)}body.dark .review-modal-close{color:#fff}body.dark .review-modal-close:hover{background-color:#ffffff1a}body.dark .review-label{color:#fff}body.dark .rating-text{color:#a0aec0}body.dark .review-textarea{background-color:#ffffff0d;border:2px solid rgba(255,255,255,.1);color:#fff}body.dark .review-textarea:focus{background-color:#ffffff14;border-color:#667eea}body.dark .review-textarea::placeholder{color:#718096}body.dark .character-count{color:#a0aec0}body.dark .review-error-message{background-color:#ef44441a;border-color:#ef44444d;color:#fca5a5}body.dark .review-cancel-button{background-color:#ffffff1a;color:#fff}body.dark .review-cancel-button:hover:not(:disabled){background-color:#ffffff26}body.dark .review-modal-content::-webkit-scrollbar-track{background:#ffffff0d}body.dark .review-modal-content::-webkit-scrollbar-thumb{background:#fff3}body.dark .review-modal-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media(max-width:768px){.review-modal-content{padding:24px;width:95%}.review-modal-header h2{font-size:20px}.star-rating{gap:4px}.star-button svg{width:28px;height:28px}.review-modal-actions{flex-direction:column-reverse}.review-cancel-button,.review-submit-button{width:100%}}:root{--gradient-primary: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);--gradient-secondary: linear-gradient(135deg, #7c3aed 0%, #db2777 100%);--shadow-sm: 0 2px 8px rgba(139, 92, 246, .12);--shadow-md: 0 8px 24px rgba(139, 92, 246, .18);--shadow-lg: 0 16px 40px rgba(139, 92, 246, .25);--shadow-glow: 0 0 30px rgba(139, 92, 246, .2);--border-color: rgba(139, 92, 246, .15);--border-color-light: rgba(139, 92, 246, .1);--transition: all .3s cubic-bezier(.4, 0, .2, 1);--transition-fast: all .15s cubic-bezier(.4, 0, .2, 1)}.course-preview-page{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);transition:background .3s ease;padding:80px 0 4rem;position:relative}body.dark .course-preview-page{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.course-preview-page:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:100%;max-width:1400px;height:500px;background:radial-gradient(ellipse at center,rgba(139,92,246,.08) 0%,transparent 70%);pointer-events:none;z-index:0}body.dark .course-preview-page:before{background:radial-gradient(ellipse at center,rgba(139,92,246,.15) 0%,transparent 70%)}.course-preview-container{max-width:1280px;margin:0 auto;padding:2rem 2rem 0;position:relative;z-index:1}.course-preview-header{background:#fff;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-md);margin-bottom:2.5rem;border:1px solid var(--border-color);position:relative;transition:var(--transition)}body.dark .course-preview-header{background:#11182799;border-color:#8b5cf633}.course-preview-header:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary);opacity:.8}.course-preview-header:hover{box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-2px)}.course-banner{position:relative;height:280px;overflow:hidden;background:linear-gradient(135deg,#8b5cf6,#ec4899)}.course-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.4) 100%);pointer-events:none}.course-banner img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.4,0,.2,1)}.course-preview-header:hover .course-banner img{transform:scale(1.08)}.course-header-content{padding:2rem 2.5rem;background:#fff;position:relative}body.dark .course-header-content{background:linear-gradient(180deg,#0f172ae6,#020617f2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.course-header-content h1{margin:0 0 .5rem;font-size:2.25rem;font-weight:900;color:var(--text-primary);letter-spacing:-.5px;line-height:1.2}body.dark .course-header-content h1{color:#f9fafb;text-shadow:0 2px 10px rgba(0,0,0,.3)}.course-subtitle{margin:0 0 1rem;font-size:1.0625rem;color:var(--text-secondary);font-weight:500;line-height:1.5}body.dark .course-subtitle{color:#cbd5e1}.course-header-meta{margin-top:1rem;display:flex;align-items:center;flex-wrap:wrap;gap:1.25rem;font-size:.9375rem}.course-header-meta .rating{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:12px;background:#facc1526;color:#d97706;font-weight:700;border:1px solid rgba(250,204,21,.3);box-shadow:0 4px 12px #facc1533;transition:var(--transition-fast)}body.dark .course-header-meta .rating{color:#fbbf24}.course-header-meta .rating:hover{transform:translateY(-2px);box-shadow:0 6px 20px #facc154d}.course-header-meta .rating svg{width:18px;height:18px}.course-header-meta .students{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-primary);font-weight:600;padding:.5rem 1rem;background:#8b5cf61a;border-radius:12px;border:1px solid var(--border-color-light)}body.dark .course-header-meta .students{color:#e5e7eb;background:#94a3b81a}.course-header-meta .instructor{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-weight:600}.course-preview-layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(320px,1fr);gap:2.5rem;align-items:start}.course-main{background:#fff;border-radius:24px;border:1px solid var(--border-color);padding:2rem 2.5rem 2.5rem;box-shadow:var(--shadow-md);position:relative;overflow:hidden}body.dark .course-main{background:#11182799;border-color:#8b5cf633}.course-main:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary);opacity:.6}.course-tabs{display:inline-flex;gap:.5rem;padding:.5rem;background:#8b5cf60d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;border:1px solid var(--border-color);margin-bottom:2rem;box-shadow:var(--shadow-sm)}body.dark .course-tabs{background:#0f172a99;box-shadow:0 4px 12px #0000004d}.course-tabs button{border:none;background:transparent;padding:.75rem 1.5rem;border-radius:12px;font-size:.9375rem;font-weight:700;color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);position:relative;letter-spacing:.3px}body.dark .course-tabs button{color:#9ca3af}.course-tabs button:before{content:"";position:absolute;inset:0;border-radius:12px;background:var(--gradient-primary);opacity:0;transition:opacity .3s ease}.course-tabs button:hover{color:var(--text-primary);transform:translateY(-1px)}body.dark .course-tabs button:hover{color:#e5e7eb}.course-tabs button:hover:before{opacity:.1}.course-tabs button.active{background:var(--gradient-primary);color:#f9fafb;box-shadow:0 4px 16px #8b5cf666;transform:translateY(-1px)}.course-tabs button span{position:relative;z-index:1}.tab-content{animation:fadeIn .4s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tab-content h3{margin-top:1.5rem;margin-bottom:1.25rem;font-size:1.375rem;font-weight:800;color:var(--text-primary);letter-spacing:-.3px;position:relative;padding-left:1rem}.tab-content h3:first-child{margin-top:0}.tab-content h3:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:70%;background:var(--gradient-primary);border-radius:2px}body.dark .tab-content h3{color:#f9fafb}.tab-content p{font-size:1rem;line-height:1.8;color:var(--text-secondary);margin-bottom:1.5rem;font-weight:500}body.dark .tab-content p{color:#cbd5e1}.tab-content ul{list-style:none;padding:0;margin-bottom:2rem}.tab-content li{padding:.875rem 0 .875rem 3rem;position:relative;font-size:1rem;color:var(--text-primary);line-height:1.7;border-bottom:1px solid var(--border-color-light);font-weight:500;margin-bottom:.5rem}body.dark .tab-content li{color:#e5e7eb}.tab-content li:last-child{border-bottom:none;margin-bottom:0}.tab-content li:before{content:"✓";position:absolute;left:0;top:.875rem;width:28px;height:28px;background:var(--gradient-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700;box-shadow:0 2px 8px #8b5cf64d;flex-shrink:0}.tab-content strong{color:var(--text-primary);font-weight:700}body.dark .tab-content strong{color:#f9fafb}.course-sidebar{flex-direction:column;gap:1.5rem;height:fit-content;position:sticky;top:2rem;transition:var(--transition)}.course-sidebar:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary);opacity:.6;border-radius:24px 24px 0 0}.course-sidebar:hover{box-shadow:var(--shadow-lg),var(--shadow-glow)}.sidebar-section{padding-bottom:1.25rem;border-bottom:1px solid var(--border-color-light)}.sidebar-section:last-child{border-bottom:none;padding-bottom:0}.sidebar-section h4{margin:0 0 .75rem;font-size:.875rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}body.dark .sidebar-section h4{color:#9ca3af}.sidebar-info{display:flex;flex-direction:column;gap:.75rem}.sidebar-info-item{display:flex;align-items:center;gap:.75rem;color:var(--text-primary);font-size:.9375rem;font-weight:600}body.dark .sidebar-info-item{color:#e5e7eb}.sidebar-info-item svg{width:20px;height:20px;color:#8b5cf6;flex-shrink:0}.video-wrapper{border-radius:16px;overflow:hidden;background:#000;border:2px solid var(--border-color);box-shadow:0 8px 24px #00000080;transition:var(--transition);margin-bottom:1.5rem;margin-top:1rem}.video-wrapper:hover{border-color:#8b5cf6;box-shadow:0 12px 32px #8b5cf64d}.video-container{position:relative;padding-bottom:56.25%;height:0;background:#000}.video-container iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.price-display{text-align:center;padding:1.5rem;background:#8b5cf61a;border-radius:16px;border:1px solid rgba(139,92,246,.3);margin-bottom:.5rem}.price-label{font-size:.875rem;color:#9ca3af;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem}.price-amount{font-size:2.5rem;font-weight:900;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-1px}.price-amount.free{background:linear-gradient(135deg,#10b981,#059669);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.enroll-button{width:100%;padding:1rem 1.5rem;border-radius:14px;border:none;font-size:1.0625rem;font-weight:800;cursor:pointer;background:var(--gradient-primary);color:#f9fafb;box-shadow:0 8px 24px #8b5cf680;transition:var(--transition);letter-spacing:.5px;text-transform:uppercase;position:relative;overflow:hidden}.enroll-button:before{content:"";position:absolute;inset:0;background:var(--gradient-secondary);opacity:0;transition:opacity .3s ease}.enroll-button span{position:relative;z-index:1}.enroll-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 16px 40px #8b5cf6b3}.enroll-button:hover:not(:disabled):before{opacity:1}.enroll-button:active:not(:disabled){transform:translateY(-1px)}.enroll-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.start-course-button{width:100%;padding:1rem 1.5rem;border-radius:14px;border:2px solid #8b5cf6;font-size:1.0625rem;font-weight:800;cursor:pointer;background:#fff;color:#8b5cf6;box-shadow:0 4px 12px #8b5cf633;transition:var(--transition);letter-spacing:.5px;text-transform:uppercase;position:relative;overflow:hidden;margin-top:1rem}body.dark .start-course-button{background:#8b5cf61a;border-color:#8b5cf6;color:#a78bfa}.start-course-button:before{content:"";position:absolute;inset:0;background:var(--gradient-primary);opacity:0;transition:opacity .3s ease}.start-course-button span{position:relative;z-index:1}.start-course-button:hover{background:var(--gradient-primary);color:#fff;transform:translateY(-3px);box-shadow:0 16px 40px #8b5cf680;border-color:transparent}.start-course-button:hover:before{opacity:1}.start-course-button:active{transform:translateY(-1px)}.message-box{padding:1rem 1.25rem;border-radius:12px;font-size:.9375rem;font-weight:600;display:flex;align-items:center;gap:.75rem;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.error-text{background:#ef444426;color:#dc2626;border:1px solid rgba(239,68,68,.3);padding:1rem;border-radius:12px}body.dark .error-text{color:#fca5a5}.success-text{background:#22c55e26;color:#16a34a;border:1px solid rgba(34,197,94,.3);padding:1rem;border-radius:12px}body.dark .success-text{color:#86efac}.reviews-list{display:grid;gap:1.5rem;margin-top:1.25rem}.review-card{background:#8b5cf60d;padding:1.5rem;border-radius:16px;border:1px solid var(--border-color-light);transition:var(--transition)}body.dark .review-card{background:#0f172a80}.review-card:hover{background:#8b5cf614;border-color:#8b5cf64d;transform:translate(4px)}body.dark .review-card:hover{background:#0f172ab3}.review-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.review-author{font-weight:700;color:var(--text-primary);font-size:1rem}body.dark .review-author{color:#f9fafb}.review-rating{display:flex;gap:.25rem;color:#f59e0b}body.dark .review-rating{color:#fbbf24}.review-text{color:var(--text-secondary);line-height:1.6;font-size:.9375rem}body.dark .review-text{color:#e5e7eb}.review-date{color:var(--text-secondary);font-size:.8125rem;margin-top:.5rem;opacity:.7}body.dark .review-date{color:#9ca3af}.reviews-pagination{margin-top:1.5rem;display:flex;align-items:center;justify-content:center;gap:1rem;font-size:.9375rem;padding:1rem;background:#8b5cf60d;border-radius:12px;border:1px solid var(--border-color-light)}body.dark .reviews-pagination{background:#0f172a4d}.reviews-pagination button{padding:.625rem 1.25rem;border-radius:10px;border:1px solid var(--border-color);background:#fff;color:var(--text-primary);cursor:pointer;font-size:.875rem;font-weight:600;transition:var(--transition-fast)}body.dark .reviews-pagination button{background:#0f172acc;color:#e5e7eb}.reviews-pagination button:hover:not(:disabled){background:var(--gradient-primary);border-color:transparent;transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf666;color:#fff}.reviews-pagination button:disabled{opacity:.3;cursor:not-allowed}.reviews-pagination span{color:var(--text-primary);font-weight:600}body.dark .reviews-pagination span{color:#e5e7eb}.reviews-pagination span{font-weight:700;color:#f9fafb;padding:.5rem 1rem;background:#8b5cf61a;border-radius:8px}.course-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.stat-box{background:#0f172a80;padding:1.25rem;border-radius:12px;border:1px solid var(--border-color-light);text-align:center;transition:var(--transition)}.stat-box:hover{background:#0f172ab3;border-color:#8b5cf64d;transform:translateY(-2px)}.stat-value{font-size:1.75rem;font-weight:900;color:#f9fafb;margin-bottom:.25rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{font-size:.8125rem;color:#9ca3af;font-weight:600;text-transform:uppercase;letter-spacing:.5px}@media(max-width:1024px){.course-preview-layout{grid-template-columns:1fr}.course-sidebar{position:static;max-width:600px;margin:0 auto}}@media(max-width:768px){.course-preview-container{padding:0 1.25rem}.course-header-content h1{font-size:1.75rem}.course-header-content{padding:1.5rem 1.75rem}.course-main{padding:1.5rem 1.75rem 2rem}.course-sidebar{padding:1.5rem}.course-banner{height:200px}.course-stats{grid-template-columns:1fr}}@media(max-width:640px){.course-preview-page{padding:1.5rem 0 2.5rem}.course-preview-container{padding:0 1rem}.course-header-content h1{font-size:1.5rem}.course-subtitle{font-size:.9375rem}.course-main{padding:1.25rem 1.25rem 1.5rem}.course-sidebar{padding:1.25rem}.course-tabs{flex-wrap:wrap;width:100%}.course-tabs button{flex:1;min-width:120px}.price-amount{font-size:2rem}}.reviews-header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding:24px;background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-radius:16px;border:1px solid rgba(139,92,246,.2)}.reviews-stats{display:flex;align-items:center;gap:16px}.rating-display{display:flex;align-items:center;gap:8px}.rating-value{font-size:32px;font-weight:700;color:#1a1a2e}body.dark .rating-value{color:#f9fafb}.rating-info{display:flex;flex-direction:column;gap:4px}.rating-text{font-size:16px;font-weight:600;color:#1a1a2e;margin:0}body.dark .rating-text{color:#f9fafb}.reviews-count{font-size:14px;color:#6b7280;margin:0}body.dark .reviews-count{color:#9ca3af}.add-review-button{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #8b5cf64d}.add-review-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf680}@media(max-width:768px){.reviews-header-section{flex-direction:column;gap:16px;align-items:flex-start}.add-review-button{width:100%;justify-content:center}}body.dark .modal-overlay,body.dark .review-modal-overlay{background-color:#000c!important;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}body.dark .modal-content,body.dark .review-modal-content{background:#1e293b!important;border:1px solid rgba(139,92,246,.3);color:#f9fafb!important;box-shadow:0 25px 50px -12px #000000b3}body.dark .modal-content h2,body.dark .modal-content h3,body.dark .review-modal-content h2{color:#f9fafb!important}body.dark .modal-content textarea,body.dark .modal-content input[type=text],body.dark .modal-content input[type=number],body.dark .modal-content select{background-color:#0f172a!important;color:#f9fafb!important;border:1px solid rgba(139,92,246,.2)!important}body.dark .modal-content textarea:focus,body.dark .modal-content input:focus{border-color:#8b5cf6!important;outline:none;box-shadow:0 0 0 2px #8b5cf633}body.dark .modal-btn-cancel,body.dark .btn-secondary{background-color:#94a3b81a!important;color:#cbd5e1!important}body.dark .modal-btn-cancel:hover{background-color:#94a3b833!important;color:#fff!important}body.dark .modal-close-btn,body.dark button[aria-label=Close]{color:#9ca3af!important;background:transparent}body.dark .modal-close-btn:hover{color:#ef4444!important;background:#ef44441a}body.dark .review-card{background:#1e293bb3!important;border:1px solid rgba(139,92,246,.2)}body.dark .review-author-name{color:#f3f4f6!important}.toast-container{position:fixed;top:80px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast{min-width:300px;max-width:500px;padding:16px 20px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;gap:12px;animation:slideIn .3s ease-out;pointer-events:auto}@keyframes slideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{flex-shrink:0}.toast-message{flex:1;font-size:14px;color:#333}.toast-close{background:none;border:none;font-size:24px;line-height:1;color:#999;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-close:hover{color:#333}.toast-success{border-left:4px solid #22c55e}.toast-success .toast-icon{color:#22c55e}.toast-error{border-left:4px solid #ef4444}.toast-error .toast-icon{color:#ef4444}.toast-warning{border-left:4px solid #f59e0b}.toast-warning .toast-icon{color:#f59e0b}.toast-info{border-left:4px solid #3b82f6}.toast-info .toast-icon{color:#3b82f6}.certificate-button-container{margin:20px 0;padding:20px;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px;box-shadow:0 2px 8px #0000001a}.certificate-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 24px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;width:100%;max-width:300px}.certificate-button.generate{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.certificate-button.generate:hover:not(:disabled){background:linear-gradient(135deg,#764ba2,#667eea);transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.certificate-button.download{background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff}.certificate-button.download:hover:not(:disabled){background:linear-gradient(135deg,#27ae60,#2ecc71);transform:translateY(-2px);box-shadow:0 4px 12px #2ecc7166}.certificate-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.certificate-icon{font-size:20px}.loading-spinner{display:inline-block;animation:pulse 1.5s ease-in-out infinite}.certificate-error{padding:12px;margin-bottom:15px;background-color:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:14px}.certificate-success{padding:12px;margin-bottom:15px;background-color:#efe;border:1px solid #cfc;border-radius:6px;color:#3c3;font-size:14px;font-weight:500}.certificate-not-eligible{padding:15px;background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;color:#856404;text-align:center}.certificate-not-eligible p{margin:0;line-height:1.6}.certificate-not-eligible strong{color:#d63031;font-weight:700}.certificate-info{margin-top:15px;padding:15px;background:#fff;border-radius:8px;box-shadow:0 1px 4px #0000001a}.certificate-info p{margin:5px 0;font-size:14px;color:#333}.certificate-info strong{color:#667eea;font-weight:600}.certificate-date{color:#666;font-size:13px}@media(max-width:768px){.certificate-button-container{padding:15px}.certificate-button{max-width:100%;font-size:14px;padding:10px 20px}.certificate-icon{font-size:18px}}.ai-panel-overlay{position:fixed;top:0;right:0;bottom:0;width:420px;z-index:1001;pointer-events:none;transition:opacity .3s ease;opacity:0}.ai-panel-overlay.open{opacity:1;pointer-events:auto}.ai-panel{position:absolute;top:0;right:0;height:100%;width:100%;background:#11111bf2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-left:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:-10px 0 40px #0000004d}.ai-panel-overlay.open .ai-panel{transform:translate(0)}.ai-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.1);background:linear-gradient(135deg,#667eea26,#764ba226)}.ai-panel-title{display:flex;align-items:center;gap:10px;color:#fff;font-size:16px;font-weight:600}.ai-panel-title svg{color:#667eea}.ai-status{display:flex;align-items:center;gap:6px;font-size:11px;color:#ffffff80}.ai-status-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;animation:pulse 2s infinite}.ai-status-dot.offline{background:#ef4444;animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.ai-panel-close{background:#ffffff1a;border:none;color:#ffffffb3;width:32px;height:32px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.ai-panel-close:hover{background:#ffffff26;color:#fff}.ai-quick-actions{padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.05);background:#0003}.ai-quick-actions-title{font-size:11px;color:#fff6;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.ai-quick-actions-grid{display:flex;flex-wrap:wrap;gap:6px}.ai-quick-action-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.1);color:#fffc;padding:6px 12px;border-radius:16px;font-size:12px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.ai-quick-action-btn:hover{background:#667eea33;border-color:#667eea66;color:#fff}.ai-quick-action-btn:disabled{opacity:.5;cursor:not-allowed}.ai-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.ai-messages::-webkit-scrollbar{width:6px}.ai-messages::-webkit-scrollbar-track{background:transparent}.ai-messages::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.ai-messages::-webkit-scrollbar-thumb:hover{background:#ffffff40}.ai-welcome{text-align:center;padding:32px 16px;color:#fff9}.ai-welcome-icon{width:64px;height:64px;margin:0 auto 16px;background:linear-gradient(135deg,#667eea33,#764ba233);border-radius:50%;display:flex;align-items:center;justify-content:center}.ai-welcome-icon svg{width:32px;height:32px;color:#667eea}.ai-welcome h3{color:#fff;font-size:16px;font-weight:600;margin-bottom:8px}.ai-welcome p{font-size:13px;line-height:1.5}.ai-message{max-width:90%;padding:12px 16px;border-radius:16px;font-size:14px;line-height:1.5;position:relative}.ai-message.user{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.ai-message.assistant{background:#ffffff14;color:#ffffffe6;align-self:flex-start;border-bottom-left-radius:4px;border:1px solid rgba(255,255,255,.1)}.ai-message.error{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#fca5a5}.ai-message-content{white-space:pre-wrap;word-break:break-word}.ai-message-content h1,.ai-message-content h2,.ai-message-content h3{color:#fff;margin:12px 0 8px;font-size:14px}.ai-message-content h1:first-child,.ai-message-content h2:first-child,.ai-message-content h3:first-child{margin-top:0}.ai-message-content ul,.ai-message-content ol{padding-left:20px;margin:8px 0}.ai-message-content li{margin:4px 0}.ai-message-content code{background:#0000004d;padding:2px 6px;border-radius:4px;font-size:13px;font-family:Fira Code,monospace}.ai-message-content pre{background:#0000004d;padding:12px;border-radius:8px;overflow-x:auto;margin:8px 0}.ai-message-content pre code{background:none;padding:0}.ai-message-content strong{color:#fff;font-weight:600}.ai-message-actions{display:flex;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.ai-message-action{background:#ffffff1a;border:none;color:#fff9;padding:4px 10px;border-radius:4px;font-size:11px;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s ease}.ai-message-action:hover{background:#ffffff26;color:#fff}.ai-message-action.copied{background:#22c55e33;color:#22c55e}.ai-typing{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#ffffff0d;align-self:flex-start;border-radius:16px 16px 16px 4px}.ai-typing-dots{display:flex;gap:4px}.ai-typing-dot{width:8px;height:8px;background:#667eea;border-radius:50%;animation:bounce 1.4s infinite ease-in-out}.ai-typing-dot:nth-child(1){animation-delay:0s}.ai-typing-dot:nth-child(2){animation-delay:.2s}.ai-typing-dot:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.ai-typing-text{font-size:12px;color:#ffffff80}.ai-input-area{padding:16px;border-top:1px solid rgba(255,255,255,.1);background:#0003}.ai-input-container{display:flex;align-items:flex-end;gap:10px;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:8px 12px;transition:all .2s ease}.ai-input-container:focus-within{border-color:#667eea80;background:#ffffff1a}.ai-input{flex:1;background:transparent;border:none;color:#fff;font-size:14px;resize:none;min-height:24px;max-height:120px;line-height:1.5;font-family:inherit}.ai-input::placeholder{color:#fff6}.ai-input:focus{outline:none}.ai-send-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;width:36px;height:36px;border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.ai-send-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #667eea66}.ai-send-btn:disabled{opacity:.5;cursor:not-allowed}.ai-input-hint{font-size:11px;color:#ffffff4d;text-align:center;margin-top:8px}@media(max-width:768px){.ai-panel-overlay{width:100%}.ai-quick-actions-grid{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.ai-quick-actions-grid::-webkit-scrollbar{height:4px}}.btn-ai{display:flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s ease}.btn-ai:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-ai.active{box-shadow:0 0 0 3px #667eea4d}.btn-ai svg{width:18px;height:18px}.video-player-container{position:relative;width:100%;border-radius:12px;overflow:hidden;background:#000}.video-player{display:block;width:100%;max-height:500px;border-radius:12px}.video-speed-control{position:absolute;top:12px;right:12px;z-index:10}.speed-control-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.speed-control-btn:hover{background:#8b5cf6cc;border-color:#8b5cf680;transform:scale(1.02)}.speed-control-btn svg{opacity:.9}.current-speed{min-width:32px;text-align:center}.speed-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:140px;background:#14141ef2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(139,92,246,.3);border-radius:12px;padding:8px 0;box-shadow:0 8px 32px #0006,0 0 0 1px #ffffff0d;animation:fadeInDown .15s ease-out;z-index:100}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.speed-menu-header{padding:8px 16px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#8b5cf6e6;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:4px}.speed-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 16px;background:transparent;border:none;color:#ffffffe6;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s ease}.speed-option:hover{background:#8b5cf633;color:#fff}.speed-option.active{background:linear-gradient(135deg,#8b5cf64d,#ec489933);color:#fff;font-weight:600}.speed-option .checkmark{color:#10b981;font-weight:700}.speed-menu-overlay{position:fixed;inset:0;z-index:9}body.dark .speed-menu{background:#0f0a19fa;border-color:#8b5cf666}@media(max-width:768px){.speed-control-btn{padding:6px 10px;font-size:.8rem}.video-speed-control{top:8px;right:8px}.speed-menu{min-width:120px}.speed-option{padding:8px 12px;font-size:.85rem}}.course-completion-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:40px;margin:0 0 30px;border-radius:16px;text-align:center;box-shadow:0 8px 24px #667eea4d;position:relative}.completion-message{margin-bottom:30px}.completion-icon{color:#fbbf24;margin-bottom:16px;animation:bounce 1s infinite}.completion-message h2{font-size:32px;margin-bottom:12px;font-weight:700}.completion-message p{font-size:18px;opacity:.9}.course-learning{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);padding-bottom:40px;transition:background .3s ease}body.dark .course-learning{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.loading-container,.error-container{min-height:100vh;display:flex;align-items:center;justify-content:center;color:#1a1a2e;font-size:1.2rem}body.dark .loading-container,body.dark .error-container{color:#f9fafb}.learning-header{background:#fffffff2;padding:1.5rem 2rem;display:flex;align-items:center;gap:2rem;box-shadow:var(--shadow-md);position:sticky;top:0;z-index:100}body.dark .learning-header{background:#2d193af2}.back-button{display:flex;align-items:center;gap:.5rem;background:#8b5cf61a;border:2px solid #8b5cf6;color:#8b5cf6;padding:.5rem 1rem;border-radius:12px;cursor:pointer;font-weight:600;transition:all .3s ease}.back-button:hover{background:var(--gradient-primary);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md)}.course-title{flex:1}.course-title h1{margin:0;font-size:1.5rem;color:#1a1a2e;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.dark .course-title h1{color:#f9fafb}.course-title p{margin:.25rem 0 0;color:#6b7280;font-size:.9rem}body.dark .course-title p{color:#9ca3af}.course-progress-container{margin-top:.75rem;display:flex;align-items:center;gap:.75rem}.course-progress-bar{flex:1;height:6px;background:#8b5cf626;border-radius:3px;overflow:hidden}body.dark .course-progress-bar{background:#8b5cf633}.course-progress-fill{height:100%;background:var(--gradient-primary);transition:width .5s cubic-bezier(.4,0,.2,1);box-shadow:0 0 8px #8b5cf666}.course-progress-text{font-size:.75rem;font-weight:600;color:#8b5cf6;white-space:nowrap;min-width:80px;text-align:right}body.dark .course-progress-text{color:#a78bfa}.header-stats{display:flex;gap:1.5rem;align-items:center}.stat-item{display:flex;align-items:center;gap:.4rem;font-size:.9rem;color:#6b7280;background:#8b5cf614;padding:.5rem 1rem;border-radius:20px}body.dark .stat-item{color:#9ca3af;background:#8b5cf626}.stat-item svg{color:#8b5cf6}.btn-ai-student{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;border-radius:12px;cursor:pointer;transition:all .3s ease;border:none;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 2px 8px #667eea40}.btn-ai-student:hover{transform:translateY(-2px);box-shadow:0 4px 16px #667eea66}.btn-ai-student.active{box-shadow:0 0 0 3px #667eea4d,0 4px 12px #667eea40}body.dark .btn-ai-student{background:linear-gradient(135deg,#7c3aed,#a855f7)}.learning-content{display:grid;grid-template-columns:300px 1fr;gap:2rem;padding:2rem;max-width:1400px;margin:0 auto}@media(max-width:968px){.learning-content{grid-template-columns:1fr}}.sidebar{background:#fffffff2;border-radius:16px;padding:1.5rem;box-shadow:var(--shadow-md);height:fit-content;position:sticky;top:120px}body.dark .sidebar{background:#2d193af2}.sidebar h3{margin:0 0 1rem;color:#1a1a2e;font-size:1.1rem}body.dark .sidebar h3{color:#f9fafb}.sidebar-course-info{padding:1rem;background:linear-gradient(135deg,#8b5cf60d,#ec48990d);border-radius:10px;margin-bottom:1rem;border:1px solid rgba(139,92,246,.1)}.course-description{margin:0;font-size:.85rem;color:#6b7280;line-height:1.5;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}body.dark .course-description{color:#9ca3af}.modules-list{display:flex;flex-direction:column;gap:.75rem}.module-item{padding:1rem;border-radius:12px;border:2px solid rgba(139,92,246,.15);cursor:pointer;transition:all .3s ease;display:flex;align-items:flex-start;gap:.75rem;background:linear-gradient(135deg,#8b5cf608,#ec489908)}.module-item:hover{border-color:#8b5cf6;background:linear-gradient(135deg,#8b5cf614,#ec489914);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.module-item.active{border-color:#8b5cf6;background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-md)}.module-item.completed{border-color:#10b981;background:linear-gradient(135deg,#10b98114,#05966914)}.module-item.completed:hover{border-color:#10b981;background:linear-gradient(135deg,#10b9811f,#0596691f)}.module-number{font-size:.75rem;font-weight:600;background:#8b5cf61a;padding:.25rem .5rem;border-radius:6px;flex-shrink:0;color:#8b5cf6}.module-item.active .module-number{background:#fff3;color:#fff}.module-info h4{margin:0;font-size:.95rem;font-weight:600;color:inherit}.module-info p{margin:.25rem 0 0;font-size:.8rem;opacity:.8}.module-duration{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;color:#8b5cf6;margin-top:.25rem}.module-item.active .module-duration{color:#ffffffe6}.completed-icon{color:#10b981;flex-shrink:0}.main-content{background:#fffffff2;border-radius:16px;box-shadow:var(--shadow-md);overflow:hidden}.module-header-info{padding:1.5rem 2rem;background:linear-gradient(135deg,#8b5cf614,#ec489914);border-bottom:1px solid rgba(139,92,246,.15)}.module-badge{display:inline-block;background:var(--gradient-primary);color:#fff;padding:.35rem .75rem;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem}.module-title-main{margin:0 0 .5rem;font-size:1.5rem;color:#1a1a2e;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.dark .module-title-main{color:#f9fafb}.module-description{margin:0 0 1rem;color:#6b7280;font-size:.95rem;line-height:1.6}body.dark .module-description{color:#9ca3af}.module-meta{display:flex;flex-wrap:wrap;gap:1rem}.module-meta span{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;color:#6b7280;background:#8b5cf614;padding:.4rem .75rem;border-radius:8px}body.dark .module-meta span{color:#9ca3af;background:#8b5cf626}.module-meta span svg{color:#8b5cf6}body.dark .main-content{background:#2d193af2}.content-wrapper{padding:3rem}@media(max-width:640px){.content-wrapper{padding:1.5rem}}.section-content{margin-bottom:2rem}.section-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:3px solid transparent;border-image:var(--gradient-primary) 1}.section-badge{display:inline-block;background:var(--gradient-primary);color:#fff;padding:.3rem .75rem;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.section-title{font-size:1.75rem;color:#1a1a2e;margin:0;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.content-body{font-size:1.1rem;line-height:1.8;color:#4a5568}body.dark .content-body{color:#d1d5db}.content-body p{margin:0 0 1.5rem}.block-video{margin:1.5rem 0;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-md);max-height:500px}.block-video video,.block-video iframe{display:block;width:100%;max-height:500px;border-radius:12px}.block-image{margin:1.5rem 0;text-align:center}.block-image img{max-width:100%;max-height:600px;height:auto;border-radius:12px;box-shadow:var(--shadow-md);object-fit:contain}.block-heading{margin:2rem 0 1rem;color:#1a1a2e;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.dark .block-heading{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.block-paragraph{margin:1rem 0;line-height:1.8}.block-list{margin:1rem 0;padding-left:1.5rem}.block-list li{margin:.5rem 0;line-height:1.6}.block-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--gradient-primary);color:#fff;text-decoration:none;border-radius:10px;font-weight:500;margin:1rem 0;transition:all .3s ease}.block-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.block-file{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;text-decoration:none;border-radius:10px;font-weight:500;margin:1rem 0;transition:all .3s ease}.block-file:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.block-text{margin:1rem 0}.block-file-preview{margin:1.5rem 0;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-md);background:#fff;border:2px solid rgba(139,92,246,.15)}body.dark .block-file-preview{background:#1e0f2899}.file-preview-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:linear-gradient(135deg,#8b5cf614,#ec489914);border-bottom:1px solid rgba(139,92,246,.15)}.file-preview-title{font-weight:600;color:#1a1a2e;font-size:.9rem}.btn-download-small{display:inline-flex;align-items:center;gap:.25rem;padding:.4rem .75rem;background:var(--gradient-primary);color:#fff;text-decoration:none;border-radius:6px;font-size:.8rem;font-weight:600;transition:all .2s}.btn-download-small:hover{transform:translateY(-1px);box-shadow:0 2px 8px #8b5cf64d}.pdf-viewer,.ppt-viewer,.txt-viewer{width:100%;height:600px;max-height:600px;border:none;display:block}.txt-viewer{height:400px;max-height:400px;padding:1rem;background:#fff}body.dark .txt-viewer{background:#1e0f28cc;color:#f9fafb}.section-progress{margin:3rem 0 2rem;padding-top:2rem;border-top:1px solid rgba(139,92,246,.2)}.section-progress p{margin:0 0 .5rem;color:#6b7280;font-weight:500}body.dark .section-progress p{color:#9ca3af}.progress-bar{height:8px;background:#8b5cf61a;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--gradient-primary);transition:width .5s ease;box-shadow:var(--shadow-sm)}.navigation-buttons{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem}@media(max-width:640px){.navigation-buttons{flex-direction:column}}.btn-nav{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;font-size:1rem}.btn-prev{background:#8b5cf61a;color:#8b5cf6;border:2px solid rgba(139,92,246,.2)}.btn-prev:hover:not(:disabled){background:#8b5cf633;border-color:#8b5cf6;transform:translateY(-2px);box-shadow:var(--shadow-sm)}.btn-next{background:var(--gradient-primary);color:#fff;margin-left:auto;box-shadow:var(--shadow-sm)}.btn-next:hover:not(:disabled){background:var(--gradient-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-nav:disabled{opacity:.5;cursor:not-allowed}@media(max-width:640px){.btn-next{margin-left:0}}.quiz-container{max-width:800px;margin:0 auto}.quiz-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(139,92,246,.2)}.quiz-header h2{font-size:2rem;color:#1a1a2e;margin:0 0 .5rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.dark .quiz-header h2{color:#f9fafb}.quiz-header p{color:#6b7280;font-size:1.1rem;margin:0 0 1rem}body.dark .quiz-header p{color:#9ca3af}.quiz-info{display:flex;justify-content:center;gap:2rem;font-size:.95rem;color:#4a5568}body.dark .quiz-info{color:#d1d5db}.quiz-info span{display:flex;align-items:center;gap:.5rem}.quiz-questions{display:flex;flex-direction:column;gap:2rem;margin-bottom:2rem}.question-item{background:linear-gradient(135deg,#8b5cf60d,#ec48990d);padding:1.5rem;border-radius:12px;border:2px solid rgba(139,92,246,.15)}.question-item h3{font-size:1.1rem;color:#8b5cf6;margin:0 0 .75rem}.question-text{font-size:1.2rem;color:#1a1a2e;margin:0 0 1.25rem;font-weight:500}body.dark .question-text{color:#f9fafb}.question-options{display:flex;flex-direction:column;gap:.75rem}.option-label{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff;border:2px solid rgba(139,92,246,.15);border-radius:12px;cursor:pointer;transition:all .3s ease}body.dark .option-label{background:#1e0f2899}.option-label:hover{border-color:#8b5cf6;background:#8b5cf60d;transform:translateY(-2px);box-shadow:var(--shadow-sm)}.option-label.selected{border-color:#8b5cf6;background:#8b5cf61a;box-shadow:var(--shadow-sm)}.option-label.correct{border-color:#10b981;background:#10b9811a}.option-label.wrong{border-color:#ef4444;background:#ef44441a}.option-label input[type=radio]{width:20px;height:20px;cursor:pointer;accent-color:#8b5cf6}.option-label span{flex:1;font-size:1.05rem;color:#1a1a2e}body.dark .option-label span{color:#f9fafb}.icon-correct{color:#10b981}.question-explanation{margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#8b5cf614,#a855f714);border:1px solid rgba(139,92,246,.2);border-radius:12px;border-left:4px solid #8b5cf6;display:flex;gap:1rem;align-items:flex-start}.question-explanation .explanation-icon{font-size:1.5rem;flex-shrink:0}.question-explanation .explanation-content{flex:1}.question-explanation .explanation-content strong{color:#7c3aed;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}body.dark .question-explanation .explanation-content strong{color:#a78bfa}.question-explanation .explanation-content p{margin:.5rem 0 0;color:#4b5563;line-height:1.6;font-size:.95rem}body.dark .question-explanation .explanation-content p{color:#9ca3af}.btn-submit-quiz{width:100%;padding:1rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-sm)}.btn-submit-quiz:hover:not(:disabled){background:var(--gradient-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-submit-quiz:disabled{opacity:.5;cursor:not-allowed}.quiz-result{text-align:center;padding:2rem;background:linear-gradient(135deg,#8b5cf60d,#ec48990d);border-radius:12px;margin-top:2rem;border:2px solid rgba(139,92,246,.2)}.quiz-result h3{font-size:2rem;margin:0 0 1rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.result-success{color:#10b981;font-size:1.2rem;margin:0 0 1.5rem;font-weight:600}.result-fail{color:#ef4444;font-size:1.2rem;margin:0 0 1.5rem;font-weight:600}.btn-primary,.btn-secondary{padding:.875rem 2rem;border-radius:12px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;border:none}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--gradient-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary{background:#8b5cf61a;color:#8b5cf6;border:2px solid rgba(139,92,246,.3);margin-top:.5rem}.btn-secondary:hover{background:#8b5cf633;border-color:#8b5cf6}.no-quiz{text-align:center;padding:4rem 2rem}.no-quiz svg{color:#d1d5db;margin-bottom:1rem}body.dark .no-quiz svg{color:#6b7280}.no-quiz p{color:#6b7280;font-size:1.1rem;margin:0 0 2rem}body.dark .no-quiz p{color:#9ca3af}.block-file-preview{margin:1.5rem 0;border:2px solid rgba(139,92,246,.2);border-radius:12px;overflow:hidden;background:#fff;box-shadow:var(--shadow-md)}body.dark .block-file-preview{background:#1e0f28f2;border-color:#8b5cf64d}.file-preview-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,#8b5cf614,#ec489914);border-bottom:1px solid rgba(139,92,246,.15)}.file-preview-title{font-weight:600;color:#1a1a2e;font-size:1rem}body.dark .file-preview-title{color:#f9fafb}.btn-download-small{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;text-decoration:none;border-radius:8px;font-weight:500;font-size:.85rem;transition:all .3s ease}.btn-download-small:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.pdf-viewer,.ppt-viewer{width:100%;height:600px;border:none}.txt-viewer{width:100%;height:400px;border:none;background:#f8f9fa}body.dark .txt-viewer{background:#1e0f2899}@media(max-width:768px){.pdf-viewer,.ppt-viewer{height:400px}.txt-viewer{height:300px}}.review-prompt-banner{position:sticky;top:0;z-index:99;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px 32px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 20px #667eea66;animation:slideDown .4s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.review-prompt-content{display:flex;align-items:center;gap:16px;flex:1}.review-prompt-text h4{color:#fff;font-size:18px;font-weight:700;margin:0 0 4px}.review-prompt-text p{color:#ffffffe6;font-size:14px;margin:0}.review-prompt-actions{display:flex;gap:12px}.btn-review-later,.btn-review-now{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;white-space:nowrap}.btn-review-later{background-color:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3)}.btn-review-later:hover{background-color:#ffffff4d;transform:translateY(-2px)}.btn-review-now{background-color:#fff;color:#667eea;box-shadow:0 4px 12px #0003}.btn-review-now:hover{box-shadow:0 6px 16px #0000004d;transform:translateY(-2px)}@media(max-width:768px){.review-prompt-banner{flex-direction:column;gap:16px;padding:16px 20px}.review-prompt-content{flex-direction:column;text-align:center}.review-prompt-actions{width:100%;flex-direction:column}.btn-review-later,.btn-review-now{width:100%}}.my-courses-page{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);transition:background .3s ease;padding-top:80px}body.dark .my-courses-page{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.my-courses-container{max-width:1400px;margin:0 auto;padding:40px 20px;padding-top:5rem}.my-courses-header{text-align:center;margin-bottom:35px}.my-courses-header h1{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.dark .my-courses-header h1{background:linear-gradient(135deg,#a78bfa,#f472b6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.loading-spinner{text-align:center;padding:60px 20px;font-size:1.2rem;color:#8b5cf6;font-weight:600}body.dark .loading-spinner{color:#a78bfa}.error-message{text-align:center;padding:60px 20px;font-size:1.1rem;color:#ef4444;font-weight:600;background:#fff;border-radius:16px;border:2px solid #fecaca;max-width:600px;margin:0 auto}body.dark .error-message{background:#1e143299;border-color:#ef44444d;color:#fca5a5}.courses-filters{display:flex;gap:15px;justify-content:center;margin-bottom:40px;flex-wrap:wrap}.filter-btn{padding:12px 24px;background:#fff;border:2px solid #e5e7eb;border-radius:30px;color:#6b7280;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #8b5cf614}body.dark .filter-btn{background:#1e143299;border-color:#8b5cf64d;color:#d1d5db}.filter-btn:hover{border-color:#8b5cf6;color:#8b5cf6;transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf633}body.dark .filter-btn:hover{border-color:#a78bfa;color:#a78bfa}.course-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #8b5cf61f;transition:all .3s ease;cursor:pointer;border:1px solid rgba(139,92,246,.08)}body.dark .course-card{background:#1e143299;border-color:#8b5cf633;box-shadow:0 8px 24px #0000004d}.course-card:hover{transform:translateY(-8px);box-shadow:0 16px 40px #8b5cf640;border-color:#8b5cf64d}body.dark .course-card:hover{box-shadow:0 16px 40px #00000080;border-color:#8b5cf666}.course-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #0000001a;transition:all .3s ease;cursor:pointer}.course-card:hover{transform:translateY(-8px);box-shadow:0 15px 40px #0003}.course-thumbnail{position:relative;width:100%;height:200px;overflow:hidden}.course-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.course-card:hover .course-thumbnail img{transform:scale(1.1)}.completed-badge{position:absolute;top:15px;right:15px;display:flex;justify-content:space-between;margin-bottom:8px;font-size:.9rem;color:#4b5563;font-weight:600}.completed-badge .course-content h3{font-size:1.4rem;font-weight:700;color:#1f2937;margin-bottom:12px;line-height:1.3}.completed-badge body.dark .course-content h3{color:#f3f4f6}.completed-badge .course-instructor{color:#6b7280;font-size:.95rem;margin-bottom:20px}.completed-badge .progress-info{display:flex;justify-content:space-between;margin-bottom:8px;font-size:.9rem;color:#4b5563;font-weight:600}.completed-badge body.dark .progress-info{color:#d1d5db}.completed-badge .progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:10px;overflow:hidden}.completed-badge body.dark .progress-bar{background:#4b55634d}.completed-badge .progress-fill{height:100%;background:linear-gradient(90deg,#8b5cf6,#ec4899);border-radius:10px;transition:width .3s ease}.next-lesson{background:linear-gradient(135deg,#f0f9ff,#e0e7ff);padding:12px 16px;border-radius:8px;margin:15px 0;border-left:4px solid #8b5cf6}body.dark .next-lesson{background:linear-gradient(135deg,#8b5cf626,#ec48991a);border-left-color:#a78bfa}.next-label{display:block;font-size:.8rem;color:#6b7280;margin-bottom:4px;font-weight:600}body.dark .next-label{color:#9ca3af}.next-title{display:block;font-size:.95rem;color:#1f2937;font-weight:600}body.dark .next-title{color:#f3f4f6}.completed-info{background:linear-gradient(135deg,#d1fae5,#a7f3d0);padding:12px 16px;border-radius:8px;margin:15px 0;border-left:4px solid #10b981;color:#065f46;font-weight:600;font-size:.9rem}body.dark .completed-info{background:linear-gradient(135deg,#10b98126,#a7f3d01a);border-left-color:#34d399;color:#6ee7b7}.course-footer{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:20px;border-top:1px solid #e5e7eb;font-size:.85rem;color:#6b7280}body.dark .course-footer{border-top-color:#4b55634d;color:#9ca3af}.enrollment-date{font-weight:500}.no-courses{grid-column:1 / -1;text-align:center;padding:80px 20px;background:#fff;border-radius:16px;box-shadow:0 8px 24px #8b5cf61f;border:1px solid rgba(139,92,246,.08)}body.dark .no-courses{background:#1e143299;border-color:#8b5cf633}.no-courses-icon{font-size:5rem;margin-bottom:20px}body.dark .no-courses h3{color:#f3f4f6}body.dark .no-courses p{color:#9ca3af}.explore-btn{padding:14px 32px;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:30px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #8b5cf666}.explore-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf680}.no-courses h3{font-size:1.8rem;color:#1f2937;margin-bottom:12px}.no-courses p{font-size:1.1rem;color:#6b7280;margin-bottom:30px}.explore-btn{padding:14px 32px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:30px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.explore-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}@media(max-width:768px){.my-courses-header h1{font-size:2rem}.courses-grid{grid-template-columns:1fr;gap:20px}.filter-btn{padding:10px 18px;font-size:.9rem}.course-content h3{font-size:1.2rem}}.course-view-page{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);transition:background .3s ease}body.dark .course-view-page{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.course-view-header{background:#fff;padding:20px 40px;border-bottom:2px solid rgba(139,92,246,.1);box-shadow:0 2px 8px #0000000d}body.dark .course-view-header{background:#1e1432cc;border-bottom-color:#8b5cf64d}.back-button{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:transparent;border:2px solid #8b5cf6;border-radius:8px;color:#8b5cf6;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:20px}.back-button:hover{background:#8b5cf6;color:#fff}.course-header-info h1{font-size:2rem;color:#1f2937;margin-bottom:8px}body.dark .course-header-info h1{color:#f3f4f6}.instructor-name{color:#6b7280;font-size:1rem;margin-bottom:15px}body.dark .instructor-name{color:#9ca3af}.progress-summary{display:flex;align-items:center;gap:15px}.progress-bar-full{flex:1;max-width:400px;height:10px;background:#e5e7eb;border-radius:10px;overflow:hidden}body.dark .progress-bar-full{background:#4b55634d}.progress-bar-full .progress-fill{height:100%;background:linear-gradient(90deg,#8b5cf6,#ec4899);border-radius:10px;transition:width .3s ease}.progress-text{font-size:.9rem;color:#6b7280;font-weight:600}body.dark .progress-text{color:#d1d5db}.course-view-container{display:grid;grid-template-columns:1fr 400px;gap:20px;padding:20px 40px;max-width:1800px;margin:0 auto}.video-section{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 12px #00000014}body.dark .video-section{background:#1e143299}.video-player{width:100%;aspect-ratio:16 / 9;background:#000;position:relative}.video-player iframe{border:none}.no-video{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#6b7280}.no-video svg{margin-bottom:15px;opacity:.5}.video-info{padding:24px}.video-info h2{font-size:1.5rem;color:#1f2937;margin-bottom:12px}body.dark .video-info h2{color:#f3f4f6}.video-meta{display:flex;align-items:center;justify-content:space-between;gap:15px}.video-duration{color:#6b7280;font-weight:500}body.dark .video-duration{color:#9ca3af}.mark-complete-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.mark-complete-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf666}.completed-badge{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#d1fae5;color:#065f46;border-radius:8px;font-weight:600}body.dark .completed-badge{background:#10b98133;color:#6ee7b7}.curriculum-sidebar{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;max-height:calc(100vh - 200px);overflow-y:auto;position:sticky;top:100px}body.dark .curriculum-sidebar{background:#1e143299}.curriculum-header{padding:20px;border-bottom:2px solid #e5e7eb}body.dark .curriculum-header{border-bottom-color:#4b55634d}.curriculum-header h3{font-size:1.2rem;color:#1f2937;margin-bottom:5px}body.dark .curriculum-header h3{color:#f3f4f6}.curriculum-header p{color:#6b7280;font-size:.9rem}body.dark .curriculum-header p{color:#9ca3af}.modules-list{padding:10px}.module-item{margin-bottom:10px}.module-header{padding:15px;background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-radius:10px;cursor:pointer;transition:all .3s ease;display:flex;justify-content:space-between;align-items:center}.module-header:hover{background:linear-gradient(135deg,#8b5cf626,#ec489926)}body.dark .module-header{background:#8b5cf626}body.dark .module-header:hover{background:#8b5cf640}.module-number{display:block;font-size:.75rem;color:#8b5cf6;font-weight:600;text-transform:uppercase;margin-bottom:4px}.module-title h4{font-size:1rem;color:#1f2937;margin:0}body.dark .module-title h4{color:#f3f4f6}.module-meta{display:flex;align-items:center;gap:10px;color:#6b7280;font-size:.85rem}body.dark .module-meta{color:#9ca3af}.lessons-list{padding:5px 0}.lesson-item{display:flex;align-items:center;gap:12px;padding:12px 15px;margin:5px 0;border-radius:8px;cursor:pointer;transition:all .2s ease}.lesson-item:hover{background:#8b5cf60d}.lesson-item.active{background:linear-gradient(135deg,#8b5cf626,#ec489926);border-left:4px solid #8b5cf6}.lesson-item.completed{opacity:.7}.lesson-icon{font-size:1.5rem}.icon-play{color:#8b5cf6}.icon-completed{color:#10b981}.lesson-info{flex:1}.lesson-title{font-size:.95rem;color:#1f2937;margin:0 0 4px;font-weight:500}body.dark .lesson-title{color:#f3f4f6}.lesson-duration{font-size:.8rem;color:#6b7280}body.dark .lesson-duration{color:#9ca3af}@media(max-width:1200px){.course-view-container{grid-template-columns:1fr}.curriculum-sidebar{max-height:none;position:relative;top:0}}@media(max-width:768px){.course-view-header,.course-view-container{padding:15px 20px}.course-header-info h1{font-size:1.5rem}.progress-summary{flex-direction:column;align-items:flex-start}.progress-bar-full{width:100%;max-width:none}}.edit-profile-container{max-width:1200px;margin:0 auto;padding:2rem;min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9)}body.dark .edit-profile-container{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.profile-header{margin-bottom:2rem;text-align:center}.profile-header h1{font-size:2rem;font-weight:800;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.profile-subtitle{color:#6b7280;font-size:1rem}body.dark .profile-subtitle{color:#9ca3af}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media(max-width:968px){.profile-grid{grid-template-columns:1fr}}.profile-card{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 4px 24px #8b5cf61a;transition:all .3s ease}body.dark .profile-card{background:#1e142dcc;box-shadow:0 4px 24px #ec489926}.profile-card:hover{transform:translateY(-2px);box-shadow:0 8px 32px #8b5cf626}body.dark .profile-card:hover{box-shadow:0 8px 32px #ec489933}.card-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid rgba(139,92,246,.1)}body.dark .card-header{border-bottom-color:#ec489933}.header-icon{width:48px;height:48px;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 4px 16px #8b5cf64d}.header-icon.security{background:linear-gradient(135deg,#f59e0b,#ef4444);box-shadow:0 4px 16px #f59e0b4d}.card-header h3{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0}body.dark .card-header h3{color:#f3f4f6}.card-description{font-size:.875rem;color:#6b7280;margin:.25rem 0 0}body.dark .card-description{color:#9ca3af}.profile-form{display:flex;flex-direction:column;gap:1.25rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{font-weight:600;color:#374151;font-size:.875rem;display:flex;align-items:center;gap:.25rem}.form-group input{width:100%;padding:.75rem 1rem;border:2px solid rgba(139,92,246,.2);border-radius:12px;font-size:.9375rem;transition:all .3s ease;background:#ffffff80;color:#1f2937;box-sizing:border-box}body.dark .form-group input{background:#11182780;border-color:#ec48994d;color:#f3f4f6}.form-group input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a;background:#fff}body.dark .form-group input:focus{border-color:#ec4899;box-shadow:0 0 0 3px #ec48991a;background:#111827cc}.input-readonly{background:#9ca3af1a!important;cursor:not-allowed!important;color:#6b7280!important;border-color:#9ca3af4d!important}body.dark .input-readonly{background:#4b556333!important;color:#9ca3af!important}.field-hint{font-size:.8125rem;color:#6b7280;margin:-.25rem 0 .5rem}body.dark .field-hint{color:#9ca3af}.divider{height:1px;background:linear-gradient(90deg,transparent,rgba(139,92,246,.2),transparent);margin:.5rem 0}.image-section{background:#8b5cf608;padding:1.5rem;border-radius:12px;border:2px dashed rgba(139,92,246,.2)}body.dark .image-section{background:#ec48990d;border-color:#ec48994d}.image-upload-area{display:flex;align-items:center;gap:1.5rem;margin-top:1rem}.current-avatar{position:relative}.avatar-large{width:100px;height:100px;border-radius:50%;object-fit:cover;border:4px solid white;box-shadow:0 4px 16px #8b5cf633}body.dark .avatar-large{border-color:#1e142dcc}.new-badge{position:absolute;top:-8px;right:-8px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .5rem;border-radius:8px;box-shadow:0 2px 8px #10b98166}.upload-controls{flex:1}.btn-upload{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:12px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px #8b5cf64d}.btn-upload:hover{transform:translateY(-2px);box-shadow:0 6px 24px #8b5cf666}.security-info{background:#f59e0b1a;border-left:4px solid #f59e0b;padding:1rem;border-radius:8px;margin-bottom:.5rem}body.dark .security-info{background:#f59e0b26}.security-info p{font-weight:600;color:#d97706;margin:0 0 .5rem}.security-info ul{margin:0;padding-left:1.5rem;color:#92400e}body.dark .security-info ul{color:#fbbf24}.security-info li{font-size:.875rem;margin:.25rem 0}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 2rem;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:.5rem}.btn-full{width:100%}.btn-primary{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;box-shadow:0 4px 16px #8b5cf64d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 24px #8b5cf666}.btn-secondary{background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;box-shadow:0 4px 16px #f59e0b4d}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 6px 24px #f59e0b66}.message{padding:1rem 1.5rem;border-radius:12px;text-align:center;font-weight:600;margin-bottom:1.5rem;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.message.success{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border:2px solid #10b981}.message.error{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b;border:2px solid #ef4444}.loading{text-align:center;padding:4rem;font-size:1.125rem;color:#6b7280}.my-questions-container{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);padding:5rem 2rem 2rem;transition:background .3s ease}body.dark .my-questions-container{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.my-questions-header{max-width:1200px;margin:0 auto 2rem;display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;flex-wrap:wrap}.header-content h1{font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.header-subtitle{font-size:1.125rem;color:#000;font-weight:500}body.dark .header-subtitle{color:#d1d5db}.header-stats{display:flex;gap:2rem}.stat-item{display:flex;flex-direction:column;align-items:center;padding:1.5rem 2rem;background:#fff;border-radius:16px;box-shadow:0 4px 20px #8b5cf633;border:2px solid #8b5cf6;min-width:150px}body.dark .stat-item{background:#1f1f2e;box-shadow:0 4px 20px #8b5cf64d;border-color:#7c3aed}.stat-number{font-size:2.5rem;font-weight:900;color:#6d28d9!important;background:none!important;-webkit-text-fill-color:#6d28d9!important;margin-bottom:.5rem;line-height:1}body.dark .stat-number{color:#c4b5fd!important;-webkit-text-fill-color:#c4b5fd!important}.stat-label{font-size:.75rem;color:#1f2937!important;background:none!important;-webkit-text-fill-color:#1f2937!important;font-weight:700;margin-top:.25rem;text-transform:uppercase;letter-spacing:.5px;text-align:center;line-height:1.2}body.dark .stat-label{color:#e5e7eb!important;-webkit-text-fill-color:#e5e7eb!important}.filter-tabs{max-width:1200px;margin:0 auto 2rem;display:flex;gap:1rem;background:#fff;padding:.5rem;border-radius:16px;box-shadow:0 4px 12px #8b5cf61a}body.dark .filter-tabs{background:#8b5cf60d;box-shadow:0 4px 12px #8b5cf633}.filter-tab{flex:1;padding:.875rem 1.5rem;border:none;border-radius:12px;background:transparent;color:#374151;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s ease}.filter-tab:hover{background:#8b5cf61a;color:#8b5cf6}.filter-tab.active{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;box-shadow:0 4px 12px #8b5cf64d}body.dark .filter-tab{color:#9ca3af}body.dark .filter-tab:hover{background:#8b5cf626;color:#c4b5fd}.questions-list{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.question-card{background:#fff;border-radius:20px;padding:1.75rem;box-shadow:0 4px 16px #8b5cf614;border:2px solid transparent;transition:all .3s ease;cursor:pointer}.question-card:hover{border-color:#8b5cf64d;box-shadow:0 8px 24px #8b5cf626;transform:translateY(-2px)}body.dark .question-card{background:#8b5cf60d;box-shadow:0 4px 16px #8b5cf633}body.dark .question-card:hover{border-color:#8b5cf680;box-shadow:0 8px 24px #8b5cf64d}.course-badge{display:inline-block;padding:.5rem 1rem;background:linear-gradient(135deg,#8b5cf61a,#ec48991a);color:#8b5cf6;font-size:.875rem;font-weight:600;border-radius:8px}body.dark .course-badge{background:linear-gradient(135deg,#8b5cf633,#ec489933);color:#c4b5fd}.question-date{font-size:.875rem;color:#4b5563}body.dark .question-date{color:#9ca3af}.question-content{margin-bottom:1.5rem}.question-title{font-size:1.25rem;font-weight:700;color:#1f2937;margin-bottom:.75rem;line-height:1.5}body.dark .question-title{color:#f9fafb}.question-text{font-size:.9375rem;color:#4b5563;line-height:1.6}body.dark .question-text{color:#9ca3af}.module-tag{display:inline-block;padding:.375rem .75rem;background:#8b5cf60d;color:#374151;font-size:.8125rem;border-radius:6px}body.dark .module-tag{background:#8b5cf61a;color:#9ca3af}.question-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid rgba(139,92,246,.1)}.question-meta{display:flex;align-items:center;gap:1rem}.status-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600}.status-badge.answered{background:#22c55e1a;color:#16a34a}.status-badge.pending{background:#fb923c1a;color:#ea580c}body.dark .status-badge.answered{background:#22c55e26;color:#4ade80}body.dark .status-badge.pending{background:#fb923c26;color:#fb923c}.status-icon{font-size:1rem}.answer-count{font-size:.875rem;color:#374151}body.dark .answer-count{color:#9ca3af}.view-btn{padding:.625rem 1.25rem;background:#8b5cf61a;color:#8b5cf6;border:1px solid rgba(139,92,246,.2);border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease}.view-btn:hover{background:#8b5cf633;border-color:#8b5cf666}body.dark .view-btn{background:#8b5cf626;color:#c4b5fd;border-color:#8b5cf64d}body.dark .view-btn:hover{background:#8b5cf640;border-color:#8b5cf680}.latest-answer{margin-top:1.5rem;padding:1.25rem;background:linear-gradient(135deg,#8b5cf60d,#ec48990d);border-radius:12px;border-left:3px solid #8b5cf6}body.dark .latest-answer{background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-left-color:#c4b5fd}.answer-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.answer-label{font-size:.875rem;font-weight:700;color:#8b5cf6}body.dark .answer-label{color:#c4b5fd}.answer-author{font-size:.875rem;color:#374151}body.dark .answer-author{color:#9ca3af}.answer-preview{font-size:.9375rem;color:#374151;line-height:1.6;margin:0}body.dark .answer-preview{color:#9ca3af}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:20px;box-shadow:0 4px 16px #8b5cf614}body.dark .empty-state{background:#8b5cf60d;box-shadow:0 4px 16px #8b5cf633}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}body.dark .empty-state h3{color:#f9fafb}.empty-state p{font-size:1rem;color:#374151;margin-bottom:2rem}body.dark .empty-state p{color:#9ca3af}.btn-explore{padding:.875rem 2rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #8b5cf64d}.btn-explore:hover{transform:translateY(-2px);box-shadow:0 8px 20px #8b5cf666}.loading{text-align:center;padding:4rem 2rem;font-size:1.125rem;color:#374151}body.dark .loading{color:#9ca3af}@media(max-width:768px){.my-questions-header{flex-direction:column}.header-stats{width:100%;justify-content:space-between}.filter-tabs{flex-direction:column;gap:.5rem}.question-footer{flex-direction:column;gap:1rem;align-items:flex-start}.view-btn{width:100%}}.certificates-page{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);transition:background .3s ease}body.dark .certificates-page{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.certificates-container{max-width:1400px;margin:0 auto;padding:4.5rem 2rem 2.5rem}.certificates-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem;padding:2rem;background:#fff;border-radius:20px;box-shadow:0 8px 32px #8b5cf61f;border:2px solid rgba(139,92,246,.1);flex-wrap:wrap;gap:2rem}body.dark .certificates-header{background:#8b5cf60d;border-color:#8b5cf633}.header-content{display:flex;align-items:center;gap:1.5rem;flex:1}.header-icon{width:64px;height:64px;color:#8b5cf6;padding:12px;background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-radius:16px;flex-shrink:0}.page-title{font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 .5rem;letter-spacing:-.02em}.page-subtitle{color:#666;font-size:1rem;margin:0}body.dark .page-subtitle{color:#a0a0a0}.certificates-count{display:flex;flex-direction:column;align-items:center;padding:1rem 2rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:16px;box-shadow:0 8px 24px #8b5cf64d;min-width:120px}.count-number{font-size:3rem;font-weight:800;color:#fff;line-height:1}.count-label{font-size:.875rem;color:#ffffffe6;text-transform:uppercase;letter-spacing:.1em;margin-top:.25rem}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6rem 2rem;text-align:center}.loading-spinner-large{width:60px;height:60px;border:4px solid rgba(139,92,246,.1);border-top-color:#8b5cf6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}.loading-state p{color:#666;font-size:1.125rem}body.dark .loading-state p{color:#a0a0a0}.error-message{background:#fee;border:2px solid #fcc;border-radius:16px;padding:2rem;text-align:center;margin-bottom:2rem}.error-message p{color:#c33;font-size:1.125rem;margin-bottom:1rem}.retry-button{padding:.75rem 1.5rem;background:#c33;color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.retry-button:hover{background:#a22;transform:translateY(-2px)}.empty-state{text-align:center;padding:6rem 2rem}.empty-icon{width:120px;height:120px;margin:0 auto 2rem;background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-radius:50%;display:flex;align-items:center;justify-content:center}.empty-icon svg{width:64px;height:64px;color:#8b5cf6}.empty-state h2{font-size:2rem;font-weight:700;color:var(--text-color);margin-bottom:1rem}.empty-state p{font-size:1.125rem;color:#666;margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto}body.dark .empty-state p{color:#a0a0a0}.explore-button{padding:1rem 2rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px #8b5cf64d}.explore-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf666}.certificates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:2rem}.certificate-card{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 8px 32px #8b5cf61f;border:2px solid rgba(139,92,246,.1);position:relative;overflow:hidden;transition:all .3s ease}body.dark .certificate-card{background:#8b5cf60d;border-color:#8b5cf633}.certificate-card:hover{transform:translateY(-8px);box-shadow:0 16px 48px #8b5cf633;border-color:#8b5cf64d}.certificate-badge{position:absolute;top:-10px;right:20px;width:60px;height:60px;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #8b5cf666;z-index:2}.badge-icon{width:32px;height:32px;color:#fff}.certificate-content{position:relative;z-index:1}.certificate-title{font-size:1.5rem;font-weight:700;color:var(--text-color);margin:0 0 1.5rem;line-height:1.3;padding-right:60px}.certificate-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.detail-item{display:flex;align-items:center;gap:.5rem;color:#666;font-size:.95rem}body.dark .detail-item{color:#a0a0a0}.detail-icon{width:18px;height:18px;color:#8b5cf6;flex-shrink:0}.detail-item.code{padding:.75rem;background:#8b5cf60d;border-radius:12px;border:1px solid rgba(139,92,246,.1);margin-top:.5rem}body.dark .detail-item.code{background:#8b5cf61a;border-color:#8b5cf633}.code-label{font-weight:600;color:#8b5cf6}.code-value{font-family:Courier New,monospace;font-weight:600;color:var(--text-color);letter-spacing:.05em}.certificate-instructor{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#ec48990d;border-radius:12px;margin-bottom:1.5rem;font-size:.95rem}body.dark .certificate-instructor{background:#ec48991a}.instructor-label{font-weight:600;color:#ec4899}.instructor-name{color:var(--text-color);font-weight:500}.download-button{width:100%;padding:1rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 16px #8b5cf64d}.download-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf666}.download-button:disabled{opacity:.7;cursor:not-allowed}.download-button svg{width:20px;height:20px}.button-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.certificate-decoration{position:absolute;bottom:0;right:0;width:150px;height:150px;background:linear-gradient(135deg,#8b5cf60d,#ec48990d);border-radius:50%;transform:translate(50%,50%);pointer-events:none}@media(max-width:768px){.certificates-container{padding:2rem 1rem}.certificates-header{flex-direction:column;text-align:center;padding:1.5rem}.header-content{flex-direction:column;text-align:center}.page-title{font-size:2rem}.certificates-count{width:100%;flex-direction:row;justify-content:center;gap:1rem}.count-number{font-size:2rem}.certificates-grid{grid-template-columns:1fr;gap:1.5rem}.certificate-card{padding:1.5rem}.certificate-title{font-size:1.25rem}}.achievements-page{min-height:100vh;background:var(--color-background)}.achievements-container{max-width:1400px;margin:0 auto;padding:2rem}.achievements-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem;padding:2rem;background:var(--color-surface);border-radius:16px;box-shadow:0 2px 8px #00000014}.achievements-header .header-content{display:flex;align-items:center;gap:1.5rem}.achievements-header .header-icon{width:56px;height:56px;color:var(--color-primary);background:var(--color-primary-light);border-radius:12px;padding:12px}.achievements-stats{display:flex;gap:2rem}.achievements-stats .stat-item{display:flex;flex-direction:column;align-items:center;gap:.5rem}.achievements-stats .stat-number{font-size:2rem;font-weight:700;color:var(--color-primary)}.achievements-stats .stat-label{font-size:.875rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.achievements-grid-full{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.achievement-card-full{position:relative;background:var(--color-surface);border-radius:16px;padding:2rem;box-shadow:0 2px 8px #00000014;transition:all .3s ease;overflow:hidden}.achievement-card-full:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.achievement-badge{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px}.badge-sparkle{width:16px;height:16px}.badge-bronze{background:linear-gradient(135deg,#cd7f32,#c96f1f);color:#fff}.badge-silver{background:linear-gradient(135deg,silver,#a8a8a8);color:#fff}.badge-gold{background:linear-gradient(135deg,gold,#ffb700);color:#fff}.badge-platinum{background:linear-gradient(135deg,#e5e4e2,#b8b8b8);color:#fff;box-shadow:0 0 12px #e5e4e280}.achievement-icon-large{font-size:3rem;text-align:center;margin:1rem 0}.achievement-content-full{text-align:center}.achievement-title-full{font-size:1.25rem;font-weight:600;color:var(--color-text);margin-bottom:.5rem}.achievement-desc-full{font-size:.95rem;color:var(--color-text-secondary);margin-bottom:1rem;line-height:1.5}.achievement-meta{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--color-border)}.achievement-type{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;padding:.25rem .75rem;background:var(--color-primary-light);color:var(--color-primary);border-radius:12px;font-weight:600}.achievement-date-full{font-size:.875rem;color:var(--color-text-secondary)}.empty-state{text-align:center;padding:4rem 2rem;background:var(--color-surface);border-radius:16px;box-shadow:0 2px 8px #00000014}.empty-state .empty-icon{font-size:4rem;color:var(--color-text-secondary);margin-bottom:1.5rem}.empty-state .empty-icon svg{width:80px;height:80px}.empty-state h2{font-size:1.5rem;color:var(--color-text);margin-bottom:.5rem}.empty-state p{font-size:1rem;color:var(--color-text-secondary);margin-bottom:2rem}.explore-button{background:var(--color-primary);color:#fff;border:none;padding:.875rem 2rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.explore-button:hover{background:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf64d}.loading-state{text-align:center;padding:4rem 2rem}.loading-spinner-large{width:48px;height:48px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.empty-achievements{text-align:center;padding:2rem;color:var(--color-text-secondary);font-size:1rem}@media(max-width:768px){.achievements-header{flex-direction:column;gap:1.5rem;text-align:center}.achievements-stats{width:100%;justify-content:center}.achievements-grid-full{grid-template-columns:1fr}}.reminder-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease}.reminder-modal{background:#fff;border-radius:24px;width:90%;max-width:500px;box-shadow:0 20px 60px #8b5cf64d;animation:slideUp .4s cubic-bezier(.34,1.56,.64,1);overflow:hidden}body.dark .reminder-modal{background:#1a1a2e;box-shadow:0 20px 60px #8b5cf680}@keyframes slideUp{0%{transform:translateY(50px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.reminder-modal-header{background:linear-gradient(135deg,#8b5cf6,#ec4899);padding:2rem;text-align:center;position:relative}.reminder-icon{font-size:4rem;margin-bottom:1rem;animation:bounce 1s ease infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.reminder-modal-header h2{color:#fff;font-size:1.75rem;font-weight:800;margin:0}.reminder-close{position:absolute;top:1rem;right:1rem;background:#fff3;border:none;color:#fff;font-size:2rem;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;line-height:1}.reminder-close:hover{background:#ffffff4d;transform:rotate(90deg)}.reminder-modal-body{padding:2rem}.reminder-modal-message{font-size:1.25rem;color:#374151;text-align:center;margin-bottom:2rem;line-height:1.6}body.dark .reminder-modal-message{color:#e5e7eb}.reminder-modal-actions{display:flex;flex-direction:column;gap:1rem}.reminder-btn-start,.reminder-btn-snooze{padding:1rem 2rem;border-radius:12px;font-size:1.125rem;font-weight:700;cursor:pointer;transition:all .3s ease;border:none}.reminder-btn-start{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;box-shadow:0 4px 16px #8b5cf64d}.reminder-btn-start:hover{transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf666}.reminder-btn-snooze{background:#8b5cf61a;color:#8b5cf6;border:2px solid rgba(139,92,246,.2)}.reminder-btn-snooze:hover{background:#8b5cf633;border-color:#8b5cf64d}body.dark .reminder-btn-snooze{background:#8b5cf626;color:#c4b5fd;border-color:#8b5cf64d}body.dark .reminder-btn-snooze:hover{background:#8b5cf640;border-color:#8b5cf680}@media(max-width:768px){.reminder-modal{width:95%;margin:1rem}.reminder-modal-header{padding:1.5rem}.reminder-icon{font-size:3rem}.reminder-modal-header h2{font-size:1.5rem}.reminder-modal-body{padding:1.5rem}.reminder-modal-message{font-size:1.125rem}.reminder-btn-start,.reminder-btn-snooze{padding:.875rem 1.5rem;font-size:1rem}}.settings-container{max-width:1200px;margin:0 auto;padding:2rem;padding-top:calc(80px + 2rem);min-height:calc(100vh - 80px)}.settings-header{margin-bottom:2rem}.settings-header h1{font-size:2rem;font-weight:800;color:var(--text-color);margin-bottom:.5rem}.settings-subtitle{color:#666;font-size:1rem}body.dark .settings-subtitle{color:#999}.settings-message{padding:1rem 1.5rem;border-radius:12px;margin-bottom:2rem;font-weight:500}.settings-message.success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.settings-message.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}body.dark .settings-message.success{background:#10b9811a;color:#6ee7b7}body.dark .settings-message.error{background:#ef44441a;color:#fca5a5}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}@media(max-width:968px){.settings-grid{grid-template-columns:1fr}}.settings-card{background:#fff;border:2px solid rgba(139,92,246,.1);border-radius:20px;padding:2rem;box-shadow:0 4px 20px #8b5cf614;transition:all .3s ease}body.dark .settings-card{background:#8b5cf60d;border-color:#8b5cf633}.settings-card:hover{transform:translateY(-2px);box-shadow:0 8px 28px #8b5cf626}.card-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:2rem}.header-icon{width:48px;height:48px;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.card-header h3{font-size:1.25rem;font-weight:700;color:var(--text-color);margin:0 0 .25rem}.card-description{font-size:.875rem;color:#666;margin:0}body.dark .card-description{color:#999}.settings-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9375rem;font-weight:600;color:var(--text-color)}.form-group input[type=number],.form-group input[type=time],.form-group textarea{padding:.75rem 1rem;border:2px solid rgba(139,92,246,.15);border-radius:12px;font-size:1rem;color:var(--text-color);background:#fff;transition:all .3s ease}body.dark .form-group input[type=number],body.dark .form-group input[type=time],body.dark .form-group textarea{background:#8b5cf60d;border-color:#8b5cf633}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf61a}.form-hint{font-size:.8125rem;color:#666}body.dark .form-hint{color:#999}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:1rem;background:#8b5cf60d;border-radius:12px;transition:all .2s ease}.checkbox-label:hover{background:#8b5cf61a}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#8b5cf6}.checkbox-label span{font-size:1rem;font-weight:500;color:var(--text-color)}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}.day-button{padding:.75rem;border:2px solid rgba(139,92,246,.2);border-radius:12px;background:#fff;color:#6b7280;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s ease;-webkit-user-select:none;user-select:none}body.dark .day-button{background:#8b5cf60d;border-color:#8b5cf640;color:#9ca3af}.day-button:hover{border-color:#8b5cf6;background:#8b5cf61a;transform:translateY(-2px)}.day-button.selected{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border-color:#8b5cf6;font-weight:700;box-shadow:0 4px 12px #8b5cf666;transform:scale(1.05)}body.dark .day-button.selected{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-color:#a78bfa;box-shadow:0 4px 12px #8b5cf699}.day-button.selected:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);transform:scale(1.05) translateY(-2px);box-shadow:0 6px 16px #8b5cf680}.settings-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem}.btn-cancel,.btn-save{padding:.875rem 2rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.btn-cancel{background:#fff;color:#666;border:2px solid rgba(139,92,246,.15)}body.dark .btn-cancel{background:#8b5cf60d;border-color:#8b5cf633;color:#999}.btn-cancel:hover{border-color:#8b5cf6;color:#8b5cf6}.btn-save{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;box-shadow:0 4px 16px #8b5cf64d}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px #8b5cf666}.btn-save:disabled{opacity:.6;cursor:not-allowed}.loading{text-align:center;padding:3rem;font-size:1.125rem;color:#666}body.dark .loading{color:#999}.teacher-dashboard{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);transition:background .3s ease}body.dark .teacher-dashboard{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.teacher-main-content{max-width:1400px;margin:0 auto;padding:4.5rem 2rem 2.5rem}.teacher-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem;flex-wrap:wrap;gap:1.5rem}.page-title{font-size:2.75rem;font-weight:800;margin:0 0 .5rem;letter-spacing:-.03em}.gradient-text{background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-subtitle{font-size:1.125rem;color:#6b7280;margin:0}body.dark .page-subtitle{color:#9ca3af}.btn-create-gradient{display:inline-flex;align-items:center;gap:.625rem;padding:.875rem 1.75rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:14px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 8px 24px #8b5cf64d;transition:all .3s ease}.btn-create-gradient:hover{transform:translateY(-3px);box-shadow:0 12px 32px #8b5cf666}.btn-create-gradient:active{transform:translateY(-1px)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1.5rem}.gradient-spinner{width:60px;height:60px;border:4px solid transparent;border-top-color:#8b5cf6;border-right-color:#ec4899;border-radius:50%;animation:spin 1s cubic-bezier(.68,-.55,.265,1.55) infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text{font-size:1.125rem;font-weight:500;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.error-banner{padding:1rem 1.5rem;background:linear-gradient(135deg,#ef44441a,#dc26261a);border:2px solid rgba(239,68,68,.3);border-radius:14px;margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.error-banner p{color:#dc2626;margin:0;font-weight:500}.retry-btn{padding:.5rem 1rem;background:#dc2626;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.retry-btn:hover{background:#b91c1c;transform:translateY(-2px)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-card-gradient{padding:2rem;border-radius:20px;color:#fff;display:flex;align-items:center;gap:1.5rem;box-shadow:0 8px 24px #8b5cf633;transition:all .3s ease;position:relative;overflow:hidden}.stat-card-gradient .stat-label{color:#fff!important}.stat-card-gradient .stat-icon svg{color:#fff!important}.stat-card-gradient:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.stat-card-gradient:hover:before{opacity:1}.stat-card-gradient:hover{transform:translateY(-8px);box-shadow:0 16px 40px #8b5cf659}.stat-card-gradient.purple-pink{background:linear-gradient(135deg,#8b5cf6,#ec4899)}.stat-card-gradient.pink-rose{background:linear-gradient(135deg,#ec4899,#f43f5e)}.stat-card-gradient.violet-purple{background:linear-gradient(135deg,#a78bfa,#c084fc)}.stat-icon{width:64px;height:64px;background:#ffffff4d;border-radius:16px;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-shrink:0;box-shadow:0 4px 16px #00000026}.stat-icon svg{color:#fff!important;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.stat-details{display:flex;flex-direction:column;gap:.25rem}.stat-number{font-size:5rem;font-weight:800;line-height:1;text-emphasis-color:#000;text-shadow:.5px .5px .5px white;margin:0}.stat-label{font-size:1rem;font-weight:700;opacity:1;margin:0;color:#fff!important;letter-spacing:.05em;text-transform:uppercase}.courses-section{margin-top:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;flex-wrap:wrap;gap:1.5rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(139,92,246,.15)}.section-title{font-size:2rem;font-weight:800;margin:0;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}body.dark .section-title{background:linear-gradient(135deg,#c4b5fd,#f9a8d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.filter-controls{display:flex;align-items:center;gap:.75rem}.filter-controls:before{content:"Sortează după:";font-size:.9375rem;font-weight:600;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.dark .filter-controls:before{background:linear-gradient(135deg,#c4b5fd,#f9a8d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sort-select-gradient{min-width:200px;padding:.75rem 1rem;background:#fff;border:2px solid;border-image:linear-gradient(135deg,#8b5cf6,#ec4899) 1;border-radius:14px;font-size:.9375rem;font-weight:600;color:#1f2937;cursor:pointer;transition:all .3s ease;appearance:none;box-shadow:0 4px 12px #8b5cf61a;position:relative}.sort-select-gradient{min-width:200px;padding:.75rem 1rem;background:#fff;border:2px solid #8b5cf6;border-radius:14px;font-size:.9375rem;font-weight:600;color:#1f2937;cursor:pointer;transition:all .3s ease;appearance:none;box-shadow:0 4px 12px #8b5cf626;position:relative}.sort-select-gradient:hover{border-color:#ec4899;transform:translateY(-2px);box-shadow:0 8px 20px #8b5cf640}.sort-select-gradient:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf626,0 8px 20px #8b5cf633}.sort-select-gradient option{background:#fff;color:#1f2937;font-weight:600;padding:.75rem;font-size:.9375rem}.sort-select-gradient option:checked,.sort-select-gradient option:hover{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;font-weight:700}body.dark .sort-select-gradient{background:#1f2937;color:#f3e8ff;border-color:#a78bfa;box-shadow:0 4px 12px #8b5cf633}body.dark .sort-select-gradient:hover{border-color:#f9a8d4;box-shadow:0 8px 20px #8b5cf64d}body.dark .sort-select-gradient option{background:#1f2937;color:#f3e8ff}body.dark .sort-select-gradient option:checked,body.dark .sort-select-gradient option:hover{background:linear-gradient(135deg,#a78bfa,#f9a8d4);color:#fff}body.dark .sort-select-gradient:hover{box-shadow:0 8px 20px #8b5cf64d}.empty-state-gradient{text-align:center;padding:5rem 2rem;background:#fff;border-radius:24px;box-shadow:0 8px 32px #8b5cf61a;border:2px solid rgba(139,92,246,.1)}body.dark .empty-state-gradient{background:#1f293780;border-color:#8b5cf633}.empty-icon{width:120px;height:120px;margin:0 auto 2rem;background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#8b5cf6}.empty-state-gradient h3{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0 0 .75rem}body.dark .empty-state-gradient h3{color:#f3e8ff}.empty-state-gradient p{font-size:1.0625rem;color:#6b7280;margin:0 0 2.5rem}body.dark .empty-state-gradient p{color:#9ca3af}.courses-grid-modern{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;width:100%}@media(min-width:1400px){.courses-grid-modern{grid-template-columns:repeat(4,1fr)}}@media(min-width:1024px)and (max-width:1399px){.courses-grid-modern{grid-template-columns:repeat(3,1fr)}}@media(min-width:768px)and (max-width:1023px){.courses-grid-modern{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media(max-width:767px){.courses-grid-modern{grid-template-columns:1fr;gap:1.25rem}}.course-card-modern{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 4px 16px #8b5cf614;border:1px solid rgba(139,92,246,.1);transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;flex-direction:column;height:100%}.course-carousel .swiper-slide{height:auto;display:flex}body.dark .course-card-modern{background:#1f2937b3;border-color:#8b5cf633}.course-card-modern:hover{transform:translateY(-12px);box-shadow:0 20px 48px #8b5cf640;border-color:#8b5cf64d}.course-thumbnail{position:relative;width:100%;height:200px;overflow:hidden;background:#f3f4f6}.course-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.course-card-modern:hover .course-thumbnail img{transform:scale(1.08)}.thumbnail-placeholder-gradient{width:100%;height:100%;background:linear-gradient(135deg,#8b5cf626,#ec489926);display:flex;align-items:center;justify-content:center;color:#8b5cf666;transition:all .3s ease}.thumbnail-placeholder-gradient svg{filter:drop-shadow(0 2px 8px rgba(139,92,246,.2))}.course-card-modern:hover .thumbnail-placeholder-gradient{background:linear-gradient(135deg,#8b5cf633,#ec489933);color:#8b5cf699}body.dark .thumbnail-placeholder-gradient{background:linear-gradient(135deg,#8b5cf633,#ec489933);color:#a78bfa80}body.dark .course-card-modern:hover .thumbnail-placeholder-gradient{background:linear-gradient(135deg,#8b5cf64d,#ec48994d);color:#a78bfab3}.status-badge{position:absolute;top:1rem;right:1rem;padding:.375rem .875rem;border-radius:20px;font-size:.75rem;font-weight:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #00000026}.status-badge.active{background:#22c55ee6;color:#fff}.status-badge.draft{background:#fbbf24e6;color:#fff}.status-badge.archived{background:#6b7280e6;color:#fff}.course-body{padding:1.75rem;flex:1;display:flex;flex-direction:column;gap:.75rem}.course-category-tag{display:inline-block;align-self:flex-start;padding:.375rem .875rem;background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border:1px solid rgba(139,92,246,.2);border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.course-title{font-size:1.375rem;font-weight:700;color:#1f2937;margin:0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}body.dark .course-title{color:#f3e8ff}.course-desc{font-size:.9375rem;color:#6b7280;line-height:1.6;margin:0;flex:1}body.dark .course-desc{color:#9ca3af}.course-stats-row{display:flex;flex-wrap:wrap;gap:.75rem;padding-top:1rem;border-top:1px solid rgba(139,92,246,.1);justify-content:center}.stat-item{display:flex;align-items:center;gap:.5rem;color:#6b7280;font-size:.8125rem;font-weight:600;padding:.5rem .875rem;background:#fff;border:2px solid rgba(139,92,246,.15);border-radius:10px;flex:0 1 auto;min-width:0;white-space:nowrap;transition:all .2s ease}.stat-item:hover{border-color:#8b5cf64d;transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf61a}body.dark .stat-item{background:#1f293799;border-color:#8b5cf640}body.dark .stat-item{color:#9ca3af}.stat-item svg{color:#8b5cf6;flex-shrink:0}.course-footer{display:flex;gap:.75rem;padding:1.25rem 1.75rem;background:linear-gradient(135deg,#8b5cf608,#ec489908);border-top:1px solid rgba(139,92,246,.1)}body.dark .course-footer{background:#8b5cf60d;border-top-color:#8b5cf626}.action-btn{flex:1;padding:.75rem;background:#fff;border:2px solid rgba(139,92,246,.2);border-radius:12px;color:#6b7280;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}body.dark .action-btn{background:#1f2937cc;border-color:#8b5cf64d;color:#9ca3af}.action-btn:hover{transform:translateY(-3px);box-shadow:0 6px 20px #8b5cf633}.action-btn.view:hover{border-color:#8b5cf6;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff}.action-btn.edit:hover{border-color:#10b981;background:#10b981;color:#fff}.action-btn.delete:hover{border-color:#ef4444;background:#ef4444;color:#fff}.action-btn.toggle-status.active:hover{border-color:#f59e0b;background:#f59e0b;color:#fff}.action-btn.toggle-status.draft:hover{border-color:#10b981;background:#10b981;color:#fff}.pagination-container{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:3rem;padding-top:2rem;border-top:2px solid rgba(139,92,246,.1)}.pagination-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#fff;border:2px solid rgba(139,92,246,.2);border-radius:12px;color:#6b7280;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #8b5cf614}body.dark .pagination-btn{background:#1f2937cc;border-color:#8b5cf64d;color:#9ca3af}.pagination-btn:hover:not(:disabled){transform:translateY(-2px);border-color:#8b5cf6;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;box-shadow:0 6px 20px #8b5cf640}.pagination-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.pagination-numbers{display:flex;align-items:center;gap:.5rem}.pagination-number{min-width:44px;height:44px;padding:.5rem;background:#fff;border:2px solid rgba(139,92,246,.15);border-radius:10px;color:#6b7280;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}body.dark .pagination-number{background:#1f293799;border-color:#8b5cf633;color:#9ca3af}.pagination-number:hover{transform:translateY(-2px);border-color:#8b5cf6;background:#8b5cf61a;color:#8b5cf6;box-shadow:0 4px 12px #8b5cf626}.pagination-number.active{background:linear-gradient(135deg,#8b5cf6,#ec4899);border-color:transparent;color:#fff;box-shadow:0 4px 16px #8b5cf64d}body.dark .pagination-number.active{background:linear-gradient(135deg,#a78bfa,#f9a8d4)}.pagination-ellipsis{color:#9ca3af;font-weight:600;padding:0 .25rem;-webkit-user-select:none;user-select:none}body.dark .pagination-ellipsis{color:#6b7280}.modal-overlay-gradient{position:fixed;inset:0;background:#111827b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem;animation:fadeIn .3s ease}.modal-content-gradient{background:#fff;padding:2.5rem;border-radius:24px;max-width:500px;width:100%;box-shadow:0 24px 64px #8b5cf64d;border:2px solid rgba(139,92,246,.2);animation:modalSlide .3s cubic-bezier(.175,.885,.32,1.275)}body.dark .modal-content-gradient{background:#1f2937;border-color:#8b5cf64d}@keyframes modalSlide{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header-gradient{width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#ef44441a,#dc26261a);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#ef4444}.modal-title{font-size:1.75rem;font-weight:700;color:#1f2937;text-align:center;margin:0 0 1rem}body.dark .modal-title{color:#f3e8ff}.modal-text{font-size:1rem;color:#6b7280;text-align:center;line-height:1.6;margin:0 0 2rem}body.dark .modal-text{color:#9ca3af}.modal-actions-gradient{display:flex;gap:1rem}.btn-modal-cancel,.btn-modal-delete{flex:1;padding:.875rem 1.5rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-modal-cancel{background:#f3f4f6;border:2px solid #e5e7eb;color:#6b7280}.btn-modal-cancel:hover{background:#e5e7eb;transform:translateY(-2px)}body.dark .btn-modal-cancel{background:#4b556380;border-color:#6b72804d;color:#d1d5db}.btn-modal-delete{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;color:#fff;box-shadow:0 4px 16px #ef44444d}.btn-modal-delete:hover{transform:translateY(-2px);box-shadow:0 8px 24px #ef444466}@media(max-width:1024px){.teacher-nav-container{padding:.875rem 1.5rem}.teacher-main-content{padding:2rem 1.5rem}.stats-grid{grid-template-columns:1fr}}@media(max-width:768px){.teacher-nav-left{flex-wrap:wrap}.teacher-nav-search{order:3;width:100%;max-width:none}.teacher-page-header{flex-direction:column;align-items:stretch}.btn-create-gradient{width:100%;justify-content:center}.page-title{font-size:2rem}.courses-grid-modern{grid-template-columns:1fr}.modal-content-gradient{padding:2rem}.modal-actions-gradient{flex-direction:column}}@media(max-width:480px){.teacher-main-content{padding:1.5rem 1rem}.teacher-brand-name{display:none}.page-title{font-size:1.75rem}.stat-card-gradient{padding:1.5rem}.stat-number{font-size:2rem}.pagination-container{gap:.5rem;margin-top:2rem;padding-top:1.5rem}.pagination-btn{padding:.625rem 1rem;font-size:.875rem}.pagination-btn span{display:none}.pagination-number{min-width:40px;height:40px;font-size:.875rem}}.course-editor{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);padding:0;transition:background .3s ease}body.dark .course-editor{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.editor-header{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;margin-bottom:0;gap:1rem;background:#ffffffe0;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:.5rem 1.5rem;border-bottom:1px solid rgba(139,92,246,.08);box-shadow:0 4px 24px #8b5cf614}body.dark .editor-header{background:#140a1ee6;border-bottom-color:#8b5cf626}.editor-header h1{color:#1a1a2e;font-size:.9rem;margin:0;flex-shrink:0;font-weight:600;background:var(--gradient-primary);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;padding:0 .75rem;border-right:1px solid rgba(139,92,246,.15);line-height:1}body.dark .editor-header h1{background:linear-gradient(135deg,#a78bfa,#f472b6);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.back-button{display:flex;align-items:center;gap:.375rem;padding:.4rem .875rem;background:transparent;color:#8b5cf6;border:1px solid rgba(139,92,246,.2);border-radius:8px;cursor:pointer;font-weight:500;font-size:.8125rem;transition:all .25s cubic-bezier(.4,0,.2,1);flex-shrink:0}.header-actions{display:flex;gap:.5rem;margin-left:auto}.btn-preview,.btn-save,.btn-publish{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);font-size:.8125rem}.btn-save{background:var(--gradient-primary);color:#fff;box-shadow:0 2px 8px #8b5cf640}.btn-save:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-publish{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b98140}.editor-content{display:grid;grid-template-columns:1fr 420px;gap:1.5rem;max-width:1600px;margin:0 auto;padding:1.5rem}@media(max-width:1200px){.editor-content{grid-template-columns:1fr}}.save-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem;padding:1rem 1.5rem;background:#8b5cf60a;border-radius:12px;border:1px solid rgba(139,92,246,.1)}body.dark .save-actions{background:#8b5cf614;border-color:#8b5cf626}.course-info-section{background:transparent;padding:0;border-radius:0;box-shadow:none;height:fit-content}body.dark .course-info-section{background:transparent}.section-card{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem;border-radius:16px;box-shadow:0 4px 16px #8b5cf614;border:1px solid rgba(139,92,246,.08)}body.dark .section-card{background:#2d193ae6;border-color:#8b5cf626}.section-card h2{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;color:#1a1a2e;margin:0 0 1.5rem;padding-bottom:.75rem;border-bottom:1px solid rgba(139,92,246,.15);font-weight:600}body.dark .section-card h2{color:#f9fafb}.section-title{font-size:1.25rem;color:#1a1a2e;margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:1px solid rgba(139,92,246,.15);font-weight:600}body.dark .section-title{color:#f9fafb}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#374151;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid rgba(139,92,246,.2);border-radius:10px;font-size:.9375rem;transition:all .25s cubic-bezier(.4,0,.2,1);background:#fff;color:#1a1a2e}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a;transform:translateY(-1px)}.form-group textarea{min-height:100px;resize:vertical;font-family:inherit;line-height:1.5}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.char-count{display:block;text-align:right;font-size:.75rem;color:#9ca3af;margin-top:.25rem}.required{color:#ef4444}.modules-section{background:transparent;padding:0;border-radius:0;box-shadow:none}body.dark .modules-section{background:transparent}.modules-header,.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.btn-create-module,.btn-add-module{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.8125rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #8b5cf640}.btn-create-module:hover,.btn-add-module:hover{transform:translateY(-1px);box-shadow:0 4px 16px #8b5cf659}.btn-create-module:disabled,.btn-add-module:disabled{opacity:.5;cursor:not-allowed;transform:none}.modules-list{display:flex;flex-direction:column;gap:.875rem;margin-top:1rem}.module-card,.module-item{background:linear-gradient(135deg,#8b5cf60a,#ec48990a);padding:1rem 1.25rem;border-radius:12px;border:1px solid rgba(139,92,246,.12);display:flex;justify-content:space-between;align-items:center;gap:1rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.module-item:hover,.module-card:hover{border-color:#8b5cf64d;transform:translateY(-2px);box-shadow:0 4px 16px #8b5cf61f;background:linear-gradient(135deg,#8b5cf614,#ec489914)}.module-info{flex:1;min-width:0}.module-info h3{font-size:1rem;color:#1a1a2e;margin:0 0 .25rem;font-weight:600}body.dark .module-info h3{color:#f9fafb}.module-info p{color:#6b7280;margin:0;font-size:.8125rem}body.dark .module-info p{color:#9ca3af}.module-actions{display:flex;gap:.5rem;flex-shrink:0}.btn-icon{background:transparent;border:none;padding:.5rem;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;color:#6b7280}.btn-icon:hover{background:#8b5cf61a;color:#8b5cf6}.btn-icon.edit{color:#8b5cf6}.btn-icon.delete,.btn-icon.btn-delete{color:#ef4444}.btn-icon.delete:hover,.btn-icon.btn-delete:hover{background:#ef44441a}.empty-state{text-align:center;padding:3rem 1.5rem;color:#9ca3af}body.dark .empty-state{color:#6b7280}.empty-state svg{margin-bottom:1rem;color:#8b5cf64d}.empty-state p{margin:.5rem 0}.empty-subtitle{font-size:.875rem;opacity:.7}.info-message{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:10px;color:#3b82f6;font-size:.875rem;margin-bottom:1rem}body.dark .info-message{background:#3b82f61f}.course-summary{background:linear-gradient(135deg,#8b5cf60f,#ec48990f);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.25rem 1.5rem;border-radius:12px;border:1px solid rgba(139,92,246,.15);margin-top:1.5rem;display:flex;gap:1.5rem;flex-wrap:wrap}body.dark .course-summary{background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-color:#8b5cf633}.summary-item{display:flex;align-items:baseline;gap:.375rem;font-size:.875rem;color:#6b7280}.summary-item strong{font-size:1.125rem;font-weight:700;background:var(--gradient-primary);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}body.dark .summary-item{color:#9ca3af}.module-number{padding:.375rem .875rem;background:var(--gradient-primary);color:#fff;border-radius:6px;font-weight:700;font-size:.75rem;white-space:nowrap;flex-shrink:0}.module-title-clickable{flex:1;min-width:0;margin:0;font-size:1rem;color:#1a1a2e;cursor:pointer;transition:all .2s;padding:.375rem .5rem;border-radius:6px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.dark .module-title-clickable{color:#f9fafb}.module-title-clickable:hover{color:#8b5cf6;background:#8b5cf614}.summary-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.stat-card{background:linear-gradient(135deg,#8b5cf61a,#ec48991a);padding:1rem;border-radius:12px;text-align:center;border:2px solid rgba(139,92,246,.2)}.stat-card .stat-number{font-size:2rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.stat-card .stat-label{font-size:.9rem;color:#6b7280;margin:.25rem 0 0}body.dark .stat-card .stat-label{color:#9ca3af}.course-status{margin-bottom:1.5rem;padding:1rem;border-radius:12px;text-align:center}.course-status.draft{background:#fbbf241a;border:2px solid rgba(251,191,36,.3);color:#d97706}.course-status.active{background:#10b9811a;border:2px solid rgba(16,185,129,.3);color:#059669}.course-status .status-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin:0;font-weight:600}.completion-section{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid rgba(139,92,246,.2)}.completion-section h4{font-size:.95rem;color:#374151;margin:0 0 1rem}body.dark .completion-section h4{color:#d1d5db}.completion-list{display:flex;flex-direction:column;gap:.75rem}.completion-item{display:flex;align-items:center;gap:.75rem;font-size:.9rem}.completion-item.completed{color:#10b981}.completion-item.incomplete{color:#6b7280}body.dark .completion-item.incomplete{color:#9ca3af}@media(max-width:768px){.editor-header{flex-direction:column;align-items:flex-start}.header-actions{width:100%;flex-direction:column}.btn-preview,.btn-save,.btn-publish{width:100%;justify-content:center}.summary-stats{grid-template-columns:1fr}}.thumbnail-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(139,92,246,.15)}.thumbnail-section label{display:flex;align-items:center;gap:.5rem}.thumbnail-preview-container{position:relative;width:100%;max-width:400px;margin-top:1rem;border-radius:12px;overflow:hidden;border:2px solid rgba(139,92,246,.2);box-shadow:0 4px 16px #8b5cf61f}.thumbnail-preview{width:100%;height:auto;display:block;object-fit:cover;max-height:300px}.btn-remove-thumbnail{position:absolute;top:.75rem;right:.75rem;background:#ef4444e6;color:#fff;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #0003}.btn-remove-thumbnail:hover{background:#dc2626;transform:scale(1.1)}.thumbnail-upload-area{display:flex;flex-direction:column;gap:1rem;margin-top:1rem;padding:1.5rem;background:#8b5cf60a;border:2px dashed rgba(139,92,246,.3);border-radius:12px;transition:all .3s}.thumbnail-upload-area:hover{border-color:#8b5cf680;background:#8b5cf60f}body.dark .thumbnail-upload-area{background:#8b5cf614;border-color:#8b5cf666}.btn-upload-thumbnail{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 4px 12px #8b5cf640}.btn-upload-thumbnail:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf659}.upload-hint{text-align:center;font-size:.875rem;color:#9ca3af;font-weight:500}.thumbnail-url-input{padding:.75rem 1rem;border:1px solid rgba(139,92,246,.2);border-radius:10px;font-size:.9375rem;transition:all .25s;background:#fff;color:#1a1a2e}body.dark .thumbnail-url-input{background:#1e0f28cc;color:#f9fafb;border-color:#8b5cf64d}.thumbnail-url-input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.field-hint{font-size:.75rem;color:#9ca3af;margin:.5rem 0 0}body.dark .field-hint{color:#6b7280}.btn-ai{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#8b5cf60f;color:#8b5cf6;border:1px solid rgba(139,92,246,.2);border-radius:8px;font-weight:600;font-size:.8125rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1)}.btn-ai:hover{background:#8b5cf61f;border-color:#8b5cf666;transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf626}.btn-ai.active{background:var(--gradient-primary);color:#fff;border-color:transparent}body.dark .btn-ai{background:#8b5cf61a;color:#a78bfa}.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container:not(.ql-disabled) li[data-list=checked]>.ql-ui,.ql-container:not(.ql-disabled) li[data-list=unchecked]>.ql-ui{cursor:pointer}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0}@supports (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-set:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor table{border-collapse:collapse}.ql-editor td{border:1px solid #000;padding:2px 5px}.ql-editor ol{padding-left:1.5em}.ql-editor li{list-style-type:none;padding-left:1.5em;position:relative}.ql-editor li>.ql-ui:before{display:inline-block;margin-left:-1.5em;margin-right:.3em;text-align:right;white-space:nowrap;width:1.2em}.ql-editor li[data-list=checked]>.ql-ui,.ql-editor li[data-list=unchecked]>.ql-ui{color:#777}.ql-editor li[data-list=bullet]>.ql-ui:before{content:"•"}.ql-editor li[data-list=checked]>.ql-ui:before{content:"☑"}.ql-editor li[data-list=unchecked]>.ql-ui:before{content:"☐"}@supports (counter-set:none){.ql-editor li[data-list]{counter-set:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list]{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered]{counter-increment:list-0}.ql-editor li[data-list=ordered]>.ql-ui:before{content:counter(list-0,decimal) ". "}.ql-editor li[data-list=ordered].ql-indent-1{counter-increment:list-1}.ql-editor li[data-list=ordered].ql-indent-1>.ql-ui:before{content:counter(list-1,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-set:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-2{counter-increment:list-2}.ql-editor li[data-list=ordered].ql-indent-2>.ql-ui:before{content:counter(list-2,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-set:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-3{counter-increment:list-3}.ql-editor li[data-list=ordered].ql-indent-3>.ql-ui:before{content:counter(list-3,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-set:list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-4{counter-increment:list-4}.ql-editor li[data-list=ordered].ql-indent-4>.ql-ui:before{content:counter(list-4,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-set:list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-5{counter-increment:list-5}.ql-editor li[data-list=ordered].ql-indent-5>.ql-ui:before{content:counter(list-5,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-set:list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-6{counter-increment:list-6}.ql-editor li[data-list=ordered].ql-indent-6>.ql-ui:before{content:counter(list-6,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-set:list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-reset:list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-7{counter-increment:list-7}.ql-editor li[data-list=ordered].ql-indent-7>.ql-ui:before{content:counter(list-7,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-set:list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-reset:list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-8{counter-increment:list-8}.ql-editor li[data-list=ordered].ql-indent-8>.ql-ui:before{content:counter(list-8,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-set:list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-reset:list-9}}.ql-editor li[data-list=ordered].ql-indent-9{counter-increment:list-9}.ql-editor li[data-list=ordered].ql-indent-9>.ql-ui:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor li.ql-direction-rtl{padding-right:1.5em}.ql-editor li.ql-direction-rtl>.ql-ui:before{margin-left:.3em;margin-right:-1.5em;text-align:left}.ql-editor table{table-layout:fixed;width:100%}.ql-editor table td{outline:none}.ql-editor .ql-code-block-container{font-family:monospace}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor .ql-ui{position:absolute}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media(pointer:coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor .ql-code-block-container{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor .ql-code-block-container{margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor .ql-code-block-container{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-code-block-container{position:relative}.ql-code-block-container .ql-ui{right:5px;top:5px}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}:root{--gradient-primary: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);--gradient-hover: linear-gradient(135deg, #7c3aed 0%, #db2777 100%);--shadow-sm: 0 2px 8px rgba(139, 92, 246, .12);--shadow-md: 0 8px 24px rgba(139, 92, 246, .18);--shadow-lg: 0 16px 40px rgba(139, 92, 246, .25)}.ql-editor::selection,.ql-editor *::selection,.block-input::selection,.block-heading-input::selection{background:#8b5cf659!important;color:inherit}.ql-editor::-moz-selection,.ql-editor *::-moz-selection,.block-input::-moz-selection,.block-heading-input::-moz-selection{background:#8b5cf659!important;color:inherit}body.dark .ql-editor::selection,body.dark .ql-editor *::selection,body.dark .block-input::selection,body.dark .block-heading-input::selection{background:#ec489966!important;color:inherit}body.dark .ql-editor::-moz-selection,body.dark .ql-editor *::-moz-selection,body.dark .block-input::-moz-selection,body.dark .block-heading-input::-moz-selection{background:#ec489966!important;color:inherit}.simple-rich-text{width:100%}.simple-rich-text .ql-container{border:1px solid rgba(139,92,246,.3);border-radius:0 0 8px 8px;background:#140a1e99;min-height:120px;font-size:1rem}.simple-rich-text .ql-editor{color:#f9fafb;min-height:100px}.simple-rich-text .ql-editor.ql-blank:before{color:#6b7280;font-style:italic}.simple-rich-text .ql-toolbar{border:1px solid rgba(139,92,246,.3);border-radius:8px 8px 0 0;background:#8b5cf61a}.simple-rich-text .ql-toolbar .ql-stroke{stroke:#a78bfa}.simple-rich-text .ql-toolbar .ql-fill{fill:#a78bfa}.simple-rich-text .ql-toolbar button:hover .ql-stroke{stroke:#ec4899}.simple-rich-text .ql-toolbar button:hover .ql-fill{fill:#ec4899}.simple-rich-text .ql-toolbar button.ql-active .ql-stroke{stroke:#ec4899}.simple-rich-text .ql-toolbar button.ql-active .ql-fill{fill:#ec4899}body:not(.dark) .simple-rich-text .ql-container{background:#fff;border-color:#8b5cf633}body:not(.dark) .simple-rich-text .ql-editor{color:#1a1a2e}body:not(.dark) .simple-rich-text .ql-toolbar{background:#8b5cf60d;border-color:#8b5cf633}.block-simple-rich{width:100%}.module-editor{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);padding:130px 20px 20px;transition:background .3s ease}body.dark .module-editor{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.module-header{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;margin-bottom:0;gap:20px;background:#fffffffa;padding:1.5rem 2rem;border-radius:0;box-shadow:var(--shadow-md);z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}body.dark .module-header{background:#2d193af2}.module-header h1{color:#1a1a2e;font-size:2rem;margin:0;flex:1;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.dark .module-header h1{color:#f9fafb}.module-header-combined{position:fixed;top:0;left:0;right:0;background:#ffffffe0;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(139,92,246,.08);box-shadow:0 4px 24px #8b5cf614;z-index:1000;padding:.75rem 1.5rem}body.dark .module-header-combined{background:#140a1ee6;border-bottom-color:#8b5cf626}.header-top-row{display:flex;align-items:center;padding:0;gap:1rem;border-bottom:none}.header-top-row h1{margin:0;font-size:.9rem;font-weight:600;flex-shrink:0;background:linear-gradient(135deg,#8b5cf6,#ec4899);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;padding:0 .75rem;border-right:1px solid rgba(139,92,246,.15)}body.dark .header-top-row h1{background:linear-gradient(135deg,#a78bfa,#f472b6);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.header-bottom-row{display:flex;align-items:center;padding:0;gap:1rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(139,92,246,.08)}body.dark .header-bottom-row{background:transparent;border-top-color:#8b5cf626}.back-button{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:transparent;color:#8b5cf6;border:1px solid rgba(139,92,246,.2);border-radius:8px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);flex-shrink:0}.back-button:hover{background:#8b5cf614;border-color:#8b5cf666;transform:translate(-2px)}body.dark .back-button{color:#a78bfa;border-color:#8b5cf64d}body.dark .back-button:hover{background:#8b5cf61f}.header-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.btn-preview,.btn-save{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);border:none;flex-shrink:0}.btn-preview{background:#8b5cf60f;color:#8b5cf6;border:1px solid rgba(139,92,246,.2)}.btn-preview:hover{background:#8b5cf61f;border-color:#8b5cf666;transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf626}body.dark .btn-preview{background:#8b5cf61a;color:#a78bfa}.btn-save{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;box-shadow:0 2px 8px #8b5cf640}.btn-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #8b5cf659}.btn-save:disabled{opacity:.5;cursor:not-allowed}.btn-ai{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);border:none;flex-shrink:0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 2px 8px #667eea40}.btn-ai:hover{transform:translateY(-1px);box-shadow:0 4px 16px #667eea66}.btn-ai.active{box-shadow:0 0 0 3px #667eea4d,0 4px 12px #667eea40}body.dark .btn-ai{background:linear-gradient(135deg,#7c3aed,#a855f7)}.toolbar-section{display:flex;align-items:center;gap:.75rem;flex:1}.toolbar-label{font-weight:600;color:#6b7280;font-size:.75rem;flex-shrink:0;text-transform:uppercase;letter-spacing:.05em;opacity:.7;padding-right:.5rem;border-right:1px solid rgba(139,92,246,.15)}body.dark .toolbar-label{color:#9ca3af}.toolbar-buttons{display:flex;gap:.375rem;flex-wrap:nowrap;background:transparent;padding:0;border-radius:10px;overflow-x:auto;scrollbar-width:none}.toolbar-buttons::-webkit-scrollbar{display:none}body.dark .toolbar-buttons{background:transparent}.toolbar-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:#8b5cf60a;border:1px solid rgba(139,92,246,.12);border-radius:8px;font-size:.8125rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;white-space:nowrap;flex-shrink:0}body.dark .toolbar-btn{color:#9ca3af;background:#8b5cf614;border-color:#8b5cf633}.toolbar-btn:hover{background:#8b5cf61a;color:#8b5cf6;border-color:#8b5cf64d;transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf626}body.dark .toolbar-btn:hover{background:#8b5cf62e;color:#a78bfa;border-color:#8b5cf666;box-shadow:0 4px 16px #8b5cf640}.toolbar-btn svg{flex-shrink:0;opacity:.7;transition:opacity .2s}.toolbar-btn:hover svg{opacity:1}.btn-add-section-toolbar{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.8125rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #8b5cf640;white-space:nowrap;flex-shrink:0;margin-left:auto}.btn-add-section-toolbar:hover{transform:translateY(-1px);box-shadow:0 4px 16px #8b5cf659}.btn-add-section-toolbar:active{transform:translateY(0);box-shadow:0 2px 8px #8b5cf640}.word-document{min-height:calc(100vh - 200px);background:linear-gradient(135deg,#8b5cf605,#ec489905);padding:2rem}.document-paper{max-width:850px;margin:0 auto;background:#fff;min-height:1100px;padding:3rem 4rem;box-shadow:0 0 0 1px #0000000d,0 10px 40px #00000014;border-radius:4px}body.dark .document-paper{background:#1e0f28f2;box-shadow:0 0 0 1px #8b5cf633,0 10px 40px #0000004d}.module-info-inline{margin-bottom:2rem}.module-title-input{width:100%;border:none;font-size:2rem;font-weight:700;color:#1a1a2e;padding:.5rem 0;margin-bottom:1rem;border-bottom:3px solid transparent;transition:all .3s ease;background:transparent}body.dark .module-title-input{color:#f9fafb}.module-title-input:focus{outline:none;border-bottom-color:#8b5cf6}.module-title-input::placeholder{color:#d1d5db}.module-description-input{width:100%;border:none;font-size:1.1rem;color:#4b5563;padding:.5rem 0;margin-bottom:1rem;border-bottom:2px solid transparent;resize:none;background:transparent;transition:all .3s ease}body.dark .module-description-input{color:#d1d5db}.module-description-input:focus{outline:none;border-bottom-color:#8b5cf680}.module-meta-inline{display:flex;gap:2rem;margin-top:1.5rem;padding:1rem 0}.meta-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#6b7280}.meta-item label{font-weight:600}.meta-item input{width:60px;padding:.4rem .6rem;border:1px solid rgba(139,92,246,.3);border-radius:6px;font-size:.9rem;text-align:center;background:#fff}body.dark .meta-item input{background:#2d193a99;color:#f9fafb}.divider{height:2px;background:linear-gradient(90deg,#8b5cf64d,#ec48994d);margin:2rem 0}.empty-document{text-align:center;padding:4rem 2rem;color:#9ca3af}.empty-document svg{color:#8b5cf64d;margin-bottom:1rem}.sections-flow{display:flex;flex-direction:column;gap:3rem}.section-flow{padding:2rem;margin:-2rem;border-radius:12px;border:3px solid transparent;transition:all .3s ease;cursor:pointer;position:relative}.section-flow:after{content:"";position:absolute;bottom:-1.5rem;left:10%;right:10%;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(139,92,246,.2) 20%,rgba(236,72,153,.2) 50%,rgba(139,92,246,.2) 80%,transparent 100%)}.section-flow:last-child:after{display:none}.section-flow:hover{background:linear-gradient(135deg,#8b5cf605,#ec489905);border-color:#8b5cf61a}.section-flow.selected{background:linear-gradient(135deg,#8b5cf60d,#ec48990d);border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf61a}.section-flow.selected:before{content:"✓ Secțiune Selectată";position:absolute;top:-.5rem;right:1rem;background:var(--gradient-primary);color:#fff;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:700;box-shadow:var(--shadow-sm)}.section-title-row{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid rgba(139,92,246,.15)}.section-number-badge{font-weight:700;font-size:.85rem;color:#fff;background:var(--gradient-primary);padding:.4rem .9rem;border-radius:8px;flex-shrink:0;box-shadow:var(--shadow-sm)}.section-title-flow{flex:1;border:none;font-size:1.4rem;font-weight:700;color:#1a1a2e;padding:.25rem .5rem;background:transparent;border-radius:6px;transition:all .3s ease}.section-flow.selected .section-title-flow{background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.dark .section-title-flow{color:#f9fafb}.section-title-flow:focus{outline:none;background:#8b5cf60d}.section-title-flow::placeholder{opacity:.4}.section-actions-inline{display:flex;gap:.25rem;opacity:.6;transition:opacity .3s ease}.section-flow:hover .section-actions-inline,.section-flow.selected .section-actions-inline{opacity:1}.btn-icon-inline{background:none;border:none;color:#9ca3af;cursor:pointer;padding:.4rem;border-radius:6px;transition:all .2s ease;display:flex;align-items:center}.btn-icon-inline:hover{background:#8b5cf61a;color:#8b5cf6}.btn-icon-inline.delete:hover{background:#ef44441a;color:#ef4444}.blocks-flow{display:flex;flex-direction:column;gap:1.5rem;margin-left:0}.block-flow{position:relative;padding-left:0}.block-with-formatting{display:flex;flex-direction:column;gap:.75rem}.formatting-toolbar{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:linear-gradient(135deg,#8b5cf60d,#ec48990d);border:2px solid rgba(139,92,246,.15);border-radius:8px;flex-wrap:wrap}.formatting-group{display:flex;align-items:center;gap:.5rem}.formatting-divider{width:2px;height:24px;background:#8b5cf633}.font-size-select{padding:.5rem .75rem;border:2px solid rgba(139,92,246,.2);border-radius:6px;font-size:.9rem;font-weight:600;color:#1a1a2e;background:#fff;cursor:pointer;transition:all .3s ease}body.dark .font-size-select{background:#1e0f2899;color:#f9fafb}.font-size-select:hover{border-color:#8b5cf6}.font-size-select:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.format-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fff;border:2px solid rgba(139,92,246,.2);border-radius:6px;color:#6b7280;cursor:pointer;transition:all .2s ease}body.dark .format-btn{background:#1e0f2899}.format-btn:hover{border-color:#8b5cf6;color:#8b5cf6;background:#8b5cf60d}.format-btn.active{background:var(--gradient-primary);border-color:transparent;color:#fff;box-shadow:0 2px 8px #8b5cf64d}.format-btn.active:hover{background:var(--gradient-hover)}.block-toolbar-inline{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;opacity:.7;transition:opacity .3s ease}.block-flow:hover .block-toolbar-inline{opacity:1}.block-type-label{font-size:.7rem;font-weight:700;color:#8b5cf6;text-transform:uppercase;letter-spacing:.5px;background:#8b5cf61a;padding:.25rem .5rem;border-radius:4px}.btn-delete-block{background:none;border:none;color:#ef4444;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease;opacity:0}.block-flow:hover .btn-delete-block{opacity:1}.btn-delete-block:hover{background:#ef44441a}.quiz-section-inline{margin-top:2rem}.quiz-title-inline{display:flex;align-items:center;gap:.5rem;font-size:1.5rem;font-weight:700;color:#8b5cf6;margin-bottom:1.5rem}.quiz-settings-inline{margin-bottom:1.5rem}.quiz-title-input{width:100%;border:none;border-bottom:2px solid rgba(139,92,246,.2);font-size:1.1rem;font-weight:600;color:#1a1a2e;padding:.5rem 0;margin-bottom:1rem;background:transparent}body.dark .quiz-title-input{color:#f9fafb}.quiz-title-input:focus{outline:none;border-bottom-color:#8b5cf6}.quiz-meta-row{display:flex;gap:2rem;flex-wrap:wrap}.btn-add-question-inline{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;margin-bottom:1.5rem;transition:all .3s ease}.btn-add-question-inline:hover{background:var(--gradient-hover);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.questions-flow{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem}.question-flow{padding:1.5rem;background:linear-gradient(135deg,#8b5cf60d,#ec48990d);border:2px solid rgba(139,92,246,.2);border-radius:16px;box-shadow:0 4px 12px #8b5cf614}body.dark .question-flow{background:linear-gradient(135deg,#8b5cf614,#ec489914);border-color:#8b5cf64d}.question-header-inline{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem;flex-wrap:wrap;padding-bottom:1rem;border-bottom:1px solid rgba(139,92,246,.1)}.question-number{font-weight:700;color:#8b5cf6;font-size:1rem;background:linear-gradient(135deg,#8b5cf626,#ec489926);padding:.5rem 1rem;border-radius:20px;white-space:nowrap}body.dark .question-number{background:linear-gradient(135deg,#8b5cf640,#ec489940)}.question-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.question-meta-inline{display:flex;align-items:center;gap:.5rem;background:#ffffff80;padding:.4rem .75rem;border-radius:8px}body.dark .question-meta-inline{background:#1e0f2866}.question-meta-inline label{font-size:.875rem;color:#6b7280;font-weight:500}body.dark .question-meta-inline label{color:#9ca3af}.question-type-select{padding:.5rem .75rem;border:2px solid rgba(139,92,246,.2);border-radius:6px;background:#fff;color:#1a1a2e;font-size:.875rem;cursor:pointer;transition:all .2s ease}body.dark .question-type-select{background:#1e0f2899;color:#f9fafb}.question-type-select:focus{outline:none;border-color:#8b5cf6}.question-points-input{width:60px;padding:.5rem;border:2px solid rgba(139,92,246,.2);border-radius:6px;background:#fff;color:#1a1a2e;font-size:.875rem;text-align:center}body.dark .question-points-input{background:#1e0f2899;color:#f9fafb}.question-points-input:focus{outline:none;border-color:#8b5cf6}.btn-delete-inline{background:none;border:none;color:#ef4444;cursor:pointer;padding:.4rem;border-radius:6px;transition:all .2s ease}.btn-delete-inline:hover{background:#ef44441a}.question-text-input{width:100%;border:2px solid rgba(139,92,246,.2);border-radius:10px;padding:1rem;font-size:1rem;color:#1a1a2e;margin-bottom:1rem;resize:vertical;background:#fff;min-height:60px}body.dark .question-text-input{background:#1e0f2880;color:#f9fafb;border-color:#8b5cf64d}.question-text-input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.question-text-input::placeholder{color:#9ca3af}.options-flow{display:flex;flex-direction:column;gap:.75rem;background:#fff6;padding:1rem;border-radius:12px}body.dark .options-flow{background:#140a1e4d}.option-flow{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:#fff;border:2px solid rgba(139,92,246,.15);border-radius:10px;transition:all .3s ease}body.dark .option-flow{background:#2d193a80;border-color:#8b5cf640}.option-flow:hover{border-color:#8b5cf666;transform:translate(4px)}.option-flow:has(input[type=radio]:checked),.option-flow:has(input[type=checkbox]:checked){border-color:#10b981;background:#10b9810d}body.dark .option-flow:has(input[type=radio]:checked),body.dark .option-flow:has(input[type=checkbox]:checked){background:#10b9811a}.btn-delete-option{background:none;border:none;color:#ef4444;cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-delete-option:hover{background:#ef444426;transform:scale(1.1)}.btn-add-option{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem;background:transparent;border:2px dashed rgba(139,92,246,.35);border-radius:10px;color:#8b5cf6;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:.5rem}.btn-add-option:hover{background:#8b5cf614;border-color:#8b5cf6;border-style:solid}.explanation-section{margin-top:1rem;padding-top:1rem;border-top:1px dashed rgba(139,92,246,.2)}.explanation-label{display:block;font-size:.85rem;font-weight:600;color:#8b5cf6;margin-bottom:.5rem}body.dark .explanation-label{color:#a78bfa}.explanation-input{width:100%;border:1px solid rgba(139,92,246,.2);border-radius:8px;padding:.75rem;font-size:.95rem;background:#8b5cf608;color:#1a1a2e;resize:vertical;min-height:70px;transition:all .2s ease}.explanation-input:focus{outline:none;border-color:#8b5cf6;background:#fff;box-shadow:0 0 0 3px #8b5cf61a}.explanation-input::placeholder{color:#9ca3af;font-style:italic}body.dark .explanation-input{background:#8b5cf60d;color:#f9fafb;border-color:#8b5cf64d}body.dark .explanation-input:focus{background:#8b5cf61a;border-color:#a78bfa}body.dark .explanation-input::placeholder{color:#6b7280}.option-radio{width:20px;height:20px;cursor:pointer;accent-color:#10b981;flex-shrink:0}.option-text-input{flex:1;border:none;background:transparent;padding:.5rem;font-size:1rem;color:#1a1a2e;min-width:0}body.dark .option-text-input{color:#f9fafb}.option-text-input:focus{outline:none}.option-text-input::placeholder{color:#9ca3af}.image-mode-selector{display:flex;gap:.5rem;margin-bottom:1rem;background:#8b5cf60d;padding:.5rem;border-radius:8px}.mode-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;background:#fff;border:2px solid rgba(139,92,246,.2);border-radius:6px;font-size:.9rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .3s ease}body.dark .mode-btn{background:#1e0f2899}.mode-btn:hover{border-color:#8b5cf6;color:#8b5cf6;background:#8b5cf60d}.mode-btn.active{background:var(--gradient-primary);border-color:transparent;color:#fff;box-shadow:0 2px 8px #8b5cf64d}.mode-btn.active:hover{background:var(--gradient-hover)}.file-upload-container{position:relative}.file-upload-input{display:none}.file-upload-label{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:2rem;background:linear-gradient(135deg,#8b5cf60d,#ec48990d);border:2px dashed rgba(139,92,246,.3);border-radius:12px;color:#8b5cf6;font-weight:600;cursor:pointer;transition:all .3s ease}.file-upload-label:hover{background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-color:#8b5cf6;transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf633}.file-upload-label svg{color:#8b5cf6}.media-preview{margin-top:1rem;max-width:100%;border-radius:8px;box-shadow:0 4px 12px #0000001a}.media-preview-container{margin-top:1.5rem;display:flex;justify-content:center;padding:0;background:linear-gradient(135deg,#8b5cf605,#ec489905);border-radius:12px;border:1px solid rgba(139,92,246,.08)}.media-preview{width:100%;max-width:800px;min-height:450px;height:auto;border-radius:6px;box-shadow:0 10px 40px #00000014,0 0 0 2px #8b5cf61a;transition:all .3s ease;display:block;object-fit:contain}.media-preview:hover{box-shadow:0 20px 60px #8b5cf626,0 0 0 2px #8b5cf633;transform:scale(1.02)}video.media-preview{background:#000}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#374151}body.dark .form-group label{color:#d1d5db}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:2px solid rgba(139,92,246,.2);border-radius:12px;font-size:.95rem;transition:all .3s ease;background:#fff;color:#1a1a2e}body.dark .form-group input,body.dark .form-group select,body.dark .form-group textarea{background:#1e0f28cc;color:#f9fafb;border-color:#8b5cf64d}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.form-group input:disabled,.form-group textarea:disabled{background:#8b5cf60d;cursor:not-allowed;opacity:.6}.form-group textarea{min-height:100px;resize:vertical;font-family:inherit}.info-alert{background:#3b82f61a;border:2px solid rgba(59,130,246,.3);padding:1rem;border-radius:12px;color:#2563eb;font-size:.9rem;display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.sections-container{margin-bottom:2rem}.add-section-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--gradient-primary);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-sm);margin-bottom:1rem}.add-section-btn:hover:not(:disabled){background:var(--gradient-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.add-section-btn:disabled{opacity:.5;cursor:not-allowed}.sections-list{display:flex;flex-direction:column;gap:1rem}.section-card{background:linear-gradient(135deg,#8b5cf60d,#ec48990d);border:2px solid rgba(139,92,246,.15);border-radius:12px;padding:1.5rem;transition:all .3s ease}.section-card:hover{border-color:#8b5cf6;box-shadow:var(--shadow-md)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{color:#1a1a2e;margin:0;font-size:1.1rem}body.dark .section-header h3{color:#f9fafb}.section-actions{display:flex;gap:8px}.btn-icon{background:transparent;border:none;padding:8px;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.btn-icon:hover{background:#8b5cf61a}.btn-icon.delete{color:#ef4444}.btn-icon.delete:hover{background:#ef44441a}.blocks-container{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(139,92,246,.2)}.add-block-controls{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:1rem}.add-block-btn{padding:8px 16px;background:#8b5cf61a;border:2px solid rgba(139,92,246,.2);border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;color:#8b5cf6;transition:all .3s ease;display:flex;align-items:center;gap:6px}.add-block-btn:hover{background:#8b5cf633;border-color:#8b5cf6}.blocks-list{display:flex;flex-direction:column;gap:.75rem}.block-item{background:#fff;padding:1rem;border-radius:8px;border:2px solid rgba(139,92,246,.1)}body.dark .block-item{background:#1e0f2899}.block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.block-type{font-size:.85rem;font-weight:600;color:#8b5cf6;text-transform:uppercase;letter-spacing:.05em}.block-input,.block-textarea{width:100%;padding:.5rem;border:1px solid rgba(139,92,246,.2);border-radius:6px;font-size:.95rem;background:#fff;color:#1a1a2e}body.dark .block-input,body.dark .block-textarea{background:#140a1ecc;color:#f9fafb}.block-textarea{min-height:80px;resize:vertical;font-family:inherit}.block-preview{margin-top:.5rem;padding:.75rem;background:#8b5cf608;border-radius:6px;font-size:.9rem;color:#4a5568}body.dark .block-preview{color:#d1d5db}.block-contenteditable{min-height:40px;outline:none;transition:border-color .3s ease,box-shadow .3s ease}.block-contenteditable:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.block-contenteditable.block-paragraph,.block-contenteditable.block-list{min-height:100px;white-space:pre-wrap;word-wrap:break-word}.block-contenteditable.block-heading{font-weight:700}.block-heading-input{font-weight:700;border:1px solid rgba(139,92,246,.2);border-radius:6px;padding:.75rem 1rem;background:#140a1e99;color:#f9fafb;transition:border-color .3s ease,box-shadow .3s ease}.block-heading-input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.block-heading-input::placeholder{color:#6b7280;font-style:italic}body:not(.dark) .block-heading-input{background:#fff;color:#1a1a2e}.heading-size-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.5rem .75rem;background:#8b5cf61a;border-radius:8px;border:1px solid rgba(139,92,246,.2)}.heading-size-toolbar .toolbar-label{font-size:.8rem;font-weight:600;color:#a78bfa;text-transform:uppercase;letter-spacing:.5px}.heading-size-toolbar .font-size-select{padding:.4rem .8rem;border:1px solid rgba(139,92,246,.3);border-radius:6px;background:#140a1e99;color:#f9fafb;font-size:.9rem;cursor:pointer;transition:all .2s ease}.heading-size-toolbar .font-size-select:hover{border-color:#8b5cf6}.heading-size-toolbar .font-size-select:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 2px #8b5cf633}body:not(.dark) .heading-size-toolbar{background:#8b5cf60d}body:not(.dark) .heading-size-toolbar .font-size-select{background:#fff;color:#1a1a2e}.block-type-label-only{font-size:.7rem;font-weight:700;color:#8b5cf6;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.block-contenteditable:empty:before{content:attr(data-placeholder);color:#9ca3af;pointer-events:none;font-style:italic}body.dark .block-contenteditable:empty:before{color:#6b7280}.block-contenteditable b,.block-contenteditable strong{font-weight:700}.block-contenteditable i,.block-contenteditable em{font-style:italic}.block-contenteditable u{text-decoration:underline}.media-preview{max-width:100%;max-height:200px;border-radius:8px;margin-top:.5rem}.quiz-container{max-width:800px}.quiz-header-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(139,92,246,.2)}.quiz-settings{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1rem}.questions-container{margin-top:2rem}.add-question-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--gradient-primary);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-sm);margin-bottom:1rem}.add-question-btn:hover{background:var(--gradient-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.questions-list{display:flex;flex-direction:column;gap:1.5rem}.question-card{background:linear-gradient(135deg,#8b5cf60d,#ec48990d);border:2px solid rgba(139,92,246,.15);border-radius:12px;padding:1.5rem}.question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.question-header h4{color:#8b5cf6;margin:0;font-size:1rem}.options-container{margin-top:1rem}.add-option-btn{padding:8px 16px;background:#8b5cf61a;border:2px solid rgba(139,92,246,.2);border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;color:#8b5cf6;transition:all .3s ease;display:flex;align-items:center;gap:6px;margin-top:.75rem}.add-option-btn:hover{background:#8b5cf633;border-color:#8b5cf6}.options-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:.75rem}.option-item{display:flex;gap:.75rem;align-items:center}.option-correct-checkbox{width:20px;height:20px;cursor:pointer}.option-input{flex:1;padding:.5rem;border:1px solid rgba(139,92,246,.2);border-radius:6px;font-size:.95rem;background:#fff;color:#1a1a2e}body.dark .option-input{background:#140a1ecc;color:#f9fafb}.empty-state{text-align:center;padding:3rem 1rem;color:#6b7280}body.dark .empty-state{color:#9ca3af}.empty-state svg{margin-bottom:1rem;color:#d1d5db}body.dark .empty-state svg{color:#6b7280}@media(max-width:768px){.module-header{flex-direction:column;align-items:flex-start}.header-actions{width:100%;flex-direction:column}.btn-preview,.btn-save{width:100%;justify-content:center}.tabs-header{flex-direction:column}.quiz-settings{grid-template-columns:1fr}.add-block-controls{flex-direction:column}.add-block-btn{width:100%;justify-content:center}}.file-preview-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f0f9ff;border:1px solid #e0f2fe;border-radius:8px;color:#0369a1;margin-top:1rem}body.dark .file-preview-card{background:#0369a11a;border-color:#0369a133;color:#7dd3fc}.file-name{font-weight:600;font-size:.95rem;word-break:break-all}.file-size{font-size:.8rem;opacity:.8}.block-file{width:100%}.course-wizard{min-height:100vh;background:linear-gradient(135deg,#fef3f5,#f8f4ff,#fef0f9);display:flex;flex-direction:column}body.dark .course-wizard{background:linear-gradient(135deg,#1a0e1f,#0f0a1a,#1f0e1a)}.wizard-header{position:sticky;top:0;z-index:100;background:#ffffffe0;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(139,92,246,.08);padding:.75rem 1.5rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 24px #8b5cf614}body.dark .wizard-header{background:#140a1ee6;border-bottom-color:#8b5cf626}.wizard-header-left{display:flex;align-items:center;gap:1rem}.wizard-header-left h1{font-size:.9rem;font-weight:600;margin:0;background:linear-gradient(135deg,#8b5cf6,#ec4899);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}body.dark .wizard-header-left h1{background:linear-gradient(135deg,#a78bfa,#f472b6);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.wizard-header-right{display:flex;gap:.5rem}.btn-back{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:transparent;border:1px solid rgba(139,92,246,.2);border-radius:8px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);font-size:.8125rem;color:#8b5cf6;font-weight:500}.btn-back:hover{background:#8b5cf614;border-color:#8b5cf666;transform:translate(-2px)}body.dark .btn-back{color:#a78bfa;border-color:#8b5cf64d}body.dark .btn-back:hover{background:#8b5cf61f}.btn-save-draft{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#8b5cf60f;border:1px solid rgba(139,92,246,.2);border-radius:8px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);font-size:.8125rem;color:#8b5cf6;font-weight:600}.btn-save-draft:hover:not(:disabled){background:#8b5cf61f;border-color:#8b5cf666;transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf626}body.dark .btn-save-draft{background:#8b5cf61a;color:#a78bfa}.btn-publish{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);font-size:.8125rem;color:#fff;font-weight:600;box-shadow:0 2px 8px #10b98140}.btn-publish:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #10b98159}.btn-publish:disabled,.btn-save-draft:disabled{opacity:.5;cursor:not-allowed}.wizard-progress{background:#ffffff80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.25rem 2rem;display:flex;justify-content:center;gap:1.5rem;border-bottom:1px solid rgba(139,92,246,.08)}body.dark .wizard-progress{background:#140a1e80;border-bottom-color:#8b5cf626}.progress-step{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.875rem 1rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);border-radius:12px;position:relative;min-width:110px}.progress-step:hover{background:#8b5cf60f;transform:translateY(-2px)}body.dark .progress-step:hover{background:#8b5cf61a}.progress-step.active{background:linear-gradient(135deg,#8b5cf61a,#ec48991a);transform:scale(1.02)}body.dark .progress-step.active{background:linear-gradient(135deg,#8b5cf626,#ec489926)}.progress-step.completed .step-icon{color:#10b981;border-color:#10b981;background:#10b9811a}.step-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid rgba(139,92,246,.2);border-radius:50%;transition:all .25s cubic-bezier(.4,0,.2,1);color:#6b7280}body.dark .step-icon{background:#1e0f28cc;border-color:#8b5cf64d;color:#9ca3af}.progress-step.active .step-icon{background:linear-gradient(135deg,#8b5cf6,#ec4899);border-color:transparent;color:#fff;box-shadow:0 4px 12px #8b5cf64d}.progress-step.completed .step-icon{border-color:#10b981;background:#10b98114;color:#10b981}body.dark .progress-step.completed .step-icon{background:#10b98126}.step-label{font-size:.8125rem;font-weight:500;color:#6b7280;text-align:center}body.dark .step-label{color:#9ca3af}.progress-step.active .step-label{background:linear-gradient(135deg,#8b5cf6,#ec4899);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:600}.step-number{position:absolute;top:.625rem;right:.625rem;width:18px;height:18px;background:#8b5cf61a;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;color:#8b5cf6;transition:all .2s}body.dark .step-number{background:#8b5cf633;color:#a78bfa}.progress-step.active .step-number{background:#fff;color:#8b5cf6}.wizard-content{flex:1;padding:1.5rem 2rem;overflow-y:auto;background:transparent}.wizard-footer{background:#ffffffe0;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid rgba(139,92,246,.08);padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;position:sticky;bottom:0;box-shadow:0 -4px 24px #8b5cf614}body.dark .wizard-footer{background:#140a1ee6;border-top-color:#8b5cf626}.btn-previous,.btn-next,.btn-finish{display:flex;align-items:center;gap:.375rem;padding:.5rem 1.25rem;border-radius:8px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);font-size:.8125rem;font-weight:600;border:none}.btn-previous{background:transparent;border:1px solid rgba(139,92,246,.2);color:#8b5cf6}.btn-previous:hover:not(:disabled){background:#8b5cf614;border-color:#8b5cf666;transform:translate(-2px)}body.dark .btn-previous{color:#a78bfa;border-color:#8b5cf64d}.btn-next{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;box-shadow:0 2px 8px #8b5cf640}.btn-next:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #8b5cf659}.btn-finish{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b98140}.btn-finish:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #10b98159}.btn-previous:disabled,.btn-next:disabled,.btn-finish:disabled{opacity:.5;cursor:not-allowed}.footer-info{font-size:.8125rem;color:#6b7280;font-weight:500;background:#8b5cf60f;padding:.375rem .875rem;border-radius:6px}body.dark .footer-info{color:#9ca3af;background:#8b5cf61a}.saving-overlay{position:fixed;inset:0;background:#00000080;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;gap:1rem}.saving-spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.saving-overlay p{color:#fff;font-size:1rem;font-weight:500}.toast-container{position:fixed;top:1rem;right:1rem;z-index:1001;display:flex;flex-direction:column;gap:.5rem}@media(max-width:768px){.wizard-progress{overflow-x:auto;justify-content:flex-start;padding-bottom:1rem;scrollbar-width:thin}.progress-step{min-width:100px}.wizard-header{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.wizard-header-left{width:100%}.wizard-header-right{width:100%;justify-content:flex-end}.wizard-footer{padding:.875rem 1rem}.btn-previous,.btn-next,.btn-finish{padding:.5rem 1rem;font-size:.75rem}.footer-info{font-size:.75rem}}.course-basic-info{max-width:900px;margin:0 auto}.step-header{display:flex;gap:1.5rem;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000a}.step-header .step-icon{color:#5b21b6;flex-shrink:0}.step-header h2{margin:0 0 .5rem;color:#2d3748;font-size:1.5rem}.step-header p{margin:0;color:#6c757d;font-size:.875rem;line-height:1.5}.form-container{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 8px #0000000a}.form-group{margin-bottom:1.5rem}.form-group.full-width{grid-column:1 / -1}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#2d3748;font-size:.875rem}.required{color:#ef4444;margin-left:.25rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid #e1e8ed;border-radius:8px;font-size:.875rem;transition:all .2s ease;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#5b21b6;box-shadow:0 0 0 3px #5b21b61a}.input-large{font-size:1rem;font-weight:500}.char-count{display:block;text-align:right;margin-top:.25rem;font-size:.75rem;color:#9ca3af}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.info-box{margin-top:1.5rem;padding:1rem;background:linear-gradient(135deg,#eff6ff,#dbeafe);border-left:4px solid #3b82f6;border-radius:8px}.info-box p{margin:0;font-size:.875rem;color:#1e40af;line-height:1.5}@media(max-width:768px){.form-row{grid-template-columns:1fr}}.module-creation{max-width:1000px;margin:0 auto}.modules-container{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 8px #0000000a}.modules-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.module-card{border:1px solid #e1e8ed;border-radius:12px;padding:1.5rem;transition:all .2s ease}.module-card:hover{box-shadow:0 4px 12px #00000014}.module-header-card{display:flex;gap:1rem;align-items:flex-start}.module-drag-handle{cursor:move;color:#9ca3af;padding:.5rem}.module-drag-handle:hover{color:#5b21b6}.module-info{flex:1}.module-number{display:inline-block;font-size:.75rem;font-weight:600;color:#5b21b6;background:#ede9fe;padding:.25rem .75rem;border-radius:12px;margin-bottom:.5rem}.module-info h3{margin:0 0 .5rem;color:#2d3748;font-size:1.125rem}.module-info p{margin:0 0 .75rem;color:#6c757d;font-size:.875rem;line-height:1.5}.module-meta{display:flex;gap:1rem;font-size:.75rem;color:#6c757d}.module-actions{display:flex;gap:.5rem}.btn-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #e1e8ed;background:#fff;border-radius:8px;cursor:pointer;transition:all .2s ease;color:#6c757d}.btn-icon:hover{background:#f8f9fa;border-color:#5b21b6;color:#5b21b6}.btn-icon.btn-delete:hover{background:#fef2f2;border-color:#ef4444;color:#ef4444}.module-edit-form{padding:1rem;background:#f8f9fa;border-radius:8px}.edit-actions{display:flex;gap:.75rem;margin-top:1rem}.btn-save,.btn-cancel{padding:.5rem 1.25rem;border-radius:8px;border:none;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease}.btn-save{background:#5b21b6;color:#fff}.btn-save:hover{background:#6d28d9}.btn-cancel{background:#fff;border:1px solid #e1e8ed;color:#6c757d}.btn-cancel:hover{background:#f8f9fa}.add-module-form{padding:1.5rem;background:#f8f9fa;border-radius:12px;margin-bottom:1.5rem}.add-module-form h3{margin:0 0 1rem;color:#2d3748}.form-actions{display:flex;gap:.75rem;margin-top:1rem}.btn-add{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;background:#5b21b6;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease}.btn-add:hover{background:#6d28d9}.btn-add-module{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:#fff;border:2px dashed #e1e8ed;border-radius:12px;cursor:pointer;color:#5b21b6;font-weight:500;transition:all .2s ease}.btn-add-module:hover{background:#f8f9fa;border-color:#5b21b6}.empty-state{text-align:center;padding:3rem 1rem;color:#9ca3af}.empty-icon{margin-bottom:1rem;opacity:.5}.empty-state h3{margin:0 0 .5rem;color:#6c757d;font-size:1.125rem}.empty-state p{margin:0;color:#9ca3af;font-size:.875rem}.module-sections{margin-top:1rem;padding:1.5rem;background:#f8f9fa;border-radius:8px;border-top:2px solid #e1e8ed}.sections-header{margin-bottom:1rem}.sections-header h4{margin:0;color:#2d3748;font-size:1rem}.sections-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.section-item{background:#fff;border:1px solid #e1e8ed;border-radius:8px;padding:1rem}.section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e1e8ed}.section-title{flex:1;font-weight:500;color:#2d3748;font-size:.875rem}.btn-delete-section{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:4px;cursor:pointer;color:#9ca3af;transition:all .2s ease}.btn-delete-section:hover{background:#fef2f2;color:#ef4444}.content-toolbar{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#f8f9fa;border-radius:6px;margin-bottom:.75rem}.toolbar-label{font-size:.75rem;color:#6c757d;font-weight:500;margin-right:.25rem}.btn-add-block{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fff;border:1px solid #e1e8ed;border-radius:6px;cursor:pointer;transition:all .2s ease;color:#6c757d}.btn-add-block:hover{background:#ede9fe;border-color:#5b21b6;color:#5b21b6}.blocks-container{display:flex;flex-direction:column;gap:.75rem}.content-block{border:1px solid #e1e8ed;border-radius:6px;padding:.75rem;background:#fff}.block-header-mini{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.block-type-mini{font-size:.625rem;font-weight:600;color:#5b21b6;background:#ede9fe;padding:.125rem .5rem;border-radius:8px;text-transform:uppercase}.btn-delete-block-mini{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:4px;cursor:pointer;color:#9ca3af;transition:all .2s ease}.btn-delete-block-mini:hover{background:#fef2f2;color:#ef4444}.block-body{width:100%}.block-heading{width:100%;padding:.625rem;border:1px solid #e1e8ed;border-radius:6px;font-size:1.125rem;font-weight:600;color:#2d3748}.block-paragraph,.block-list{width:100%;padding:.625rem;border:1px solid #e1e8ed;border-radius:6px;font-size:.875rem;font-family:inherit;resize:vertical}.block-media,.block-link,.block-file{display:flex;flex-direction:column;gap:.5rem}.upload-label{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 1rem;border:2px dashed #e1e8ed;border-radius:8px;cursor:pointer;transition:all .2s ease;color:#6c757d;background:#f8f9fa}.upload-label:hover{border-color:#5b21b6;background:#ede9fe;color:#5b21b6}.upload-hint{font-size:.75rem;color:#9ca3af}.url-input,.link-text{width:100%;padding:.625rem;border:1px solid #e1e8ed;border-radius:6px;font-size:.875rem}.media-preview,.file-preview{position:relative;padding:1rem;background:#f8f9fa;border-radius:8px}.media-preview img,.media-preview video,.media-preview iframe{max-width:100%;border-radius:6px;margin-bottom:.5rem}.change-media-btn{padding:.5rem 1rem;background:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.75rem;font-weight:500;transition:all .2s ease}.change-media-btn:hover{background:#dc2626}.file-preview{display:flex;align-items:center;gap:.75rem}.file-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.file-name{font-size:.875rem;font-weight:500;color:#2d3748}.file-size{font-size:.75rem;color:#6c757d}.empty-blocks,.empty-sections-inline{text-align:center;padding:2rem 1rem;color:#9ca3af;font-size:.875rem;background:#fff;border:1px dashed #e1e8ed;border-radius:6px}.add-section-inline{display:flex;gap:.5rem;align-items:center;margin-top:1rem}.add-section-inline input{flex:1;padding:.625rem;border:1px solid #e1e8ed;border-radius:6px;font-size:.875rem}.btn-add-section-inline{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#5b21b6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease;white-space:nowrap}.btn-add-section-inline:hover:not(:disabled){background:#6d28d9}.btn-add-section-inline:disabled{opacity:.5;cursor:not-allowed}.module-quiz-editor{max-width:1200px;margin:0 auto}.quiz-settings{background:#fff;padding:1.5rem;border-radius:12px;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000000a}.quiz-settings h3{margin:0 0 1rem;color:#2d3748;font-size:1.125rem}.questions-section{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000000a}.questions-section h3{margin:0 0 1rem;color:#2d3748;font-size:1.125rem}.questions-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.question-item{border:1px solid #e1e8ed;border-radius:8px;padding:1rem;transition:all .2s ease}.question-item:hover{box-shadow:0 2px 8px #00000014}.question-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.question-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#ede9fe;color:#5b21b6;border-radius:50%;font-size:.75rem;font-weight:600;flex-shrink:0}.question-text{flex:1;font-size:.875rem;color:#2d3748;font-weight:500}.question-points{font-size:.75rem;color:#6c757d;background:#f8f9fa;padding:.25rem .75rem;border-radius:12px}.btn-delete-question{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#9ca3af;transition:all .2s ease}.btn-delete-question:hover{background:#fef2f2;color:#ef4444}.question-options{display:flex;flex-direction:column;gap:.5rem;padding-left:2.25rem}.option-preview{padding:.5rem .75rem;background:#f8f9fa;border-radius:6px;font-size:.875rem;color:#6c757d;display:flex;align-items:center;gap:.5rem}.option-preview.correct{background:#ecfdf5;color:#059669;border:1px solid #10b981}.add-question-form{margin-top:2rem;padding:1.5rem;background:#f8f9fa;border-radius:12px}.add-question-form h4{margin:0 0 1rem;color:#2d3748;font-size:1rem}.options-form{margin-top:1rem}.options-form label{display:block;margin-bottom:.75rem;font-weight:500;color:#2d3748;font-size:.875rem}.option-input-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.option-input-row input[type=radio]{width:20px;height:20px;cursor:pointer;accent-color:#5b21b6}.option-input-row input[type=text]{flex:1;padding:.625rem;border:1px solid #e1e8ed;border-radius:6px;font-size:.875rem}.btn-add-question{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#5b21b6;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:.875rem;margin-top:1rem;transition:all .2s ease}.btn-add-question:hover{background:#6d28d9}.save-quiz-section{margin-top:1.5rem;text-align:center}.btn-save-quiz{padding:.875rem 2rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:.875rem;box-shadow:0 2px 8px #10b9814d;transition:all .2s ease}.btn-save-quiz:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.question-type-badge{font-size:.65rem;padding:.2rem .5rem;background:#ede9fe;color:#5b21b6;border-radius:4px;font-weight:600;text-transform:uppercase}.option-input-row input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#10b981;flex-shrink:0}.btn-remove-option{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid #e1e8ed;border-radius:6px;cursor:pointer;color:#9ca3af;transition:all .2s ease;flex-shrink:0}.btn-remove-option:hover{background:#fef2f2;color:#ef4444;border-color:#ef4444}.btn-add-option{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;color:#5b21b6;border:1px dashed #5b21b6;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.btn-add-option:hover{background:#ede9fe}.true-false-form{margin-top:1rem}.true-false-options{display:flex;gap:1rem;margin-top:.75rem}.tf-option{flex:1;display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#f8f9fa;border:2px solid #e1e8ed;border-radius:10px;cursor:pointer;transition:all .2s ease}.tf-option:hover{border-color:#5b21b6;background:#ede9fe}.tf-option.selected{border-color:#10b981;background:#ecfdf5}.tf-option input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#10b981}.tf-option span{font-weight:600;font-size:.95rem;color:#2d3748}.tf-option.selected span{color:#059669}.info-box{margin-top:1.5rem;padding:1rem;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}.info-box p{margin:0;font-size:.875rem;color:#92400e}body:not(.dark) .admin-dashboard{--bg-solid: #f0f0f0;--text-light: #1a1a1a;--text-secondary: #666;--card-bg: #ffffff;--border-color: #e5e7eb;--input-bg: #f9fafb;--card-shadow: rgba(0, 0, 0, .08)}body.dark .admin-dashboard{--bg-solid: #0b1020;--text-light: #f9fafb;--text-secondary: #9ca3af;--card-bg: #151827;--border-color: #272a3a;--input-bg: #0b1020;--card-shadow: rgba(0, 0, 0, .35)}.admin-dashboard{min-height:100vh;background:var(--bg-solid, #0b1020);transition:background .3s;position:relative;overflow-x:hidden}.admin-dashboard:before{content:"";position:absolute;width:200%;height:200%;top:-50%;left:-50%;background-image:radial-gradient(circle at 20% 30%,rgba(139,92,246,.15) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(236,72,153,.12) 0%,transparent 50%),radial-gradient(circle at 40% 80%,rgba(249,115,22,.1) 0%,transparent 50%);animation:floatingBackground 20s ease-in-out infinite;pointer-events:none;z-index:0}@keyframes floatingBackground{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-50px) rotate(5deg)}66%{transform:translate(-20px,30px) rotate(-5deg)}}.admin-header{position:sticky;top:0;background:#0a0c18bf;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border-color);padding:1.5rem 2rem;z-index:100;transition:all .3s;box-shadow:0 4px 16px var(--card-shadow)}body:not(.dark) .admin-header{background:#f0f0f0cc}.admin-header-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.admin-header h1{margin:0;font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,#8b5cf6,#ec4899,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% auto;animation:shimmer 3s linear infinite}@keyframes shimmer{to{background-position:200% center}}.admin-user-info{display:flex;align-items:center;gap:1rem;color:var(--text-light);font-weight:500}.logout-btn{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border:none;padding:.625rem 1.25rem;border-radius:10px;cursor:pointer;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #8b5cf659;font-family:inherit}.logout-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #8b5cf680}.logout-btn:active{transform:translateY(0) scale(.98)}.admin-main{max-width:1400px;margin:0 auto;padding:3rem 2rem;position:relative;z-index:1}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:3rem;animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.stat-card{background:radial-gradient(circle at 0% 0%,rgba(139,92,246,.15),transparent 70%),var(--card-bg);padding:2rem;border-radius:16px;border:1px solid var(--border-color);box-shadow:0 8px 24px var(--card-shadow);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,#8b5cf666,#ec489966,#f9731666,#8b5cf666);background-size:300% 300%;border-radius:16px;opacity:0;z-index:-1;transition:opacity .4s ease;animation:gradientShift 8s ease infinite}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.stat-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 16px 40px #8b5cf64d;border-color:#8b5cf699}.stat-card:hover:before{opacity:1}.stat-card h3{margin:0 0 .75rem;color:var(--text-secondary);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-number{margin:0;font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;animation:fadeInUp .8s ease-out .2s both}.admin-section{background:radial-gradient(circle at 100% 100%,rgba(236,72,153,.12),transparent 70%),var(--card-bg);padding:2rem;border-radius:16px;border:1px solid var(--border-color);box-shadow:0 8px 24px var(--card-shadow);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.admin-section:before{content:"";position:absolute;inset:-2px;background:linear-gradient(135deg,#8b5cf666,#ec489966);border-radius:16px;opacity:0;z-index:-1;transition:opacity .4s ease}.admin-section:hover{transform:translateY(-8px);box-shadow:0 16px 40px #ec48994d;border-color:#ec489999}.admin-section:hover:before{opacity:1}.admin-section h2{margin:0 0 .75rem;color:var(--text-light);font-size:1.25rem;font-weight:700}.admin-section p{margin:0 0 1.5rem;color:var(--text-secondary);line-height:1.6;font-size:.95rem}.section-btn{background:linear-gradient(135deg,#8b5cf6,#ec4899,#f97316);background-size:200% 200%;color:#fff;border:none;padding:.875rem 1.5rem;border-radius:12px;cursor:pointer;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%;font-size:.95rem;box-shadow:0 6px 20px #8b5cf659;position:relative;overflow:hidden;font-family:inherit}.section-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.section-btn:hover:before{width:300px;height:300px}.section-btn:hover{transform:translateY(-3px) scale(1.02);background-position:100% 0;box-shadow:0 12px 30px #8b5cf680}.section-btn:active{transform:translateY(-1px) scale(.98);box-shadow:0 6px 20px #8b5cf659}@media(max-width:1024px){.admin-header-content{flex-wrap:wrap;gap:1rem}.admin-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media(max-width:768px){.admin-header{padding:1rem 1.5rem}.admin-header-content{flex-direction:column;text-align:center}.admin-header h1{font-size:1.5rem}.admin-user-info{flex-direction:column;gap:.75rem}.admin-main{padding:2rem 1.5rem}.admin-stats,.admin-sections{grid-template-columns:1fr}.stat-card,.admin-section{padding:1.5rem}}@media(max-width:480px){.admin-header{padding:1rem}.admin-main{padding:1.5rem 1rem}.stat-number{font-size:2rem}}body:not(.dark) .admin-users-page{--bg-solid: #f0f0f0;--text-light: #1a1a1a;--text-secondary: #666;--card-bg: #ffffff;--border-color: #e5e7eb;--input-bg: #f9fafb;--card-shadow: rgba(0, 0, 0, .08);--hover-bg: rgba(139, 92, 246, .08)}body.dark .admin-users-page{--bg-solid: #0b1020;--text-light: #f9fafb;--text-secondary: #9ca3af;--card-bg: #151827;--border-color: #272a3a;--input-bg: #0b1020;--card-shadow: rgba(0, 0, 0, .35);--hover-bg: rgba(139, 92, 246, .15)}.admin-users-page{max-width:1200px;margin:0 auto;padding:2rem 1.5rem;color:var(--text-light);transition:all .3s}.admin-users-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.topbar-left{display:flex;align-items:center;gap:1rem}.topbar-left h1{font-size:1.75rem;margin:0;font-weight:700;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.back-btn{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-light);border-radius:10px;padding:.625rem 1rem;cursor:pointer;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;display:flex;align-items:center;gap:.5rem}.back-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--card-shadow);border-color:#8b5cf6}.admin-users-filters{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1.5rem;background:radial-gradient(circle at 0% 0%,rgba(139,92,246,.1),transparent 70%),var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.25rem;box-shadow:0 4px 12px var(--card-shadow);transition:all .3s}.search-input{flex:1;min-width:240px;background:var(--input-bg);border:2px solid var(--border-color);color:var(--text-light);border-radius:12px;padding:.75rem 1rem;outline:none;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1)}.search-input:focus{border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf62e;transform:translateY(-2px)}.search-input::placeholder{color:var(--text-secondary)}.role-select{min-width:170px;background:var(--input-bg);border:2px solid var(--border-color);color:var(--text-light);border-radius:12px;padding:.75rem 1rem;outline:none;cursor:pointer;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1)}.role-select:focus{border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf62e}.filters-meta{color:var(--text-secondary);font-size:.875rem;font-weight:600}.users-table-wrap{overflow:auto;border-radius:16px;border:1px solid var(--border-color);background:var(--card-bg);box-shadow:0 8px 24px var(--card-shadow);animation:fadeInUp .6s ease-out}.users-table{width:100%;border-collapse:collapse;min-width:980px}.users-table th,.users-table td{padding:1rem;border-bottom:1px solid var(--border-color);text-align:left}.users-table thead th{font-size:.8125rem;font-weight:700;letter-spacing:.5px;color:var(--text-secondary);text-transform:uppercase;-webkit-user-select:none;user-select:none;background:var(--hover-bg)}.users-table tbody tr{transition:all .2s}.users-table tbody tr:hover{background:var(--hover-bg)}.users-table tbody tr:last-child td{border-bottom:none}.sortable{cursor:pointer;transition:color .2s}.sortable:hover{color:#8b5cf6}.sort-ico{margin-left:.375rem;opacity:.6;font-size:.75rem}.actions-col{width:320px}.actions{display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap}.empty{text-align:center;color:var(--text-secondary);padding:2rem 1rem;font-style:italic}.role-pill{display:inline-flex;padding:.375rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid var(--border-color);background:var(--input-bg);transition:all .2s}.role-admin{background:linear-gradient(135deg,#8b5cf633,#7c3aed33);border-color:#8b5cf666;color:#a78bfa}.role-professor{background:linear-gradient(135deg,#ec489933,#db277733);border-color:#ec489966;color:#f9a8d4}.role-student{background:linear-gradient(135deg,#f9731633,#ea580c33);border-color:#f9731666;color:#fdba74}.primary-btn{border:none;padding:.75rem 1.25rem;border-radius:12px;color:#fff;cursor:pointer;background:linear-gradient(135deg,#8b5cf6,#ec4899);background-size:200% 200%;font-weight:600;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #8b5cf659;position:relative;overflow:hidden}.primary-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.primary-btn:hover:before{width:300px;height:300px}.primary-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #8b5cf680}.ghost-btn{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-light);padding:.625rem 1rem;border-radius:10px;cursor:pointer;font-weight:600;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1)}.ghost-btn:hover{border-color:#8b5cf6;transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf633}.danger-btn{background:linear-gradient(135deg,#ef444433,#dc262633);border:1px solid rgba(239,68,68,.4);color:#fca5a5;padding:.625rem 1rem;border-radius:10px;cursor:pointer;font-weight:600;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1)}.danger-btn:hover{background:linear-gradient(135deg,#ef44444d,#dc26264d);border-color:#ef444499;transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}body:not(.dark) .danger-btn{color:#dc2626}.modal-overlay{position:fixed;inset:0;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:999;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{width:100%;max-width:640px;border-radius:20px;border:1px solid var(--border-color);background:radial-gradient(circle at 0% 0%,rgba(139,92,246,.15),transparent 70%),var(--card-bg);box-shadow:0 24px 70px var(--card-shadow);animation:modalSlideIn .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.modal:before{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,#8b5cf666,#ec489966);border-radius:20px;opacity:0;z-index:-1;transition:opacity .4s ease}.modal:hover:before{opacity:1}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:1.25rem;font-weight:700;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.icon-btn{background:transparent;border:none;color:var(--text-light);cursor:pointer;font-size:1.25rem;opacity:.7;transition:all .2s;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:8px}.icon-btn:hover{opacity:1;background:var(--hover-bg)}.modal-body{padding:1.5rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid label{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--text-light)}.form-grid input,.form-grid select{background:var(--input-bg);border:2px solid var(--border-color);color:var(--text-light);border-radius:12px;padding:.75rem 1rem;outline:none;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1)}.form-grid input:focus,.form-grid select:focus{border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf62e;transform:translateY(-2px)}.form-grid input::placeholder{color:var(--text-secondary)}.hint{margin-top:1rem;font-size:.75rem;color:var(--text-secondary);font-style:italic}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.25rem 1.5rem;border-top:1px solid var(--border-color)}@media(max-width:768px){.admin-users-page{padding:1.5rem 1rem}.admin-users-topbar,.topbar-left{flex-direction:column;align-items:stretch}.topbar-left h1{font-size:1.5rem}.admin-users-filters{flex-direction:column;align-items:stretch}.search-input,.role-select{min-width:auto;width:100%}}@media(max-width:640px){.form-grid{grid-template-columns:1fr}.actions{flex-direction:column;width:100%}.actions button{width:100%}}body:not(.dark) .admin-reported-reviews-page{--bg-solid: #f0f0f0;--text-light: #1a1a1a;--text-secondary: #666;--card-bg: #ffffff;--border-color: #e5e7eb;--input-bg: #f9fafb;--card-shadow: rgba(0, 0, 0, .08);--hover-bg: rgba(139, 92, 246, .08)}body.dark .admin-reported-reviews-page{--bg-solid: #0b1020;--text-light: #f9fafb;--text-secondary: #9ca3af;--card-bg: #151827;--border-color: #272a3a;--input-bg: #0b1020;--card-shadow: rgba(0, 0, 0, .35);--hover-bg: rgba(139, 92, 246, .15)}.admin-reported-reviews-page{max-width:1200px;margin:0 auto;padding:2rem 1.5rem;color:var(--text-light);transition:all .3s}.rr-topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.rr-left{display:flex;align-items:center;gap:1rem}.rr-left h1{margin:0;font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.rr-back{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-light);border-radius:10px;padding:.625rem 1rem;cursor:pointer;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;display:flex;align-items:center;gap:.5rem}.rr-back:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--card-shadow);border-color:#8b5cf6}.rr-ghost{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-light);padding:.625rem 1rem;border-radius:10px;cursor:pointer;font-weight:600;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1)}.rr-ghost:hover{border-color:#8b5cf6;transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf633}.theme-toggle-btn{background:var(--card-bg);border:1px solid var(--border-color);padding:.5rem .75rem;border-radius:10px;cursor:pointer;font-size:1.25rem;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;align-items:center;justify-content:center}.theme-toggle-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--card-shadow);border-color:#8b5cf6}.rr-filters{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1.5rem;background:radial-gradient(circle at 0% 0%,rgba(139,92,246,.1),transparent 70%),var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.25rem;box-shadow:0 4px 12px var(--card-shadow);transition:all .3s}.rr-search{flex:1;min-width:240px;background:var(--input-bg);border:2px solid var(--border-color);color:var(--text-light);border-radius:12px;padding:.75rem 1rem;outline:none;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1)}.rr-search:focus{border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf62e;transform:translateY(-2px)}.rr-search::placeholder{color:var(--text-secondary)}.rr-meta{color:var(--text-secondary);font-size:.875rem;font-weight:600}.rr-table-wrap{overflow:auto;border-radius:16px;border:1px solid var(--border-color);background:var(--card-bg);box-shadow:0 8px 24px var(--card-shadow);animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.rr-table{width:100%;border-collapse:collapse;min-width:1050px}.rr-table th,.rr-table td{padding:1rem;border-bottom:1px solid var(--border-color);text-align:left}.rr-table thead th{font-size:.8125rem;font-weight:700;letter-spacing:.5px;color:var(--text-secondary);text-transform:uppercase;-webkit-user-select:none;user-select:none;background:var(--hover-bg)}.rr-table tbody tr{transition:all .2s}.rr-table tbody tr:hover{background:var(--hover-bg)}.rr-table tbody tr:last-child td{border-bottom:none}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem;color:var(--text-secondary)}.rr-comment{max-width:360px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-light)}.rr-actions-col{width:110px}.rr-actions{display:flex;justify-content:flex-end}.rr-danger{background:linear-gradient(135deg,#ef444433,#dc262633);border:1px solid rgba(239,68,68,.4);color:#fca5a5;padding:.625rem 1rem;border-radius:10px;cursor:pointer;font-weight:600;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1)}.rr-danger:hover{background:linear-gradient(135deg,#ef44444d,#dc26264d);border-color:#ef444499;transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}body:not(.dark) .rr-danger{color:#dc2626}.rr-empty{text-align:center;color:var(--text-secondary);padding:2rem 1rem;font-style:italic}.rr-hint{margin-top:1rem;font-size:.75rem;color:var(--text-secondary);font-style:italic}.users-error,.users-loading{margin:1rem 0;padding:1rem 1.25rem;border-radius:12px;background:var(--card-bg);border:1px solid var(--border-color);box-shadow:0 4px 12px var(--card-shadow);display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.users-error{border-color:#ef444466;background:linear-gradient(135deg,rgba(239,68,68,.1),transparent)}@media(max-width:768px){.admin-reported-reviews-page{padding:1.5rem 1rem}.rr-topbar,.rr-left{flex-direction:column;align-items:stretch}.rr-left h1{font-size:1.5rem}.rr-filters{flex-direction:column;align-items:stretch}.rr-search{min-width:auto;width:100%}.rr-comment{max-width:200px}}@media(max-width:640px){.rr-table-wrap{overflow-x:scroll}}#root{width:100%;margin:0;padding:0;overflow-x:hidden}.App{width:100%;margin:0;padding:0}.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}
