*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{overflow-x:hidden}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}body,a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}:focus{outline:none}:focus-visible{outline:2px solid rgba(150,40,135,.55);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}@keyframes atp-fade-up{0%{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes atp-fade-in{0%{opacity:0}to{opacity:1}}@keyframes atp-slide-up{0%{transform:translate3d(0,16px,0);opacity:0}to{transform:translateZ(0);opacity:1}}@keyframes atp-soft-pop{0%{transform:scale(.98)}to{transform:scale(1)}}.atp-anim-page{animation:atp-fade-up .42s cubic-bezier(.2,.8,.2,1) both;will-change:transform,opacity}.atp-anim-fade{animation:atp-fade-in .32s ease both}.atp-tap{transition:transform .12s ease,filter .2s ease,opacity .2s ease;-webkit-tap-highlight-color:transparent}.atp-tap:active{transform:scale(.98)}@media(max-width:767px){.atp-anim-page{animation:atp-slide-up .36s cubic-bezier(.2,.8,.2,1) both}}@media(min-width:768px){.atp-hover-lift{transition:transform .18s ease,box-shadow .22s ease,filter .22s ease;will-change:transform}.atp-hover-lift:hover{transform:translate3d(0,-2px,0);filter:saturate(1.03)}}body{font-family:Plus Jakarta Sans,sans-serif;background-color:#faf8fc;color:#2d2d2d;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%}a{text-decoration:none;color:inherit}button{font-family:inherit;cursor:pointer}img{display:block;max-width:100%}:root{--anim-fast: .15s;--anim-normal: .25s;--anim-slow: .4s;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-back: cubic-bezier(.34, 1.56, .64, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--glow-purple: rgba(128, 88, 198, .4);--glow-pink: rgba(232, 165, 200, .4);--shadow-lift: 0 12px 40px rgba(0, 0, 0, .12)}.card-hover,.carousal-card,.topic-card,.popular-card,.learning-card,.course-card,.notification-card,.settings-card,.profile-card,.completed-card{transition:transform var(--anim-normal) var(--ease-out-expo),box-shadow var(--anim-normal) var(--ease-out-expo),filter var(--anim-normal) var(--ease-in-out);will-change:transform,box-shadow}.card-hover:hover,.carousal-card:hover,.topic-card:hover,.popular-card:hover,.learning-card:hover,.course-card:hover,.notification-card:hover,.settings-card:hover,.profile-card:hover,.completed-card:hover{filter:saturate(1.05)}.card-hover:active,.carousal-card:active,.topic-card:active,.popular-card:active,.learning-card:active,.course-card:active,.notification-card:active,.settings-card:active,.profile-card:active,.completed-card:active{transform:translateY(-1px) scale(.985);transition-duration:var(--anim-fast)}.glass-card{position:relative;overflow:hidden}.glass-card:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 40%,rgba(255,255,255,.1) 50%,transparent 60%);transform:translate(-100%);transition:transform 0s}.glass-card:hover:before{transform:translate(100%);transition:transform .8s ease}button,.btn,.continue-btn,.view-details-btn,.see-all-link,.login-btn,.signup-btn,.submit-btn,.action-btn{transition:transform var(--anim-fast) var(--ease-out-expo),box-shadow var(--anim-normal) var(--ease-out-expo),background-color var(--anim-fast) var(--ease-in-out),filter var(--anim-fast) var(--ease-in-out);will-change:transform,box-shadow}.continue-btn:hover,.view-details-btn:hover,.login-btn:hover,.signup-btn:hover,.submit-btn:hover,.action-btn:hover,.btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #8058c64d;filter:brightness(1.05)}button:active,.btn:active,.continue-btn:active,.view-details-btn:active,.login-btn:active,.signup-btn:active,.submit-btn:active,.action-btn:active{transform:scale(.96);box-shadow:0 2px 8px #8058c633;transition-duration:80ms}.continue-btn .btn-arrow,.view-details-btn .btn-arrow,.see-all-arrow{transition:transform var(--anim-normal) var(--ease-out-expo)}.continue-btn:hover .btn-arrow,.view-details-btn:hover .btn-arrow,.see-all-link:hover .see-all-arrow{transform:translate(4px)}.see-all-link{display:inline-flex;align-items:center;gap:4px;transition:gap var(--anim-normal) var(--ease-out-expo),transform var(--anim-normal) var(--ease-out-expo)}.see-all-link:hover{gap:8px}.stat-icon,.nav-icon-box,.notification-icon,.topic-icon,.feature-icon{transition:transform var(--anim-normal) var(--ease-out-back),filter var(--anim-normal) var(--ease-in-out)}.stat-item:hover .stat-icon,.nav-item:hover .nav-icon-box,.notification-card:hover .notification-icon,.topic-card:hover .topic-icon,.feature-card:hover .feature-icon{transform:scale(1.1) rotate(-3deg);filter:drop-shadow(0 4px 8px var(--glow-purple))}.nav-item.active .nav-icon-box{animation:nav-pulse 2s ease-in-out infinite}@keyframes nav-pulse{0%,to{box-shadow:0 4px 12px #8058c666}50%{box-shadow:0 4px 20px #8058c699}}.notification-bell:hover,.notification-icon:hover{animation:bell-shake .5s ease-in-out}@keyframes bell-shake{0%,to{transform:rotate(0)}10%{transform:rotate(15deg)}20%{transform:rotate(-15deg)}30%{transform:rotate(10deg)}40%{transform:rotate(-10deg)}50%{transform:rotate(5deg)}60%{transform:rotate(-5deg)}70%{transform:rotate(2deg)}80%{transform:rotate(-2deg)}}.stagger-list>*{opacity:0;transform:translateY(12px);animation:stagger-fade-up .4s var(--ease-out-expo) forwards}.stagger-list>*:nth-child(1){animation-delay:0ms}.stagger-list>*:nth-child(2){animation-delay:60ms}.stagger-list>*:nth-child(3){animation-delay:.12s}.stagger-list>*:nth-child(4){animation-delay:.18s}.stagger-list>*:nth-child(5){animation-delay:.24s}.stagger-list>*:nth-child(6){animation-delay:.3s}.stagger-list>*:nth-child(7){animation-delay:.36s}.stagger-list>*:nth-child(8){animation-delay:.42s}.stagger-list>*:nth-child(n+9){animation-delay:.48s}@keyframes stagger-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.topic-grid,.popular-courses-list,.learning-stats{--stagger-delay: 50ms}.topic-grid>*:nth-child(1),.popular-courses-list>*:nth-child(1){animation-delay:calc(var(--stagger-delay) * 0)}.topic-grid>*:nth-child(2),.popular-courses-list>*:nth-child(2){animation-delay:calc(var(--stagger-delay) * 1)}.topic-grid>*:nth-child(3),.popular-courses-list>*:nth-child(3){animation-delay:calc(var(--stagger-delay) * 2)}.topic-grid>*:nth-child(4),.popular-courses-list>*:nth-child(4){animation-delay:calc(var(--stagger-delay) * 3)}.topic-grid>*:nth-child(5),.popular-courses-list>*:nth-child(5){animation-delay:calc(var(--stagger-delay) * 4)}.topic-grid>*:nth-child(6),.popular-courses-list>*:nth-child(6){animation-delay:calc(var(--stagger-delay) * 5)}.progress-bar{stroke-dasharray:0,100;animation:progress-fill 1s var(--ease-out-expo) forwards}@keyframes progress-fill{0%{stroke-dasharray:0,100}}.progress-container{position:relative;overflow:hidden}.progress-container:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 2s infinite}@keyframes shimmer{to{left:200%}}.loading-dots span{display:inline-block;width:8px;height:8px;border-radius:50%;background:#8058c6;animation:loading-bounce 1.4s ease-in-out infinite both}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}.loading-dots span:nth-child(3){animation-delay:0s}@keyframes loading-bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}input,textarea,select,.form-input{transition:border-color var(--anim-fast) var(--ease-in-out),box-shadow var(--anim-fast) var(--ease-in-out),transform var(--anim-fast) var(--ease-out-expo)}input:focus,textarea:focus,select:focus,.form-input:focus{transform:translateY(-1px);box-shadow:0 4px 12px #8058c626}.search-input{transition:width var(--anim-normal) var(--ease-out-expo),box-shadow var(--anim-normal) var(--ease-out-expo)}.search-input:focus{width:120%}.carousal-card{scroll-snap-align:center;transition:transform var(--anim-normal) var(--ease-out-expo),box-shadow var(--anim-normal) var(--ease-out-expo),opacity var(--anim-normal) var(--ease-in-out)}.carousal-card.in-view{transform:scale(1.02);opacity:1}.carousal-card:not(.in-view){opacity:.7;transform:scale(.95)}.dot{transition:transform var(--anim-fast) var(--ease-out-back),background-color var(--anim-fast) var(--ease-in-out),width var(--anim-fast) var(--ease-out-expo)}.dot:hover{transform:scale(1.3)}.dot-active{animation:dot-pulse 2s ease-in-out infinite}@keyframes dot-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.topic-image,.popular-thumb,.course-image,.profile-image{transition:transform var(--anim-slow) var(--ease-out-expo),filter var(--anim-normal) var(--ease-in-out);will-change:transform}.topic-card:hover .topic-image,.popular-card:hover .popular-thumb,.course-card:hover .course-image,.profile-card:hover .profile-image{transform:scale(1.08);filter:saturate(1.1)}.img-reveal{opacity:0;transform:scale(.95);animation:img-reveal .5s var(--ease-out-expo) forwards}@keyframes img-reveal{to{opacity:1;transform:scale(1)}}.snackbar{animation:snackbar-slide .35s var(--ease-out-expo) forwards}@keyframes snackbar-slide{0%{opacity:0;transform:translateY(20px) translate(-50%)}to{opacity:1;transform:translateY(0) translate(-50%)}}.snackbar.exit{animation:snackbar-exit .25s var(--ease-in-out) forwards}@keyframes snackbar-exit{to{opacity:0;transform:translateY(-10px) translate(-50%)}}.notification-badge{animation:badge-bounce .5s var(--ease-out-back)}@keyframes badge-bounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.hover-reveal{opacity:0;transform:translateY(8px);transition:opacity var(--anim-normal) var(--ease-in-out),transform var(--anim-normal) var(--ease-out-expo)}.card-hover:hover .hover-reveal,.topic-card:hover .hover-reveal,.popular-card:hover .hover-reveal{opacity:1;transform:translateY(0)}.stat-number{display:inline-block;animation:count-up .6s var(--ease-out-expo) forwards}@keyframes count-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease,opacity .6s ease;opacity:0;pointer-events:none}.ripple:active:after{width:300px;height:300px;opacity:1;transition:0s}.floating{animation:floating 3s ease-in-out infinite}@keyframes floating{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.breathing{animation:breathing 4s ease-in-out infinite}@keyframes breathing{0%,to{opacity:.8}50%{opacity:1}}:focus-visible{outline:2px solid rgba(128,88,198,.6);outline-offset:3px;transition:outline-offset var(--anim-fast) var(--ease-out-expo)}button:focus-visible,.card-hover:focus-visible,.nav-item:focus-visible{outline-offset:4px}.dropdown-menu{opacity:0;transform:translateY(-10px) scale(.95);transform-origin:top center;transition:opacity var(--anim-fast) var(--ease-in-out),transform var(--anim-fast) var(--ease-out-expo);pointer-events:none}.dropdown-menu.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.modal-overlay{opacity:0;transition:opacity var(--anim-normal) var(--ease-in-out)}.modal-overlay.open{opacity:1}.modal-content{opacity:0;transform:scale(.9) translateY(20px);transition:opacity var(--anim-normal) var(--ease-in-out),transform var(--anim-normal) var(--ease-out-expo)}.modal-overlay.open .modal-content{opacity:1;transform:scale(1) translateY(0)}.success-checkmark{animation:checkmark-pop .5s var(--ease-out-back)}@keyframes checkmark-pop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.error-shake{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.progress-container:after,.nav-item.active .nav-icon-box,.dot-active,.floating,.breathing{animation:none!important}}.footer{padding:24px 16px;margin-top:auto}.footer-container{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.footer-container p{font-size:14px;color:gray;margin:0}.footer-links{display:flex;gap:20px}.footer-links a{font-size:14px;color:#464646;text-decoration:none;font-weight:500}@media screen and (min-width:768px){.footer{display:none}}@media screen and (max-width:767px){.footer{padding-bottom:20px}}.notification-bell-container{position:relative;display:inline-block}.notification-bell{position:relative;background:none;border:none;padding:8px;cursor:pointer;border-radius:50%;transition:background-color .2s}.notification-bell:hover{background-color:#0000001a}.notification-bell img{width:35px;height:35px}.notification-badge{position:absolute;top:8px;right:10px;min-width:18px;height:18px;background-color:#ed1b24;color:#fff;border-radius:9px;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px;box-sizing:border-box}.notification-dropdown{position:absolute;top:100%;right:0;width:380px;max-height:480px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;z-index:1000;overflow:hidden;margin-top:8px;display:flex;flex-direction:column}.notification-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb}.notification-header h3{margin:0;font-size:16px;font-weight:600;color:#111827}.mark-all-read-btn{background:none;border:none;color:#3a356b;font-size:14px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .2s}.mark-all-read-btn:hover{background-color:#eff6ff}.notification-list{flex:1;overflow-y:auto;max-height:320px}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.notification-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.notification-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.notification-empty{display:flex;flex-direction:column;align-items:center;padding:40px 20px;text-align:center;flex:1;justify-content:center}.notification-empty img{width:48px;height:48px;opacity:.5;margin-bottom:12px}.notification-empty p{color:#6b7280;margin:0 0 16px;font-size:14px}.notification-empty .notification-footer{width:100%;margin:16px -20px -12px;padding:12px 20px;border-top:1px solid #e5e7eb;background:#f9fafb;text-align:center;position:sticky;bottom:0;flex-shrink:0;box-shadow:0 -2px 4px #0000000d}.notification-empty .view-all-notifications{display:inline-flex}.notification-item{display:flex;align-items:flex-start;padding:16px 20px;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background-color .2s;position:relative}.notification-item.unread{background-color:var(--bg-page)}.notification-item.unread:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background-color:var(--primary-purple)}.notification-icon{margin-right:12px;flex-shrink:0}.notification-icon img{width:50px;height:50px;border-radius:8px;border:2px solid transparent;padding:4px;box-sizing:border-box}.notification-content{flex:1;min-width:0}.notification-title{font-weight:600;font-size:14px;color:#111827;margin-bottom:4px;line-height:1.4}.notification-message{font-size:14px;color:#374151;line-height:1.4;margin-bottom:8px;word-wrap:break-word}.notification-time{font-size:12px;color:#6b7280;margin-bottom:8px}.notification-action{display:inline-block;font-size:13px;color:var(--primary-purple);text-decoration:none;padding:4px 8px;border-radius:4px;transition:background-color .2s}.notification-action:hover{background-color:var(--primary-purple-dark);text-decoration:none;color:#eff6ff}.notification-delete{position:absolute;top:12px;right:12px;background:none;border:none;color:#9ca3af;font-size:18px;cursor:pointer;padding:4px;border-radius:4px;opacity:0;transition:all .2s;line-height:1}.notification-item:hover .notification-delete{opacity:1}.notification-delete:hover{color:#ed1b24;background-color:#fef2f2}.notification-footer{padding:12px 20px;border-top:1px solid #e5e7eb;text-align:center;background:#f9fafb;flex-shrink:0;position:sticky;bottom:0;box-shadow:0 -2px 4px #0000000d}.view-all-notifications{display:flex;align-items:center;justify-content:center;color:var(--primary-purple-dark);text-decoration:none;font-size:14px;font-weight:500;padding:8px 16px;border-radius:6px;transition:all .2s;background:#fff;border:1px solid var(--primary-purple);gap:8px}.view-all-icon{width:16px;height:16px;transition:transform .2s}.view-all-notifications:hover{background-color:var(--light-grey);text-decoration:none;color:var(--primary-purple-dark);border:2px solid var(--primary-purple)}.view-all-notifications:hover .view-all-icon{transform:translate(2px)}.notification-overlay{position:fixed;inset:0;z-index:999;background:transparent}@media(max-width:480px){.notification-dropdown{width:90vw;max-width:380px}.notification-item{padding:12px 16px}.notification-icon img{width:36px;height:36px}}.topics-page{padding:15px;background-color:#f5f5f5;min-height:100vh}.tp-header{display:flex;align-items:center;color:var(--lp-header-text)}.header-section{margin-top:20px;margin-bottom:32px}.topics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.topic-card-full{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 8px #0000000d;cursor:pointer;transition:transform .2s;display:flex;flex-direction:column}.topic-card-full:hover{transform:translateY(-4px)}.topic-image-full{width:100%;height:120px;background-size:cover;background-position:center}.topic-content-full{padding:12px;flex:1;display:flex;flex-direction:column;gap:4px}.topic-title-full{font-size:14px;font-weight:700;color:#1c1c1c;margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.topic-author-full{font-size:12px;color:gray}.topic-meta-full{margin-top:auto;font-size:11px;color:gray;padding-top:8px}.no-topics{grid-column:1 / -1;text-align:center;padding:60px 20px;color:gray}.browse-link{display:inline-block;margin-top:16px;color:#0c87ca;font-weight:600}@media(min-width:768px){.topics-page{padding:0 25px 25px}.topics-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px}.topic-image-full{height:140px}}.app{padding:15px;min-height:100vh;margin-left:-0px}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:14px;color:gray}.breadcrumb-separator{color:gray}.breadcrumb-divider{border:none;border-top:1px solid #e2e2e2;margin:0 -16px 24px}.header{display:flex;align-items:center;gap:0px;margin-bottom:24px;background-color:#fff}.header h3{font-size:18px;font-weight:600;color:#464646}.menu{background:#fff;border-radius:19px;overflow:hidden;padding:8px 0}.menu hr{border:none;border-top:1px solid #e6e6e6;margin:0 24px}.menu-item{display:flex;justify-content:space-between;align-items:center;padding:24px;text-decoration:none;color:#464646;font-size:15px;font-weight:600;transition:background-color .2s}.divider{padding:0 20px;margin:0}.menu-item>span:first-child{display:flex;align-items:center;gap:0px}.menu-item img{width:20px;height:20px;display:block}.cert-icon{width:20px;height:20px}.arrow img{width:16px;height:16px;opacity:.6}.logout-btn{background:linear-gradient(135deg,#962887,#a35698);color:#fff!important;border-radius:12px;padding:15px 20px!important;margin:10px 0;transition:all .3s ease;box-shadow:0 4px 15px #9628874d;text-decoration:none;display:block}.logout-btn:hover{background:linear-gradient(135deg,#a35698,#b870a8);transform:translateY(-2px);box-shadow:0 6px 20px #96288766;color:#fff!important;text-decoration:none}.logout-btn img{filter:brightness(0) invert(1)}.logout-message{position:fixed;bottom:20px;left:50%;transform:translate(-50%);padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;box-shadow:0 4px 12px #0000001a;z-index:1000}.logout-message.info{background:#e3f2fd;color:#1976d2;border:1px solid #bbdefb}.logout-message.success{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.logout-message.error{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}@media(min-width:768px){.app{padding:40px 70px}.menu{margin:0}}@media(min-width:1024px){.app{flex:1;padding:0 25px 25px}.header{justify-content:flex-start}.header a{display:none}}@media(min-width:1024px){.header h3{font-size:24px}}.reset-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 8px 32px #3b82f64d}.email-display{font-weight:600;color:#1f2937;font-size:16px;margin:8px 0 0;text-align:center}.input-field:focus{outline:none;border-color:#8b5cf6;background:#fff;box-shadow:0 0 0 4px #8b5cf61a}.auth-link{color:#8b5cf6;text-decoration:none;font-weight:500;font-size:14px;text-align:center}.profile-page{max-width:480px;margin:0 auto;padding:20px 16px 100px;width:100%;background:var(--bg-page);min-height:100vh}.profile-avatar-wrapper{position:relative;width:120px;height:120px}.profile-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;background:var(--gray-200);border:4px solid var(--bg-card)}.profile-edit-btn{position:absolute;bottom:4px;right:4px;background:var(--primary-purple);width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:var(--transition-fast)}.profile-edit-btn:hover{transform:scale(1.05);background:var(--primary-purple-dark)}.profile-edit-btn img{width:12px;height:12px;filter:brightness(0) invert(1)}.profile-name{font-size:22px;font-weight:var(--font-weight-bold);margin:0 0 4px;color:var(--text-primary)}.profile-email{font-size:14px;color:var(--text-secondary);margin:0;word-break:break-word}.profile-actions{margin-top:10px}.action-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:20px;text-decoration:none;font-size:14px;font-weight:600;transition:var(--transition-fast);border:none;cursor:pointer}.action-btn.primary{background:var(--primary-purple)}.action-btn.primary:hover{background:var(--primary-purple-dark);transform:translateY(-1px)}.action-btn img{width:16px;height:16px;filter:brightness(0) invert(1)}.menu-sections-container{display:block}.menu-section{margin-bottom:20px}.section-title{font-size:16px;font-weight:var(--font-weight-semibold);color:var(--text-secondary);margin:0 0 12px;padding:0 4px;text-transform:uppercase;letter-spacing:.5px}.menu-list{background:var(--bg-card);border-radius:var(--border-radius-lg);overflow:hidden}.menu-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:0;text-decoration:none;color:var(--text-primary);font-size:15px;font-weight:var(--font-weight-medium);transition:var(--transition-fast);border-bottom:.5px solid var(--gray-300)!important}.menu-item:last-child{border-bottom:none!important}.menu-item:hover{background:var(--bg-hover)}.menu-item-left{display:flex;align-items:center;gap:12px}.menu-icon{width:20px;height:20px;opacity:.7}.menu-arrow{width:16px;height:16px;opacity:.4}.logout-section{background:var(--bg-card);border-radius:var(--border-radius-lg);padding:6px}.logout-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px;background:#fff5f5;color:var(--text-error)!important;border:1px solid var(--text-error);border-radius:var(--border-radius-md);font-size:15px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-fast);box-shadow:none}.logout-btn:hover{background:#fff5f5;color:var(--text-error);transform:translateY(-1px);box-shadow:none}.logout-btn img{width:18px;height:18px;filter:brightness(0) invert(1);display:none}.profile-loading{display:flex;justify-content:center;align-items:center;min-height:300px;font-size:16px;color:var(--text-secondary)}@media(max-width:480px){.profile-page{padding:16px 12px 100px}.profile-card{padding:24px 20px 12px 12px;border-radius:20px;margin-bottom:20px;display:flex}.profile-header{display:flex;gap:12px;align-items:center}.profile-avatar-wrapper{width:100px;height:100px}.profile-info{text-align:left}.profile-name{font-size:25px}.profile-email{font-size:18px}.action-btn{display:none}.menu-item{padding:14px 16px;font-size:14px}.menu-icon{width:18px;height:18px}.menu-arrow{width:14px;height:14px}.section-title{font-size:14px;margin-bottom:10px}.logout-btn{border-radius:22px}}@media(min-width:1024px){.profile-page{max-width:100%;margin:0;padding:32px 48px 100px;background:var(--bg-page);min-height:100vh}.profile-content-wrapper{display:flex;flex-direction:column;gap:32px;align-items:flex-start;margin:0 auto}.profile-header-bar{display:flex;align-items:center;gap:12px;margin-block:12px}.back-btn{width:40px;height:40px;display:none}.back-btn img{width:18px;height:18px}.page-title{font-size:20px;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.profile-card{background:transparent;justify-content:space-between;display:flex;flex-direction:row;width:100%;margin-bottom:0;border-bottom:1px solid var(--gray-300)}.profile-header{display:flex;flex-direction:row;gap:16px;margin-bottom:20px}.profile-avatar-wrapper{position:relative}.profile-avatar{width:90%;height:90%;border-radius:50%;object-fit:cover;background:var(--gray-200);border:4px solid var(--bg-card)}.profile-edit-btn{display:none}.profile-edit-btn:hover{transform:scale(1.05);background:var(--primary-purple-dark)}.profile-edit-btn img{width:14px;height:14px;filter:brightness(0) invert(1)}.profile-info{flex:1;min-width:0;text-align:left}.profile-name{font-size:28px;font-weight:var(--font-weight-bold);margin:0 0 6px;color:var(--text-primary)}.profile-email{font-size:18px;color:var(--text-secondary);margin:0 0 8px;word-break:break-word}.action-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 40px;border-radius:30px;text-decoration:none;font-size:16px;font-weight:600;transition:var(--transition-fast);border:none;cursor:pointer;width:100%}.action-btn.primary{background:var(--primary-purple);color:var(--bg-page)}.action-btn.primary:hover{background:var(--primary-purple-dark);transform:translateY(-1px)}.action-btn img{width:16px;height:16px;filter:brightness(0) invert(1)}.menu-sections-container{flex:1;min-width:100%}.menu-section{margin-bottom:20px}.section-title{font-size:16px;font-weight:var(--font-weight-semibold);color:var(--text-secondary);margin:0 0 12px;padding:0 4px;text-transform:uppercase;letter-spacing:.5px}.menu-list{background:var(--bg-card);border-radius:var(--border-radius-lg);overflow:hidden;margin-bottom:40px}.menu-item{display:flex;align-items:center;justify-content:space-between;padding:18px;text-decoration:none;color:var(--text-primary);font-size:15px;font-weight:var(--font-weight-medium);transition:var(--transition-fast);border-bottom:1px solid var(--border-light)}.menu-item:last-child{border-bottom:none}.menu-item:hover{color:var(--primary-purple);scale:1.01}.menu-item-left{display:flex;align-items:center;gap:12px}.menu-icon{width:20px;height:20px;opacity:.7}.menu-arrow{width:16px;height:16px;opacity:.4}.logout-section{border-radius:20px;padding:6px}.logout-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border-radius:var(--border-radius-xl);border:1px solid var(--text-error);color:var(--text-error)!important;font-size:14px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-fast);box-shadow:none}.logout-btn:hover{color:var(--text-error)!important;transform:translateY(-2px);box-shadow:0 2px 8px #4e4e4e14}.logout-btn img{width:18px;height:18px;display:none}}@media(min-width:481px)and (max-width:1023px){.profile-page{padding:32px 24px 100px}.profile-card{padding:40px 32px 32px;border-radius:28px}.profile-header{display:flex;gap:12px;align-items:center}.profile-avatar-wrapper{width:100px;height:100px}.profile-info{text-align:left}.profile-name{font-size:24px}.profile-email{font-size:15px}.action-btn{display:none}.logout-btn{border-radius:22px}}.logout-confirm-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.logout-confirm-dialog{background:#fff5f5;border-radius:var(--border-radius-xl);padding:32px;max-width:400px;width:100%}.logout-confirm-content h3{margin:0 0 16px;font-size:20px;font-weight:var(--font-weight-semibold);color:var(--text-primary);text-align:center}.logout-confirm-content p{margin:0 0 24px;font-size:16px;color:var(--text-secondary);text-align:center;line-height:1.5}.logout-confirm-buttons{display:flex;gap:12px;justify-content:center}.logout-confirm-cancel,.logout-confirm-yes{padding:12px 24px;border:none;border-radius:var(--border-radius-sm);font-size:14px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-fast);flex:1;max-width:140px}.logout-confirm-cancel{background:var(--gray-100);color:var(--text-primary)}.logout-confirm-cancel:hover{background:var(--gray-200)}.logout-confirm-yes{background:var(--text-error);color:#fff5f5}.logout-confirm-yes:hover{background:var(--text-error);transform:translateY(-1px)}@media(max-width:480px){.logout-confirm-dialog{padding:24px 20px;margin:20px}.logout-confirm-content h3{font-size:18px}.logout-confirm-content p{font-size:14px}.logout-confirm-buttons{flex-direction:column}.logout-confirm-cancel,.logout-confirm-yes{width:100%;max-width:none}}.popular-courses-page{padding:24px 16px;background-color:#f5f5f5;min-height:100vh}.breadcrumb{display:flex;align-items:center;gap:6px;font-size:16px;color:var(--text-secondary);padding:40px 0}@media(min-width:767px){.breadcrumb{position:sticky;top:0;z-index:150}.tp-header{display:none}}.header-section{margin-bottom:32px}.page-title{font-size:24px;font-weight:700;color:#1c1c1c;margin-bottom:8px}.page-subtitle{font-size:14px;color:gray}.popular-grid{display:flex;flex-direction:column;gap:16px}.popular-card-full{display:flex;gap:16px;background-color:#fff;box-shadow:0 1px 4px #00000014;border-radius:16px;align-items:center;padding:12px;cursor:pointer;transition:transform .2s,box-shadow .2s}.popular-card-full:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.popular-thumb-full{width:100px;height:100px;background-color:#f0f0f0;border-radius:12px;flex-shrink:0;background-size:cover;background-position:center}.popular-content-full{display:flex;flex-direction:column;justify-content:center;gap:12px;padding-top:4px;min-width:0}.course-meta{display:flex;gap:12px;font-size:11px;color:gray;align-items:center;flex-wrap:wrap}.meta-item{display:flex;align-items:center;gap:4px}.meta-item img{width:14px;height:14px}.course-card-title-full{font-size:15px;font-weight:600;color:#1c1c1c;line-height:1.4}.loading-state,.error-state,.empty-state{display:flex;justify-content:center;align-items:center;padding:60px 20px;text-align:center;grid-column:1 / -1}.loading-state p,.error-state p,.empty-state p{color:#666;font-size:16px;font-weight:500}.error-state p{color:#e74c3c}.empty-state p{color:#999}@media(min-width:768px){.popular-courses-page{padding:0 25px 25px}.popular-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:24px}.popular-thumb-full{width:110px;height:110px}}.notification-page{min-height:100vh;background:#f8f9fa}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.loading-text{margin-top:20px;font-size:16px;color:#666;font-weight:500}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.error-state p{color:#dc3545;font-size:16px;margin:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-state p{color:#666;font-size:16px;margin:0}.notification-card{display:flex;align-items:flex-start;padding:16px;background:#fff;border-radius:8px;margin-bottom:12px;box-shadow:0 2px 4px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.notification-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.notification-icon{flex-shrink:0;width:60px;height:60px;margin-right:16px;display:flex;align-items:center;justify-content:center}.notification-icon img{width:60px;height:60px}.notification-content{flex:1}.notification-title{font-size:14px;font-weight:500;color:#333;margin-bottom:4px;line-height:1.4}.notification-time{font-size:12px;color:#666;margin:0}.notification-actions{display:flex;align-items:center;margin-left:12px}.mark-read-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background-color:#f0f9ff;color:var(--primary-purple);border:1px solid #bae6fd;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.mark-read-btn:hover{background-color:#e0f2fe;border-color:#7dd3fc}.mark-read-btn img{width:14px;height:14px}@media(max-width:768px){.notification-card{padding:12px;flex-direction:column;align-items:flex-start}.notification-icon{display:none}.notification-icon img{width:20px;height:20px}.notification-title{font-size:13px}.notification-time{font-size:11px}.notification-actions{margin-left:0;margin-top:8px;width:100%}.mark-read-btn{width:100%;justify-content:center;padding:8px 12px}}.header{display:flex;align-items:center;justify-content:space-between;background:#fff}.header h3{margin:0;font-size:1.25rem;font-weight:600;color:#111827;flex:1;text-align:center}.header a img{width:30px;height:30px;transition:transform .2s}.header a:hover img{transform:translate(-2px)}.notification-card{position:relative;border-left:4px solid transparent;transition:all .2s ease}.notification-card.unread{border-left-color:var(--primary-purple)}.notification-card.urgent{border-left-color:#ed1b24}.notification-card.high{border-left-color:#fdbb21}.notification-card.medium{border-left-color:var(--primary-purple)}.notification-card.low{border-left-color:#6b7280}.notification-priority{position:absolute;top:12px;right:12px}.priority-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.priority-badge.urgent{background-color:#fef2f2;color:#ed1b24}.priority-badge.high{background-color:#fff7ed;color:#fdbb21}.priority-badge.medium{background-color:#eff6ff;color:var(--primary-purple)}.priority-badge.low{background-color:#f9fafb;color:#6b7280}.notification-action{display:inline-block;margin-top:8px;padding:6px 12px;background-color:var(--primary-purple);color:#fff;text-decoration:none;border-radius:6px;font-size:13px;font-weight:500;transition:background-color .2s}.notification-action:hover{background-color:var(--primary-purple-dark);text-decoration:none;color:#fff}.notification-message{margin:8px 0;line-height:1.5;color:#374151}.notification-title{font-weight:600;font-size:16px;color:#111827;margin-bottom:4px}@media(max-width:768px){.notification-card{padding:16px}.priority-badge{font-size:10px;padding:1px 6px}}@media(min-width:768px){.header{align-items:start;padding:1rem 0}.header h3{text-align:start}}:root{--page-bg: #f5f5f5;--card-bg: #ffffff;--item-bg: #f2f2f2;--item-hover: #e8e8e8;--text-main: #333;--text-light: #777;--border-radius: 16px}*{margin:0;padding:0;box-sizing:border-box;font-family:Plus Jakarta Sans,sans-serif}.app-learning-page{min-height:100vh;background-color:#faf8fc;padding:0 30px;border-radius:0}.nav-container{display:flex}.breadcrumb{background-color:transparent!important;font-size:14px;color:var(--text-light);margin-bottom:16px}.breadcrumb a{color:var(--text-light);text-decoration:none}.breadcrumb-separator{margin:0 6px}.breadcrumb-current{color:var(--text-main);font-weight:500}.header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.header img{width:20px;height:20px}.header h3{font-size:20px;font-weight:600;color:var(--text-main)}.menu{background-color:#fff!important;border-radius:var(--border-radius)}.menu-item{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;background:transparent;border-radius:0;text-decoration:none;color:var(--text-main);transition:all .2s ease}.menu-item:last-child{margin-bottom:0}.menu-item span:first-child{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:500}.menu-item img{width:20px;height:20px}.menu-item .arrow img{width:16px;height:16px;opacity:.6}.menu-item:hover{background:var(--item-hover)}.ripple{position:relative;overflow:hidden}:root{--page-bg: #ffffff;--card-bg: #F5F5F5;--input-bg: #fafafa;--text-primary: #464646;--text-secondary: #808080;--btn-black: #1C1C1C;--placeholder: #9ca3af;--highlight: #FF2D55;--border-color: #e5e7eb;--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-btn: 0px 6px 6px rgba(0, 0, 0, .25);--radius-input: 12px;--radius-btn: 54px;--radius-card: 24px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Plus Jakarta Sans,sans-serif;color:var(--text-primary);background:var(--page-bg);min-height:100vh}.main-container{display:flex;flex-direction:column;align-items:center;min-height:100vh}.auth-wrapper{display:flex;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:20px}.auth-card{width:100%;max-width:400px;padding:32px;border-radius:16px;background:#fff;box-shadow:0 4px 24px #00000014}.welcome-text{text-align:center;margin-bottom:24px}.welcome-text h1{font-size:32px;font-weight:700;margin-bottom:8px;-webkit-text-fill-color:transparent}.welcome-text p{font-size:16px;color:#6b7280}.auth-form{display:flex;flex-direction:column}.form-group{margin-bottom:20px}.form-group label{font-size:14px;font-weight:500;margin-bottom:8px;display:block}.input-group{position:relative;width:100%}.input-field{width:100%;height:65px;padding:0 16px 0 44px;border:2px solid var(--border-color);background:var(--input-bg);font-size:15px;transition:all .25s ease}.input-field::placeholder{color:none}.input-field:focus{outline:none;border:2px solid var(--primary-purple)!important;background:#fff;box-shadow:none}.input-field.error{border-color:#dc2626;background:#fef2f2}.input-field.error:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc262626}.input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.btn-primary{width:100%;height:52px;border-radius:var(--radius-btn);border:none;background:var(--primary-purple);color:#fff;font-weight:600;cursor:pointer;box-shadow:var(--shadow-btn);transition:all .25s ease}.btn-primary:hover{opacity:.9;background-color:var(--primary-purple-dark)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.error-message,.success-message{padding:14px;border-radius:10px;font-size:14px;text-align:center;margin-bottom:16px}.error-message{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.success-message{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.divider{display:flex;align-items:center;margin:20px 0;font-size:14px;color:#777}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid var(--border-color)}.divider span{padding:0 10px}.auth-link{color:var(--highlight);text-decoration:none;font-weight:500}.forgot-password-link{color:red}@media(min-width:768px){body{background:var(--card-bg)}.auth-card{border-radius:var(--radius-card);box-shadow:var(--shadow-lg)}}@media(min-width:1280px){body{background:#fff}.main-container{flex-direction:row;max-width:1280px;margin:auto;padding:0 48px}}@keyframes lc-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.6);opacity:0}}@keyframes lc-pulse-ring{0%{transform:scale(.8);opacity:.8}to{transform:scale(2.2);opacity:0}}@keyframes lc-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.live-class-detail-page{padding:0 16px 40px;background:#faf8fc;min-height:100vh;color:#2d2d2d;font-family:Plus Jakarta Sans,sans-serif}.tp-header{display:flex;align-items:center;padding:16px 0 0}.tp-back-btn{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center}.tp-back-btn img{width:30px;height:30px}.breadcrumb{display:flex;align-items:center;gap:6px;font-size:16px;color:gray;padding:20px 0}.breadcrumb-current{color:#404040;font-weight:500}@media(min-width:767px){.breadcrumb{position:sticky;top:0;z-index:150;background:#faf8fc;padding:20px 0 10px}.tp-header{display:none}}@media(max-width:767px){.breadcrumb{display:none}}.lc-pulse-dot{position:relative;display:inline-block;width:7px;height:7px;border-radius:50%;background:#6b3fa0;flex-shrink:0;box-shadow:0 0 6px #8058c680}.lc-pulse-dot:after{content:"";position:absolute;inset:-3px;border-radius:50%;background:#8058c666;animation:lc-pulse-ring 1.6s ease-out infinite}.live-status-badge,.lc-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.03em;white-space:nowrap}.status-live,.lc-badge-live{background:linear-gradient(135deg,#6b3fa026,#8058c61f);color:#6b3fa0;font-weight:800;box-shadow:0 0 8px #8058c626}.status-scheduled,.lc-badge-scheduled{background:#8058c61a;color:#8058c6}.status-ended,.lc-badge-ended{background:#6b728014;color:#6b7280}.lc-badge-cancelled{background:#ef44441a;color:#dc2626}.stat-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;background:#f3eeff;color:#8058c6}.lc-page-header{margin-bottom:20px;animation:lc-fade-up .32s ease both}.lc-page-title-row{display:flex;align-items:center;gap:14px;margin-bottom:12px}.lc-live-banner{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#22c55e14;border:1px solid rgba(34,197,94,.25);border-radius:12px;font-size:13px;color:#15803d;font-weight:500}.lc-filter-tabs{display:flex;gap:8px;margin-bottom:20px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.lc-filter-tabs::-webkit-scrollbar{display:none}.lc-filter-tab{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:20px;border:1.5px solid #e8e0f0;background:#fff;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .18s ease;font-family:inherit}.lc-filter-tab:hover{border-color:#c4b5e0;color:#8058c6}.lc-filter-active{background:linear-gradient(135deg,#8058c6,#9b7bd4);border-color:transparent;color:#fff;box-shadow:0 3px 10px #8058c64d}.lc-filter-active:hover{color:#fff;border-color:transparent}.lc-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;border-radius:10px;font-size:10px;font-weight:700;background:#ffffff40}.lc-filter-tab:not(.lc-filter-active) .lc-filter-count{background:#f3eeff;color:#8058c6}.lc-grid{display:flex;flex-direction:column;gap:14px}.lc-card{display:flex;background:#fff;border-radius:18px;border:1.5px solid #e8e0f0;box-shadow:0 2px 8px #8058c60f;cursor:pointer;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;animation:lc-fade-up .28s ease both}.lc-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #8058c624}.lc-card:active{transform:translateY(-1px)}.lc-card-accent{width:5px;flex-shrink:0;background:linear-gradient(180deg,#8058c6,#9b7bd4)}.lc-status-live .lc-card-accent{background:linear-gradient(180deg,#8058c6,#9b7bd4)}.lc-status-ended .lc-card-accent,.lc-status-cancelled .lc-card-accent{background:linear-gradient(180deg,#9ca3af,#6b7280)}.lc-card-body{flex:1;padding:16px 18px;min-width:0}.lc-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.lc-card-icon{width:40px;height:40px;border-radius:11px;background:linear-gradient(135deg,#8058c6,#9b7bd4);display:flex;align-items:center;justify-content:center;flex-shrink:0}.lc-status-live .lc-card-icon{background:linear-gradient(135deg,#8058c6,#9b7bd4)}.lc-status-ended .lc-card-icon,.lc-status-cancelled .lc-card-icon{background:linear-gradient(135deg,#9ca3af,#6b7280)}.lc-badge-row{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.lc-card-title{font-size:15px;font-weight:700;color:#1a1a1a;line-height:1.4;margin-bottom:6px}.lc-card-desc{font-size:12px;color:gray;line-height:1.5;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lc-card-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.lc-meta-item{display:flex;align-items:center;gap:5px;font-size:12px;color:#6b7280}.lc-card-footer{border-top:1px solid #f0eaf8;padding-top:10px;display:flex;justify-content:flex-end}.lc-join-hint{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:#8058c6}.lc-status-live .lc-join-hint{color:#16a34a}.lc-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.lc-empty-icon{opacity:.6}.lc-empty-text{font-size:14px;color:gray;font-weight:500}.lc-section-header{margin-bottom:.75rem}.lc-top-gap{margin-top:2rem}.section-title-wrapper{display:flex;align-items:center;gap:10px}.lc-section-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:linear-gradient(135deg,#8058c61a,#8058c60d);border-radius:10px;border:1px solid rgba(128,88,198,.12)}.lc-section-header .section-title{font-size:1.2rem;font-weight:700;background:linear-gradient(135deg,#1a1a1a,#333);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.lc-home-card{width:30%;display:flex;gap:0;background:#fff;border-radius:16px;border:1.5px solid #ede9f6;box-shadow:0 2px 8px #8058c60f;cursor:pointer;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.lc-home-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #8058c626;border-color:#d4c4ed}.lc-home-card.lc-status-live{border-color:#8058c64d;box-shadow:0 2px 8px #8058c614,0 0 0 1px #8058c60d}.lc-home-card.lc-status-live:hover{box-shadow:0 8px 28px #8058c638;border-color:#8058c6}.lc-home-card-strip{width:6px;flex-shrink:0;background:linear-gradient(180deg,#8058c6,#9b7bd4)}.lc-home-card.lc-status-live .lc-home-card-strip{background:linear-gradient(180deg,#6b3fa0,#8058c6);box-shadow:0 0 12px #8058c666}.lc-home-card.lc-status-ended .lc-home-card-strip,.lc-home-card.lc-status-cancelled .lc-home-card-strip{background:linear-gradient(180deg,#9ca3af,#6b7280)}.lc-home-card-thumb{width:72px;height:72px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f3eeff,#e8d9f8);align-self:center;margin:10px 0 10px 10px;border-radius:12px}.lc-home-card.lc-status-live .lc-home-card-thumb{background:linear-gradient(135deg,#ede4f7,#dcc9f2);box-shadow:0 0 16px #8058c626}.lc-home-card.lc-status-live .lc-home-card-thumb svg circle:first-child{fill:#6b3fa0}.lc-home-card.lc-status-live .lc-home-card-thumb svg circle:last-child{stroke:#6b3fa0}.lc-home-card-content{flex:1;padding:14px 16px;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:6px}.lc-home-card-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.lc-home-card-title{font-size:14px;font-weight:700;color:#1a1a1a;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lc-home-card-sub{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.lc-home-meta-item{display:flex;align-items:center;gap:4px;font-size:11px;color:#606060}.live-class-detail-page{min-height:100vh;padding:0 16px 40px;background:#faf8fc;color:#2d2d2d;font-family:Plus Jakarta Sans,sans-serif}.live-class-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px}.live-class-loading p{font-size:16px;color:#6b6b6b}.live-class-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:12px;text-align:center}.live-class-error p{font-size:16px;color:#6b6b6b}.live-class-header{display:flex;justify-content:space-between;align-items:center;padding:20px 0 12px}.back-button{display:flex;align-items:center;gap:8px;padding:0;background:transparent;border:none;color:#2d2d2d;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}.back-button:hover{color:#8058c6}.back-arrow{transform:rotate(180deg);width:20px;height:20px;filter:brightness(0)}.lc-detail-hero{border-radius:20px;background:linear-gradient(135deg,#8058c6,#6941a8);padding:28px 24px;margin-bottom:20px;position:relative;overflow:hidden;animation:lc-fade-up .32s ease both}.lc-detail-hero-live{background:linear-gradient(135deg,#8058c6,#9b7bd4)}.lc-detail-hero-ended{background:linear-gradient(135deg,#6b7280,#4b5563)}.lc-detail-hero:before{content:"";position:absolute;top:-40px;right:-40px;width:180px;height:180px;border-radius:50%;background:#ffffff0f;pointer-events:none}.lc-detail-hero:after{content:"";position:absolute;bottom:-60px;left:-20px;width:220px;height:220px;border-radius:50%;background:#ffffff0a;pointer-events:none}.lc-detail-hero-top{display:flex;align-items:center;gap:12px;margin-bottom:16px;position:relative;z-index:1}.lc-detail-hero-icon{width:52px;height:52px;border-radius:14px;background:#ffffff2e;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lc-detail-hero-badges{display:flex;gap:6px;flex-wrap:wrap}.lc-detail-hero-title{font-size:20px;font-weight:800;color:#fff;line-height:1.35;margin-bottom:12px;position:relative;z-index:1}.lc-detail-hero-meta{display:flex;flex-wrap:wrap;gap:14px;position:relative;z-index:1}.lc-detail-meta-chip{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff26;border-radius:10px;font-size:12px;color:#ffffffe6;font-weight:500}.lc-detail-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;font-size:12px;font-weight:700;background:#fff3;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.lc-detail-badge-live{background:#ffffff40}.lc-countdown{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.15);position:relative;z-index:1}.lc-countdown-label{font-size:11px;color:#ffffffb3;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.lc-countdown-units{display:flex;gap:8px}.lc-countdown-unit{display:flex;flex-direction:column;align-items:center;background:#ffffff26;border-radius:10px;padding:8px 12px;min-width:52px}.lc-countdown-number{font-size:22px;font-weight:800;color:#fff;line-height:1}.lc-countdown-sub{font-size:10px;color:#ffffffb3;text-transform:uppercase;letter-spacing:.05em;margin-top:3px}.lc-detail-hero-cta{margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15);position:relative;z-index:1}.lc-hero-join-btn{margin-top:10px;width:100%;padding:14px 28px;background:#fff3;border:1.5px solid rgba(255,255,255,.4);color:#fff;border-radius:14px;font-size:15px;font-weight:700;cursor:pointer;transition:all .2s ease;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:8px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.lc-hero-join-btn:hover:not(:disabled){background:#ffffff4d;border-color:#fff9;transform:translateY(-1px)}.lc-hero-join-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.lc-hero-join-live{background:#fff;border-color:#fff;color:#8058c6;box-shadow:0 4px 14px #ffffff40}.lc-hero-join-live:hover:not(:disabled){background:#fffffff2;box-shadow:0 6px 18px #ffffff59}.lc-hero-join-hint{text-align:center;font-size:12px;color:#ffffffa6;margin-top:10px;font-weight:500}.lc-detail-hero-layout{display:flex;flex-direction:column;gap:20px;position:relative;z-index:1}.lc-detail-hero-main{flex:1;min-width:0}.lc-detail-hero-participants{background:#ffffff1f;border-radius:14px;padding:16px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-width:280px}.lc-hero-participants-title{font-size:13px;font-weight:700;color:#fff;margin-bottom:12px;display:flex;align-items:center;gap:6px}.lc-hero-participants-count{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#fff3;font-size:11px;font-weight:700}.lc-hero-participants-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.lc-hero-participant-item{display:flex;align-items:center;gap:10px;padding:8px;background:#ffffff14;border-radius:10px}.lc-hero-participant-avatar{width:32px;height:32px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700;flex-shrink:0}.lc-hero-participant-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.lc-hero-participant-name{font-size:12px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lc-hero-participant-email{font-size:10px;color:#ffffffb3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lc-hero-no-participants{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;color:#ffffff80;font-size:11px}.live-class-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.live-class-main{display:flex;flex-direction:column;gap:20px}.live-class-info{background:#fff;padding:24px;border-radius:20px;box-shadow:0 4px 16px #8058c614;border:1px solid #e8e0f0;animation:lc-fade-up .38s ease both}.live-class-title{font-size:22px;font-weight:700;margin-bottom:16px;color:#1a1a1a;line-height:1.3}.live-class-meta{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:16px}.live-class-meta .meta-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b6b6b}.live-class-meta .meta-item img{width:15px;height:15px}.live-class-description{font-size:14px;line-height:1.6;color:#6b6b6b;margin-bottom:24px;margin-top:20px;padding:14px;background:#faf8fc;border-radius:12px;border-left:3px solid #e8d9f8}.join-meeting-btn{width:100%;padding:15px 32px;background:linear-gradient(135deg,#8058c6,#9b7bd4);color:#fff;border:none;border-radius:30px;font-size:15px;font-weight:700;cursor:pointer;transition:all .2s ease;font-family:inherit;box-shadow:0 4px 14px #8058c659;display:flex;align-items:center;justify-content:center;gap:8px}.join-meeting-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 7px 20px #8058c673}.join-meeting-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.join-meeting-btn-live{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 14px #16a34a4d}.join-meeting-btn-live:hover:not(:disabled){box-shadow:0 7px 20px #16a34a66}.zoom-embed-container{background:#fff;border-radius:20px;border:1px solid #e8e0f0;overflow:hidden;min-height:500px;box-shadow:0 4px 16px #8058c614;display:flex;flex-direction:column}.zoom-embed-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#faf8fc;border-bottom:1px solid #e8e0f0;flex-shrink:0}.zoom-embed-label{font-size:13px;font-weight:700;color:#1a1a1a;display:flex;align-items:center;gap:6px}.zoom-embed-label:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 6px #22c55e80;animation:lc-pulse 1.5s ease-in-out infinite}.zoom-fullscreen-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:#fff;border:1.5px solid #e8e0f0;border-radius:10px;font-size:12px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .18s ease;font-family:inherit}.zoom-fullscreen-btn:hover{background:#8058c6;border-color:#8058c6;color:#fff}#zmmtg-root{display:none;width:100%!important;height:100%!important;margin:0 auto!important}.zoom-fullscreen-mode{position:fixed;inset:0;z-index:9998;background:transparent;overflow:hidden;padding:0;margin:0}.zoom-fullscreen-mode .live-class-detail-page{padding:0;margin:0;background:transparent}.zoom-fullscreen-mode .zoom-meeting-container{position:fixed;inset:0;width:100vw;height:100vh;min-height:100vh;z-index:9998;background:transparent;display:block;border-radius:0;padding:0;margin:0}.zoom-fullscreen-mode #meetingSDKElement{width:100vw;height:100vh;background:transparent;display:block;position:absolute;top:0;left:0;z-index:1;padding:0;margin:0}.zoom-fullscreen-mode .zoom-embed-container{display:none}.zoom-fullscreen-overlay{position:fixed;top:0;left:0;right:0;height:auto;z-index:9999;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:transparent}@media(max-width:768px){.zoom-fullscreen-overlay{padding:10px 16px}.zoom-fullscreen-label{font-size:12px}.zoom-fullscreen-exit-btn{padding:6px 14px;font-size:12px}}@media(max-width:480px){.zoom-fullscreen-overlay{padding:8px 12px}.zoom-fullscreen-label{font-size:11px}.zoom-fullscreen-exit-btn{padding:5px 12px;font-size:11px;gap:6px}}.zoom-fullscreen-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 6px #22c55e99;animation:lc-pulse 1.5s ease-in-out infinite}.zoom-fullscreen-label{font-size:14px;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px}.zoom-fullscreen-exit-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;background:#ffffff26;border:1.5px solid rgba(255,255,255,.3);border-radius:12px;font-size:13px;font-weight:600;color:#fff;cursor:pointer;transition:all .18s ease;font-family:inherit;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.zoom-fullscreen-exit-btn:hover{background:#ffffff40;border-color:#ffffff80}.participants-section{background:#fff;padding:24px;border-radius:20px;box-shadow:0 4px 16px #8058c614;border:1px solid #e8e0f0;animation:lc-fade-up .42s ease both}.participants-section-live{border-color:#8058c659;box-shadow:0 4px 16px #8058c61f,0 0 0 1px #8058c614}.participants-section .section-title{font-size:16px;font-weight:700;margin-bottom:16px;color:#1a1a1a;display:flex;align-items:center;gap:8px}.participants-section .section-title-count{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#f3eeff;color:#8058c6;font-size:11px;font-weight:700}.participants-list{display:flex;flex-direction:column;gap:10px}.participant-item{display:flex;align-items:center;gap:12px;padding:11px 12px;background:#faf8fc;border-radius:14px;border:1px solid #f0eaf8;transition:background .15s ease}.participant-item:hover{background:#f3eeff}.participant-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#8058c6,#9b7bd4);display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700;flex-shrink:0}.participant-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.participant-name{font-size:13px;font-weight:600;color:#1a1a1a}.participant-email{font-size:11px;color:#6b6b6b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.participant-joined{font-size:10px;color:#9ca3af;white-space:nowrap;flex-shrink:0}.no-participants{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:40px 20px;color:#9ca3af;font-size:13px}@media(min-width:640px){.lc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}}@media(min-width:768px){.live-class-detail-page{padding:0 2.5rem 40px}.lc-detail-hero-title{font-size:24px}.live-class-info,.participants-section{padding:32px}}@media(min-width:1024px){.live-class-content{flex-direction:row;gap:24px;align-items:flex-start}.live-class-main{flex:1;min-width:0}.participants-section{width:320px;flex-shrink:0;position:sticky;top:100px}.lc-detail-hero-layout{flex-direction:row;gap:24px}.lc-detail-hero-participants{width:300px;flex-shrink:0}}.section-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;min-height:200px}.section-loading-text{margin-top:16px;font-size:14px;color:#666;font-weight:500}.topic-grid .section-loading-state,.popular-courses-list .section-loading-state{min-height:300px}.topic-grid,.popular-courses-list{min-height:200px}.topic-grid:has(.section-loading-state),.popular-courses-list:has(.section-loading-state){display:flex;align-items:center;justify-content:center}body{margin:0;padding:0;font-family:Plus Jakarta Sans,sans-serif;background-color:#fff;min-height:100vh;display:flex;align-items:center;justify-content:center}.main-container{width:100%;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box}.auth-wrapper{width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.welcome-text{text-align:center;margin-bottom:24px;width:100%}.welcome-text h1{font-size:32px;font-weight:700;line-height:1.2;margin-bottom:12px;background:linear-gradient(135deg,#1f2937,#4b5563);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-text p{color:#6b7280;font-size:16px;line-height:1.5;margin:0 0 8px;text-align:center}.auth-card{background:#fff;border-radius:16px;padding:28px 24px;box-shadow:0 4px 24px #00000014;width:100%;text-align:center;border:1px solid #e5e7eb}.success-icon,.reset-icon,.error-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;box-shadow:0 8px 32px #0003}.success-icon{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 8px 32px #10b9814d}.reset-icon{background:linear-gradient(135deg,#925289,#962887);box-shadow:0 8px 32px #8b5cf64d}.error-icon{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 8px 32px #ef44444d}.email-display{font-weight:600;color:#1f2937;font-size:18px;margin:8px 0 0;text-align:center}.form-group{margin-bottom:20px;text-align:left}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#374151;font-size:14px;text-align:left}.input-with-icon{position:relative;text-align:left}.input-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none;z-index:1}.input-field{width:100%;padding:14px 16px 14px 48px;border:2px solid #e5e7eb;border-radius:12px;font-size:16px;transition:all .3s ease;background:#fafafa;box-sizing:border-box;text-align:left}.input-field:focus{outline:none;border-color:#962887;background:#fff;box-shadow:0 0 0 4px #8b5cf61a}.input-field::placeholder{color:#9ca3af}.submit-btn{width:100%;padding:14px 24px;background:linear-gradient(135deg,#1f2937,#374151);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #1f293733;text-align:center;justify-content:center}.submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#374151,#4b5563);transform:translateY(-1px);box-shadow:0 6px 20px #1f29374d}.submit-btn:disabled{background:#9ca3af;cursor:not-allowed;transform:none;box-shadow:none}.success-message,.error-message{padding:16px;border-radius:12px;margin-bottom:20px;text-align:center;font-size:14px;animation:slideIn .3s ease}.success-message{background:linear-gradient(135deg,#f0fdf4,#dcfce7);color:#166534;border:1px solid #bbf7d0;box-shadow:0 2px 8px #22c55e1a}.error-message{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:#dc2626;border:1px solid #fecaca;box-shadow:0 2px 8px #dc26261a}.success-message p,.error-message p{margin:0 0 4px}.success-message p:last-child,.error-message p:last-child{margin:0}.auth-links{margin-top:16px;text-align:center;display:flex;flex-direction:column;gap:8px;justify-content:center}.auth-link{color:#962887;text-decoration:none;font-weight:500;font-size:14px;text-align:center}.auth-link:hover{text-decoration:underline}.form-actions{margin-top:20px;text-align:center}.otp-input-container{display:flex;gap:12px;justify-content:center;margin:20px 0}.otp-input{width:50px;height:60px;border:2px solid #e5e7eb;border-radius:12px;font-size:32px;font-weight:700;text-align:center;transition:all .3s ease;background:#fff;box-sizing:border-box;color:#1f2937;line-height:1;padding:0;display:flex;align-items:center;justify-content:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;letter-spacing:2px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.otp-input:focus{outline:none;border-color:#962887;background:#fff;box-shadow:0 0 0 4px #8b5cf61a;transform:scale(1.05);color:#1f2937}.otp-input:hover{border-color:#d1d5db}.otp-input::placeholder{color:#9ca3af;font-size:24px;font-weight:400;letter-spacing:0}@media(max-width:480px){.otp-input-container{gap:8px;margin:16px 0}.otp-input{width:45px;height:55px;font-size:28px;letter-spacing:1px}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.submit-btn:disabled:after{content:"";display:inline-block;width:16px;height:16px;border:2px solid transparent;border-top:2px solid white;border-radius:50%;margin-left:8px;animation:spin 1s linear infinite}@media(max-width:480px){.main-container{padding:16px}.auth-wrapper{padding:0;max-width:100%}.auth-card{padding:20px 16px;margin:0}.welcome-text{margin-bottom:20px}.welcome-text h1{font-size:28px;margin-bottom:8px}.welcome-text p{font-size:15px;margin-bottom:6px}.success-icon,.reset-icon,.error-icon{width:60px;height:60px;margin-bottom:20px}.success-icon svg,.reset-icon svg,.error-icon svg{width:30px;height:30px}.form-group{margin-bottom:16px}.submit-btn{padding:12px 20px;font-size:15px}.form-actions{margin-top:16px}.auth-links{margin-top:12px;gap:6px}.auth-link{font-size:13px}}@media(min-width:768px){.auth-wrapper{max-width:450px}}@media(min-width:1024px){.auth-wrapper{max-width:500px}}.edit-profile-page{width:100%;margin:0;padding:15px}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:14px}.breadcrumb a{color:gray;text-decoration:none}.breadcrumb-separator{color:#d9d9d9}.breadcrumb-current{color:#1c1c1c;font-weight:600}.header{display:flex;align-items:center;margin-bottom:24px}.edit-profile-card{border-radius:30px}.profile-picture-section{display:flex;align-items:center;justify-content:space-between;gap:0px;padding:24px;margin-bottom:32px;background-color:#fff;border:1px solid #F5F5F5;border-radius:24px}.avatar-wrapper{width:80px;height:80px;flex-shrink:0}.avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;background:#eaeaea}.profile-info{flex:1}.profile-info .name{font-size:18px;font-weight:700;color:#464646;margin-bottom:4px}.profile-info .role{font-size:14px;color:gray}.profile-actions{display:flex;flex-direction:row;align-items:center;gap:12px;flex-wrap:nowrap}.upload-btn{width:212px;height:41px;border-radius:40px;font-size:13px;font-weight:600;cursor:pointer;border:none;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s;background:var(--primary-purple);color:#fff;flex-shrink:0}.upload-btn:hover{background:var(--primary-purple)}.upload-icon{width:16px;height:16px}.remove-btn{width:130px;height:41px;border-radius:40px;font-size:13px;font-weight:600;cursor:pointer;border:none;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s;background:#ffe9e9;color:#da0000;flex-shrink:0;margin-top:12px}.remove-btn:hover{background:#ffe5e5}.close-icon{width:16px;height:16px}.edit-profile-form{display:flex;flex-direction:column;gap:0px}.form-row{display:flex;gap:0px}.form-group{display:flex;flex-direction:column;gap:8px;flex:1}.form-group label{font-size:14px;font-weight:500;color:#a8a8a8}.form-group input,.form-group select{height:56px;padding:0 20px;border:1px solid #DBDBDB;border-radius:16px;font-size:15px;color:#333;background:#fff;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus{outline:none;border-color:#222121}.form-group select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 20px center;padding-right:48px;cursor:pointer}.update-btn{padding:20px 32px;background:var(--primary-purple);color:#fff;border:none;border-radius:40px;font-size:15px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .2s;margin-top:20px;align-self:flex-start}.update-btn:hover{background:var(--primary-purple)}.update-icon{width:16px;height:16px}@media screen and (min-width:768px){.edit-profile-page{padding:0 25px 25px}.profile-info .name{margin-bottom:0;margin-left:10px}.form-row{gap:24px}.profile-picture-section{padding:32px}.upload-btn{width:auto;padding:12px 20px;font-size:13px}.upload-btn .upload-icon{width:16px;height:16px;margin:0}}@media screen and (max-width:767px){.profile-picture-section{flex-direction:column;text-align:center}.profile-actions{justify-content:center;flex-direction:row;flex-wrap:wrap}.form-row{flex-direction:column}.update-btn{width:100%}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.join-modal-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;animation:fadeIn .2s ease-out}.join-modal-content{background:#fff;border-radius:20px;width:100%;max-width:400px;box-shadow:0 24px 64px #0000002e,0 8px 24px #00000014;animation:slideUp .3s ease-out;overflow:hidden}.join-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px}.join-modal-header h3{margin:0;font-size:18px;font-weight:700;color:#1a1a1a;font-family:Plus Jakarta Sans,sans-serif}.join-modal-close{background:#f5f3f7;border:none;padding:0;width:32px;height:32px;border-radius:50%;cursor:pointer;color:#6b6b6b;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.join-modal-close:hover{background:#e8e0f0;color:#1a1a1a}.join-modal-preview{display:flex;align-items:center;gap:12px;margin:0 24px 20px;padding:14px 16px;background:#f5f3f7;border-radius:14px;border:1.5px solid #e8e0f0}.join-modal-preview-icon{width:40px;height:40px;border-radius:11px;background:linear-gradient(135deg,#8058c6,#9b7bd4);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 10px #8058c64d;color:#fff}.join-modal-preview-icon svg{color:#fff;stroke:#fff}.join-modal-preview-topic{font-size:14px;font-weight:700;color:#1a1a1a;line-height:1.3;font-family:Plus Jakarta Sans,sans-serif}.join-modal-preview-meta{font-size:12px;color:#8058c6;font-weight:500;margin-top:3px;font-family:Plus Jakarta Sans,sans-serif}.join-modal-body{padding:0 24px 20px}.join-modal-label{display:block;font-size:13px;font-weight:600;color:#6b6b6b;margin-bottom:10px;font-family:Plus Jakarta Sans,sans-serif}.join-modal-input-wrap{position:relative;display:flex;align-items:center}.join-modal-input-icon{position:absolute;left:14px;color:#a0a0a0;pointer-events:none;flex-shrink:0;z-index:1}.join-modal-input{width:100%;padding:15px 40px;border:2px solid #e8e0f0;border-radius:12px;font-size:15px;font-family:Plus Jakarta Sans,sans-serif;color:#1a1a1a;background:#faf8fc;transition:all .2s;box-sizing:border-box;-webkit-appearance:none}.join-modal-input[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield}.join-modal-input[type=number]::-webkit-inner-spin-button,.join-modal-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:auto;opacity:1}.join-modal-input:focus{outline:none;border-color:#8058c6;background:#fff;box-shadow:0 0 0 4px #8058c61a}.join-modal-input:focus+.join-modal-input-icon,.join-modal-input-wrap:focus-within .join-modal-input-icon{color:#8058c6}.join-modal-input::placeholder{color:#b0b0b0}.join-modal-input-admin{width:100%;padding:15px;border:2px solid #e8e0f0;border-radius:12px;font-size:15px;font-family:Plus Jakarta Sans,sans-serif;color:#1a1a1a;background:#faf8fc;transition:all .2s;box-sizing:border-box;-webkit-appearance:none}.join-modal-input-admin[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield}.join-modal-input-admin[type=number]::-webkit-inner-spin-button,.join-modal-input-admin[type=number]::-webkit-outer-spin-button{-webkit-appearance:auto;opacity:1}.join-modal-input-admin:focus{outline:none;border-color:#8058c6;background:#fff;box-shadow:0 0 0 4px #8058c61a}.join-modal-input-admin:focus+.join-modal-input-icon,.join-modal-input-wrap:focus-within .join-modal-input-icon{color:#8058c6}.join-modal-input-admin::placeholder{color:#b0b0b0}.join-modal-hint{font-size:12px;color:#9ca3af;margin:8px 0 0;font-family:Plus Jakarta Sans,sans-serif;line-height:1.5}.join-modal-footer{display:flex;gap:10px;padding:4px 24px 24px}.join-modal-cancel{flex:1;padding:13px 16px;background:#f5f3f7;color:#6b6b6b;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;font-family:Plus Jakarta Sans,sans-serif}.join-modal-cancel:hover{background:#e8e0f0;color:#1a1a1a}.join-modal-confirm{flex:2;padding:13px 16px;background:linear-gradient(135deg,#8058c6,#9b7bd4);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s;font-family:Plus Jakarta Sans,sans-serif;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px #8058c64d}.join-modal-confirm:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 18px #8058c673}.join-modal-confirm:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.lc-btn-spinner{display:inline-block;width:15px;height:15px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#zmmtg-root{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;background:#000}#zmmtg-root[style*=block]{display:block!important}:root{--lp-page-bg: #ffffff;--lp-card-bg: #f5f5f5;--lp-text-primary: #1c1c1c;--lp-text-secondary: #808080;--lp-highlight: #ED1B24;--lp-border-color: #eaeaea;--lp-gray-light: #f3f3f3;--lp-primary-purple: var(--primary-purple);--lp-header-bg: #f5f5f5;--lp-header-text: #464646;--lp-white: #ffffff;--lp-module-bg: #ededed;--lp-btn-dark: #222121;--lp-btn-light: #ffffff;--lp-lesson-border: #fafafa;--lp-tab-inactive: #808080;--lp-tab-active: #464646;--lp-module-text: #1e1e1e;--lp-font-main: "Plus Jakarta Sans", sans-serif;--lp-sidebar-width: 240px}.lp-content-wrapper{font-family:var(--lp-font-main);background-color:var(--lp-card-bg);color:var(--lp-text-primary);padding-bottom:80px}.lp-main-container{width:100%;padding:15px}.lp-header{display:flex;align-items:center;color:var(--lp-header-text)}.lp-back-btn{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center}.lp-back-btn img{width:30px;height:30px}@media(min-width:768px){.lp-back-btn{display:none}}.lp-breadcrumb{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--lp-text-secondary);padding:25px 0}.lp-breadcrumb a{color:var(--lp-text-secondary);text-decoration:none}.lp-breadcrumb-current{color:var(--lp-text-primary);font-weight:600}@media(max-width:767px){.lp-breadcrumb{display:none!important}}.lp-course-header-container{display:flex;flex-direction:column}.lp-course-fixed-header{position:sticky;top:0;z-index:100;background-color:var(--lp-header-bg)}.lp-course-hero{margin-top:1rem;position:relative;border-radius:18px;overflow:hidden;aspect-ratio:16 / 9}.lp-course-hero-img{width:100%;height:100%;background-size:cover;background-position:center;position:relative}.lp-course-info-section{padding-top:1.5rem}.lp-course-title{font-size:18px;font-weight:700;line-height:1.3;margin-bottom:.5rem}.lp-course-author{font-size:.9rem;color:var(--lp-header-text);font-weight:500}.lp-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1rem;padding:1rem;background:var(--lp-white);border-radius:12px;border:1px solid var(--lp-border-color)}@media(min-width:768px){.lp-info-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:1.5rem;padding:1.25rem}}.lp-info-item{display:flex;flex-direction:column;gap:.25rem}.lp-info-label{display:flex;align-items:center;gap:.3rem;font-size:.85rem;color:var(--lp-text-secondary);font-weight:500}.lp-info-label img{width:16px;height:16px;opacity:.6}.lp-info-value{font-size:.9rem;font-weight:700}.lp-tab-navigation{margin-top:28px;display:flex;gap:24px;margin-bottom:28px}.lp-tab-btn{flex:0 0 auto;background:none;border:none;font-size:15px;font-weight:600;color:var(--lp-tab-inactive);cursor:pointer;transition:all .3s;position:relative;line-height:20px;font-family:var(--lp-font-main)}.lp-tab-btn.active{color:var(--lp-tab-active)}.lp-tab-btn.active:after{content:"";position:absolute;bottom:-2.1px;left:0;right:0;height:2.1px;background:var(--lp-tab-active)}.lp-tab-btn:hover{color:var(--lp-tab-active)}.lp-add-note-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--primary-purple);color:var(--lp-white);border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-left:auto;margin-bottom:20px}.lp-add-note-btn:hover{background:var(--primary-purple-dark);transform:translateY(-1px)}.lp-course-tab-header.lp-mobile-tabs{position:sticky;top:0;z-index:100;background-color:var(--lp-header-bg)}.lp-course-tab-header.lp-desktop-tabs{display:none}.lp-course-sidebar{display:block;overflow-y:auto;max-height:none;padding-bottom:2rem}.lp-module-item{background:var(--lp-white);border:1px solid var(--lp-border-color);border-radius:1.25rem;padding:1.25rem;margin-bottom:.5rem;transition:all .2s}.lp-module-item.active{border-color:var(--primary-purple);box-shadow:0 4px 12px #8b5cf61a}.lp-module-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer}.lp-module-info-row{display:flex;align-items:center;gap:.75rem}.lp-module-pill{padding:.35rem .85rem;border:2px solid var(--primary-purple);border-radius:19px;font-size:14px;font-weight:400;color:var(--primary-purple);display:flex;align-items:center;gap:.4rem;max-width:fit-content}.lp-arrow-icon{width:24px}.lp-module-title{font-size:15px;font-weight:700;margin-top:1rem}.lp-module-time{font-size:.85rem;color:var(--lp-text-secondary);margin-top:.25rem}.lp-module-content{max-height:0;overflow:hidden;transition:max-height .4s ease-in-out}.lp-module-item.active .lp-module-content{max-height:1000px}.lp-lesson-list{list-style:none}.lp-lesson-item{display:flex;justify-content:space-between;align-items:center;padding-top:19px;border-bottom:1px solid var(--lp-lesson-border)}.lp-lesson-item.lp-lesson-completed{background:#eefcf3;border-radius:12px;padding:12px;margin-top:10px;border:1px solid #d1fae5}.lp-lesson-item.lp-lesson-current{background:#f4f1ff;border-radius:12px;padding:12px;margin-top:10px;border:1px solid rgba(150,40,135,.25)}.lp-lesson-item.lp-lesson-locked .lp-lesson-info{filter:blur(1px)}.lp-lesson-item.lp-lesson-active .lp-lesson-name{color:var(--lp-primary-purple);font-weight:700}.lp-lesson-info{display:flex;flex-direction:column;gap:.25rem}.lp-lesson-name{font-size:.95rem;font-weight:500}.lp-lesson-duration{font-size:.8rem;color:var(--lp-text-secondary)}.lp-lesson-play{height:28px;width:28px;cursor:pointer;flex-shrink:0;transition:opacity .2s ease}.lp-lesson-play:hover{opacity:.8}.lp-lesson-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.lp-complete-btn{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .15s}.lp-complete-btn--pending:hover{transform:scale(1.15)}.lp-complete-btn--done{cursor:default}.lp-lesson-lock{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.6}.lp-lesson-locked{opacity:.55}.lp-lesson-done{color:#22c55e}.lp-start-btn--locked{background:#9ca3af;cursor:not-allowed;opacity:.7}.lp-module-qs{font-size:.85rem;color:var(--lp-text-secondary);margin-top:.5rem;display:flex;align-items:center;gap:6px}.lp-vertical-line{height:12px;opacity:.4}.lp-start-btn{text-decoration:none;margin-top:18px;padding:12px 33px;background:#3a356b;border:none;border-radius:15px;font-size:12px;font-weight:700;color:var(--lp-btn-light);display:inline-flex;align-items:center;cursor:pointer;font-family:var(--lp-font-main)}.lp-tab-placeholder{padding:20px 0;color:var(--lp-text-secondary);font-size:.95rem}.lp-about-text{font-size:.95rem;line-height:1.7;color:var(--lp-header-text)}.lp-about-text-truncated{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.lp-read-more-btn{background:none;border:none;color:var(--lp-primary-purple);font-weight:700;font-size:.9rem;cursor:pointer;margin-top:.75rem;padding:0;font-family:var(--lp-font-main)}@media(min-width:768px){.lp-course-hero{margin-top:0}.lp-course-title{font-size:22px}.lp-info-grid{margin-top:24px;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}}@media(min-width:1024px){.lp-course-header-container{flex-direction:row;align-items:flex-start}.lp-course-main-content{flex:1.7;max-width:none}.lp-course-sidebar{flex:1;min-width:280px}.lp-course-tab-header.lp-mobile-tabs{display:none}.lp-course-tab-header.lp-desktop-tabs{display:block;position:sticky;top:-1px;z-index:100;background-color:var(--lp-header-bg);margin-bottom:0}.lp-course-tab-header.lp-desktop-tabs .lp-tab-navigation{margin-top:0;margin-bottom:20px}.lp-course-sidebar{width:400px;height:calc(100vh - 120px);overflow-y:auto;padding-right:15px;display:flex;flex-direction:column;gap:.5rem;margin-left:25px;max-height:none;padding-bottom:0}.lp-info-label img{width:20px;height:20px}}.lp-assignment-uploaded{display:flex;align-items:center;gap:8px;margin-top:12px;padding:8px 12px;background:#e8f9ed;border-radius:10px;font-size:.82rem}.lp-assignment-filename{flex:1;color:#166534;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lp-assignment-remove{background:none;border:none;cursor:pointer;padding:2px;display:flex;align-items:center;flex-shrink:0}.lp-module-thumbnail{width:50px;height:50px;border-radius:6px;overflow:hidden;flex-shrink:0;margin-right:12px}.lp-module-thumbnail-img{width:100%;height:100%;object-fit:cover}.lp-module-content-wrapper{flex:1;display:flex;flex-direction:column;justify-content:center}@media(max-width:768px){.lp-module-thumbnail{width:40px;height:40px;margin-right:10px}.lp-module-title{font-size:.9rem}.lp-module-time{font-size:.75rem}}.cd-content-wrapper{width:100%}.cd-main-container{width:100%;padding:15px}.cd-header{display:flex;align-items:center}.cd-back-btn{background:none;border:none;cursor:pointer;display:flex;align-items:center}.cd-back-btn img{width:30px;height:30px}.cd-breadcrumb{display:none;align-items:center;gap:8px;margin:25px 0;font-size:.9rem;color:#666}.cd-breadcrumb a{color:#666;text-decoration:none}.breadcrumb-divider{margin:6px 6px 18px 0}.cd-breadcrumb-current{color:#1c1c1c;font-weight:500}.cd-course-header-container{display:flex;flex-direction:column}.cd-course-hero{margin-top:1rem;position:relative;border-radius:18px;overflow:hidden;aspect-ratio:16 / 9}.cd-course-hero-img{width:100%;height:100%;background-size:cover;background-position:center;position:relative;display:flex;align-items:center;justify-content:center}.cd-hero-play-btn{width:80px;height:80px;border-radius:50%;background:#fffffff2;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px #0000004d;transition:all .2s ease;color:var(--primary-purple);padding:0}.cd-hero-play-btn:hover{transform:scale(1.08);background:#fff;box-shadow:0 12px 40px #00000059}.cd-hero-play-btn:active{transform:scale(.98)}.cd-hero-play-btn svg{width:36px;height:36px;margin-left:4px}@media(max-width:767px){.cd-hero-play-btn{width:64px;height:64px}.cd-hero-play-btn svg{width:28px;height:28px;margin-left:3px}}.cd-favorite-btn{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border-radius:50%;background:#fff;border:none;cursor:pointer;box-shadow:0 4px 12px #0000001a;display:flex;align-items:center;justify-content:center}.cd-favorite-btn img{width:20px;height:20px;opacity:.7}.cd-favorite-btn img[data-saved=true]{width:24px;height:24px;opacity:1}.cd-course-info-section{padding:18px 0 24px}.cd-course-title{font-size:18px;font-weight:700;color:#363636;line-height:1.3;margin-bottom:.5rem}.cd-course-author{font-size:.9rem;color:#464646;font-weight:500;margin-bottom:24px}.cd-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;padding:1rem;background:var(--bg-card);border-radius:12px}@media(min-width:768px){.cd-info-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;padding:1.25rem}}.cd-info-item{display:flex;flex-direction:column;gap:.25rem}.cd-info-label{display:flex;align-items:center;gap:.3rem;font-size:.85rem;color:gray;font-weight:500}.cd-info-label img{width:16px;height:16px;opacity:.6}.cd-info-value{font-size:.9rem;font-weight:700}.cd-about-section{margin-bottom:24px}.cd-section-title{font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.cd-about-text{font-size:.95rem;line-height:1.7;color:#464646;text-align:justify}.cd-about-text-truncated{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cd-read-more-btn{background:none;border:none;color:var(--primary-purple);font-weight:700;font-size:.9rem;cursor:pointer;margin-top:.75rem;padding:0}.cd-curriculum-card{background:#fff;border:1px solid #EAEAEA;border-radius:1.5rem;padding:1.5rem;box-shadow:0 4px 20px #0000000f;display:flex;flex-direction:column;height:100%;max-height:100%}.cd-curriculum-card-header{margin-bottom:1rem;flex-shrink:0}.cd-curriculum-card-content{flex:1;overflow-y:auto;padding-right:4px;margin-right:-4px}.cd-curriculum-card-content::-webkit-scrollbar{width:4px}.cd-curriculum-card-content::-webkit-scrollbar-track{background:transparent}.cd-curriculum-card-content::-webkit-scrollbar-thumb{background:#d1d1d1;border-radius:4px}.cd-curriculum-card-content .cd-module-item{background:#fafafa;border:1px solid #e5e5e5;border-radius:1rem;padding:1rem;margin-bottom:.75rem;transition:all .2s ease}.cd-curriculum-card-content .cd-module-item:last-child{margin-bottom:0}.cd-curriculum-card-content .cd-module-item.active{background:#fff;border-color:var(--primary-purple);box-shadow:0 2px 8px #8b5cf614}.cd-curriculum-meta{font-size:.9rem;color:gray;font-weight:500;margin-top:.25rem;display:flex;align-items:center}.cd-vertical-line{margin:0 6px;vertical-align:middle}.cd-curriculum-container{display:none}.cd-module-item{background:#fff;border:1px solid #EAEAEA;border-radius:1.25rem;padding:1.25rem;margin-bottom:.5rem;transition:all .2s}.cd-module-item.active{border-color:var(--primary-purple);box-shadow:0 4px 12px #8b5cf61a}.cd-module-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer}.cd-module-info-row{display:flex;align-items:center;gap:.75rem}.cd-module-pill{padding:.35rem .85rem;background-color:var(--bg-page);border:2px solid var(--primary-purple);border-radius:19px;font-size:14px;font-weight:400;color:var(--primary-purple);align-items:center;max-width:fit-content}.cd-arrow-icon{width:24px;height:24px}.cd-module-title{font-size:1.05rem;font-weight:700;margin-top:1rem;margin-bottom:4px}.cd-module-time{font-size:.85rem;color:gray;margin-bottom:12px}.cd-module-qs{font-size:.85rem;color:gray;margin-top:.5rem}.cd-start-btn{margin-top:18px;padding:12px 33px;background:#3a356b;border-radius:15px;font-size:12px;font-weight:700;color:#fff;display:flex;align-items:center;border:none;cursor:pointer}.cd-module-content{max-height:0;overflow:hidden;transition:max-height .4s ease-in-out}.cd-module-item.active .cd-module-content{max-height:1000px}.cd-lesson-list{list-style:none}.cd-lesson-item{display:flex;justify-content:space-between;align-items:center;padding-top:19px;border-bottom:1px solid #FAFAFA}.cd-lesson-item.cd-lesson-completed{background:#eefcf3;border-radius:12px;padding:12px;margin-top:10px;border:1px solid #d1fae5}.cd-lesson-item.cd-lesson-current{background:#f4f1ff;border-radius:12px;padding:12px;margin-top:10px;border:1px solid rgba(150,40,135,.25)}.cd-lesson-item.cd-lesson-locked .cd-lesson-info{filter:blur(1px)}.cd-lesson-info{display:flex;flex-direction:column;gap:.25rem}.cd-lesson-name{font-size:.95rem;font-weight:500}.cd-lesson-duration{font-size:.8rem;color:gray}.cd-lesson-play{height:28px;width:28px;cursor:pointer;flex-shrink:0}.cd-lesson-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.cd-complete-btn{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .15s}.cd-complete-btn--pending:hover{transform:scale(1.15)}.cd-complete-btn--done{cursor:default}.cd-lesson-lock{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.6}.cd-lesson-locked{opacity:.55}.cd-lesson-done{color:#22c55e}.cd-start-btn--locked{background:#9ca3af;cursor:not-allowed;opacity:.7}@media(min-width:768px){.cd-course-title{font-size:24px}.cd-course-hero{margin-top:0}.cd-info-grid{grid-template-columns:repeat(4,1fr)}.cd-header{display:none}.cd-breadcrumb{display:flex}}@media(min-width:768px)and (max-width:1023px){.cd-course-header-container{flex-direction:column;gap:2rem}.cd-course-main-content{max-width:100%}.cd-course-sidebar{width:100%;height:auto;max-height:none;overflow-y:visible;padding-right:0;margin-left:0}.cd-curriculum-card{height:auto;max-height:none}.cd-curriculum-card-content{overflow-y:visible;max-height:none}}@media(max-width:767px){.cd-course-header-container{flex-direction:column;gap:1.5rem}.cd-course-main-content{max-width:100%}.cd-course-sidebar{width:100%;height:auto;max-height:none;overflow-y:visible;padding-right:0;margin-left:0}.cd-curriculum-card{padding:1rem;border-radius:1rem;height:auto;max-height:none}.cd-curriculum-card-content{overflow-y:visible;max-height:none}.cd-module-item{padding:1rem;margin-bottom:.75rem}.cd-curriculum-card-content .cd-module-item{padding:.875rem;margin-bottom:.625rem}.cd-module-title{font-size:1rem}.cd-lesson-name{font-size:.9rem}}@media(min-width:1024px){.cd-course-header-container{flex-direction:row;align-items:flex-start}.cd-course-main-content{flex:1.7;max-width:none}.cd-course-sidebar{flex:1;min-width:300px;height:calc(120vh - 80px);max-height:900px;overflow-y:auto;padding-right:15px;display:flex;flex-direction:column;gap:2rem;margin-left:25px;-ms-overflow-style:none;scrollbar-width:none}.cd-course-sidebar::-webkit-scrollbar{display:none}.cd-curriculum-card{min-height:calc(100vh - 120px);max-height:860px}.cd-info-label img{width:20px;height:20px}}@media(min-width:1440px){.cd-course-main-content{flex:3}.cd-course-sidebar{flex:1;min-width:350px}}@media(min-width:1920px){.cd-course-main-content{flex:3}.cd-course-sidebar{flex:1;min-width:400px}}.cd-module-thumbnail{width:60px;height:60px;border-radius:8px;overflow:hidden;flex-shrink:0}.cd-module-thumbnail-img{width:100%;height:100%;object-fit:cover}.cd-module-content-wrapper{flex:1;display:flex;flex-direction:column;justify-content:center}@media(max-width:768px){.cd-module-thumbnail{width:50px;height:50px}.cd-module-title{font-size:.95rem}.cd-module-time{font-size:.8rem}}.snackbar-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.snackbar-container>*{pointer-events:auto}.snackbar{display:flex;align-items:center;gap:12px;min-width:300px;max-width:500px;padding:16px;border-radius:12px;box-shadow:0 10px 25px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:snackbarSlideIn .3s ease-out;transition:all .3s ease}.snackbar:hover{transform:translate(-5px);box-shadow:0 15px 35px #00000026}.snackbar--success{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.snackbar--error{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.snackbar--warning{background:linear-gradient(135deg,#8058c6,#6b47a8);color:#fff}.snackbar--info{background:linear-gradient(135deg,#9b7bd4,#8058c6);color:#fff}.snackbar__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.snackbar__message{flex:1;font-size:14px;font-weight:500;line-height:1.4}.snackbar__close{flex-shrink:0;background:none;border:none;color:currentColor;opacity:.8;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.snackbar__close:hover{opacity:1;background:#ffffff1a}@keyframes snackbarSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes snackbarSlideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.snackbar--removing{animation:snackbarSlideOut .3s ease-in forwards}@media(max-width:768px){.snackbar-container{top:10px;right:10px;left:10px}.snackbar{min-width:auto;max-width:none}.snackbar__message{font-size:13px}}@media(prefers-color-scheme:dark){.snackbar{box-shadow:0 10px 25px #0000004d}.snackbar:hover{box-shadow:0 15px 35px #0006}}.lottie-loader-container{display:flex;justify-content:center;align-items:center;width:100%}.lottie-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#ffffffe6;z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.lottie-loader-wrapper{display:flex;justify-content:center;align-items:center}.lottie-loader-wrapper svg{display:block!important}.lottie-loader-container.lottie-center{min-height:200px}.lottie-loader-container.lottie-fullscreen{min-height:100vh}.lottie-loader-container.lottie-inline{min-height:auto;padding:20px 0}.lottie-loader-container.lottie-small{min-height:auto;padding:0}.lottie-loader-container.lottie-small .lottie-loader-wrapper{transform:scale(.6)}.lottie-loader-container.lottie-medium{min-height:150px}.lottie-loader-container.lottie-medium .lottie-loader-wrapper{transform:scale(.8)}@keyframes lottieFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.lottie-loader-wrapper{animation:lottieFadeIn .3s ease-out}.global-loader-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#fffffff2;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center}.global-loader-content{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.global-loader-message{font-size:16px;font-weight:500;color:#333;margin:0;animation:fadeInUp .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
