:root{--forest-950: #05140e;--forest-900: #0a2117;--forest-850: #0d281e;--forest-800: #123628;--forest-700: #1a4937;--forest-600: #23604a;--lime-400: #b9e832;--lime-500: #a7d924;--lime-600: #8bb817;--lime-alpha-10: rgba(185, 232, 50, .1);--lime-alpha-15: rgba(185, 232, 50, .15);--lime-alpha-25: rgba(185, 232, 50, .25);--lime-glow: 0 0 20px rgba(185, 232, 50, .3);--bg-app: #f4f6f1;--bg-card: #ffffff;--bg-surface-elevated: #ffffff;--bg-subtle: #edf1e9;--bg-soft: #e5ece0;--text-primary: #10221a;--text-secondary: #4a5c53;--text-muted: #74887e;--text-light: #9db0a6;--text-on-dark: #f0f7f3;--text-on-dark-muted: #a6c0b3;--border-subtle: #e2e8dc;--border-card: #d7e0cf;--border-hover: #b9c7ae;--border-dark: rgba(255, 255, 255, .08);--accent-blue: #3b82f6;--accent-blue-soft: #eff6ff;--accent-amber: #f59e0b;--accent-amber-soft: #fffbeb;--accent-emerald: #10b981;--accent-emerald-soft: #ecfdf5;--accent-rose: #f43f5e;--accent-rose-soft: #fff1f2;--accent-purple: #8b5cf6;--font-heading: "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--shadow-sm: 0 2px 6px rgba(10, 33, 23, .04), 0 1px 2px rgba(0, 0, 0, .02);--shadow-md: 0 6px 20px rgba(10, 33, 23, .06), 0 2px 6px rgba(10, 33, 23, .03);--shadow-lg: 0 16px 36px rgba(10, 33, 23, .09), 0 4px 12px rgba(10, 33, 23, .04);--shadow-xl: 0 24px 56px rgba(10, 33, 23, .12), 0 8px 24px rgba(10, 33, 23, .05);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .22s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--radius-xs: 6px;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 24px;--radius-pill: 9999px}*{box-sizing:border-box;margin:0;padding:0}html{font-size:15px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);color:var(--text-primary);background:var(--bg-app);min-height:100vh;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-primary);line-height:1.25;font-weight:700;letter-spacing:-.02em}p{color:var(--text-secondary);line-height:1.6}button{font-family:var(--font-body);border:none;background:none;cursor:pointer;color:inherit;outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--lime-500);outline-offset:2px}a{color:inherit;text-decoration:none}input,textarea,select{font-family:var(--font-body);font-size:14px;color:var(--text-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5c5;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#a9b8a2}img,video{-webkit-user-drag:none}@media print{html,body,#root{display:none!important;visibility:hidden!important}}.app-layout{display:flex;min-height:100vh;position:relative}.app-sidebar{width:270px;background:var(--forest-900);color:var(--text-on-dark);display:flex;flex-direction:column;position:fixed;top:0;bottom:0;left:0;z-index:40;transition:width var(--transition-normal),transform var(--transition-normal);border-right:1px solid var(--border-dark);overflow-y:auto;overflow-x:hidden}.app-sidebar.collapsed{width:80px}.sidebar-header{padding:24px 20px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-dark)}.brand-logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}.brand-mark{width:34px;height:34px;display:flex;align-items:flex-end;gap:4px;transform:skew(-8deg);flex-shrink:0}.brand-mark span{width:7px;border-radius:2px;background:var(--lime-400)}.brand-mark span:nth-child(1){height:16px}.brand-mark span:nth-child(2){height:25px}.brand-mark span:nth-child(3){height:34px}.brand-text{display:flex;flex-direction:column;line-height:1.1;white-space:nowrap}.brand-text strong{font-size:19px;font-weight:500;color:#fff;font-family:var(--font-heading)}.brand-text b{font-size:19px;font-weight:800;color:var(--lime-400);font-family:var(--font-heading)}.sidebar-toggle-btn{color:var(--text-on-dark-muted);width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);transition:all var(--transition-fast)}.sidebar-toggle-btn:hover{background:#ffffff14;color:#fff}.sidebar-nav{padding:20px 14px;display:flex;flex-direction:column;gap:4px;flex:1}.nav-section-title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#5d7e70;padding:12px 10px 6px;white-space:nowrap}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 14px;color:var(--text-on-dark-muted);border-radius:var(--radius-sm);font-size:14px;font-weight:500;transition:all var(--transition-fast);position:relative;white-space:nowrap}.nav-link svg{flex-shrink:0}.nav-link:hover{color:#fff;background:#ffffff0f}.nav-link.active{color:#fff;background:#b9e83224;font-weight:600}.nav-link.active svg{color:var(--lime-400)}.nav-link.active:after{content:"";position:absolute;right:12px;width:6px;height:6px;border-radius:50%;background:var(--lime-400);box-shadow:0 0 8px var(--lime-400)}.nav-count-badge{margin-left:auto;font-size:11px;font-weight:700;background:#ffffff1a;padding:2px 7px;border-radius:var(--radius-pill);color:#fff}.sidebar-footer{padding:16px 14px 20px;border-top:1px solid var(--border-dark);display:flex;flex-direction:column;gap:12px}.user-snippet{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);background:#ffffff0a;border:1px solid rgba(255,255,255,.06);cursor:pointer;transition:all var(--transition-fast)}.user-snippet:hover{background:#ffffff14;border-color:#ffffff1f}.user-avatar{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--forest-700);color:var(--lime-400);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0;border:1px solid rgba(185,232,50,.3)}.user-info{display:flex;flex-direction:column;min-width:0;flex:1}.user-name{font-size:13.5px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:11.5px;color:var(--text-on-dark-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-main{flex:1;margin-left:270px;display:flex;flex-direction:column;min-width:0;min-height:100vh;transition:margin-left var(--transition-normal)}.app-main.collapsed{margin-left:80px}.app-topbar{height:70px;background:#f4f6f1d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:20px}.topbar-left{display:flex;align-items:center;gap:16px}.breadcrumb-trail{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--text-muted)}.breadcrumb-trail strong{color:var(--text-primary);font-weight:700}.topbar-right{display:flex;align-items:center;gap:14px}.search-trigger-btn{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--border-card);padding:8px 14px;border-radius:var(--radius-pill);color:var(--text-muted);font-size:13.5px;min-width:220px;transition:all var(--transition-fast)}.search-trigger-btn:hover{border-color:var(--border-hover);color:var(--text-primary)}.search-trigger-btn kbd{margin-left:auto;background:var(--bg-subtle);padding:2px 6px;border-radius:4px;font-size:10.5px;font-weight:700;border:1px solid var(--border-subtle)}.page-container{padding:32px 36px 60px;max-width:1480px;width:100%;margin:0 auto}@media(max-width:1024px){.app-sidebar{transform:translate(-100%)}.app-sidebar.mobile-open{transform:translate(0)}.app-main,.app-main.collapsed{margin-left:0}.page-container{padding:24px 20px 48px}.app-topbar{padding:0 20px}}.mobile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05140e80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:35}.mobile-menu-btn{display:none}@media(max-width:1024px){.mobile-menu-btn{display:inline-flex}.app-sidebar{z-index:40}}.app-boot-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:var(--bg-page, #f6f8f5);color:var(--text-secondary);font-size:14px}.boot-mark{display:flex;align-items:flex-end;gap:5px;height:34px}.boot-mark span{width:6px;background:var(--lime-400);border-radius:2px;animation:bootPulse 1.1s ease-in-out infinite}.boot-mark span:nth-child(1){height:14px;animation-delay:0s}.boot-mark span:nth-child(2){height:22px;animation-delay:.15s}.boot-mark span:nth-child(3){height:30px;animation-delay:.3s}@keyframes bootPulse{0%,to{opacity:.35;transform:scaleY(.7)}50%{opacity:1;transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){.boot-mark span{animation:none;opacity:.8}}.access-denied{background:#fff;border:1px solid var(--border-card);border-radius:var(--radius-md);padding:48px 32px;text-align:center;max-width:520px;margin:40px auto}.access-denied h2{font-size:20px;color:var(--forest-950);margin-bottom:8px}.access-denied p{color:var(--text-secondary);font-size:14px;margin-bottom:20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:14px;padding:10px 18px;border-radius:var(--radius-sm);transition:all var(--transition-fast);cursor:pointer;white-space:nowrap}.btn-sm{padding:6px 12px;font-size:12.5px;border-radius:var(--radius-xs)}.btn-lg{padding:14px 26px;font-size:15.5px;border-radius:var(--radius-md);font-weight:700}.btn-primary{background:var(--lime-400);color:var(--forest-950);box-shadow:0 4px 14px #b9e83247}.btn-primary:hover{background:#cbf53f;transform:translateY(-1px);box-shadow:0 6px 20px #b9e83261}.btn-forest{background:var(--forest-850);color:var(--text-on-dark)}.btn-forest:hover{background:var(--forest-700);color:#fff;transform:translateY(-1px)}.btn-secondary{background:#fff;color:var(--text-primary);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:var(--bg-subtle);border-color:var(--border-hover);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-subtle);color:var(--text-primary)}.btn-danger{background:var(--accent-rose-soft);color:var(--accent-rose);border:1px solid rgba(244,63,94,.2)}.btn-danger:hover{background:#ffe4e6}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-sm);background:#fff;border:1px solid var(--border-subtle);color:var(--text-secondary);transition:all var(--transition-fast)}.icon-btn:hover{background:var(--bg-subtle);color:var(--text-primary);border-color:var(--border-hover)}.icon-btn-sm{width:30px;height:30px;border-radius:var(--radius-xs)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--radius-pill);font-size:11.5px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.badge-lime{background:var(--lime-alpha-15);color:var(--forest-850);border:1px solid rgba(185,232,50,.4)}.badge-forest{background:var(--forest-850);color:var(--lime-400)}.badge-blue{background:var(--accent-blue-soft);color:var(--accent-blue)}.badge-emerald{background:var(--accent-emerald-soft);color:var(--accent-emerald)}.badge-amber{background:var(--accent-amber-soft);color:var(--accent-amber)}.badge-rose{background:var(--accent-rose-soft);color:var(--accent-rose)}.card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-sm);transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-normal)}.card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.progress-bar-container{width:100%;height:8px;background:var(--bg-subtle);border-radius:var(--radius-pill);overflow:hidden;position:relative}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--lime-500),var(--accent-emerald));border-radius:var(--radius-pill);transition:width .4s ease}.progress-bar-fill.forest{background:var(--forest-800)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05140ea6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--border-card);box-shadow:var(--shadow-xl);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .25s cubic-bezier(.16,1,.3,1);position:relative}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;border-bottom:1px solid var(--border-subtle)}.modal-body{padding:26px}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:18px 26px;border-top:1px solid var(--border-subtle);background:#fafbf9;border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.form-group{margin-bottom:18px;display:flex;flex-direction:column;gap:6px}.form-label{font-size:13px;font-weight:600;color:var(--text-primary)}.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;border:1px solid var(--border-card);border-radius:var(--radius-sm);background:#fff;color:var(--text-primary);font-size:14px;transition:all var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--forest-800);box-shadow:0 0 0 3px #b9e83240}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-light)}.toast-container{position:fixed;bottom:24px;right:24px;z-index:999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--forest-900);color:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border:1px solid var(--forest-700);animation:slideInRight .25s ease;min-width:280px;max-width:420px}.toast-success{border-left:4px solid var(--lime-400)}.toast-error{border-left:4px solid var(--accent-rose)}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.dashboard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:20px;flex-wrap:wrap}.welcome-box h1{font-size:28px;font-weight:800;margin-bottom:6px;color:var(--forest-950)}.welcome-box p{font-size:15px;color:var(--text-secondary)}.dashboard-stats-strip{display:flex;align-items:center;gap:12px}.streak-card{display:flex;align-items:center;gap:12px;background:#fff;padding:10px 18px;border-radius:var(--radius-md);border:1px solid var(--border-card);box-shadow:var(--shadow-sm)}.streak-icon{width:40px;height:40px;border-radius:var(--radius-sm);background:var(--accent-amber-soft);color:var(--accent-amber);display:flex;align-items:center;justify-content:center}.streak-info strong{display:block;font-size:17px;font-weight:800;color:var(--forest-950)}.streak-info small{font-size:12px;color:var(--text-muted);font-weight:500}.continue-learning-hero{background:linear-gradient(135deg,var(--forest-900) 0%,var(--forest-800) 100%);border-radius:var(--radius-lg);padding:30px 34px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:32px;position:relative;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.08)}.continue-learning-hero:before{content:"";position:absolute;top:-40px;right:-40px;width:220px;height:220px;background:radial-gradient(circle,#b9e8322e,#b9e83200 70%);border-radius:50%;pointer-events:none}.continue-content{max-width:620px;position:relative;z-index:2}.continue-tag{display:inline-flex;align-items:center;gap:6px;background:#b9e83226;color:var(--lime-400);padding:4px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:12px;border:1px solid rgba(185,232,50,.3)}.continue-content h2{font-size:23px;color:#fff;margin-bottom:6px}.continue-meta{font-size:14px;color:var(--text-on-dark-muted);margin-bottom:18px}.continue-progress-row{display:flex;align-items:center;gap:14px;margin-bottom:22px}.continue-progress-bar{flex:1;height:6px;background:#ffffff26;border-radius:var(--radius-pill);overflow:hidden}.continue-progress-fill{height:100%;background:var(--lime-400);border-radius:var(--radius-pill)}.continue-progress-text{font-size:12.5px;font-weight:700;color:var(--lime-400);white-space:nowrap}.continue-actions{display:flex;align-items:center;gap:14px}.continue-thumbnail-preview{position:relative;width:220px;height:130px;border-radius:var(--radius-md);overflow:hidden;background:var(--forest-950);border:1px solid rgba(255,255,255,.15);flex-shrink:0;display:flex;align-items:center;justify-content:center}.continue-thumbnail-preview img{width:100%;height:100%;object-fit:cover;opacity:.7}.continue-thumbnail-play-overlay{position:absolute;width:44px;height:44px;border-radius:50%;background:var(--lime-400);color:var(--forest-950);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #0000004d;transition:transform var(--transition-fast)}.continue-thumbnail-preview:hover .continue-thumbnail-play-overlay{transform:scale(1.1)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:36px}.kpi-card{background:#fff;border:1px solid var(--border-card);border-radius:var(--radius-md);padding:20px 22px;display:flex;align-items:center;gap:18px;box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.kpi-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--border-hover)}.kpi-icon-wrap{width:48px;height:48px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-icon-wrap.forest{background:var(--forest-850);color:var(--lime-400)}.kpi-icon-wrap.lime{background:var(--lime-alpha-15);color:var(--forest-800)}.kpi-icon-wrap.blue{background:var(--accent-blue-soft);color:var(--accent-blue)}.kpi-icon-wrap.amber{background:var(--accent-amber-soft);color:var(--accent-amber)}.kpi-icon-wrap.emerald{background:var(--accent-emerald-soft);color:var(--accent-emerald)}.kpi-details{display:flex;flex-direction:column}.kpi-label{font-size:12.5px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px}.kpi-value{font-size:24px;font-weight:800;color:var(--forest-950);font-family:var(--font-heading)}.kpi-subtext{font-size:11.5px;color:var(--text-muted);margin-top:2px}.dashboard-main-grid{display:grid;grid-template-columns:2fr 1fr;gap:28px;margin-bottom:40px}@media(max-width:1100px){.dashboard-main-grid{grid-template-columns:1fr}}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.section-title{font-size:19px;font-weight:700;color:var(--forest-950)}.enrolled-courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.enrolled-course-card{background:#fff;border:1px solid var(--border-card);border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.enrolled-course-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--border-hover)}.course-card-cover{height:140px;background:var(--forest-900);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.course-card-cover img{width:100%;height:100%;object-fit:cover;opacity:.85}.course-badge-overlay{position:absolute;top:12px;left:12px;z-index:2}.course-card-body{padding:18px;display:flex;flex-direction:column;flex:1}.course-card-title{font-size:16px;font-weight:700;margin-bottom:8px;color:var(--forest-950);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-card-stats{font-size:12.5px;color:var(--text-muted);display:flex;align-items:center;gap:12px;margin-bottom:16px}.course-card-progress{margin-top:auto;padding-top:14px;border-top:1px solid var(--border-subtle)}.course-card-progress-labels{display:flex;justify-content:space-between;font-size:12px;font-weight:600;margin-bottom:6px}.activity-card{background:#fff;border:1px solid var(--border-card);border-radius:var(--radius-md);padding:24px;box-shadow:var(--shadow-sm)}.weekly-chart-bars{display:flex;align-items:flex-end;justify-content:space-between;height:140px;padding-top:20px;gap:10px}.chart-bar-column{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;height:100%;justify-content:flex-end}.chart-bar-track{width:100%;max-width:28px;background:var(--bg-subtle);border-radius:var(--radius-xs);height:100%;display:flex;align-items:flex-end;overflow:hidden}.chart-bar-fill{width:100%;background:var(--forest-800);border-radius:var(--radius-xs);transition:height .5s ease}.chart-bar-fill.active{background:var(--lime-500)}.chart-day-label{font-size:11px;font-weight:600;color:var(--text-muted)}.recent-lessons-list{display:flex;flex-direction:column;gap:10px}.recent-lesson-item{display:flex;align-items:center;gap:14px;padding:12px 14px;background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.recent-lesson-item:hover{border-color:var(--border-hover);background:var(--bg-subtle)}.recent-lesson-status{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.recent-lesson-status.completed{background:var(--accent-emerald-soft);color:var(--accent-emerald)}.recent-lesson-status.in-progress{background:var(--lime-alpha-15);color:var(--forest-800)}.recent-lesson-info{flex:1;min-width:0}.recent-lesson-title{font-size:13.5px;font-weight:600;color:var(--forest-950);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-lesson-course{font-size:11.5px;color:var(--text-muted)}.player-page{display:flex;flex-direction:column;height:calc(100vh - 70px);overflow:hidden;background:#fff}.player-header{height:60px;background:#fff;border-bottom:1px solid var(--border-subtle);padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0}.player-header-left{display:flex;align-items:center;gap:16px;min-width:0}.player-course-title{font-size:15px;font-weight:700;color:var(--forest-950);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-header-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.player-progress-pill{display:flex;align-items:center;gap:10px;background:var(--bg-subtle);padding:6px 12px;border-radius:var(--radius-pill);font-size:12.5px;font-weight:700;color:var(--forest-900)}.player-progress-pill-bar{width:60px;height:6px;background:#cbd5c5;border-radius:99px;overflow:hidden}.player-progress-pill-fill{height:100%;background:var(--forest-850);border-radius:99px}.player-body{display:flex;flex:1;overflow:hidden}.player-content-area{flex:1;display:flex;flex-direction:column;overflow-y:auto;min-width:0;background:#f8faf7}.video-wrapper{background:#000;position:relative;width:100%;padding-top:56.25%;flex-shrink:0}.video-container-inner{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.video-element{width:100%;height:100%;object-fit:contain}.player-drm-watermark{position:absolute;top:18px;right:18px;z-index:10;pointer-events:none;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:4px 10px;border-radius:6px;border:1px solid rgba(255,255,255,.12);color:#ffffff8c;font-size:11px;font-family:var(--font-mono);letter-spacing:.02em;-webkit-user-select:none;user-select:none}.player-capture-shield-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;background:#040e0a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;animation:captureShieldFadeIn .15s ease-out}@keyframes captureShieldFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.video-simulation-screen{width:100%;height:100%;background:linear-gradient(135deg,#091d15,#05130e);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center;color:#fff;position:relative}.video-simulation-badge{background:#b9e83226;color:var(--lime-400);border:1px solid rgba(185,232,50,.3);padding:4px 12px;border-radius:var(--radius-pill);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:16px}.video-simulation-title{font-size:22px;font-weight:700;color:#fff;margin-bottom:8px;max-width:600px}.video-simulation-sub{font-size:14px;color:#a3b8ad;max-width:500px;margin-bottom:24px}.video-play-btn-large{width:68px;height:68px;border-radius:50%;background:var(--lime-400);color:var(--forest-950);display:flex;align-items:center;justify-content:center;box-shadow:0 0 30px #b9e83266;transition:transform var(--transition-fast),box-shadow var(--transition-fast);cursor:pointer}.video-play-btn-large:hover{transform:scale(1.08);box-shadow:0 0 40px #b9e83299}.video-controls-bar{background:#0c1f17;padding:10px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff;border-top:1px solid rgba(255,255,255,.08)}.video-controls-left{display:flex;align-items:center;gap:14px}.video-time-display{font-size:12.5px;font-family:var(--font-mono);color:#a4b8ad}.video-progress-seek-bar{flex:1;height:6px;background:#fff3;border-radius:99px;cursor:pointer;position:relative}.video-progress-seek-fill{height:100%;background:var(--lime-400);border-radius:99px;position:relative}.video-progress-seek-fill:after{content:"";position:absolute;right:-5px;top:-4px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #0000004d}.video-controls-right{display:flex;align-items:center;gap:12px}.playback-speed-select{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.15);padding:3px 8px;border-radius:var(--radius-xs);font-size:11.5px;font-weight:600;cursor:pointer}.lesson-action-bar{background:#fff;border-bottom:1px solid var(--border-subtle);padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.lesson-meta-info{display:flex;flex-direction:column}.lesson-module-tag{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--forest-700);margin-bottom:4px}.lesson-main-title{font-size:20px;font-weight:800;color:var(--forest-950)}.lesson-control-buttons{display:flex;align-items:center;gap:10px}.player-tabs-wrap{padding:24px 28px 48px}.player-tabs-nav{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border-subtle);margin-bottom:24px}.player-tab-btn{padding:10px 18px;font-size:14px;font-weight:600;color:var(--text-secondary);border-bottom:2px solid transparent;transition:all var(--transition-fast)}.player-tab-btn:hover{color:var(--forest-900)}.player-tab-btn.active{color:var(--forest-950);border-bottom-color:var(--forest-850);font-weight:700}.rich-notes-wrapper{background:#fff;border:1px solid var(--border-card);border-radius:var(--radius-md);box-shadow:0 4px 20px #0000000a;overflow:hidden;display:flex;flex-direction:column}.rich-notes-toolbar{background:#f8faf7;border-bottom:1px solid var(--border-subtle);padding:8px 12px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;-webkit-user-select:none;user-select:none}.toolbar-group{display:flex;align-items:center;gap:2px}.toolbar-btn{width:30px;height:30px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--forest-900);background:transparent;border:1px solid transparent;cursor:pointer;transition:all .15s ease;font-size:13px}.toolbar-btn:hover{background:#b9e83240;border-color:#b9e83266;color:var(--forest-950)}.toolbar-btn:active{transform:scale(.95)}.toolbar-btn-text{width:auto;padding:0 8px;gap:5px;font-size:12px;font-weight:600}.toolbar-divider{width:1px;height:20px;background:var(--border-subtle);margin:0 4px}.toolbar-dropdown-menu{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid var(--border-card);border-radius:8px;box-shadow:0 10px 25px #0000001f;padding:6px;z-index:50;display:flex;flex-direction:column;min-width:150px}.toolbar-dropdown-menu button{padding:8px 12px;text-align:left;border-radius:6px;font-size:13px;color:var(--forest-950);cursor:pointer;transition:background .15s ease;border:none;background:transparent}.toolbar-dropdown-menu button:hover{background:var(--bg-subtle)}.toolbar-color-palette{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid var(--border-card);border-radius:8px;box-shadow:0 10px 25px #0000001f;padding:10px;z-index:50;width:140px}.toolbar-right-meta{margin-left:auto;display:flex;align-items:center;gap:10px}.save-indicator{font-size:11.5px;font-weight:700;display:flex;align-items:center}.save-pulse{width:7px;height:7px;border-radius:50%;background:var(--accent-amber);display:inline-block;animation:pulse 1s infinite}.toolbar-action-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;background:#fff;border:1px solid var(--border-card);border-radius:6px;font-size:12px;font-weight:600;color:var(--forest-900);cursor:pointer;transition:all .15s ease}.toolbar-action-btn:hover{background:var(--bg-subtle);border-color:var(--forest-700)}.rich-notes-canvas{min-height:260px;max-height:520px;overflow-y:auto;padding:20px 24px;outline:none;font-family:var(--font-body);font-size:14.5px;line-height:1.7;color:var(--forest-950);background:#fff}.rich-notes-canvas[data-placeholder]:empty:before{content:attr(data-placeholder);color:#94a3b8;font-style:italic;pointer-events:none;display:block}.rich-notes-canvas h1{font-size:22px;font-weight:800;margin:16px 0 8px;color:var(--forest-950)}.rich-notes-canvas h2{font-size:18px;font-weight:750;margin:14px 0 6px;color:var(--forest-950)}.rich-notes-canvas h3{font-size:15.5px;font-weight:700;margin:12px 0 4px;color:var(--forest-900)}.rich-notes-canvas blockquote{border-left:3px solid var(--lime-500);background:#b9e83214;padding:8px 14px;margin:12px 0;border-radius:0 6px 6px 0;font-style:italic;color:var(--forest-900)}.rich-notes-canvas pre{background:#0f172a;color:#f8fafc;padding:12px 16px;border-radius:8px;font-family:var(--font-mono);font-size:13px;overflow-x:auto;margin:12px 0}.rich-notes-canvas ul,.rich-notes-canvas ol{padding-left:24px;margin:8px 0}.rich-notes-canvas a{color:#0284c7;text-decoration:underline}.rich-notes-footer{background:#fbfdfa;border-top:1px solid var(--border-subtle);padding:8px 18px;display:flex;align-items:center;justify-content:space-between}.player-sidebar{width:360px;background:#fff;border-left:1px solid var(--border-subtle);display:flex;flex-direction:column;flex-shrink:0;height:100%}.curriculum-header{padding:18px 20px;border-bottom:1px solid var(--border-subtle)}.curriculum-header-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.curriculum-header-title h3{font-size:16px;font-weight:700;color:var(--forest-950)}.curriculum-search-input{width:100%;padding:8px 12px;font-size:13px;border:1px solid var(--border-card);border-radius:var(--radius-sm);background:var(--bg-subtle)}.curriculum-modules-list{flex:1;overflow-y:auto;padding:12px 0}.curriculum-module-group{margin-bottom:8px}.curriculum-module-toggle{width:100%;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;background:var(--bg-subtle);border:none;font-weight:700;font-size:13.5px;color:var(--forest-950);text-align:left;cursor:pointer;transition:background var(--transition-fast)}.curriculum-module-toggle:hover{background:#e4ebe0}.module-toggle-left{display:flex;align-items:center;gap:10px}.module-progress-chip{font-size:11px;font-weight:600;color:var(--text-muted)}.curriculum-lessons-sublist{display:flex;flex-direction:column}.curriculum-lesson-row{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid #f0f3ed;cursor:pointer;transition:all var(--transition-fast);text-align:left;position:relative}.curriculum-lesson-row:hover{background:#f5f8f2}.curriculum-lesson-row.active{background:#b9e8321f;border-left:3px solid var(--lime-500)}.lesson-check-status-icon{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lesson-check-status-icon.completed{background:var(--accent-emerald);color:#fff}.lesson-check-status-icon.active{background:var(--lime-400);color:var(--forest-950)}.lesson-check-status-icon.unwatched{border:1.5px solid #cbd5c5;color:transparent}.lesson-row-info{flex:1;min-width:0}.lesson-row-title{font-size:13px;font-weight:600;color:var(--forest-950);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.curriculum-lesson-row.active .lesson-row-title{color:var(--forest-900);font-weight:700}.lesson-row-meta{font-size:11.5px;color:var(--text-muted);display:flex;align-items:center;gap:8px;margin-top:2px}@media(max-width:900px){.player-body{flex-direction:column;overflow:visible}.player-content-area{overflow-y:visible}.player-sidebar{width:100%;height:auto;max-height:460px;border-left:none;border-top:1px solid var(--border-subtle)}.lesson-action-bar{flex-wrap:wrap;gap:14px;padding:16px 18px}.lesson-control-buttons{width:100%;flex-wrap:wrap;gap:8px}.player-tabs-nav{overflow-x:auto;scrollbar-width:none}.player-tabs-nav::-webkit-scrollbar{display:none}.player-tab-btn{flex-shrink:0}.video-controls-bar{flex-wrap:wrap;gap:10px}}.catalog-hero{background:linear-gradient(135deg,var(--forest-950) 0%,var(--forest-900) 50%,var(--forest-800) 100%);border-radius:var(--radius-lg);padding:44px 48px;color:#fff;margin-bottom:36px;position:relative;overflow:hidden;box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:space-between;gap:30px}.catalog-hero:before{content:"";position:absolute;top:-50px;right:-50px;width:320px;height:320px;background:radial-gradient(circle,rgba(185,232,50,.2) 0%,transparent 70%);border-radius:50%;pointer-events:none}.catalog-hero-content{max-width:650px;position:relative;z-index:2}.catalog-hero-badge{display:inline-flex;align-items:center;gap:8px;background:#b9e83226;color:var(--lime-400);border:1px solid rgba(185,232,50,.3);padding:5px 12px;border-radius:var(--radius-pill);font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:16px}.catalog-hero h1{font-size:36px;font-weight:800;color:#fff;margin-bottom:12px;line-height:1.2}.catalog-hero h1 span{color:var(--lime-400)}.catalog-hero p{font-size:16px;color:#b7cbbf;line-height:1.6}.catalog-filters-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:30px;flex-wrap:wrap}.filter-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-pill{padding:8px 16px;border-radius:var(--radius-pill);font-size:13.5px;font-weight:600;background:#fff;border:1px solid var(--border-card);color:var(--text-secondary);transition:all var(--transition-fast);cursor:pointer}.filter-pill:hover{border-color:var(--border-hover);color:var(--text-primary)}.filter-pill.active{background:var(--forest-850);color:#fff;border-color:var(--forest-850)}.catalog-search-box{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border-card);padding:8px 14px;border-radius:var(--radius-pill);width:260px}.catalog-search-box input{border:none;background:none;outline:none;font-size:13.5px;width:100%}.catalog-courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:30px;margin-bottom:48px}@media(max-width:768px){.catalog-courses-grid{grid-template-columns:1fr;gap:20px}}.catalog-course-card{background:#fff;border:1px solid var(--border-card);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-normal);position:relative}.catalog-course-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px -15px #0a21171f,0 0 0 1px #b9e83240;border-color:var(--border-hover)}.catalog-card-image-wrap{height:205px;background:var(--forest-950);position:relative;overflow:hidden}.catalog-card-image-wrap img{width:100%;height:100%;object-fit:cover;opacity:.9;transition:transform .4s cubic-bezier(.16,1,.3,1)}.catalog-course-card:hover .catalog-card-image-wrap img{transform:scale(1.05)}.catalog-card-overlay-gradient{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#05140e99,#05140e00 45%,#05140eb3);pointer-events:none;z-index:1}.catalog-card-top-badges{position:absolute;top:14px;left:14px;right:14px;display:flex;align-items:center;justify-content:space-between;z-index:3}.card-category-glass-pill{background:#0a2117d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);color:#fff;padding:5px 12px;font-size:11px;font-weight:750;border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase}.card-level-pill{padding:5px 12px;border-radius:var(--radius-pill);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 2px 8px #0003}.card-enrolled-glow-badge{display:inline-flex;align-items:center;gap:5px;background:#10b981;color:#fff;padding:5px 12px;border-radius:var(--radius-pill);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 0 14px #10b98180}.catalog-card-hover-play{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:2;opacity:0;transition:opacity var(--transition-fast);background:#0a211740}.catalog-course-card:hover .catalog-card-hover-play{opacity:1}.play-icon-bubble{width:50px;height:50px;border-radius:50%;background:#ffffff40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #0000004d;transform:scale(.9);transition:transform var(--transition-fast)}.catalog-course-card:hover .play-icon-bubble{transform:scale(1)}.catalog-card-body{padding:24px;display:flex;flex-direction:column;flex:1}.card-meta-subheader{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.card-kicker{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:800;text-transform:uppercase;color:var(--forest-700);letter-spacing:.05em}.kicker-dot{width:6px;height:6px;border-radius:50%;background:var(--lime-600)}.card-rating-chip{display:inline-flex;align-items:center;gap:4px;background:#fef8eb;border:1px solid #fde68a;color:#92400e;padding:3px 8px;border-radius:var(--radius-xs);font-size:12px}.card-rating-chip strong{color:#78350f;font-weight:800}.card-rating-chip span{color:#b45309;font-size:11px}.catalog-card-title{font-size:18px;font-weight:800;color:var(--forest-950);margin-bottom:8px;line-height:1.35;min-height:48px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color var(--transition-fast)}.catalog-card-title:hover{color:var(--forest-700)}.catalog-card-desc{font-size:13.5px;color:var(--text-secondary);line-height:1.55;margin-bottom:14px;min-height:42px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-perks-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.perk-chip{display:inline-flex;align-items:center;gap:5px;background:var(--bg-subtle);color:var(--forest-900);border:1px solid var(--border-subtle);padding:3px 9px;border-radius:6px;font-size:11.5px;font-weight:600}.catalog-card-instructor{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--border-subtle)}.instructor-avatar-wrap{position:relative;width:34px;height:34px;flex-shrink:0}.instructor-avatar-wrap img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:1.5px solid var(--border-card)}.instructor-verified-tick{position:absolute;bottom:-2px;right:-2px;width:13px;height:13px;border-radius:50%;background:#10b981;color:#fff;font-size:8px;font-weight:900;display:flex;align-items:center;justify-content:center;border:1.5px solid #ffffff}.instructor-text{display:flex;flex-direction:column;min-width:0}.instructor-text strong{font-size:13px;font-weight:750;color:var(--forest-950);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instructor-text small{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catalog-specs-bar{background:#f6f8f3;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:10px 14px;margin-bottom:18px;display:flex;align-items:center;justify-content:space-between}.spec-item{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--forest-900);white-space:nowrap}.spec-item svg{color:var(--forest-700);flex-shrink:0}.spec-divider{width:1px;height:14px;background:var(--border-card)}.catalog-card-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-top:auto;padding-top:14px;border-top:1px solid var(--border-subtle)}.catalog-price-container{display:flex;flex-direction:column;min-width:0}.price-kicker{font-size:10px;font-weight:750;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.price-row{display:flex;align-items:baseline;gap:5px}.price-row strong{font-size:21px;font-weight:900;color:var(--forest-950);font-family:var(--font-heading);line-height:1.1;white-space:nowrap}.currency-pill{font-size:11px;font-weight:700;color:var(--text-muted)}.original-price-row{display:flex;align-items:center;gap:6px;margin-top:2px}.original-price-row del{font-size:11.5px;color:#94a3b8}.discount-tag{font-size:10px;font-weight:800;background:var(--lime-alpha-15);color:var(--forest-800);padding:1px 5px;border-radius:4px}.card-actions-group{display:flex;align-items:center;gap:8px;flex-shrink:0}.course-detail-container{max-width:820px}.detail-hero-banner{background:linear-gradient(135deg,var(--forest-900) 0%,var(--forest-800) 100%);padding:28px 32px;color:#fff;border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);position:relative}.detail-syllabus-section{padding:24px 32px}.detail-module-accordion{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:10px;overflow:hidden}.detail-module-header{width:100%;padding:14px 18px;background:var(--bg-subtle);display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:700;color:var(--forest-950);cursor:pointer}.detail-lesson-row{display:flex;align-items:center;justify-content:space-between;padding:11px 20px;border-top:1px solid #f0f3ed;font-size:13px;color:var(--text-secondary)}.checkout-modal-content{max-width:580px}.checkout-course-preview{display:flex;align-items:center;gap:16px;padding:16px;background:var(--bg-subtle);border-radius:var(--radius-md);margin-bottom:22px}.checkout-course-img{width:70px;height:50px;border-radius:var(--radius-xs);background:var(--forest-900);object-fit:cover}.checkout-methods-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.payment-method-card{border:2px solid var(--border-subtle);border-radius:var(--radius-sm);padding:12px 14px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:all var(--transition-fast)}.payment-method-card:hover{border-color:var(--border-hover)}.payment-method-card.selected{border-color:var(--forest-850);background:#b9e83214}.orders-table-wrapper{background:#fff;border:1px solid var(--border-card);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.orders-table{width:100%;border-collapse:collapse;text-align:left}.orders-table th{background:var(--bg-subtle);padding:14px 18px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border-subtle)}.orders-table td{padding:16px 18px;font-size:13.5px;border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}.orders-table tr:last-child td{border-bottom:none}.orders-table tr:hover td{background:#fafbf9}.invoice-container{background:#fff;padding:36px 40px;border-radius:var(--radius-lg);max-width:650px}.invoice-header{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:2px solid var(--border-subtle);padding-bottom:24px;margin-bottom:24px}.invoice-brand strong{font-size:24px;color:var(--forest-950);font-family:var(--font-heading)}.invoice-brand b{color:var(--lime-600)}.invoice-meta{text-align:right;font-size:13px;color:var(--text-secondary)}.invoice-table{width:100%;border-collapse:collapse;margin:24px 0}.invoice-table th{border-bottom:1px solid var(--border-card);padding:10px 0;font-size:12px;text-transform:uppercase;color:var(--text-muted)}.invoice-table td{padding:14px 0;font-size:14px;border-bottom:1px solid var(--border-subtle)}.certificate-preview-card{background:#fff;border:10px solid var(--forest-900);border-radius:var(--radius-md);padding:44px 50px;text-align:center;box-shadow:var(--shadow-xl);position:relative;max-width:740px;margin:0 auto}.certificate-seal{width:80px;height:80px;border-radius:50%;background:var(--forest-900);color:var(--lime-400);display:inline-flex;align-items:center;justify-content:center;margin-bottom:20px;border:3px solid var(--lime-400)}.certificate-title{font-size:26px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--forest-950);margin-bottom:10px}.certificate-student-name{font-size:32px;font-weight:900;color:var(--forest-850);margin:18px 0 10px;font-family:var(--font-heading);text-decoration:underline;text-underline-offset:8px;text-decoration-color:var(--lime-500)}.landing-page-root{background:var(--bg-main);color:var(--text-primary);min-height:100vh}.landing-header{position:sticky;top:0;z-index:100;background:#0a2117f0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08);padding:16px 32px}.landing-header-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.landing-brand{display:flex;align-items:center;gap:12px;text-decoration:none}.landing-brand-text{display:flex;flex-direction:column}.landing-brand-text .brand-title{font-family:var(--font-heading);font-size:19px;font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1.1}.landing-brand-text .brand-subtitle{font-size:11.5px;font-weight:700;color:var(--lime-400);text-transform:uppercase;letter-spacing:.12em}.landing-nav-links{display:flex;align-items:center;gap:28px}.landing-nav-links a{color:#cbd5e1;text-decoration:none;font-size:14px;font-weight:600;transition:color var(--transition-fast)}.landing-nav-links a:hover{color:var(--lime-400)}.landing-header-actions{display:flex;align-items:center;gap:12px}.landing-hero-section{background:radial-gradient(circle at 50% 20%,#0e3527,#081a13 70%,#05120d);color:#fff;padding:80px 24px 70px;text-align:center;border-bottom:1px solid rgba(185,232,50,.15)}.landing-hero-container{max-width:920px;margin:0 auto}.landing-hero-pill{display:inline-flex;align-items:center;gap:8px;background:#b9e8321f;border:1px solid rgba(185,232,50,.35);color:var(--lime-400);font-size:11.5px;font-weight:800;letter-spacing:.08em;padding:6px 16px;border-radius:var(--radius-pill);margin-bottom:24px}.landing-hero-title{font-family:var(--font-heading);font-size:48px;font-weight:900;line-height:1.15;letter-spacing:-.03em;margin-bottom:20px}.landing-hero-title .gradient-highlight{background:linear-gradient(135deg,#b9e832,#34d399);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.landing-hero-subtitle{font-size:17px;line-height:1.6;color:#cbd5e1;max-width:740px;margin:0 auto 36px}.landing-hero-cta-row{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:50px}.landing-stats-strip{display:flex;align-items:center;justify-content:center;gap:28px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);padding:18px 32px;border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.landing-stat-item{display:flex;flex-direction:column}.landing-stat-item strong{font-size:20px;font-weight:800;color:#fff}.landing-stat-item small{font-size:12px;color:#94a3b8}.stat-divider{width:1px;height:28px;background:#ffffff1f}.landing-catalog-section{max-width:1280px;margin:0 auto;padding:70px 24px}.landing-section-header{text-align:center;max-width:680px;margin:0 auto 48px}.section-eyebrow{font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--forest-700);text-transform:uppercase;margin-bottom:8px;display:block}.section-headline{font-size:32px;font-weight:800;color:var(--forest-950);margin-bottom:12px}.section-subtext{font-size:15px;color:var(--text-secondary);line-height:1.55}.landing-security-section{max-width:1280px;margin:0 auto 80px;padding:0 24px}.landing-security-box{background:linear-gradient(135deg,#092117,#05150e);border:1px solid rgba(185,232,50,.25);border-radius:24px;padding:50px 40px;color:#fff;text-align:center;box-shadow:0 25px 50px -12px #0a211740}.security-icon-badge{width:64px;height:64px;border-radius:50%;background:#b9e83226;border:1.5px solid var(--lime-400);display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.landing-security-box h2{font-size:28px;font-weight:800;margin-bottom:12px;color:#fff}.landing-security-box p{font-size:15px;color:#cbd5e1;max-width:680px;margin:0 auto 36px;line-height:1.6}.security-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:left}.sec-feature-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:24px}.sec-feature-card h4{font-size:15px;font-weight:750;color:#fff;margin:12px 0 6px}.sec-feature-card p{font-size:13px;color:#94a3b8;margin:0;line-height:1.5}.landing-faq-section{max-width:820px;margin:0 auto 90px;padding:0 24px}.faq-accordion-list{display:flex;flex-direction:column;gap:14px}.faq-item{background:#fff;border:1px solid var(--border-card);border-radius:14px;overflow:hidden;cursor:pointer;transition:all var(--transition-fast)}.faq-item:hover{border-color:var(--border-hover)}.faq-question-row{display:flex;align-items:center;justify-content:space-between;padding:20px 24px}.faq-question-row h3{font-size:15.5px;font-weight:700;color:var(--forest-950);margin:0}.faq-chevron{color:var(--text-muted);transition:transform .25s ease}.faq-item.open .faq-chevron{transform:rotate(180deg);color:var(--forest-850)}.faq-answer-body{padding:0 24px 20px;font-size:14px;color:var(--text-secondary);line-height:1.6}.landing-footer{background:#081a13;color:#fff;padding:60px 24px 30px;border-top:1px solid rgba(255,255,255,.08)}.landing-footer-inner{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:40px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.08)}.footer-links-col{display:flex;flex-direction:column;gap:10px}.footer-links-col strong{font-size:13.5px;color:#fff;margin-bottom:4px}.footer-links-col a{font-size:13px;color:#94a3b8;text-decoration:none;transition:color var(--transition-fast)}.footer-links-col a:hover{color:var(--lime-400)}.footer-bottom-bar{max-width:1280px;margin:24px auto 0;display:flex;justify-content:space-between;font-size:12px;color:#64748b;flex-wrap:wrap;gap:12px}@media(max-width:900px){.landing-hero-title{font-size:34px}.security-features-grid{grid-template-columns:1fr}.landing-nav-links{display:none}}.admin-dashboard-page{padding-bottom:60px}.admin-page-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px;flex-wrap:wrap}.admin-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:30px}@media(max-width:1024px){.admin-metrics-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.admin-metrics-grid{grid-template-columns:1fr}}.admin-metric-card{background:#fff;border:1px solid var(--border-card);border-radius:var(--radius-md);padding:22px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.admin-metric-card:hover{transform:translateY(-2px)}.admin-metric-icon{width:48px;height:48px;border-radius:12px;background:var(--bg-subtle);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-metric-info{display:flex;flex-direction:column}.admin-metric-title{font-size:12px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.admin-metric-value{font-size:26px;font-weight:850;color:var(--forest-950);font-family:var(--font-heading);line-height:1.1;margin-bottom:2px}.admin-metric-sub{font-size:11px;color:var(--text-muted)}.admin-content-card{background:#fff;border:1px solid var(--border-card);border-radius:var(--radius-md);padding:24px;box-shadow:var(--shadow-sm)}.admin-table-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.admin-search-wrapper{display:flex;align-items:center;gap:8px;background:var(--bg-subtle);border:1px solid var(--border-card);border-radius:var(--radius-pill);padding:8px 16px;width:340px}.admin-search-wrapper input{border:none;background:none;outline:none;font-size:13.5px;width:100%}.admin-table-responsive{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:13.5px;text-align:left}.admin-table th{background:#f8faf7;padding:12px 16px;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);border-bottom:1px solid var(--border-subtle)}.admin-table td{padding:16px;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.admin-table tr:hover td{background:#fafbf9}.admin-table tr.row-banned td{background:#fff5f5}.admin-user-cell{display:flex;align-items:center;gap:12px}.admin-user-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;border:1px solid var(--border-card)}.admin-user-cell strong{display:block;color:var(--forest-950);font-size:13.5px;font-weight:750}.admin-user-cell small{font-size:11.5px;color:var(--text-muted)}.security-incidents-list{display:flex;flex-direction:column;gap:10px;max-height:320px;overflow-y:auto}.incident-log-item{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:10px;background:var(--bg-subtle);border:1px solid var(--border-subtle)}.incident-icon-pill{width:32px;height:32px;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--shadow-sm)}.admin-form-row-2{display:grid;grid-template-columns:2fr 1fr;gap:16px}.admin-form-row-equal-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.admin-form-row-sidebar{display:grid;grid-template-columns:1.4fr 1fr;gap:20px}.admin-field-group{display:flex;flex-direction:column;gap:6px}.admin-field-label{font-size:12.5px;font-weight:750;color:var(--forest-900);display:flex;align-items:center;justify-content:space-between}.admin-field-label span.req{color:#ef4444;margin-left:2px}.admin-input,.admin-select,.admin-textarea{width:100%;padding:10px 14px;border-radius:8px;border:1px solid var(--border-card);background:#fff;font-size:13.5px;color:var(--forest-950);outline:none;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.admin-input:focus,.admin-select:focus,.admin-textarea:focus{border-color:var(--forest-700);box-shadow:0 0 0 3px #0d281e14}.admin-cover-preview-box{border:1px solid var(--border-card);border-radius:10px;overflow:hidden;background:#0d281e;aspect-ratio:16 / 9;position:relative;display:flex;align-items:center;justify-content:center}.admin-cover-preview-box img{width:100%;height:100%;object-fit:cover}.admin-cover-preview-badge{position:absolute;top:10px;right:10px;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;font-size:11px;font-weight:600;padding:3px 8px;border-radius:4px}.admin-tag-list{display:flex;flex-wrap:wrap;gap:8px;min-height:40px;padding:8px;background:var(--bg-subtle);border:1px dashed var(--border-card);border-radius:8px}.admin-tag-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:#fff;border:1px solid var(--border-card);border-radius:6px;font-size:12.5px;font-weight:600;color:var(--forest-950)}.admin-tag-chip button{background:none;border:none;padding:0;cursor:pointer;color:var(--text-muted);display:flex;align-items:center}.admin-tag-chip button:hover{color:#ef4444}.admin-courses-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.admin-course-mgmt-card{background:#fff;border:1px solid var(--border-card);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.admin-course-mgmt-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.admin-course-card-cover-wrap{position:relative;aspect-ratio:16 / 9;width:100%;overflow:hidden;background:#12281e}.admin-course-card-cover-wrap img{width:100%;height:100%;object-fit:cover}.admin-course-card-status-badge{position:absolute;top:10px;left:10px}.admin-course-card-body{padding:18px;display:flex;flex-direction:column;flex:1}.admin-course-card-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:11.5px;color:var(--text-muted)}.admin-course-card-title{font-size:16px;font-weight:800;color:var(--forest-950);line-height:1.3;margin-bottom:8px}.admin-course-card-stats{display:flex;align-items:center;gap:12px;padding:10px 0;margin:10px 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);font-size:12.5px;color:var(--forest-900)}.admin-course-card-footer{margin-top:auto;padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.curriculum-module-card{border:1px solid var(--border-card);border-radius:12px;background:#fff;overflow:hidden;box-shadow:var(--shadow-sm);margin-bottom:16px}.curriculum-module-header{padding:14px 18px;background:#f8faf7;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.curriculum-lesson-row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;gap:14px;border-bottom:1px solid var(--border-subtle);transition:background .15s ease}.curriculum-lesson-row:hover{background:#fafbf9}.curriculum-lesson-row:last-child{border-bottom:none}.curriculum-lesson-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.curriculum-editor-panel{padding:18px 20px;background:#f4f8f4;border-bottom:1px solid var(--border-card)}@media(max-width:768px){.admin-form-row-2,.admin-form-row-equal-2,.admin-form-row-3,.admin-form-row-sidebar{grid-template-columns:1fr!important;gap:14px!important}.admin-courses-cards-grid{grid-template-columns:1fr}.curriculum-module-header,.curriculum-lesson-row{flex-direction:column;align-items:flex-start;gap:10px}.curriculum-lesson-actions{width:100%;justify-content:flex-end;padding-top:8px;border-top:1px dashed var(--border-subtle)}.admin-table-controls{flex-direction:column;align-items:stretch}.admin-search-wrapper{width:100%!important}}@media(max-width:480px){.admin-metric-card{padding:16px}.admin-page-header{margin-bottom:20px}}
