.header{background:var(--color-surface, #ffffff);border-bottom:1px solid var(--color-border, #e5e7eb);position:sticky;top:0;z-index:100}.header-content{max-width:1280px;margin:0 auto;display:flex;align-items:center;padding:.75rem 1rem;gap:1rem}.logo{display:flex;align-items:center;gap:.5rem;font-size:1.5rem;font-weight:800;color:var(--color-primary, #F26522);text-decoration:none;white-space:nowrap}.logo-img{height:65px;width:auto;border-radius:6px;object-fit:contain}.logo-text{font-size:1.25rem;font-weight:800}.header-search-wrap{flex:1;max-width:480px;position:relative}.header-search{position:relative}.header-search input{width:100%;padding:.5rem 1rem;border:1px solid var(--color-border, #e5e7eb);border-radius:20px;font-size:.9rem;background:var(--color-bg-secondary, #f9fafb);transition:border-color .2s,box-shadow .2s}.header-search input:focus{outline:none;border-color:var(--color-primary, #8DC63F);box-shadow:0 0 0 3px #8dc63f26}.search-spinner{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;border:2px solid var(--color-border, #e5e7eb);border-top-color:var(--color-primary, #8DC63F);border-radius:50%;animation:search-spin .6s linear infinite}@keyframes search-spin{to{transform:translateY(-50%) rotate(360deg)}}.search-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .12));z-index:1000;max-height:420px;overflow-y:auto;overflow-x:hidden}.search-dropdown-section{padding:.35rem 0}.search-dropdown-section+.search-dropdown-section{border-top:1px solid var(--color-border-light, #f3f4f6)}.search-dropdown-label{display:block;padding:.4rem .85rem .25rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted, #9ca3af)}.search-dropdown-item{display:flex;align-items:center;gap:.65rem;padding:.5rem .85rem;text-decoration:none;color:var(--color-text, #1f2937);transition:background .12s}.search-dropdown-item:hover,.search-item-active,.search-dropdown-viewall.search-item-active{background:var(--color-bg-secondary, #f9fafb)}.search-item-thumb{width:52px;height:36px;flex-shrink:0;border-radius:var(--radius-sm, 6px);overflow:hidden;background:var(--color-bg-secondary, #f3f4f6);position:relative}.search-item-thumb img{width:100%;height:100%;object-fit:cover}.search-item-thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1rem;color:var(--color-text-muted, #9ca3af);background:linear-gradient(135deg,var(--color-bg-secondary, #f3f4f6),var(--color-border-light, #e5e7eb))}.search-item-duration{position:absolute;bottom:2px;right:2px;font-size:.55rem;background:#000000bf;color:#fff;padding:0 3px;border-radius:3px;line-height:1.4}.search-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.search-item-title{font-size:.8rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-item-meta{font-size:.7rem;color:var(--color-text-muted, #9ca3af);display:flex;align-items:center;gap:.4rem}.search-item-badge{font-size:.6rem;font-weight:600;text-transform:uppercase;background:var(--color-primary-light, #fef0e7);color:var(--color-primary, #8DC63F);padding:.05rem .35rem;border-radius:3px}.search-dropdown-viewall{display:block;text-align:center;padding:.6rem .85rem;font-size:.78rem;font-weight:600;color:var(--color-primary, #8DC63F);text-decoration:none;border-top:1px solid var(--color-border-light, #f3f4f6);transition:background .12s}.search-dropdown-viewall:hover{background:var(--color-bg-secondary, #f9fafb)}.header-nav{display:flex;align-items:center;gap:.75rem}.nav-link{text-decoration:none;color:var(--color-text, #1a1a2e);font-size:.9rem;font-weight:500;padding:.375rem .75rem;border-radius:6px;transition:background .2s}.nav-link:hover{background:var(--color-bg-secondary, #f3f4f6)}.btn-signup{background:var(--color-primary, #F26522)!important;color:#fff!important}.user-menu{position:relative}.user-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-primary, #F26522);color:#fff;border:none;cursor:pointer;font-weight:600;font-size:.9rem}.user-dropdown{display:none;position:absolute;top:100%;right:0;background:var(--color-surface, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:8px;box-shadow:0 4px 12px #0000001a;min-width:180px;padding:.5rem 0;z-index:10}.user-menu:hover .user-dropdown{display:block}.user-dropdown a,.user-dropdown button{display:block;width:100%;padding:.5rem 1rem;text-align:left;background:none;border:none;font-size:.875rem;color:var(--color-text, #1a1a2e);text-decoration:none;cursor:pointer}.user-dropdown a:hover,.user-dropdown button:hover{background:var(--color-bg-secondary, #f3f4f6)}.menu-toggle{display:none;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text, #1a1a2e)}.sidebar{width:240px;background:var(--color-surface, #fff);border-right:1px solid var(--color-border, #e5e7eb);min-height:calc(100vh - 60px);padding:1rem 0}.sidebar-nav{display:flex;flex-direction:column}.sidebar-link{padding:.75rem 1.5rem;text-decoration:none;color:var(--color-text-secondary, #6b7280);font-size:.9rem;transition:background .2s,color .2s;border-left:3px solid transparent}.sidebar-link:hover{background:var(--color-bg-secondary, #f9fafb);color:var(--color-text, #1a1a2e)}.sidebar-link.active{color:var(--color-primary, #F26522);background:#6366f10d;border-left-color:var(--color-primary, #F26522);font-weight:600}.footer{background:var(--color-bg-secondary, #f9fafb);border-top:1px solid var(--color-border, #e5e7eb);padding:2rem 1rem;margin-top:auto}.footer-content{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem}.footer-section h4{margin:0 0 .75rem;font-size:.95rem}.footer-section p{color:var(--color-text-secondary, #6b7280);font-size:.85rem;margin:0}.footer-section a{display:block;color:var(--color-text-secondary, #6b7280);text-decoration:none;font-size:.85rem;padding:.25rem 0}.footer-section a:hover{color:var(--color-primary, #F26522)}.footer-bottom{max-width:1280px;margin:1.5rem auto 0;padding-top:1rem;border-top:1px solid var(--color-border, #e5e7eb);text-align:center;font-size:.8rem;color:var(--color-text-secondary, #9ca3af)}@media(max-width:768px){.header-search-wrap{display:none}.header-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--color-surface, #fff);flex-direction:column;padding:1rem;border-bottom:1px solid var(--color-border, #e5e7eb)}.header-nav.open{display:flex}.menu-toggle{display:block;margin-left:auto}.sidebar{display:none}.sidebar.open{display:block;position:fixed;top:60px;left:0;z-index:50;width:260px;box-shadow:4px 0 12px #0000001a}.footer-content{grid-template-columns:1fr 1fr}}.course-card{text-decoration:none;color:inherit;background:var(--color-surface, #ffffff);border-radius:12px;overflow:hidden;border:1px solid var(--color-border, #e5e7eb);transition:transform .2s,box-shadow .2s}.course-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.course-cover{position:relative;width:100%;aspect-ratio:16 / 9;background:#e5e7eb}.course-cover img{width:100%;height:100%;object-fit:cover}.course-level{position:absolute;top:8px;left:8px;background:#000000b3;color:#fff;padding:4px 10px;border-radius:20px;font-size:.7rem;text-transform:capitalize;font-weight:500}.course-body{padding:1rem}.course-title{margin:0 0 .375rem;font-size:1rem;font-weight:600;color:var(--color-text, #1a1a2e);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-instructor{margin:0 0 .5rem;font-size:.8rem;color:var(--color-text-secondary, #6b7280)}.course-stats{display:flex;gap:.75rem;font-size:.8rem;color:var(--color-text-secondary, #9ca3af);margin-bottom:.75rem}.course-rating{color:#f59e0b;font-weight:600}.course-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--color-border, #f3f4f6)}.course-price{font-weight:700;font-size:1.1rem;color:var(--color-text, #1a1a2e)}.course-students{font-size:.75rem;color:var(--color-text-secondary, #9ca3af)}.legal-page{max-width:780px;margin:0 auto;padding:0 1rem 4rem}.legal-hero{text-align:center;padding:3rem 1rem 2.5rem;border-bottom:1px solid #e5e7eb;margin-bottom:2rem}.legal-hero h1{font-size:2rem;margin:0 0 .5rem}.legal-hero p{color:#9ca3af;font-size:.9rem;margin:0}.legal-body{display:flex;flex-direction:column;gap:0}.legal-section{padding:1.5rem 0;border-bottom:1px solid #f3f4f6}.legal-section:last-of-type{border-bottom:none}.legal-section h2{font-size:1.1rem;font-weight:600;margin:0 0 .75rem;color:#111827}.legal-section p{color:#4b5563;line-height:1.7;margin:0 0 .75rem;font-size:.95rem}.legal-section p:last-child{margin-bottom:0}.legal-section ul{color:#4b5563;font-size:.95rem;line-height:1.7;padding-left:1.5rem;margin:.5rem 0 0}.legal-section ul li{margin-bottom:.4rem}.legal-section a{color:#f26522;text-decoration:none}.legal-section a:hover{text-decoration:underline}.legal-footer-links{display:flex;gap:1.5rem;padding-top:2rem;font-size:.9rem}.legal-footer-links a{color:#f26522;text-decoration:none}.legal-footer-links a:hover{text-decoration:underline}.edit-profile-page{max-width:640px;margin:2rem auto;padding:0 1rem 3rem}.ep-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.75rem}.ep-header h1{font-size:1.5rem;margin:0}.ep-back{display:flex;align-items:center;gap:.3rem;background:none;border:none;color:#6b7280;cursor:pointer;font-size:.875rem;padding:0}.ep-back:hover{color:#111}.ep-body{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.ep-avatar-section{display:flex;align-items:center;gap:1.25rem;padding:1.5rem;border-bottom:1px solid #f3f4f6;background:#f9fafb}.ep-avatar{width:64px;height:64px;border-radius:50%;background:#f26522;color:#fff;font-size:1.4rem;font-weight:700;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.ep-avatar img{width:100%;height:100%;object-fit:cover}.ep-name{font-weight:600;margin:0 0 .2rem}.ep-role{font-size:.8rem;color:#6b7280;text-transform:capitalize;margin:0}.ep-form{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.ep-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.ep-field{display:flex;flex-direction:column;gap:.35rem}.ep-field label{font-size:.875rem;font-weight:500;color:#374151}.ep-field input,.ep-field textarea{padding:.7rem .875rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.9rem;font-family:inherit;transition:border-color .15s}.ep-field input:focus,.ep-field textarea:focus{outline:none;border-color:#f26522;box-shadow:0 0 0 3px #f265221a}.ep-field textarea{resize:vertical}.ep-field-readonly input:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.ep-hint{font-size:.78rem;color:#9ca3af}.ep-char-count{font-size:.78rem;color:#9ca3af;text-align:right}.ep-field-error{font-size:.8rem;color:#dc2626}.ep-error{background:#fef2f2;color:#dc2626;padding:.75rem 1rem;border-radius:8px;font-size:.875rem}.ep-success{background:#f0fdf4;color:#16a34a;padding:.75rem 1rem;border-radius:8px;font-size:.875rem}.ep-actions{display:flex;gap:.75rem;justify-content:flex-end;padding-top:.5rem}@media(max-width:500px){.ep-form-row{grid-template-columns:1fr}}.contact-page{max-width:860px;margin:0 auto;padding:0 1rem 3rem}.contact-hero{text-align:center;padding:3rem 1rem 2rem}.contact-hero h1{font-size:2rem;margin:0 0 .5rem}.contact-hero p{color:#6b7280;font-size:1.05rem;margin:0}.contact-body{display:flex;flex-direction:column;gap:2rem}.contact-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.contact-card{display:flex;align-items:flex-start;gap:1rem;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem}.contact-card-icon{width:44px;height:44px;background:#f265221a;color:#f26522;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-card h3{font-size:.9rem;font-weight:600;margin:0 0 .25rem}.contact-card a,.contact-card p{font-size:.875rem;color:#6b7280;margin:0;text-decoration:none}.contact-card a:hover{color:#f26522}.contact-form-wrap{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:2rem}.contact-form-wrap h2{font-size:1.25rem;margin:0 0 1.5rem}.contact-form{display:flex;flex-direction:column;gap:1rem}.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-form .form-group{display:flex;flex-direction:column;gap:.375rem}.contact-form label{font-size:.875rem;font-weight:500;color:#374151}.contact-form input,.contact-form textarea{padding:.7rem .875rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.9rem;font-family:inherit;transition:border-color .15s}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:#f26522;box-shadow:0 0 0 3px #f265221a}.contact-form textarea{resize:vertical}.contact-submit{align-self:flex-start;padding:.75rem 2rem}.contact-success{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;text-align:center}.contact-success h3{font-size:1.25rem;margin:0;color:#16a34a}.contact-success p{color:#6b7280;margin:0}.contact-success a{color:#f26522}@media(max-width:600px){.contact-form-row{grid-template-columns:1fr}}.page-container{max-width:1280px;margin:0 auto;padding:1rem}.masters-page{max-width:960px;margin:2rem auto;padding:0 1rem}.masters-header{margin-bottom:1.5rem}.masters-header h1{font-size:1.75rem;margin:0 0 .25rem}.masters-header p{color:#6b7280;margin:0}.masters-tabs{display:flex;gap:0;border-bottom:2px solid #e5e7eb;margin-bottom:1.5rem}.masters-tab{padding:.6rem 1.25rem;background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;font-size:.95rem;font-weight:500;cursor:pointer;color:#6b7280;transition:color .15s,border-color .15s}.masters-tab.active{color:#f26522;border-bottom-color:#f26522}.masters-section{display:flex;flex-direction:column;gap:1.5rem}.masters-form{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem 1.5rem}.masters-form h3{margin:0 0 1rem;font-size:1rem}.masters-form-row{display:flex;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.masters-form-row input{flex:1;min-width:180px;padding:.6rem .875rem;border:1px solid #e5e7eb;border-radius:7px;font-size:.9rem}.masters-form textarea{width:100%;padding:.6rem .875rem;border:1px solid #e5e7eb;border-radius:7px;font-size:.9rem;resize:vertical;margin-bottom:.75rem;box-sizing:border-box}.masters-form-row input:focus,.masters-form textarea:focus{outline:none;border-color:#f26522}.masters-form-actions{display:flex;gap:.5rem}.masters-error{color:#dc2626;font-size:.85rem;margin:0 0 .75rem}.masters-table-wrap{overflow-x:auto;border:1px solid #e5e7eb;border-radius:10px}.masters-table{width:100%;border-collapse:collapse;font-size:.9rem}.masters-table th{background:#f9fafb;padding:.65rem 1rem;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.masters-table td{padding:.65rem 1rem;border-bottom:1px solid #f3f4f6;vertical-align:middle}.masters-table tr:last-child td{border-bottom:none}.masters-table code{background:#f3f4f6;padding:.15rem .4rem;border-radius:4px;font-size:.82rem}.masters-empty{text-align:center;color:#9ca3af;padding:1.5rem!important}.masters-actions{display:flex;gap:.4rem}.btn-danger-sm{color:#dc2626!important;border-color:#dc2626!important}.btn-danger-sm:hover{background:#fef2f2!important}.home-page{width:100%}.hero{position:relative;background-image:url(/hero.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;color:#fff;padding:6rem 1rem;text-align:center}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#f26522bf,#2b5daecc)}.hero-content{position:relative;max-width:700px;margin:0 auto}.hero h1{font-size:2.75rem;margin:0 0 1rem;line-height:1.2}.hero p{font-size:1.15rem;margin:0 0 2rem;opacity:.9;line-height:1.6}.hero-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.btn-hero-primary{padding:.875rem 2rem;background:#fff;color:#f26522;text-decoration:none;border-radius:8px;font-weight:700;font-size:1rem;transition:transform .2s}.btn-hero-primary:hover{transform:translateY(-2px)}.btn-hero-secondary{padding:.875rem 2rem;background:transparent;color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:1rem;border:2px solid rgba(255,255,255,.5);transition:background .2s}.btn-hero-secondary:hover{background:#ffffff1a}.section{max-width:1280px;margin:0 auto;padding:3rem 1rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{margin:0;font-size:1.5rem}.section-header a{color:var(--color-primary, #F26522);text-decoration:none;font-weight:500;font-size:.9rem}.cta-section{text-align:center;padding:4rem 1rem;background:var(--color-bg-secondary, #f9fafb);margin-top:2rem}.cta-section h2{margin:0 0 .5rem;font-size:1.75rem}.cta-section p{color:var(--color-text-secondary, #6b7280);margin:0 0 1.5rem}.video-page{max-width:960px;margin:0 auto;padding:1rem}.video-page-main{display:flex;flex-direction:column;gap:1.5rem}.video-details-title{margin:0 0 .5rem;font-size:1.5rem}.video-details-meta{display:flex;gap:1rem;font-size:.85rem;color:var(--color-text-secondary, #6b7280);margin-bottom:1rem;flex-wrap:wrap}.video-details-meta span:after{content:"·";margin-left:1rem}.video-details-meta span:last-child:after{content:""}.video-description{padding:1rem;background:var(--color-bg-secondary, #f9fafb);border-radius:8px;line-height:1.6}.course-details-page{max-width:1280px;margin:0 auto;padding:1rem}.course-hero{display:flex;gap:2rem;margin-bottom:2rem;align-items:flex-start}.course-hero-content{flex:1}.course-hero-content h1{margin:.5rem 0;font-size:1.75rem}.course-desc{color:var(--color-text-secondary, #6b7280);line-height:1.6}.course-meta-info{display:flex;gap:1rem;font-size:.85rem;color:var(--color-text-secondary, #9ca3af);margin-bottom:1.5rem;flex-wrap:wrap}.course-badge{display:inline-block;padding:4px 12px;background:var(--color-primary, #F26522);color:#fff;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:capitalize}.course-hero-image{width:300px;border-radius:12px;object-fit:cover}.enroll-button{padding:.875rem 2rem;background:var(--color-primary, #F26522);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:background .2s}.enroll-button:hover{background:var(--color-primary-hover, #d9541a)}.course-content{margin-bottom:2rem}.lesson-item{padding:1rem;border:1px solid var(--color-border, #e5e7eb);border-radius:8px;margin-bottom:.75rem}.lesson-header{display:flex;align-items:center;gap:.75rem}.lesson-item p{margin-left:43px!important;margin-top:10px}.lesson-number{width:28px;height:28px;border-radius:50%;background:var(--color-primary, #F26522);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;flex-shrink:0}.lesson-header h3{margin:0;font-size:.95rem;flex:1}.lesson-duration{font-size:.8rem;color:var(--color-text-secondary, #9ca3af)}.lesson-videos{margin-top:.5rem;padding-left:2.75rem;display:flex;flex-direction:column;gap:.25rem}.video-link{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;border-radius:6px;text-decoration:none;color:var(--color-text-primary, #374151);font-size:.9rem;transition:background .15s}.video-link:hover{background:var(--color-bg-secondary, #f3f4f6)}.video-link-locked{opacity:.6;cursor:default}.video-link-locked:hover{background:transparent}.video-icon{font-size:.7rem;color:var(--color-primary, #F26522)}.video-link .video-title{flex:1}.video-link .video-duration{font-size:.8rem;color:var(--color-text-secondary, #9ca3af)}.course-reviews{margin-top:2rem}.review-item{padding:1rem 0;border-bottom:1px solid var(--color-border, #f3f4f6)}.review-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.enroll-success{padding:1rem;background:#dcfce7;color:#166534;border-radius:8px;text-align:center;font-weight:500}.video-page-layout{max-width:1280px;margin:0 auto;padding:1rem;display:flex;gap:1.5rem;align-items:flex-start}.video-page-left{flex:1;min-width:0;display:flex;flex-direction:column;gap:1.5rem}.video-suggestions-sidebar{width:340px;flex-shrink:0;position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow-y:auto;transition:box-shadow .3s}.video-suggestions-sidebar.video-ended{box-shadow:0 0 0 2px var(--color-primary, #F26522),0 4px 20px #f2652240;border-radius:12px;padding:.75rem;background:var(--color-bg-primary, #fff)}.up-next-banner{background:var(--color-primary, #F26522);color:#fff;text-align:center;padding:.6rem 1rem;border-radius:8px;font-weight:600;font-size:.9rem;margin-bottom:.75rem;animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:1}50%{opacity:.8}}.suggestions-title{margin:0 0 .75rem;font-size:.95rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.no-suggestions{text-align:center;color:var(--color-text-secondary, #9ca3af);padding:1rem;font-size:.9rem}.lesson-accordion-list{display:flex;flex-direction:column;gap:.5rem}.lesson-accordion{background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-md, 8px);overflow:hidden;transition:box-shadow .2s,border-color .2s}.lesson-accordion:hover{box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .05))}.lesson-accordion.open{border-color:var(--color-primary, #8DC63F);box-shadow:0 0 0 1px #8dc63f26,var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .05))}.lesson-accordion-header{display:flex;align-items:center;gap:.75rem;width:100%;padding:.85rem 1rem;background:none;border:none;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--color-text, #1f2937);text-align:left;transition:background .15s}.lesson-accordion-header:hover{background:var(--color-bg-secondary, #f9fafb)}.lesson-accordion-header.open{background:var(--color-bg-secondary, #f9fafb);border-bottom:1px solid var(--color-border-light, #f3f4f6)}.lesson-accordion-arrow{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--color-bg-secondary, #f3f4f6);font-size:.6rem;flex-shrink:0;color:var(--color-text-secondary, #6b7280);transition:background .2s,transform .2s}.lesson-accordion-header.open .lesson-accordion-arrow{background:var(--color-primary, #8DC63F);color:#fff}.lesson-accordion-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-accordion-count{font-size:.7rem;color:var(--color-text-muted, #9ca3af);flex-shrink:0;font-weight:500;background:var(--color-bg-secondary, #f3f4f6);padding:.2rem .6rem;border-radius:999px}.lesson-accordion-body{display:flex;flex-direction:column;padding:.35rem .5rem .5rem;gap:2px}.sidebar-video-item{display:flex;align-items:center;gap:.6rem;padding:.55rem .75rem .55rem 1.25rem;text-decoration:none;color:var(--color-text, #374151);font-size:.8rem;border-radius:var(--radius-sm, 6px);transition:background .15s,transform .1s;line-height:1.4}.sidebar-video-item:hover{background:var(--color-bg-secondary, #f3f4f6)}.sidebar-video-item.sidebar-video-active{background:#8dc63f1a;font-weight:600;color:var(--color-primary, #8DC63F);border-left:3px solid var(--color-primary, #8DC63F);padding-left:calc(1.25rem - 3px)}.sidebar-video-status{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;font-size:.65rem;color:var(--color-text-muted, #9ca3af);border:1.5px solid var(--color-border, #e5e7eb);border-radius:50%}.sidebar-video-status.done{color:#fff;background:#22c55e;border-color:#22c55e;font-weight:700}.sidebar-video-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-video-duration{flex-shrink:0;font-size:.7rem;color:var(--color-text-muted, #9ca3af);font-variant-numeric:tabular-nums}.sidebar-video-completed .sidebar-video-title{color:var(--color-text-secondary, #6b7280);text-decoration-color:var(--color-border, #d1d5db)}.video-enrollment-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;background:var(--color-bg-secondary, #f9fafb);border-radius:12px;text-align:center;aspect-ratio:16/9}.video-enrollment-gate h2{margin:0 0 .5rem;font-size:1.5rem}.video-enrollment-gate p{margin:0 0 1.5rem;color:var(--color-text-secondary, #6b7280)}.next-video-btn{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:var(--color-bg-secondary, #f3f4f6);border-radius:10px;text-decoration:none;color:inherit;transition:background .2s,box-shadow .2s}.next-video-btn:hover{background:var(--color-bg-secondary, #e5e7eb);box-shadow:0 2px 8px #00000014}.next-video-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.next-video-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary, #F26522)}.next-video-name{font-size:.9rem;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.next-video-lesson{font-size:.75rem;color:var(--color-text-secondary, #6b7280);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.next-video-thumb{width:80px;height:45px;flex-shrink:0;border-radius:6px;overflow:hidden;position:relative;background:#1a1a2e}.next-video-thumb img{width:100%;height:100%;object-fit:cover}.next-video-thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;background:linear-gradient(135deg,#374151,#1f2937)}.next-video-duration{position:absolute;bottom:3px;right:3px;background:#000c;color:#fff;font-size:.65rem;padding:1px 4px;border-radius:3px}.next-video-arrow{font-size:1.5rem;color:var(--color-text-secondary, #9ca3af);flex-shrink:0}.video-completed-banner{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#dcfce7;color:#166534;border-radius:8px;font-weight:600;font-size:.9rem}.completed-check{font-size:1.1rem}.course-progress-info{margin-left:auto;font-weight:500;font-size:.85rem}.sidebar-progress{margin-bottom:.75rem}.sidebar-progress-bar{height:6px;background:var(--color-border, #e5e7eb);border-radius:3px;overflow:hidden;margin-bottom:.3rem}.sidebar-progress-fill{height:100%;background:#22c55e;border-radius:3px;transition:width .5s ease}.sidebar-progress-text{font-size:.75rem;color:var(--color-text-secondary, #6b7280)}.video-nav-btns{display:flex;gap:.75rem;margin-top:.75rem;max-width:100%;overflow:hidden}.video-nav-btns .next-video-btn,.video-nav-btns .prev-video-btn{flex:1;min-width:0;overflow:hidden}.prev-video-btn{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:var(--color-bg-secondary, #f3f4f6);border-radius:10px;text-decoration:none;color:inherit;transition:background .2s,box-shadow .2s}.prev-video-btn:hover{background:var(--color-bg-secondary, #e5e7eb);box-shadow:0 2px 8px #00000014}.prev-video-btn .next-video-label{color:#6b7280}.prev-video-arrow,.next-video-arrow{font-size:1.5rem;color:var(--color-text-secondary, #9ca3af);flex-shrink:0;line-height:1}.payment-error{margin-top:.5rem;padding:.6rem 1rem;background:#fee2e2;color:#b91c1c;border-radius:6px;font-size:.875rem;border:1px solid #fca5a5}.checkout-page{max-width:1100px;margin:0 auto;padding:2rem 1rem;min-height:70vh}.checkout-container{display:flex;gap:2rem;align-items:flex-start}.checkout-course-info{flex:1;min-width:0}.checkout-back{display:inline-block;margin-bottom:1rem;color:var(--color-primary, #F26522);text-decoration:none;font-size:.9rem;font-weight:600}.checkout-back:hover{text-decoration:underline}.checkout-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.checkout-logo{height:44px;width:auto;border-radius:8px;object-fit:contain}.checkout-title{font-size:1.75rem;font-weight:800;margin:0}.checkout-course-card{border-radius:12px;overflow:hidden;border:1px solid var(--color-border, #e5e7eb);background:var(--color-bg, #fff)}.checkout-course-img{width:100%;height:200px;object-fit:cover;display:block}.checkout-course-details{padding:1.25rem}.checkout-course-badge{display:inline-block;padding:.2rem .6rem;background:var(--color-primary, #F26522);color:#fff;border-radius:4px;font-size:.7rem;font-weight:700;text-transform:uppercase;margin-bottom:.5rem}.checkout-course-details h2{font-size:1.25rem;margin:0 0 .5rem;line-height:1.4}.checkout-course-desc{font-size:.9rem;color:var(--color-text-secondary, #6b7280);line-height:1.6;margin:0 0 .75rem}.checkout-instructor{font-size:.85rem;color:var(--color-text-secondary, #6b7280);margin:0 0 .5rem}.checkout-course-stats{display:flex;gap:1rem;font-size:.8rem;color:var(--color-text-secondary, #9ca3af);font-weight:600}.checkout-course-stats span:before{content:"•";margin-right:.4rem}.checkout-course-stats span:first-child:before{content:"";margin:0}.checkout-curriculum{margin-top:1.5rem}.checkout-curriculum h3{font-size:1.1rem;margin:0 0 .75rem}.checkout-lesson-list{list-style:none;padding:0;margin:0}.checkout-lesson-list li{display:flex;align-items:center;gap:.5rem;padding:.6rem 0;border-bottom:1px solid var(--color-border, #f3f4f6);font-size:.9rem;color:var(--color-text, #111827)}.checkout-lesson-num{color:var(--color-primary, #F26522);font-weight:700;min-width:1.5rem}.checkout-lesson-videos{margin-left:auto;font-size:.75rem;color:var(--color-text-secondary, #9ca3af);white-space:nowrap}.checkout-more{color:var(--color-text-secondary, #9ca3af)!important;font-style:italic}.checkout-payment-panel{width:360px;flex-shrink:0;position:sticky;top:5rem}.checkout-payment-card{background:var(--color-bg, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:12px;padding:1.5rem;box-shadow:0 4px 24px #0000000f}.checkout-payment-card h3{font-size:1.1rem;margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border, #e5e7eb)}.checkout-line-items{margin-bottom:1rem}.checkout-line-item{display:flex;justify-content:space-between;padding:.4rem 0;font-size:.9rem;color:var(--color-text-secondary, #6b7280)}.checkout-discount{color:#22c55e}.checkout-total{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-top:2px solid var(--color-border, #e5e7eb);margin-bottom:1.25rem;font-weight:700;font-size:1rem}.checkout-total-price{font-size:1.5rem;color:var(--color-primary, #F26522)}.checkout-pay-btn{width:100%;padding:.9rem;background:var(--color-primary, #F26522);color:#fff;border:none;border-radius:8px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:background .2s,transform .15s}.checkout-pay-btn:hover:not(:disabled){background:#d9541a;transform:translateY(-1px)}.checkout-pay-btn:disabled{opacity:.65;cursor:not-allowed}.checkout-secure{margin-top:1rem;text-align:center;font-size:.78rem;color:var(--color-text-secondary, #9ca3af);display:flex;align-items:center;justify-content:center;gap:.3rem}.checkout-lock-icon{font-size:.85rem}.checkout-guarantee{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border, #f3f4f6)}.checkout-guarantee p{margin:.35rem 0;font-size:.82rem;color:#22c55e;font-weight:500}.checkout-success{text-align:center;padding:4rem 1rem}.checkout-success-icon{width:80px;height:80px;border-radius:50%;background:#22c55e;color:#fff;font-size:2.5rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.checkout-success h2{font-size:1.75rem;margin:0 0 .5rem}.checkout-success p{font-size:1rem;color:var(--color-text-secondary, #6b7280);margin:.25rem 0}.checkout-redirect{margin-top:1rem!important;font-size:.85rem!important;color:var(--color-primary, #F26522)!important;font-weight:600}.go-to-course-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem 1.75rem;background:#22c55e;color:#fff;font-weight:700;font-size:1rem;border-radius:8px;text-decoration:none;transition:background .2s,transform .15s}.go-to-course-btn:hover{background:#16a34a;transform:translateY(-1px)}.course-intro-video-wrap{flex-shrink:0;width:380px;border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0000002e;background:#000}.course-intro-thumbnail{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden}.course-intro-thumbnail img{width:100%;height:100%;object-fit:cover;display:block}.intro-play-btn{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;background:#00000073;border:none;cursor:pointer;transition:background .2s}.intro-play-btn:hover{background:#0009}.intro-play-icon{width:64px;height:64px;border-radius:50%;background:#fffffff2;color:#f26522;font-size:1.6rem;display:flex;align-items:center;justify-content:center;padding-left:4px;box-shadow:0 4px 16px #0000004d;transition:transform .2s}.intro-play-btn:hover .intro-play-icon{transform:scale(1.1)}.intro-play-label{color:#fff;font-size:.85rem;font-weight:600;letter-spacing:.02em;text-shadow:0 1px 4px rgba(0,0,0,.5)}.course-intro-video{width:100%;aspect-ratio:16 / 9;display:block;background:#000}@media(min-width:768px){.courses-grid{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:3.5rem}}@media(max-width:768px){.hero h1{font-size:2rem}.hero p{font-size:1rem}.course-hero{flex-direction:column}.course-intro-video-wrap{width:100%;max-width:480px;margin:0 auto}.video-nav-btns{flex-direction:column}.video-nav-btns .next-video-thumb{display:none}.checkout-container{flex-direction:column}.checkout-payment-panel{width:100%;position:static}.video-page-layout{flex-direction:column}.video-suggestions-sidebar{width:100%;position:static;max-height:none}}.course-catalog{padding:2rem 1rem;max-width:1280px;margin:0 auto}.catalog-header{text-align:center;margin-bottom:2rem}.catalog-header h1{margin:0 0 .5rem;font-size:2rem;color:var(--color-text, #1a1a2e)}.catalog-header p{color:var(--color-text-secondary, #6b7280)}.catalog-filters{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.search-input{flex:1;min-width:200px;padding:.75rem 1rem;border:1px solid var(--color-border, #e5e7eb);border-radius:8px;font-size:1rem}.catalog-filters select{padding:.75rem 1rem;border:1px solid var(--color-border, #e5e7eb);border-radius:8px;font-size:.9rem;background:var(--color-surface, #fff)}.courses-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}.empty-message{text-align:center;color:var(--color-text-secondary, #6b7280);padding:3rem 0}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem}.pagination button{padding:.5rem 1.25rem;border:1px solid var(--color-border, #e5e7eb);border-radius:6px;background:var(--color-surface, #fff);cursor:pointer;transition:background .2s}.pagination button:hover:not(:disabled){background:var(--color-primary, #F26522);color:#fff}.pagination button:disabled{opacity:.5;cursor:not-allowed}@media(min-width:768px){.courses-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.courses-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1440px){.courses-grid{grid-template-columns:repeat(4,1fr)}}.video-player{position:relative;width:100%;max-width:100%;background:#000;border-radius:8px;overflow:hidden;aspect-ratio:16 / 9}.video-element{width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-select:none}.video-overlay{position:absolute;inset:0;z-index:1;cursor:pointer}.center-play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.8);width:70px;height:70px;border-radius:50%;border:none;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:3}.center-play-btn.visible{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.center-play-btn:hover{background:#000000b3}.center-play-icon{color:#fff;font-size:1.8rem;line-height:1;margin-left:3px}.player-controls{position:absolute;bottom:0;left:0;right:0;z-index:2;background:linear-gradient(transparent,#000c);padding:1.5rem 1rem .75rem;opacity:0;transition:opacity .3s}.video-player:hover .player-controls{opacity:1}.progress-bar{height:4px;background:#ffffff4d;border-radius:2px;cursor:pointer;margin-bottom:.5rem;transition:height .2s}.progress-bar:hover{height:6px}.progress-filled{height:100%;background:var(--color-primary, #F26522);border-radius:2px;transition:width .1s linear}.controls-row{display:flex;align-items:center;justify-content:space-between}.controls-left,.controls-right{display:flex;align-items:center;gap:.5rem}.control-btn{background:none;border:none;color:#fff;font-size:1.25rem;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background .2s}.control-btn:hover{background:#ffffff1a}.volume-control{display:flex;align-items:center;gap:.25rem}.volume-slider{width:80px;accent-color:var(--color-primary, #F26522)}.time-display{color:#fff;font-size:.875rem;font-family:monospace}@media(max-width:768px){.volume-control{display:none}.player-controls{opacity:1}}.comment-section{margin-top:2rem;padding:1rem 0}.comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.comment-header h3{margin:0}.comment-header select{padding:.375rem .75rem;border:1px solid var(--color-border, #e5e7eb);border-radius:6px;font-size:.875rem}.comment-form{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.comment-form textarea{padding:.75rem;border:1px solid var(--color-border, #e5e7eb);border-radius:8px;resize:vertical;font-family:inherit;font-size:.9rem}.comment-form button{align-self:flex-end;padding:.5rem 1.25rem;background:var(--color-primary, #F26522);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500}.comment-form button:disabled{opacity:.5;cursor:not-allowed}.login-prompt{background:var(--color-bg-secondary, #f3f4f6);padding:1rem;border-radius:8px;text-align:center;color:var(--color-text-secondary, #6b7280);margin-bottom:1rem}.comment-thread{border-bottom:1px solid var(--color-border, #f3f4f6);padding:1rem 0}.comment-item{display:flex;gap:.75rem}.comment-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-primary, #F26522);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;flex-shrink:0}.comment-avatar.small{width:28px;height:28px;font-size:.75rem}.comment-body{flex:1}.comment-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.comment-time{font-size:.75rem;color:var(--color-text-secondary, #9ca3af)}.comment-content{margin:.25rem 0 .5rem;font-size:.9rem;line-height:1.5}.comment-actions{display:flex;gap:.75rem}.action-btn{background:none;border:none;color:var(--color-text-secondary, #6b7280);font-size:.8rem;cursor:pointer;padding:0}.action-btn:hover{color:var(--color-primary, #F26522)}.reply-form{display:flex;gap:.5rem;margin-top:.5rem}.reply-form input{flex:1;padding:.5rem .75rem;border:1px solid var(--color-border, #e5e7eb);border-radius:6px;font-size:.85rem}.reply-form button{padding:.5rem 1rem;background:var(--color-primary, #F26522);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.85rem}.replies-list{margin-top:.75rem;padding-left:.5rem;border-left:2px solid var(--color-border, #e5e7eb)}.reply-item{display:flex;gap:.5rem;padding:.5rem 0}.no-comments{text-align:center;color:var(--color-text-secondary, #9ca3af);padding:2rem 0}.dashboard{max-width:1200px;margin:0 auto;padding:2rem 1rem}.dashboard-header{margin-bottom:2rem}.dashboard-header h1{margin:0 0 .25rem;font-size:1.75rem}.dashboard-header p{color:var(--color-text-secondary, #6b7280);margin:0}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:2rem}.dashboard-card{background:var(--color-surface, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:12px;padding:1.5rem}.dashboard-card h2{margin:0 0 1rem;font-size:1.25rem}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.dashboard-stats{display:flex;gap:1rem;margin-bottom:1.5rem}.stat-card{flex:1;background:var(--color-surface, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:12px;padding:1.5rem;text-align:center}.stat-card h3{font-size:2rem;margin:0;color:var(--color-primary, #F26522)}.stat-card p{margin:.25rem 0 0;color:var(--color-text-secondary, #6b7280)}.progress-list{display:flex;flex-direction:column;gap:1rem}.progress-item{display:flex;align-items:center;gap:1rem}.progress-info{flex:1;min-width:0}.progress-course-title{display:block;font-weight:500;color:var(--color-text, #1a1a2e);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-stats{font-size:.75rem;color:var(--color-text-secondary, #9ca3af)}.progress-bar-container{width:120px;height:6px;background:var(--color-bg-secondary, #e5e7eb);border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--color-primary, #F26522);border-radius:3px;transition:width .3s}.progress-percentage{font-size:.85rem;font-weight:600;color:var(--color-primary, #F26522);min-width:40px;text-align:right}.watch-history-list{display:flex;flex-direction:column;gap:.75rem}.history-item{display:flex;gap:.75rem;text-decoration:none;color:inherit;padding:.5rem;border-radius:8px;transition:background .2s}.history-item:hover{background:var(--color-bg-secondary, #f9fafb)}.history-thumbnail{position:relative;width:120px;aspect-ratio:16 / 9;border-radius:6px;overflow:hidden;flex-shrink:0;background:#e5e7eb}.history-thumbnail img{width:100%;height:100%;object-fit:cover}.history-duration{position:absolute;bottom:4px;right:4px;background:#000c;color:#fff;padding:1px 4px;border-radius:2px;font-size:.65rem}.history-info h4{margin:0 0 .25rem;font-size:.9rem}.history-meta,.history-time{font-size:.75rem;color:var(--color-text-secondary, #9ca3af);display:block}.status-filter-tabs{display:flex;gap:0;margin-bottom:1rem;border-bottom:2px solid var(--color-border, #e5e7eb)}.status-filter-tab{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:.875rem;font-weight:500;color:var(--color-text-secondary, #6b7280);cursor:pointer;transition:color .15s,border-color .15s}.status-filter-tab:hover{color:var(--color-text, #111)}.status-filter-tab.active{color:var(--color-primary, #F26522);border-bottom-color:var(--color-primary, #F26522)}.tab-count{background:var(--color-bg-secondary, #f3f4f6);border-radius:10px;padding:1px 7px;font-size:.75rem;font-weight:600}.status-filter-tab.active .tab-count{background:#ffede3;color:var(--color-primary, #F26522)}.course-list-info{flex:1;min-width:0}.course-list-meta{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.course-list-students{font-size:.78rem;color:var(--color-text-secondary, #9ca3af)}.btn-outline-sm{padding:.3rem .8rem;border:1px solid var(--color-border, #d1d5db);border-radius:6px;font-size:.82rem;font-weight:500;color:var(--color-text, #374151);text-decoration:none;white-space:nowrap;transition:background .15s}.btn-outline-sm:hover{background:var(--color-bg-secondary, #f9fafb)}.course-list-simple{display:flex;flex-direction:column}.course-list-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--color-border, #f3f4f6)}.course-list-item h3{margin:0 0 .25rem;font-size:.95rem}.status-badge{font-size:.7rem;padding:2px 8px;border-radius:12px;text-transform:capitalize}.status-badge.published{background:#dcfce7;color:#166534}.status-badge.draft{background:#fef3c7;color:#92400e}.status-badge.archived{background:#f3f4f6;color:#6b7280}.btn-primary{padding:.5rem 1rem;background:var(--color-primary, #F26522);color:#fff;border:none;border-radius:6px;text-decoration:none;font-size:.875rem;font-weight:500}.dashboard-actions{text-align:center}.action-link{display:inline-block;padding:.75rem 2rem;background:var(--color-primary, #F26522);color:#fff;text-decoration:none;border-radius:8px;font-weight:600}@media(min-width:768px){.dashboard-grid{grid-template-columns:1fr 1fr}}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:1rem;background-image:url(/loginbg.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.auth-card{background:var(--color-surface, #ffffff);border-radius:12px;padding:2.5rem;width:100%;max-width:440px;box-shadow:0 4px 24px #00000014}.auth-card h2{margin:0 0 .25rem;font-size:1.75rem;color:var(--color-text, #1a1a2e)}.auth-subtitle{color:var(--color-text-secondary, #6b7280);margin-bottom:1.5rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.form-row{display:flex;gap:1rem}.form-group{display:flex;flex-direction:column;flex:1}.form-group label{font-size:.875rem;font-weight:500;margin-bottom:.375rem;color:var(--color-text, #1a1a2e)}.form-group input,.form-group select{padding:.75rem 1rem;border:1px solid var(--color-border, #e5e7eb);border-radius:8px;font-size:1rem;transition:border-color .2s;background:var(--color-input-bg, #f9fafb)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--color-primary, #F26522);box-shadow:0 0 0 3px #6366f11a}.auth-button{padding:.875rem;background:var(--color-primary, #F26522);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s;margin-top:.5rem;text-align:center;text-decoration:none;display:block}.auth-button:hover{background:var(--color-primary-hover, #d9541a)}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-error{background:#fef2f2;color:#dc2626;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;margin-bottom:.5rem}.field-error{color:#dc2626;font-size:.75rem;margin-top:.25rem}.auth-switch{text-align:center;margin-top:1.5rem;color:var(--color-text-secondary, #6b7280)}.auth-switch a{color:var(--color-primary, #F26522);text-decoration:none;font-weight:500}.form-actions{display:flex;justify-content:flex-end}.forgot-link{color:var(--color-primary, #F26522);text-decoration:none;font-size:.875rem}@media(max-width:480px){.auth-card{padding:1.5rem}.form-row{flex-direction:column}}.course-form-wrapper{max-width:720px;margin:2rem auto;padding:0 1rem}.course-form-wrapper h2{margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.course-form .form-group{margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.4rem}.course-form .form-group label{font-weight:600;font-size:.9rem}.course-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.course-form input,.course-form select,.course-form textarea{padding:.6rem .75rem;border:1px solid var(--border-color, #d1d5db);border-radius:6px;font-size:.95rem;font-family:inherit;background:var(--bg-primary, #fff);color:var(--text-primary, #111)}.course-form input:focus,.course-form select:focus,.course-form textarea:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.course-form textarea{resize:vertical}.field-error{color:#e53e3e;font-size:.82rem}.form-error{background:#fff5f5;border:1px solid #fc8181;padding:.75rem;border-radius:6px;margin-bottom:1rem;color:#c53030;font-size:.9rem}.form-actions .btn-secondary:hover{background:var(--bg-secondary, #f9fafb)}.image-mode-tabs{display:flex;gap:0;margin-bottom:.75rem;border:1px solid var(--border-color, #d1d5db);border-radius:6px;overflow:hidden;width:fit-content}.image-mode-tab{padding:.4rem .9rem;font-size:.85rem;font-weight:500;border:none;background:var(--bg-secondary, #f9fafb);color:var(--text-secondary, #6b7280);cursor:pointer;transition:background .15s,color .15s}.image-mode-tab.active{background:var(--color-primary, #F26522);color:#fff}.image-upload-area{border:2px dashed var(--border-color, #d1d5db);border-radius:8px;overflow:hidden}.image-drop-zone{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:2rem 1rem;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:.9rem;transition:background .15s}.image-drop-zone:hover{background:var(--bg-secondary, #f9fafb)}.image-drop-icon{font-size:2rem}.image-drop-hint{font-size:.78rem;color:#9ca3af}.image-preview-wrap{position:relative}.image-preview{width:100%;max-height:200px;object-fit:cover;display:block}.image-remove-btn{position:absolute;top:.5rem;right:.5rem;background:#0009;color:#fff;border:none;border-radius:4px;padding:.25rem .6rem;font-size:.8rem;cursor:pointer}.image-remove-btn:hover{background:#dc2626d9}@media(max-width:640px){.course-form .form-row{grid-template-columns:1fr}}.video-upload-wrapper{max-width:720px;margin:2rem auto;padding:0 1rem}.video-upload-wrapper h2{margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.upload-form .form-group{margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.4rem}.upload-form .form-group label{font-weight:600;font-size:.9rem}.upload-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.upload-form input,.upload-form select,.upload-form textarea{padding:.6rem .75rem;border:1px solid var(--border-color, #d1d5db);border-radius:6px;font-size:.95rem;font-family:inherit;background:var(--bg-primary, #fff);color:var(--text-primary, #111)}.upload-form input[type=file]{padding:.5rem}.upload-form input:focus,.upload-form select:focus,.upload-form textarea:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.file-info{font-size:.85rem;color:var(--text-secondary, #6b7280)}.upload-error{background:#fff5f5;border:1px solid #fc8181;padding:.75rem;border-radius:6px;margin-bottom:1rem;color:#c53030;font-size:.9rem}.upload-progress{margin:1rem 0}.progress-bar-bg{width:100%;height:8px;background:var(--bg-secondary, #e5e7eb);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--primary-color, #3b82f6);border-radius:4px;transition:width .3s ease}.progress-text{display:block;margin-top:.4rem;font-size:.85rem;color:var(--text-secondary, #6b7280);text-align:center}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color, #e5e7eb)}.form-actions .btn-primary{padding:.6rem 1.5rem;background:var(--primary-color, #3b82f6);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer}.form-actions .btn-primary:hover{opacity:.9}.form-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}.form-actions .btn-secondary{padding:.6rem 1.5rem;background:transparent;color:var(--text-secondary, #6b7280);border:1px solid var(--border-color, #d1d5db);border-radius:6px;font-weight:600;cursor:pointer}@media(max-width:640px){.upload-form .form-row{grid-template-columns:1fr}}.otp-card{max-width:420px;text-align:center}.otp-icon{font-size:2.5rem;margin-bottom:.5rem}.otp-inputs{display:flex;gap:10px;justify-content:center;margin:1.5rem 0}.otp-box{width:48px;height:56px;font-size:1.5rem;font-weight:700;text-align:center;border:2px solid #d1d5db;border-radius:10px;outline:none;transition:border-color .2s,box-shadow .2s;background:#fff}.otp-box:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed26}.auth-success{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0;border-radius:8px;padding:10px 14px;font-size:.9rem;margin-bottom:1rem}.link-btn{background:none;border:none;color:#7c3aed;font-weight:600;cursor:pointer;padding:0;font-size:inherit;text-decoration:underline}.link-btn:disabled{opacity:.6;cursor:not-allowed}.instructor-panel{margin-top:2.5rem;border:2px solid var(--color-primary, #F26522);border-radius:14px;overflow:hidden;background:var(--color-surface, #fff)}.ip-panel-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding:.9rem 1.25rem;background:linear-gradient(135deg,#fff5f0,#fff);border-bottom:1px solid #ffe0d0}.ip-panel-title{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.95rem;color:var(--color-primary, #F26522)}.ip-tabs{display:flex;gap:.25rem;background:#f3f4f6;border-radius:8px;padding:3px}.ip-tab{display:flex;align-items:center;gap:.4rem;padding:.35rem .9rem;border:none;border-radius:6px;background:transparent;font-size:.85rem;font-weight:500;color:var(--color-text-secondary, #6b7280);cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.ip-tab:hover{color:var(--color-text, #111)}.ip-tab.active{background:#fff;color:var(--color-primary, #F26522);font-weight:600;box-shadow:0 1px 3px #0000001a}.ip-tab-count{background:#f3f4f6;color:#6b7280;border-radius:10px;padding:1px 6px;font-size:.72rem;font-weight:700}.ip-tab.active .ip-tab-count{background:#ffede3;color:var(--color-primary, #F26522)}.ip-panel-body{padding:1.5rem}.ip-alert{padding:.65rem 1rem;border-radius:7px;font-size:.875rem;margin-bottom:1rem}.ip-alert-error{background:#fff5f5;border:1px solid #fca5a5;color:#b91c1c}.ip-alert-success{background:#f0fdf4;border:1px solid #86efac;color:#166534}.ip-edit-form{display:flex;flex-direction:column;gap:0}.ip-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem;margin-bottom:1.25rem}.ip-field{display:flex;flex-direction:column;gap:.35rem}.ip-field-full{grid-column:1 / -1}.ip-field label{font-size:.8rem;font-weight:600;color:var(--color-text-secondary, #374151);text-transform:uppercase;letter-spacing:.03em}.ip-input,.ip-select,.ip-textarea{padding:.5rem .75rem;border:1px solid var(--color-border, #d1d5db);border-radius:7px;font-size:.9rem;font-family:inherit;background:var(--color-bg, #fff);color:var(--color-text, #111);transition:border-color .15s,box-shadow .15s}.ip-input:focus,.ip-select:focus,.ip-textarea:focus{outline:none;border-color:var(--color-primary, #F26522);box-shadow:0 0 0 3px #f265221f}.ip-textarea{resize:vertical}.ip-input-sm{width:90px;flex:none}.ip-image-tabs{display:flex;gap:0;border:1px solid var(--color-border, #d1d5db);border-radius:6px;overflow:hidden;width:fit-content;margin-bottom:.5rem}.ip-img-tab{padding:.3rem .8rem;font-size:.8rem;font-weight:500;border:none;background:#f9fafb;color:#6b7280;cursor:pointer}.ip-img-tab.active{background:var(--color-primary, #F26522);color:#fff}.ip-img-upload{display:flex;align-items:center;gap:1rem}.ip-img-preview{width:100px;height:60px;object-fit:cover;border-radius:6px;border:1px solid var(--color-border, #e5e7eb)}.ip-img-pick{padding:.4rem 1rem;border:1px dashed var(--color-border, #d1d5db);border-radius:6px;font-size:.85rem;color:var(--color-text-secondary, #6b7280);cursor:pointer;transition:border-color .15s,background .15s}.ip-img-pick:hover{border-color:var(--color-primary, #F26522);background:#fff5f0;color:var(--color-primary, #F26522)}.ip-form-footer{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;border-top:1px solid var(--color-border, #f3f4f6)}.ip-status-indicator{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--color-text-secondary, #6b7280)}.ip-status-dot{width:8px;height:8px;border-radius:50%}.ip-status-dot.published{background:#22c55e}.ip-status-dot.draft{background:#f59e0b}.ip-status-dot.archived{background:#9ca3af}.ip-btn-primary{padding:.5rem 1.4rem;background:var(--color-primary, #F26522);color:#fff;border:none;border-radius:7px;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .15s}.ip-btn-primary:hover:not(:disabled){opacity:.88}.ip-btn-primary:disabled{opacity:.5;cursor:not-allowed}.ip-btn-sm{padding:.35rem .9rem;font-size:.82rem}.ip-btn-ghost{padding:.5rem 1rem;background:transparent;border:1px solid var(--color-border, #d1d5db);border-radius:7px;font-size:.9rem;color:var(--color-text-secondary, #6b7280);cursor:pointer}.ip-btn-ghost:hover{background:#f9fafb}.ip-lessons,.ip-lesson-list{display:flex;flex-direction:column;gap:.5rem}.ip-lesson-empty{text-align:center;padding:2rem;color:var(--color-text-secondary, #9ca3af);font-size:.9rem;border:2px dashed var(--color-border, #e5e7eb);border-radius:10px}.ip-lesson-card{border:1px solid var(--color-border, #e5e7eb);border-radius:10px;overflow:hidden;transition:border-color .15s,box-shadow .15s}.ip-lesson-card:hover{border-color:#fbd0bc}.ip-lesson-card.expanded{border-color:var(--color-primary, #F26522);box-shadow:0 0 0 3px #f265221a}.ip-lesson-add-card{border:2px dashed var(--color-primary, #F26522);background:#fff9f5}.ip-lesson-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem}.ip-lesson-edit-form,.ip-lesson-add-card form{padding:1rem;display:flex;flex-direction:column;gap:.6rem}.ip-lesson-edit-header{display:flex;align-items:center;gap:.6rem;margin-bottom:.25rem}.ip-lesson-edit-label{font-size:.78rem;font-weight:600;color:var(--color-primary, #F26522);text-transform:uppercase;letter-spacing:.04em}.ip-form-row-2,.ip-lesson-form-actions{display:flex;gap:.5rem}.ip-lesson-num{width:28px;height:28px;background:var(--color-primary, #F26522);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.ip-lesson-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.ip-lesson-title{font-weight:600;font-size:.9rem;color:var(--color-text, #111)}.ip-lesson-desc{font-size:.78rem;color:var(--color-text-secondary, #6b7280);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ip-lesson-meta{font-size:.73rem;color:#9ca3af}.ip-lesson-actions{display:flex;gap:.35rem;flex-shrink:0}.ip-icon-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border, #e5e7eb);border-radius:6px;background:transparent;color:var(--color-text-secondary, #6b7280);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.ip-icon-btn:hover{background:#f3f4f6;color:#374151;border-color:#d1d5db}.ip-icon-btn-danger:hover{background:#fff5f5;color:#dc2626;border-color:#fca5a5}.ip-add-lesson-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.65rem;border:2px dashed var(--color-border, #e5e7eb);border-radius:10px;background:transparent;font-size:.875rem;font-weight:600;color:var(--color-text-secondary, #6b7280);cursor:pointer;transition:border-color .15s,color .15s,background .15s;margin-top:.25rem}.ip-add-lesson-btn:hover{border-color:var(--color-primary, #F26522);color:var(--color-primary, #F26522);background:#fff9f5}.ip-video-section{border-top:1px solid var(--color-border, #f3f4f6);padding:.5rem 1rem .6rem;display:flex;flex-direction:column;gap:.3rem;background:#fafafa}.ip-video-item{display:flex;align-items:center;gap:.5rem;padding:.3rem .5rem;border-radius:5px;color:var(--color-text-secondary, #4b5563);font-size:.82rem;transition:background .12s}.ip-video-item:hover{background:#f3f4f6}.ip-video-item>svg{flex-shrink:0;color:var(--color-primary, #F26522)}.ip-video-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:var(--color-text, #111)}.ip-video-dur{font-size:.75rem;color:#9ca3af;flex-shrink:0}.ip-video-del{width:24px;height:24px;flex-shrink:0;opacity:0;transition:opacity .12s}.ip-video-item:hover .ip-video-del{opacity:1}.ip-add-video-btn{display:inline-flex;align-items:center;gap:.35rem;margin-top:.2rem;padding:.25rem .7rem;border:1px dashed var(--color-border, #d1d5db);border-radius:5px;background:transparent;font-size:.78rem;font-weight:600;color:var(--color-text-secondary, #6b7280);cursor:pointer;transition:border-color .15s,color .15s,background .15s;align-self:flex-start}.ip-add-video-btn:hover{border-color:var(--color-primary, #F26522);color:var(--color-primary, #F26522);background:#fff9f5}.ip-modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.ip-modal{background:var(--color-surface, #fff);border-radius:12px;width:100%;max-width:480px;box-shadow:0 20px 60px #0003;overflow:hidden}.ip-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border, #e5e7eb);background:linear-gradient(135deg,#fff5f0,#fff)}.ip-modal-title{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.95rem;color:var(--color-primary, #F26522)}.ip-modal-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:transparent;color:#9ca3af;font-size:.85rem;cursor:pointer;transition:background .15s,color .15s}.ip-modal-close:hover{background:#f3f4f6;color:#374151}.ip-modal-body{padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.ip-file-drop{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border:2px dashed var(--color-border, #d1d5db);border-radius:8px;cursor:pointer;font-size:.85rem;color:var(--color-text-secondary, #6b7280);transition:border-color .15s,background .15s;min-height:54px}.ip-file-drop:hover,.ip-file-drop.has-file{border-color:var(--color-primary, #F26522);background:#fff9f5;color:var(--color-text, #111)}.ip-file-drop em{color:#9ca3af;font-style:normal;font-size:.78rem}.ip-progress-wrap{display:flex;flex-direction:column;gap:.35rem}.ip-progress-bar-bg{height:8px;background:#f3f4f6;border-radius:99px;overflow:hidden}.ip-progress-bar-fill{height:100%;background:var(--color-primary, #F26522);border-radius:99px;transition:width .3s ease}.ip-progress-text{font-size:.78rem;color:var(--color-text-secondary, #6b7280);text-align:right}@media(max-width:640px){.ip-form-grid{grid-template-columns:1fr}.ip-panel-header{flex-direction:column;align-items:flex-start}.ip-tabs{width:100%}.ip-tab{flex:1;justify-content:center}.ip-modal{max-width:100%}}:root{--color-primary: #8DC63F;--color-primary-hover: #b1f453;--color-primary-light: #fef0e7;--color-accent-blue: #2B5DAE;--color-accent-red: #E52420;--color-accent-green: #8DC63F;--color-text: #1a1a2e;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af;--color-bg: #ffffff;--color-bg-secondary: #f9fafb;--color-surface: #ffffff;--color-border: #e5e7eb;--color-border-light: #f3f4f6;--color-input-bg: #f9fafb;--color-success: #8DC63F;--color-warning: #f59e0b;--color-error: #E52420;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}[data-theme=dark]{--color-primary: #F78C56;--color-primary-hover: #F26522;--color-primary-light: #3d2010;--color-text: #f3f4f6;--color-text-secondary: #9ca3af;--color-text-muted: #6b7280;--color-bg: #111827;--color-bg-secondary: #1f2937;--color-surface: #1f2937;--color-border: #374151;--color-border-light: #374151;--color-input-bg: #374151;--color-success: #a3d963;--color-error: #f87171}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);color:var(--color-text);background:var(--color-bg);line-height:1.5;min-height:100vh}#root{min-height:100vh}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button{font-family:inherit;font-size:inherit}ul,ol{list-style:none}input,select,textarea{font-family:inherit}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}@media(min-width:600px){.video-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:768px){html{font-size:16px}.video-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.video-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1440px){.video-grid{grid-template-columns:repeat(4,1fr)}}@media print{.header,.sidebar,.footer,.player-controls{display:none!important}body{color:#000;background:#fff}}
