:root{--navy:#0a2540;--navy-dark:#061a30;--navy-light:#123b6b;--gold:#d4af37;--gold-light:#f2c94c;--gold-dark:#a8862a;--white:#fff;--off-white:#f4f6fa;--text-muted:#6b7a93;--danger:#d64545;--success:#2e9e5b;--border:#e3e8f0}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--off-white);color:var(--navy-dark);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:inherit}.auth-page{background:linear-gradient(160deg, var(--navy-dark), var(--navy-light));justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;overflow-y:auto}.onboarding-card{max-width:460px;margin:auto 0}.onboard-progress{gap:8px;margin:0 0 20px;display:flex}.onboard-dot{background:var(--border);border-radius:3px;flex:1;height:6px;transition:background .2s}.onboard-dot-active{background:var(--gold)}.onboard-form{flex-direction:column;gap:4px;display:flex}.onboard-nav{justify-content:space-between;align-items:center;gap:12px;margin-top:8px;display:flex}.onboard-nav .btn{min-width:110px}.field-hint{color:var(--text-muted);margin:-2px 0 8px;font-size:12px}.chip-group{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.chip-group-stack{flex-flow:column}.chip{border:1.5px solid var(--border);background:var(--white);color:var(--navy-dark);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:9px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.chip:hover{border-color:var(--gold)}.chip-selected{border-color:var(--gold);color:var(--gold-dark);background:#fff7e0}.chip-group-stack .chip{border-radius:12px;justify-content:flex-start;padding:12px 14px}.chip-tick{flex-shrink:0;font-size:11px}.chip-add{align-items:center;gap:8px;display:flex}.chip-add input{flex:1;min-width:0}.chip-add .btn{flex-shrink:0}.auth-card{background:var(--white);border-radius:18px;width:100%;max-width:400px;padding:32px 28px;box-shadow:0 16px 40px #00000059}.auth-logo{align-items:center;gap:12px;margin-bottom:20px;display:flex}.auth-logo-img{object-fit:cover;background:var(--gold);border-radius:12px;width:48px;height:48px}.auth-logo-center{justify-content:center}.auth-logo-center .auth-logo-img{border-radius:18px;width:72px;height:72px}.auth-title{color:var(--navy-dark);text-align:center;font-size:20px;font-weight:800}.auth-subtitle{color:var(--text-muted);text-align:center;margin-top:4px;margin-bottom:24px;font-size:14px}.auth-alt{color:var(--text-muted);text-align:center;margin-top:18px;font-size:13px}.auth-alt a{color:var(--navy-light);font-weight:700}.back-link{align-items:center;gap:6px;display:inline-flex}.field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.field span{color:var(--navy-dark);font-size:13px;font-weight:700}.field input,.field textarea,.option-input{border:1.5px solid var(--border);width:100%;color:var(--navy-dark);background:var(--off-white);border-radius:10px;padding:11px 13px;font-family:inherit;font-size:14px}.field input:focus,.field textarea:focus,.option-input:focus{border-color:var(--gold);background:var(--white);outline:none}.field input[type=file]{padding:8px}.field input[type=radio]{width:auto}.pw-checklist{flex-direction:column;gap:8px;margin-top:6px;display:flex}.pw-checks{grid-template-columns:1fr 1fr;gap:5px 12px;list-style:none;display:grid}.pw-check{color:var(--text-muted);align-items:center;gap:7px;font-size:12px;display:flex}.pw-check svg{flex-shrink:0;font-size:11px}.pw-check:not(.pw-ok) svg{color:var(--danger)}.pw-check.pw-ok{color:var(--success)}.pw-meter{background:var(--off-white);border:1px solid var(--border);border-radius:3px;height:6px;overflow:hidden}.pw-meter-fill{border-radius:3px;height:100%;transition:width .2s,background .2s}.pw-weak{background:var(--danger)}.pw-fair{background:var(--gold)}.pw-strong{background:var(--success)}.pw-strength{text-transform:uppercase;letter-spacing:.4px;text-align:right;font-size:11px;font-weight:800}.pw-strength.pw-weak{color:var(--danger)}.pw-strength.pw-fair{color:var(--gold-dark)}.pw-strength.pw-strong{color:var(--success)}.pw-confirm{color:var(--danger);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.pw-confirm.pw-ok{color:var(--success)}@media (width<=480px){.pw-checks{grid-template-columns:1fr}}.level-select{border:1.5px solid var(--border);width:100%;color:var(--navy-dark);background:var(--off-white);appearance:auto;border-radius:10px;padding:11px 13px;font-family:inherit;font-size:14px}.level-select:focus{border-color:var(--gold);background:var(--white);outline:none}.phone-row{gap:8px;display:flex}.country-select{border:1.5px solid var(--border);color:var(--navy-dark);background:var(--off-white);border-radius:10px;flex:0 0 118px;padding:11px 10px;font-family:inherit;font-size:14px;font-weight:700}.country-select:focus{border-color:var(--gold);background:var(--white);outline:none}.phone-input{border:1.5px solid var(--border);min-width:0;color:var(--navy-dark);background:var(--off-white);border-radius:10px;flex:1;padding:11px 13px;font-family:inherit;font-size:14px}.phone-input:focus{border-color:var(--gold);background:var(--white);outline:none}@media (width<=480px){.phone-row{flex-direction:column}.country-select{flex:none;width:100%}}.error{color:var(--danger);margin-bottom:14px;font-size:13px}.notice{color:#1d6b3d;background:#2e9e5b1a;border:1px solid #2e9e5b4d;border-radius:10px;margin-bottom:14px;padding:11px 13px;font-size:13px;line-height:19px}.muted{color:var(--text-muted)}.auth-divider{color:var(--text-muted);align-items:center;gap:12px;margin:18px 0 14px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.google-signin{flex-direction:column;display:flex}.google-btn{background:var(--white);border:1.5px solid var(--border);color:#3c4043;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:46px;padding:12px 16px;font-family:inherit;font-size:14px;font-weight:700;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.google-btn:hover:not(:disabled){background:#fafbfc;border-color:#c6ccd6;box-shadow:0 2px 8px #061a3014}.google-btn:disabled{opacity:.65;cursor:default}.google-btn svg{flex-shrink:0}.auth-alt-right{text-align:right;margin-top:-6px}.verify-banner{border:1px solid var(--gold);background:#fff7e0;border-radius:12px;align-items:center;gap:14px;margin-bottom:20px;padding:12px 14px;display:flex}.verify-banner-icon{background:var(--gold);width:34px;height:34px;color:var(--navy-dark);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex}.verify-banner-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.verify-banner-body strong{color:var(--navy-dark);font-size:14px}.verify-banner-text{color:var(--gold-dark);font-size:12px;line-height:17px}.verify-banner-close{color:var(--gold-dark);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px;font-size:15px}@media (width<=600px){.verify-banner{flex-wrap:wrap}.verify-banner-body{flex:60%}}.small{font-size:12px}.btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:11px 18px;font-family:inherit;font-size:14px;font-weight:700;text-decoration:none;transition:opacity .15s,transform 50ms;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:active{transform:scale(.98)}.btn-primary{background:var(--gold);color:var(--navy-dark)}.btn-primary:hover{opacity:.9}.btn-secondary{background:var(--navy);color:var(--white)}.btn-secondary:hover{opacity:.9}.btn-ghost{color:var(--navy);border:1.5px solid var(--border);background:0 0}.btn-danger{color:var(--white);background:#d64545}.btn-danger:hover{background:#b53333}.btn-small{border-radius:8px;padding:7px 12px;font-size:12px}.btn-block{width:100%}.layout{min-height:100vh;display:flex}.topbar,.backdrop{display:none}.sidebar{background:var(--navy-dark);flex-direction:column;width:250px;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.sidebar-brand{color:var(--gold-light);align-items:center;gap:10px;padding:0 8px 24px;font-size:22px;font-weight:900;display:flex}.menu-toggle{color:var(--white);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:22px;display:none}.brand-logo{object-fit:cover;background:var(--gold);border-radius:9px;width:34px;height:34px}.sidebar-nav{flex-direction:column;flex:1;gap:4px;display:flex}.nav-link{color:#cbd7e8;border-radius:10px;padding:11px 14px;font-size:14px;font-weight:600;text-decoration:none}.nav-link:hover{background:#ffffff0f}.nav-link-active{background:var(--gold);color:var(--navy-dark);font-weight:800}.sidebar-user{border-top:1px solid #ffffff1f;flex-direction:column;gap:10px;padding-top:16px;display:flex}.sidebar-avatar{background:var(--gold);width:40px;height:40px;color:var(--navy-dark);border-radius:20px;justify-content:center;align-items:center;font-size:18px;font-weight:900;display:flex}.sidebar-user-info{flex-direction:column;display:flex}.sidebar-name{color:var(--white);font-size:14px;font-weight:700}.sidebar-email{color:var(--text-muted);font-size:12px}.main{flex:1;padding:28px 32px;overflow-x:hidden}.page{max-width:860px;margin:0 auto}.page-wide{max-width:1180px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-header h1{color:var(--navy-dark);font-size:24px;font-weight:900}.page-header p{color:var(--text-muted);margin-top:2px;font-size:14px}.card{background:var(--white);border:1px solid var(--border);border-radius:16px;margin-bottom:20px;padding:24px}.card h2{color:var(--navy-dark);margin-bottom:16px;font-size:17px;font-weight:800}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:28px;display:grid}.stat-card{background:var(--navy);border-radius:16px;flex-direction:column;gap:6px;padding:22px;text-decoration:none;transition:transform .15s;display:flex}.stat-card:hover{transform:translateY(-2px)}.stat-value{color:var(--white);font-size:34px;font-weight:900}.stat-label{color:var(--gold-light);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:700}.quick-actions h2{margin-bottom:14px;font-size:18px;font-weight:800}.quick-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.quick-card{background:var(--white);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:6px;padding:18px;text-decoration:none;transition:border-color .15s;display:flex}.quick-card:hover{border-color:var(--gold)}.quick-card strong{color:var(--navy-dark);font-size:15px}.quick-card span{color:var(--text-muted);font-size:13px;line-height:18px}.list{flex-direction:column;gap:12px;display:flex}.list-item{background:var(--white);border:1px solid var(--border);border-radius:14px;align-items:center;gap:16px;padding:16px 18px;display:flex}.list-item-body{flex:1;min-width:0}.list-item-body strong{color:var(--navy-dark);font-size:15px;display:block}.level-badge{background:var(--navy);color:var(--gold-light);text-transform:uppercase;letter-spacing:.4px;border-radius:6px;padding:3px 9px;font-size:11px;font-weight:700}.playlist-badge{background:var(--off-white);color:var(--navy);border:1px solid var(--border);border-radius:6px;padding:3px 9px;font-size:11px;font-weight:700}.source-badge{text-transform:uppercase;letter-spacing:.4px;border-radius:6px;padding:3px 9px;font-size:11px;font-weight:800}.source-badge-ai{background:var(--navy);color:var(--gold-light)}.source-badge-manual{background:var(--off-white);color:var(--text-muted);border:1px solid var(--border)}.list-item-body p{color:var(--text-muted);margin-top:3px;font-size:13px}.list-item-body .small{margin-top:6px;display:block}.list-item-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.video-thumb{background:var(--navy-dark);border-radius:10px;flex-shrink:0;width:120px;height:74px}.thumb{object-fit:cover;background:var(--navy-dark);border:none;border-radius:10px;flex-shrink:0;width:120px;height:74px;padding:0}.thumb-placeholder{background:var(--off-white);border:1px solid var(--border);justify-content:center;align-items:center;font-size:26px;display:flex}.thumb-img{object-fit:cover;border-radius:10px;width:100%;height:100%;display:block}.thumb-button{cursor:pointer;position:relative;overflow:hidden}.play-overlay{color:var(--white);background:#061a3073;justify-content:center;align-items:center;font-size:22px;display:flex;position:absolute;inset:0}.video-preview{object-fit:contain;background:var(--navy-dark);width:200px;height:112px}.hint-text{color:var(--text-muted);font-size:12px;font-weight:400}.empty-state{background:var(--white);border:1px dashed var(--border);text-align:center;color:var(--text-muted);border-radius:14px;flex-direction:column;align-items:center;gap:16px;padding:40px;display:flex}.code-badge{background:var(--off-white);border:1.5px solid var(--border);border-radius:10px;align-items:center;gap:8px;padding:6px 10px;display:flex}.code-value{letter-spacing:1px;color:var(--navy);font-family:ui-monospace,monospace;font-size:15px;font-weight:800}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=560px){.form-grid{grid-template-columns:1fr}}.questions-section{margin-top:8px}.questions-section h2{margin-bottom:14px;font-size:18px;font-weight:800}.question-block{background:var(--off-white);border:1px solid var(--border);border-radius:12px;margin-bottom:16px;padding:16px}.question-block-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.question-block-header strong{color:var(--navy-dark)}.question-block-header-right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.type-select{border:1.5px solid var(--border);color:var(--navy);background:var(--white);border-radius:8px;padding:8px 10px;font-family:inherit;font-size:12px;font-weight:700}.ai-hint{color:var(--text-muted);margin-bottom:18px;font-size:13px}.checkbox-group{flex-wrap:wrap;gap:10px;display:flex}.checkbox-label{background:var(--off-white);border:1.5px solid var(--border);color:var(--navy-dark);cursor:pointer;border-radius:8px;align-items:center;gap:7px;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.checkbox-label input{width:auto}.options-list{flex-direction:column;gap:10px;margin:12px 0;display:flex}.option-row{align-items:center;gap:12px;display:flex}.option-answer{color:var(--text-muted);flex-shrink:0;align-items:center;gap:6px;width:82px;font-size:12px;font-weight:700;display:flex}.option-input{flex:1}.question-block-actions{gap:10px;display:flex}.success-card{text-align:center;padding:40px}.success-card p{color:var(--text-muted);margin-bottom:20px}.big-code{letter-spacing:4px;color:var(--navy);background:var(--off-white);border:2px dashed var(--gold);border-radius:14px;max-width:320px;margin:0 auto 20px;padding:18px;font-family:ui-monospace,monospace;font-size:34px;font-weight:900}.success-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:16px;display:flex}.file-hint{color:var(--text-muted);margin-bottom:14px;font-size:13px}.back-btn{margin-bottom:10px}.exam-meta{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.meta-chip{background:var(--off-white);border:1px solid var(--border);color:var(--navy-dark);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:700}.exam-description{margin-bottom:18px}.question-card{margin-bottom:14px}.question-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.question-card-top strong{color:var(--navy-dark)}.type-badge{background:var(--gold);color:var(--navy-dark);text-transform:uppercase;letter-spacing:.4px;border-radius:6px;padding:3px 9px;font-size:11px;font-weight:800}.question-card-text{color:var(--navy-dark);margin-bottom:14px;font-size:15px;font-weight:600;line-height:22px}.preview-options{flex-direction:column;gap:8px;display:flex}.preview-option{background:var(--off-white);border:1.5px solid var(--border);color:var(--navy-dark);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;display:flex}.preview-option-correct{border-color:var(--success);background:#eaf7f0;font-weight:700}.preview-option-letter{background:var(--white);width:24px;height:24px;color:var(--navy);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:flex}.correct-tag{color:var(--success);text-transform:uppercase;margin-left:auto;font-size:11px;font-weight:800}.model-answer{background:var(--off-white);border:1px dashed var(--gold);border-radius:10px;padding:12px 14px}.model-answer-label{color:var(--gold-dark);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px;font-size:11px;font-weight:800;display:block}.model-answer p{color:var(--navy-dark);font-size:14px;line-height:20px}.header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.submission-score{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.score-value{background:var(--navy);color:var(--gold-light);border-radius:8px;padding:6px 12px;font-size:14px;font-weight:800}.source-badge-graded{background:var(--success);color:var(--white)}.source-badge-failed{background:var(--danger);color:var(--white)}.source-badge-pending{background:var(--gold);color:var(--navy-dark)}.grade-answer{background:var(--off-white);border:1px solid var(--border);border-radius:10px;margin-bottom:12px;padding:12px 14px}.grade-answer-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px;font-size:11px;font-weight:800;display:block}.grade-answer p{color:var(--navy-dark);font-size:14px;line-height:20px}.verdict-inline{letter-spacing:.4px;border-radius:6px;margin-bottom:4px;padding:5px 10px;font-size:12px;font-weight:800;display:inline-block}.verdict-correct{color:var(--success);background:#eaf7f0}.verdict-wrong{color:var(--danger);background:#fbebeb}.grade-inputs{flex-wrap:wrap;gap:14px;display:flex}.grade-marks{flex:0 0 160px}.grade-comment{flex:1;min-width:220px}.grade-footer{margin-top:4px}.profile-card{max-width:520px}.profile-hero{text-align:center;border-bottom:1px solid var(--border);flex-direction:column;align-items:center;gap:14px;margin-bottom:8px;padding-bottom:20px;display:flex}.profile-avatar{background:var(--gold);width:72px;height:72px;color:var(--navy-dark);border-radius:36px;flex-shrink:0;justify-content:center;align-items:center;font-size:30px;font-weight:900;display:flex}.profile-hero h2{margin-bottom:2px;font-size:20px}.profile-role{background:var(--off-white);color:var(--gold-dark);border:1px solid var(--border);text-transform:uppercase;letter-spacing:.5px;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.profile-details{margin:8px 0 20px}.profile-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.profile-row:last-child{border-bottom:none}.profile-label{color:var(--text-muted);font-size:14px}.profile-value{color:var(--navy-dark);text-align:right;overflow-wrap:anywhere;font-size:14px;font-weight:700}.segmented{background:var(--off-white);border:1px solid var(--border);border-radius:10px;gap:8px;margin-bottom:16px;padding:4px;display:flex}.segment{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:10px;font-family:inherit;font-size:13px;font-weight:700}.segment-active{background:var(--navy);color:var(--white)}.playlist-options{background:var(--off-white);border:1px solid var(--border);border-radius:12px;margin-bottom:16px;padding:16px}.or-divider{color:var(--text-muted);text-align:center;margin:8px 0;font-size:12px}.section{margin-bottom:24px}.section-title{color:var(--navy-dark);margin-bottom:14px;font-size:17px;font-weight:800}.playlist-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.playlist-card{background:var(--white);border:1px solid var(--border);border-radius:14px;overflow:hidden}.playlist-thumb{object-fit:cover;background:var(--navy-dark);width:100%;height:110px;color:var(--white);justify-content:center;align-items:center;font-size:24px;display:flex}.playlist-thumb-placeholder{background:linear-gradient(160deg, var(--navy-dark), var(--navy-light))}.playlist-card-body{flex-direction:column;gap:3px;padding:12px 14px;display:flex}.playlist-card-body strong{color:var(--navy-dark);font-size:14px}.playlist-card>.btn{margin:0 14px 14px}@media (width<=900px){.topbar{z-index:30;background:var(--navy-dark);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:sticky;top:0}.topbar-brand{color:var(--gold-light);flex:1;align-items:center;gap:10px;font-size:18px;font-weight:900;display:flex}.topbar-avatar{background:var(--gold);width:34px;height:34px;color:var(--navy-dark);border-radius:17px;justify-content:center;align-items:center;font-weight:900;display:flex}.menu-toggle{justify-content:center;align-items:center;display:inline-flex}.menu-toggle-close{margin-left:auto;font-size:18px}.layout{flex-direction:column}.sidebar{z-index:50;width:260px;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar-open{transform:translate(0)}.backdrop{z-index:40;background:#061a308c;display:block;position:fixed;inset:0}.main{width:100%;padding:20px 16px}.page-header{flex-direction:column;align-items:flex-start}.list-item{flex-wrap:wrap;align-items:flex-start}.list-item-actions{flex-wrap:wrap;justify-content:flex-end;width:100%}.thumb,.thumb-placeholder{width:100px;height:64px}.video-preview{width:100%;height:180px}}@media (width<=480px){.main{padding:16px 12px}.card{padding:18px}.code-badge{justify-content:space-between;width:100%}.big-code{letter-spacing:2px;padding:14px;font-size:26px}.option-row{flex-direction:column;align-items:stretch;gap:6px}.option-answer{width:auto}}.landing{flex-direction:column;min-height:100vh;display:flex}.landing-nav{background:var(--navy-dark);justify-content:space-between;align-items:center;gap:12px;padding:16px 28px;display:flex}.landing-brand{color:var(--gold-light);align-items:center;gap:10px;font-size:20px;font-weight:900;display:flex}.landing-nav-actions{gap:10px;display:flex}.landing-hero{background:linear-gradient(160deg, var(--navy-dark), var(--navy-light));justify-content:center;padding:64px 28px 72px;display:flex}.landing-hero-content{text-align:center;max-width:640px}.landing-badge{background:var(--gold);color:var(--navy-dark);text-transform:uppercase;letter-spacing:.5px;border-radius:20px;margin-bottom:18px;padding:6px 14px;font-size:12px;font-weight:800;display:inline-block}.landing-hero h1{color:var(--white);margin-bottom:16px;font-size:40px;font-weight:900;line-height:1.15}.landing-hero p{color:#cbd7e8;margin-bottom:28px;font-size:16px;line-height:24px}.landing-cta{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.btn-lg{border-radius:12px;padding:14px 26px;font-size:15px}.btn-outline{color:var(--white);background:0 0;border:1.5px solid #ffffff80}.landing-section{text-align:center;width:100%;max-width:900px;margin:0 auto;padding:48px 28px}.landing-section h2{color:var(--navy-dark);font-size:26px;font-weight:900}.landing-section>p{color:var(--text-muted);margin:6px 0 24px}.landing-levels{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.level-tile{background:var(--off-white);border:1.5px solid var(--border);color:var(--navy);border-radius:12px;padding:18px;font-size:14px}.landing-features{text-align:left;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.feature-card{background:var(--white);border:1px solid var(--border);border-radius:14px;padding:20px}.feature-icon{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:12px;font-size:22px;display:flex}.feature-icon-doc{color:var(--success);background:#eaf7f0}.feature-icon-video{color:var(--navy);background:#eaf3fb}.feature-icon-target{color:var(--gold-dark);background:#fff7e0}.feature-card strong{color:var(--navy-dark);font-size:15px}.feature-card p{color:var(--text-muted);margin-top:6px;font-size:13px;line-height:19px}.landing-footer{background:var(--off-white);color:var(--text-muted);justify-content:center;align-items:center;gap:10px;margin-top:auto;padding:20px;font-size:13px;display:flex}.material-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;display:grid}@media (width>=1100px){.material-grid{grid-template-columns:repeat(4,1fr)}}.material-card{background:var(--white);border:1px solid var(--border);border-radius:14px;flex-direction:column;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden;box-shadow:0 8px 22px #061a301f}.material-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #061a302e}.material-banner{aspect-ratio:16/10;background:linear-gradient(160deg, var(--navy-dark), var(--navy-light));cursor:pointer;border:none;justify-content:center;align-items:center;width:100%;padding:0;display:flex;position:relative;overflow:hidden}.material-banner-btn{display:block}.material-banner-img{object-fit:cover;width:100%;height:100%;display:block}.material-banner-fallback{color:var(--gold-light);justify-content:center;align-items:center;font-size:34px;display:flex}.banner-overlay{color:var(--white);background:#061a3040;justify-content:center;align-items:center;font-size:30px;display:flex;position:absolute;inset:0}.premium-badge-float{position:absolute;top:10px;right:10px}.material-body{flex-direction:column;gap:6px;padding:14px 16px 16px;display:flex}.card-instructor{align-items:center;gap:8px;display:flex}.card-instructor-icon{background:var(--navy-light);width:22px;height:22px;color:var(--gold-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:flex}.card-instructor-name{color:var(--text-muted);font-size:12px;font-weight:600}.card-title{color:var(--navy-dark);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:800;line-height:1.3;display:-webkit-box;overflow:hidden}.card-cat{color:var(--text-muted);font-size:12px}.card-foot{justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:6px;display:flex}.card-rating{color:var(--navy-dark);align-items:center;gap:3px;font-size:13px;font-weight:700;display:inline-flex}.card-star{color:var(--gold);font-size:14px}.card-buy{align-items:center;gap:8px;display:inline-flex}.card-price{color:var(--gold-dark);white-space:nowrap;font-size:12px;font-weight:800}.video-player{object-fit:contain}.material-body p{color:var(--text-muted);font-size:12px;line-height:17px}@media (width<=600px){.landing-hero h1{font-size:30px}.material-grid{grid-template-columns:1fr;gap:12px}.material-card{flex-direction:row;box-shadow:0 4px 14px #061a301a}.material-banner{aspect-ratio:auto;flex-shrink:0;width:40%;max-width:165px}.material-banner-fallback,.banner-overlay{font-size:20px}.premium-badge-float{padding:2px 7px;font-size:10px;top:6px;right:6px}.material-body{flex:1;gap:5px;min-width:0;padding:10px 12px}.card-title{font-size:14px}.card-cat,.card-instructor-name{font-size:11px}.card-foot{flex-wrap:wrap;gap:6px}.card-buy{margin-left:auto}.section-navy{border-radius:16px;padding:16px 12px}.history-item,.continue-card{flex-wrap:wrap;gap:10px;padding:10px}.history-body,.continue-body{flex:45%}.continue-actions{justify-content:flex-end;width:100%}.stat-card-light{padding:14px}.stat-card-light .stat-value{font-size:22px}}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:12px;display:grid}.stat-card-light{background:var(--white);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:4px;padding:18px;display:flex}.stat-card-light .stat-value{color:var(--navy-dark);font-size:26px;font-weight:900}.stat-card-light .stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:12px;font-weight:700}.exam-progress-note{color:var(--text-muted);margin-bottom:4px;font-size:13px}.continue-list{flex-direction:column;gap:12px;display:flex}.continue-card{background:var(--white);border:1px solid var(--border);border-radius:12px;align-items:center;gap:14px;padding:12px 14px;display:flex}.continue-thumb{object-fit:cover;background:var(--navy);width:96px;height:60px;color:var(--gold-light);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;display:flex}.continue-thumb-doc{background:linear-gradient(160deg, var(--navy-dark), var(--navy-light))}.continue-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.continue-body strong{color:var(--navy-dark);font-size:14px}.progress-track{background:var(--off-white);border:1px solid var(--border);border-radius:3px;height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--gold), var(--gold-dark));border-radius:3px;height:100%;transition:width .3s}.continue-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.continue-done{color:var(--success);font-size:18px}.premium-badge{background:linear-gradient(90deg, var(--gold-light), var(--gold-dark));color:#fff;text-transform:uppercase;letter-spacing:.4px;border-radius:6px;padding:3px 9px;font-size:11px;font-weight:800}.item-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.premium-lock{align-items:center;gap:8px;margin-top:8px;display:flex}.premium-lock svg{color:var(--gold-dark)}.premium-price-label{color:var(--navy-dark);font-size:14px;font-weight:800}.material-open{align-self:flex-start;margin-top:8px}.history-list{flex-direction:column;gap:12px;display:flex}.history-item{background:var(--white);border:1px solid var(--border);border-radius:12px;align-items:center;gap:14px;padding:12px 14px;display:flex}.history-thumb{object-fit:cover;background:var(--navy);width:96px;height:60px;color:var(--gold-light);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.history-thumb-doc{background:linear-gradient(160deg, var(--navy-dark), var(--navy-light))}.history-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.history-body strong{color:var(--navy-dark);font-size:14px}.watch-page{max-width:1180px;margin:0 auto}.watch-layout{grid-template-columns:1fr 340px;align-items:start;gap:24px;display:grid}.watch-main,.watch-side{min-width:0}.watch-side h2{color:var(--navy-dark);margin-bottom:12px;font-size:16px;font-weight:800}.watch-player-wrap{background:#000;border-radius:14px;margin-bottom:12px;overflow:hidden}.watch-player{aspect-ratio:16/9;background:#000;width:100%;max-height:560px;display:block}.watch-title{color:var(--navy-dark);font-size:20px;font-weight:800;line-height:1.3}.watch-info-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:10px 0 14px;display:flex}.watch-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.watch-level{color:var(--gold-dark);text-transform:uppercase;letter-spacing:.4px;font-size:13px;font-weight:700}.watch-playlist-name{color:var(--navy);font-size:13px;font-weight:700}.watch-actions{flex-wrap:wrap;gap:8px;display:flex}.watch-btn{border:1.5px solid var(--border);background:var(--white);color:var(--navy-dark);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:700;transition:border-color .15s,background .15s;display:inline-flex}.watch-btn:hover{border-color:var(--navy)}.watch-btn-active{border-color:var(--gold);color:var(--gold-dark);background:#fff7e0}.watch-note{border:1px solid var(--gold);color:var(--gold-dark);background:#fff7e0;border-radius:10px;align-items:center;gap:8px;margin-bottom:12px;padding:10px 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.watch-description-box{background:var(--off-white);border:1px solid var(--border);white-space:pre-line;border-radius:12px;margin-bottom:20px;padding:14px 16px}.watch-description-box p{color:var(--navy-dark);font-size:14px;line-height:21px}.watch-comments h2{color:var(--navy-dark);margin-bottom:12px;font-size:16px;font-weight:800}.playlist-list{flex-direction:column;gap:10px;margin-bottom:24px;display:flex}.playlist-item{background:var(--white);border:1px solid var(--border);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:12px;padding:8px;font-family:inherit;transition:border-color .15s;display:flex}.playlist-item:hover{border-color:var(--gold)}.playlist-thumb{object-fit:cover;background:var(--navy-dark);width:130px;height:74px;color:var(--gold-light);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.playlist-item-body{flex-direction:column;gap:3px;min-width:0;display:flex}.playlist-item-body strong{color:var(--navy-dark);font-size:14px}.comment-form{gap:10px;margin-bottom:16px;display:flex}.comment-form input{border:1.5px solid var(--border);color:var(--navy-dark);border-radius:10px;flex:1;padding:11px 13px;font-family:inherit;font-size:14px}.comment-list{flex-direction:column;gap:14px;display:flex}.comment-item{gap:12px;display:flex}.comment-avatar{background:var(--navy);width:40px;height:40px;color:var(--gold-light);border-radius:20px;flex-shrink:0;justify-content:center;align-items:center;font-weight:800;display:flex}.comment-body{flex:1}.comment-top{align-items:center;gap:10px;display:flex}.comment-top strong{color:var(--navy-dark);font-size:14px}.comment-delete{color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:4px}.comment-delete:hover{color:var(--danger)}.comment-body p{color:var(--navy-dark);margin-top:2px;font-size:14px}.content-meta{flex-direction:column;gap:3px;margin-top:2px;display:flex}.content-course{color:var(--navy);font-weight:700}.content-price{color:var(--gold-dark);font-weight:800}.content-price-free{color:var(--success);font-weight:700}.teacher-link{color:var(--navy);font-weight:700;text-decoration:none}.teacher-link:hover{text-decoration:underline}.teacher-profile{margin-bottom:24px}.profile-avatar-img,.sidebar-avatar-img{object-fit:cover}.avatar-upload{text-align:center;position:relative}.avatar-upload-btn{color:var(--navy);cursor:pointer;border:1.5px solid var(--border);background:var(--off-white);border-radius:8px;margin-top:8px;padding:6px 10px;font-size:12px;font-weight:700;display:block}.avatar-upload-btn:hover{border-color:var(--gold)}.profile-form h3{color:var(--navy-dark);margin:8px 0 16px;font-size:17px;font-weight:800}.profile-separator{border-top:1px solid var(--border);margin:8px 0 16px;padding-top:16px}.profile-separator h4{color:var(--navy-dark);font-size:14px;font-weight:800}.profile-separator span{color:var(--text-muted);font-size:12px}.profile-actions{flex-wrap:wrap;gap:12px;display:flex}.success-msg{color:var(--success);margin-bottom:14px;font-size:13px}.watchlist-link{text-decoration:none;display:flex}.sub-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.sub-card{background:var(--white);border:1px solid var(--border);border-radius:14px;align-items:center;gap:14px;padding:16px;text-decoration:none;transition:border-color .15s;display:flex;position:relative}.sub-card:hover{border-color:var(--gold)}.sub-avatar{object-fit:cover;background:var(--navy);width:56px;height:56px;color:var(--gold-light);border-radius:28px;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;font-weight:800;display:flex}.sub-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.sub-body strong{color:var(--navy-dark);font-size:15px}.sub-levels{color:var(--gold-dark);text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:700}.sub-bell{color:var(--gold);position:absolute;top:12px;right:12px}.sub-count{margin-top:4px;display:block}.comment-avatar-sm{background:var(--gold);width:32px;height:32px;color:var(--navy-dark);border-radius:16px;font-size:14px}.teacher-reply-tag{background:var(--gold);color:var(--navy-dark);text-transform:uppercase;letter-spacing:.4px;border-radius:5px;padding:2px 7px;font-size:10px;font-weight:800}.notif{position:relative}.notif-bell{color:var(--gold-light);cursor:pointer;background:0 0;border:none;align-items:center;padding:8px;font-size:18px;display:flex;position:relative}.notif-badge{background:var(--danger);color:#fff;border-radius:8px;padding:1px 5px;font-size:10px;font-weight:800;line-height:1.4;position:absolute;top:0;right:0}.notif-dropdown{background:var(--white);border:1px solid var(--border);z-index:70;border-radius:14px;width:320px;max-height:420px;position:absolute;top:calc(100% + 10px);right:0;overflow-y:auto;box-shadow:0 16px 40px #00000040}.notif-head{border-bottom:1px solid var(--border);background:var(--white);justify-content:space-between;align-items:center;padding:12px 14px;display:flex;position:sticky;top:0}.notif-head strong{color:var(--navy-dark);font-size:14px}.notif-mark{color:var(--navy);cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:700}.notif-empty{text-align:center;padding:20px;font-size:13px}.notif-list{padding:6px}.notif-item{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;gap:2px;width:100%;padding:10px 12px;font-family:inherit;display:flex}.notif-item:hover{background:var(--off-white)}.notif-item-unread{background:#fff7e0}.notif-item strong{color:var(--navy-dark);font-size:13px}.notif-item span{color:var(--text-muted);font-size:12px;line-height:17px}.notif-item small{color:var(--text-muted);margin-top:2px;font-size:11px}.topbar-right{align-items:center;gap:6px;display:flex}@media (width<=992px){.watch-layout{grid-template-columns:1fr}.watch-side{order:0}}@media (width<=600px){.watch-player-wrap{border-radius:0;margin-left:-12px;margin-right:-12px}.watch-player{max-height:none}.watch-title{font-size:17px}.watch-info-row{align-items:flex-start;gap:10px}.watch-actions{gap:6px;width:100%}.watch-btn{flex:1;justify-content:center;padding:9px 8px;font-size:12px}}.notification-list{flex-direction:column;gap:10px;display:flex}.notification-row{text-align:left;background:var(--white);border:1px solid var(--border);cursor:pointer;border-radius:12px;align-items:flex-start;gap:12px;width:100%;padding:14px 16px;font-family:inherit;display:flex}.notification-row:hover{border-color:var(--gold)}.notification-row-unread{border-color:var(--gold);background:#fff7e0}.notification-dot{background:var(--gold);border-radius:5px;flex-shrink:0;width:10px;height:10px;margin-top:5px}.notification-row:not(.notification-row-unread) .notification-dot{background:var(--border)}.notification-body{flex:1}.notification-body strong{color:var(--navy-dark);font-size:14px}.notification-body p{color:var(--text-muted);margin:3px 0;font-size:13px;line-height:19px}.notification-body small{color:var(--text-muted);font-size:11px}.comment-reply-btn{color:var(--navy);cursor:pointer;background:0 0;border:none;margin-top:2px;padding:4px 0;font-size:12px;font-weight:700}.comment-reply-btn:hover{color:var(--gold-dark)}.comment-reply-form{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.comment-reply-form input{border:1.5px solid var(--border);min-width:160px;color:var(--navy-dark);border-radius:8px;flex:1;padding:8px 12px;font-family:inherit;font-size:13px}.comment-replies{border-left:2px solid var(--border);flex-direction:column;gap:12px;margin-top:10px;padding-left:10px;display:flex}.modal-overlay{z-index:1000;background:#061a308c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:var(--white);border-radius:16px;width:100%;max-width:420px;max-height:90vh;padding:24px;position:relative;overflow-y:auto;box-shadow:0 18px 50px #061a3059}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:18px;position:absolute;top:12px;right:12px}.modal-title{color:var(--navy-dark);margin-bottom:16px;font-size:18px;font-weight:800}.checkout-item{background:var(--off-white);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:12px 14px;display:flex}.checkout-item strong{color:var(--navy-dark);font-size:14px}.checkout-price{color:var(--gold-dark);white-space:nowrap;font-size:15px;font-weight:800}.field-label{color:var(--navy);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.channel-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;display:grid}.channel-btn{border:1.5px solid var(--border);background:var(--white);color:var(--navy-dark);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-family:inherit;font-size:13px;font-weight:600;display:flex}.channel-btn svg{color:var(--text-muted);font-size:15px}.channel-btn-active{border-color:var(--gold);background:#fffbf0}.channel-btn-active svg{color:var(--gold-dark)}.phone-row{border:1.5px solid var(--border);background:var(--white);border-radius:10px;align-items:center;margin-bottom:16px;display:flex;overflow:hidden}.phone-prefix{background:var(--off-white);border-right:1.5px solid var(--border);color:var(--navy);padding:12px;font-size:14px;font-weight:700}.phone-input{color:var(--navy-dark);border:none;outline:none;flex:1;min-width:0;padding:12px;font-family:inherit;font-size:14px}.checkout-hint{margin-bottom:16px;line-height:1.5}.checkout-actions{gap:10px;display:flex}.checkout-actions .btn{flex:1}.checkout-success{text-align:center;padding:12px 0}.checkout-success-icon{background:var(--success);width:56px;height:56px;color:var(--white);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 12px;font-size:26px;font-weight:900;display:flex}.checkout-success p{color:var(--navy-dark);margin-bottom:16px;font-weight:600}.checkout-pending{text-align:center;padding:12px 0}.checkout-pending p{color:var(--navy-dark);margin-bottom:8px}.spinner{border:4px solid var(--border);border-top-color:var(--gold);border-radius:50%;width:40px;height:40px;margin:0 auto 14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.checkout-item{background:var(--white);border:1px solid var(--gold);border-radius:12px;align-items:center;margin-bottom:18px;padding:12px}.checkout-thumb{object-fit:cover;border-radius:10px;flex-shrink:0;width:64px;height:64px}.checkout-thumb-icon{background:var(--navy-light);color:var(--white);justify-content:center;align-items:center;font-size:22px;display:flex}.checkout-item-info{flex-direction:column;gap:4px;min-width:0;display:flex}.checkout-item-info strong{color:var(--navy-dark);font-size:14px}.method-list{flex-direction:column;gap:10px;display:flex}.method-row{border:1.5px solid var(--border);background:var(--white);cursor:pointer;border-radius:12px;align-items:center;gap:14px;width:100%;padding:12px 14px;font-family:inherit;transition:border-color .15s;display:flex}.method-row:hover{border-color:var(--gold)}.method-label{text-align:left;color:var(--navy-dark);flex:1;font-size:15px;font-weight:700}.method-arrow{color:var(--text-muted);font-size:12px;transform:rotate(180deg)}.pay-logo{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:4px;min-width:48px;font-style:normal;font-weight:800;display:inline-flex}.pay-logo.md{min-width:56px}.pay-logo-nmb{color:#fff;letter-spacing:.5px;background:#d3202b;padding:6px 8px;font-size:12px}.pay-logo-crdb{color:#fff;letter-spacing:.3px;background:#00843d;padding:6px;font-size:11px}.pay-logo-mobile{color:#fff;background:#13aa52;width:40px;height:40px}.pay-logo-card{background:var(--white);border:1px solid var(--border);gap:6px;min-width:56px;padding:6px 8px}.card-visa{color:#1a1f71;letter-spacing:.5px;font-size:12px;font-style:italic;font-weight:800}.card-mc{width:24px;height:16px;display:inline-flex;position:relative}.mc-dot{border-radius:50%;width:14px;height:14px;position:absolute;top:1px}.mc-dot-a{background:#eb001b;left:0}.mc-dot-b{background:#f79e1b;right:0}.modal-back{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:18px;position:absolute;top:12px;left:12px}.text-input{border:1.5px solid var(--border);width:100%;color:var(--navy-dark);background:var(--white);border-radius:10px;outline:none;margin-bottom:12px;padding:12px;font-family:inherit;font-size:14px}.text-input:focus{border-color:var(--gold)}.card-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.pay-logo-img{border:1px solid var(--border);object-fit:contain;background:#fff;min-width:56px;height:40px;padding:5px 6px}.pay-logo-img.md{min-width:56px;height:44px}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.section-head .section-title{margin-bottom:0}.section-link{color:var(--gold-light);white-space:nowrap;align-items:center;gap:7px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.section-link:hover{color:var(--gold)}.browse-links{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.browse-link{background:var(--white);border:1px solid var(--border);border-radius:12px;align-items:center;gap:14px;padding:16px;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.browse-link:hover{border-color:var(--gold);transform:translateY(-2px)}.browse-link-icon{background:linear-gradient(160deg, var(--navy-dark), var(--navy-light));width:40px;height:40px;color:var(--gold-light);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.browse-link-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.browse-link-body strong{color:var(--navy-dark);font-size:14px}.browse-link-arrow{color:var(--text-muted);flex-shrink:0}.scroll-sentinel{justify-content:center;align-items:center;min-height:60px;padding:16px 0;display:flex}.list-end{text-align:center;padding:20px 0;font-size:13px}.series-card{background:var(--white);border:1px solid var(--border);border-radius:14px;flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden;box-shadow:0 8px 22px #061a301f}.series-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #061a302e}.series-banner{aspect-ratio:16/9;background:linear-gradient(160deg, var(--navy-dark), var(--navy-light));width:100%;display:block;position:relative;overflow:hidden}.series-banner-img{object-fit:cover;width:100%;height:100%;display:block}.series-banner-fallback{width:100%;height:100%;color:var(--gold-light);justify-content:center;align-items:center;font-size:30px;display:flex}.series-count{color:var(--gold-light);background:#061a30db;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:11.5px;font-weight:700;display:inline-flex;position:absolute;bottom:10px;left:10px}.series-owned{background:var(--success);color:var(--white);border-radius:999px;align-items:center;gap:5px;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:10px;right:10px}.series-body{flex-direction:column;flex:1;gap:5px;padding:14px 16px 16px;display:flex}.series-teacher{color:var(--text-muted);font-size:12px;font-weight:600}.series-teacher a{color:var(--text-muted);text-decoration:none}.series-teacher a:hover{color:var(--navy-light)}.series-title{font-size:15px;font-weight:800;line-height:1.3}.series-title a{color:var(--navy-dark);text-decoration:none}.series-title a:hover{color:var(--navy-light)}.series-course{color:var(--text-muted);font-size:12px}.series-foot{justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:8px;display:flex}.series-price{color:var(--gold-dark);font-size:14px;font-weight:800}.series-hero{grid-template-columns:320px 1fr;align-items:start;gap:26px;margin-bottom:30px;display:grid}.series-hero-img{aspect-ratio:16/9;object-fit:cover;background:var(--navy-dark);border-radius:14px;width:100%}.series-hero-body{flex-direction:column;gap:10px;min-width:0;display:flex}.series-hero-body h1{color:var(--navy-dark);font-size:24px;font-weight:900;line-height:1.2}.series-hero-course{color:var(--gold-dark);font-size:13.5px;font-weight:700}.series-hero-desc{color:var(--text-muted);font-size:14px;line-height:20px}.series-hero-meta{color:var(--text-muted);flex-wrap:wrap;gap:14px;font-size:13px;display:flex}.series-hero-meta a{color:var(--navy-light);font-weight:600}.tag-pill{background:var(--off-white);border:1px solid var(--border);color:var(--navy-dark);border-radius:999px;align-self:flex-start;align-items:center;gap:7px;padding:5px 11px;font-size:12px;font-weight:700;display:inline-flex}.series-buy{background:var(--off-white);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:6px;padding:16px 18px;display:flex}.series-buy-price{color:var(--navy-dark);font-size:22px;font-weight:900;display:block}.series-buy-saving{color:var(--text-muted);font-size:12.5px;text-decoration:line-through;display:block}.series-owned-banner{color:#1d6b3d;background:#2e9e5b1a;border:1px solid #2e9e5b4d;border-radius:10px;align-items:center;gap:9px;margin-top:6px;padding:12px 14px;font-size:13.5px;font-weight:600;display:flex}.lesson-list{flex-direction:column;gap:8px;list-style:none;display:flex}.lesson-row{background:var(--white);border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;padding:10px 14px;display:flex}.lesson-row-locked{opacity:.72}.lesson-index{width:26px;color:var(--text-muted);text-align:center;flex-shrink:0;font-size:13px;font-weight:700}.lesson-thumb{object-fit:cover;background:var(--navy-dark);border-radius:7px;flex-shrink:0;width:74px;height:46px}.lesson-thumb-fallback{color:var(--gold-light);justify-content:center;align-items:center;font-size:14px;display:flex}.lesson-row-locked .lesson-thumb{filter:grayscale()}.lesson-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.lesson-body strong{color:var(--navy-dark);font-size:14px}.lesson-locked{color:var(--text-muted);padding-right:6px;font-size:14px}@media (width<=900px){.series-hero{grid-template-columns:1fr;gap:16px}}@media (width<=600px){.lesson-row{gap:9px;padding:8px 10px}.lesson-index{display:none}.lesson-thumb{width:62px;height:40px}.series-buy{flex-direction:column;align-items:stretch}.series-buy .btn{width:100%}}.vp{aspect-ratio:16/9;-webkit-user-select:none;user-select:none;background:#000;border-radius:14px;outline:none;width:100%;position:relative;overflow:hidden}.vp-fs{aspect-ratio:auto;border-radius:0;height:100%}.vp-video{object-fit:contain;cursor:pointer;background:#000;width:100%;height:100%;display:block}.vp-spinner{color:var(--gold-light);pointer-events:none;justify-content:center;align-items:center;font-size:30px;display:flex;position:absolute;inset:0}.vp-spinner svg{animation:.9s linear infinite vp-spin}@keyframes vp-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.vp-spinner svg{animation:none}}.vp-bigplay{width:72px;height:72px;color:var(--gold-light);cursor:pointer;background:#061a30b8;border:none;border-radius:50%;justify-content:center;align-items:center;padding-left:5px;font-size:25px;transition:transform .15s,background .15s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.vp-bigplay:hover{background:var(--navy-dark);transform:translate(-50%,-50%)scale(1.06)}.vp-error{text-align:center;color:var(--off-white);background:#061a30e6;justify-content:center;align-items:center;padding:24px;font-size:14px;display:flex;position:absolute;inset:0}.vp-controls{opacity:0;pointer-events:none;background:linear-gradient(#0000,#000000d9);padding:26px 12px 10px;transition:opacity .2s,transform .2s;position:absolute;bottom:0;left:0;right:0;transform:translateY(8px)}.vp-chrome .vp-controls{opacity:1;pointer-events:auto;transform:translateY(0)}.vp-bar{cursor:pointer;background:#ffffff47 padding-box content-box;border-radius:3px;height:5px;margin-bottom:8px;padding:9px 0;position:relative}.vp-bar-buffered,.vp-bar-played{border-radius:3px;height:5px;position:absolute;top:9px;left:0}.vp-bar-buffered{background:#fff6}.vp-bar-played{background:var(--gold)}.vp-bar-knob{background:var(--gold-light);border-radius:50%;width:12px;height:12px;position:absolute;top:50%;right:-6px;transform:translateY(-50%);box-shadow:0 0 0 3px #d4af374d}.vp-row{align-items:center;gap:6px;display:flex}.vp-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:8px;font-size:15px;line-height:0;display:flex}.vp-btn:hover{color:var(--gold-light);background:#ffffff1f}.vp-volume{align-items:center;gap:2px;display:flex}.vp-volume-slider{opacity:0;width:0;accent-color:var(--gold);cursor:pointer;transition:width .18s,opacity .18s}.vp-volume:hover .vp-volume-slider,.vp-volume-slider:focus{opacity:1;width:72px}.vp-time{color:#e8eef6;font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:4px;font-size:12.5px}.vp-title{color:#ffffffbf;text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding:0 10px;font-size:12.5px;overflow:hidden}.vp-speed{position:relative}.vp-menu{background:#061a30f7;border:1px solid #ffffff26;border-radius:10px;flex-direction:column;gap:2px;min-width:118px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 8px);right:0}.vp-menu-title{color:#93a4bb;text-transform:uppercase;letter-spacing:.5px;padding:5px 9px;font-size:11px}.vp-menu-item{color:#fff;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:7px 9px;font-family:inherit;font-size:13px}.vp-menu-item:hover{background:#ffffff1f}.vp-menu-item-on{color:var(--gold-light);font-weight:700}.watch-player-loading{aspect-ratio:16/9;background:var(--navy-dark);width:100%;color:var(--off-white);border-radius:14px;justify-content:center;align-items:center;font-size:14px;display:flex}.watch-locked{aspect-ratio:16/9;background:var(--navy-dark) center / cover no-repeat;border-radius:14px;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.watch-locked:before{content:"";-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#061a30d1;position:absolute;inset:0}.watch-locked-inner{text-align:center;color:var(--white);flex-direction:column;align-items:center;gap:8px;padding:22px;display:flex;position:relative}.watch-locked-inner strong{font-size:17px}.watch-locked-inner p{color:#c3cfdf;margin-bottom:6px;font-size:13.5px}.watch-locked-inner p strong{font-size:inherit;color:var(--gold-light)}.watch-locked-alt{color:#b8c6d8;text-decoration:underline}.watch-locked-alt:hover{color:var(--white)}.watch-locked-icon{width:54px;height:54px;color:var(--gold-light);background:#d4af372e;border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;font-size:21px;display:flex}@media (width<=600px){.vp-hide-sm,.vp-title,.vp-volume-slider{display:none}.vp-controls{padding:22px 6px 6px}}.install-prompt{z-index:150;background:var(--white);border:1px solid var(--border);border-radius:16px;width:min(370px,100vw - 32px);padding:18px 18px 16px;animation:.28s ease-out install-rise;position:fixed;bottom:20px;right:20px;box-shadow:0 18px 44px #061a303d}@keyframes install-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.install-prompt{animation:none}}.install-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:5px;font-size:15px;line-height:0;position:absolute;top:10px;right:10px}.install-close:hover{color:var(--navy-dark);background:var(--off-white)}.install-body{align-items:flex-start;gap:14px;margin-bottom:14px;padding-right:22px;display:flex}.install-icon{border-radius:11px;flex-shrink:0;width:46px;height:46px;box-shadow:0 3px 10px #061a302e}.install-text{flex-direction:column;gap:4px;min-width:0;display:flex}.install-text strong{color:var(--navy-dark);font-size:15px}.install-text span{color:var(--text-muted);font-size:13px;line-height:18px}.install-steps{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.install-steps em{color:var(--navy-dark);font-style:normal;font-weight:700}.install-steps svg{color:var(--navy-light)}.install-actions{justify-content:flex-end;gap:8px;display:flex}@media (width<=600px){.install-prompt{width:auto;padding-bottom:max(16px, env(safe-area-inset-bottom));bottom:12px;left:12px;right:12px}}.doc-viewer{z-index:200;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#1c2530;flex-direction:column;display:flex;position:fixed;inset:0}.doc-toolbar{background:var(--navy-dark);border-bottom:1px solid #ffffff1f;flex-shrink:0;align-items:center;gap:12px;padding:10px 14px;display:flex}.doc-title{color:var(--white);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.doc-tools{flex-shrink:0;align-items:center;gap:8px;display:flex}.doc-pages,.doc-zoom{color:var(--off-white);text-align:center;min-width:46px;font-size:12px;font-weight:600}.doc-scroller{flex-direction:column;flex:1;align-items:center;gap:18px;padding:20px 12px 40px;display:flex;position:relative;overflow:auto}.doc-status{color:var(--off-white);margin-top:40px}.doc-page{background:var(--white);max-width:100%;position:relative;box-shadow:0 6px 22px #0006}.doc-canvas{pointer-events:none;max-width:100%;height:auto;display:block}.doc-page-placeholder{aspect-ratio:1/1.414;width:min(720px,88vw);color:var(--text-muted);justify-content:center;align-items:center;font-size:13px;display:flex}.doc-page-number{color:var(--text-muted);font-size:11px;position:absolute;bottom:6px;right:10px}.doc-watermark{pointer-events:none;transform-origin:50%;flex-wrap:wrap;align-content:flex-start;gap:60px 40px;padding:40px;display:flex;position:absolute;inset:0;overflow:hidden;transform:rotate(-24deg)}.doc-watermark span{color:#061a3021;white-space:nowrap;font-size:13px;font-weight:700}@media print{body.doc-viewer-open *{visibility:hidden!important}body.doc-viewer-open:after{content:"This document cannot be printed.";visibility:visible;padding:40px;font-family:sans-serif;font-size:14pt;display:block}}@media (width<=600px){.doc-toolbar{flex-wrap:wrap;gap:8px}.doc-title{flex:100%;order:-1}.doc-scroller{padding:12px 6px 30px}}.section-navy{background:linear-gradient(170deg, var(--navy-dark), var(--navy-light));border-radius:20px;padding:24px}.section-navy .section-title{color:var(--white)}.empty-state-light{background:#ffffff0f;border:1px dashed #ffffff40}.empty-state-light p{color:var(--off-white)}.material-thumb{object-fit:cover;background:var(--navy-dark);border-radius:14px 14px 0 0;justify-content:center;align-items:center;width:100%;height:130px;font-size:30px;display:flex}.material-thumb-doc{background:linear-gradient(160deg, var(--navy-dark), var(--navy-light));color:var(--gold-light)}.card-instructor-name{color:var(--text-muted);font-size:12px;font-weight:600;text-decoration:none}.card-instructor-name:hover{color:var(--gold-dark);text-decoration:underline}.result-question{background:var(--white);border:1px solid var(--border);border-radius:12px;margin-bottom:14px;padding:16px}.result-question-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.result-question-top strong{color:var(--navy-dark);font-size:14px}.type-badge{background:var(--off-white);border:1px solid var(--border);color:var(--navy);border-radius:5px;padding:3px 8px;font-size:11px;font-weight:700}.result-question-text{color:var(--navy-dark);margin-bottom:12px;font-weight:700;line-height:1.5}.result-row{border-top:1px solid var(--off-white);justify-content:space-between;gap:16px;padding:6px 0;display:flex}.result-answer{text-align:right;color:var(--navy-dark);flex:1;font-weight:700}.result-answer-correct{color:var(--success)}.result-note{background:var(--off-white);border:1px solid var(--border);border-radius:8px;margin-top:10px;padding:10px 12px}.result-note strong{color:var(--gold-dark);text-transform:uppercase;letter-spacing:.4px;font-size:12px}.result-note p{color:var(--navy-dark);margin-top:4px;font-size:13px;line-height:1.5}.result-note-feedback{border-color:var(--gold);background:#fffbf0}.status-pill{letter-spacing:.3px;white-space:nowrap;border-radius:999px;align-self:flex-start;padding:5px 12px;font-size:12px;font-weight:800}.status-pill.status-success{background:var(--success);color:var(--white)}.status-pill.status-failed{background:var(--danger);color:var(--white)}.status-pill.status-processing{background:var(--gold);color:var(--navy-dark)}.source-badge-partial{background:var(--navy);color:var(--gold-light)}.result-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.result-meta{color:var(--text-muted);font-size:12px;font-weight:700}.result-meta-warn{color:var(--danger);font-style:normal}.result-pending-note{color:var(--text-muted);margin-top:6px;font-size:12px;line-height:1.45}.result-pending-banner{border:1px solid var(--gold);color:var(--navy-dark);background:#fffbf0;border-radius:10px;margin-bottom:16px;padding:12px 14px;font-size:13px;font-weight:600}.result-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:18px;display:grid}.result-summary-tile{background:var(--white);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.result-summary-value{color:var(--navy-dark);font-size:20px;font-weight:800}.result-summary-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);font-size:11px;font-weight:700}.result-question-tags{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.answer-state{white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800}.answer-state-pass{background:var(--success);color:var(--white)}.answer-state-fail{background:var(--danger);color:var(--white)}.answer-state-part{background:var(--gold);color:var(--navy-dark)}.answer-state-wait{background:var(--navy);color:var(--gold-light)}.answer-state-blank{background:var(--off-white);color:var(--text-muted);border:1px solid var(--border)}.result-question{border-left:4px solid var(--border)}.result-question-pass{border-left-color:var(--success)}.result-question-fail{border-left-color:var(--danger)}.result-question-part{border-left-color:var(--gold)}.result-question-wait{border-left-color:var(--navy)}.result-question-blank{border-left-color:var(--text-muted)}.result-answer-blank{color:var(--text-muted);font-style:italic;font-weight:600}.result-answer-waiting{color:var(--navy);font-weight:700}.result-answer-zero{color:var(--danger)}@media (width<=600px){.result-summary{grid-template-columns:1fr 1fr}.result-summary-value{font-size:17px}.result-question-top{flex-direction:column;align-items:flex-start;gap:6px}}.currency-switch{border:1px solid var(--border);background:var(--white);border-radius:8px;display:inline-flex;overflow:hidden}.currency-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:6px 10px;font-family:inherit;font-size:12px;font-weight:700}.currency-btn-active{background:var(--navy);color:var(--gold-light)}.sidebar-currency{border-top:1px solid #ffffff1f;justify-content:center;padding:14px 16px;display:flex}.sidebar-currency .currency-switch{background:#ffffff14;border-color:#fff3}.sidebar-currency .currency-btn{color:var(--off-white)}.sidebar-currency .currency-btn-active{background:var(--gold);color:var(--navy-dark)}.access-badge{letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:3px 9px;font-size:.72rem;font-weight:600;display:inline-block}.access-permanent{color:var(--success);background:#2e9e5b1f;border-color:#2e9e5b4d}.access-active{color:var(--navy-light);background:#123b6b14;border-color:#123b6b33}.access-ending{color:var(--gold-dark);background:#d4af3729;border-color:#a8862a59}.access-ended{color:var(--danger);background:#d645451a;border-color:#d6454547}.history-item-locked{opacity:.72}.history-item-locked .history-thumb{filter:grayscale()}.thumb-locked{flex-shrink:0;position:relative}.thumb-lock-badge{color:var(--white);background:#061a3073;border-radius:8px;justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;inset:0}.ai-upload{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.ai-upload-icon{background:linear-gradient(160deg, var(--navy-dark), var(--navy-light));width:46px;height:46px;color:var(--gold-light);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.ai-upload-body{flex-direction:column;flex:1;gap:3px;min-width:200px;display:flex}.ai-upload-body strong{color:var(--navy-dark);font-size:15px}.ai-progress-card{flex-direction:column;gap:8px;display:flex}.ai-progress-head{flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:14px;display:flex}.ai-doc-list{flex-direction:column;gap:12px;display:flex}.ai-doc-row{background:var(--white);border:1px solid var(--border);border-radius:12px;align-items:center;gap:14px;padding:14px;display:flex}.ai-doc-failed{border-color:#d6454566}.ai-doc-icon{background:var(--off-white);width:42px;height:42px;color:var(--navy-light);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.ai-doc-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.ai-doc-body strong{color:var(--navy-dark);font-size:15px}.ai-doc-status{align-items:center;gap:7px;font-size:12.5px;font-weight:600;display:inline-flex}.ai-doc-status-busy{color:var(--navy-light)}.ai-doc-status-ready{color:var(--success)}.ai-doc-status-failed{color:var(--danger);font-weight:500}.ai-doc-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.spinner-inline{border:2px solid #123b6b40;border-top-color:var(--navy-light);border-radius:50%;width:12px;height:12px;animation:.8s linear infinite ai-spin;display:inline-block}@keyframes ai-spin{to{transform:rotate(360deg)}}.spin{animation:1s linear infinite ai-spin}@media (prefers-reduced-motion:reduce){.spinner-inline,.spin{animation:none}}.ai-processing h2{color:var(--navy-dark);margin-bottom:4px;font-size:18px}.ai-stage-list{flex-direction:column;gap:12px;margin:20px 0 4px;list-style:none;display:flex}.ai-stage{color:var(--text-muted);align-items:center;gap:12px;font-size:14px;display:flex}.ai-stage-done{color:var(--navy-dark)}.ai-stage-active{color:var(--navy-light);font-weight:700}.ai-stage-failed{color:var(--danger);font-weight:700}.ai-stage-mark{background:var(--off-white);width:22px;height:22px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;display:flex}.ai-stage-done .ai-stage-mark{background:var(--success);color:#fff}.ai-stage-active .ai-stage-mark{color:var(--navy-light);background:#123b6b1f}.ai-stage-failed .ai-stage-mark{background:var(--danger);color:#fff}.ai-stage-dot{background:var(--border);border-radius:50%;width:7px;height:7px}.ai-summary-head{margin-bottom:20px}.ai-summary-head h1{color:var(--navy-dark);margin:8px 0 6px;font-size:26px;font-weight:900}.ai-summary-meta{flex-wrap:wrap;gap:8px;display:flex}.ai-summary-meta span{background:var(--off-white);border:1px solid var(--border);color:var(--text-muted);text-transform:capitalize;border-radius:999px;padding:3px 11px;font-size:12px}.ai-overview h2{color:var(--navy-dark);margin-bottom:8px;font-size:17px}.ai-overview h3{color:var(--navy);margin:16px 0 8px;font-size:14px}.ai-overview p{color:#33465e;line-height:22px}.ai-objectives{flex-direction:column;gap:7px;list-style:none;display:flex}.ai-objectives li{color:#33465e;align-items:flex-start;gap:9px;font-size:14px;display:flex}.ai-objectives svg{color:var(--success);flex-shrink:0;margin-top:4px}.concept-map-wrap{background:var(--white);border:1px solid var(--border);border-radius:14px;padding:8px}.concept-map{touch-action:pan-y;width:100%;height:auto}.concept-map-hint{text-align:center;margin:4px 0 8px}.cm-edge line{stroke:#cfd8e5;stroke-width:1.5px;transition:stroke .15s}.cm-edge-on line{stroke:var(--gold);stroke-width:2.5px}.cm-edge-label{fill:var(--gold-dark);font-size:11px;font-weight:700}.cm-node{cursor:pointer;outline:none}.cm-node rect{fill:var(--white);stroke:var(--border);stroke-width:1.5px;transition:stroke .15s,fill .15s}.cm-node text{fill:var(--navy-dark);pointer-events:none;font-size:12px;font-weight:700}.cm-node:hover rect{stroke:var(--gold)}.cm-node:focus-visible rect{stroke:var(--navy-light);stroke-width:3px}.cm-node-hub rect{fill:var(--navy-dark);stroke:var(--navy-dark)}.cm-node-hub text{fill:#fff}.cm-node-on rect{fill:#fff7e0;stroke:var(--gold);stroke-width:2.5px}.cm-node-hub.cm-node-on rect{fill:var(--navy-light);stroke:var(--gold)}.cm-node-dot{fill:var(--gold)}.ai-concept-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.ai-concept-card{text-align:left;background:var(--white);border:1px solid var(--border);cursor:pointer;border-radius:12px;flex-direction:column;gap:5px;padding:15px;font-family:inherit;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.ai-concept-card:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 8px 20px #061a301a}.ai-concept-card-on{border-color:var(--gold);background:#fffdf5}.ai-concept-card strong{color:var(--navy-dark);font-size:14.5px}.ai-concept-tags{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.ai-concept-tags em{border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:10.5px;font-style:normal;font-weight:700;display:inline-flex}.tag-from-notes{color:#1d6b3d;background:#2e9e5b1f}.tag-from-ai{color:var(--navy-light);background:#123b6b1a}.tag-visual{color:var(--gold-dark);background:#d4af372e}.ai-steps{color:#33465e;margin:10px 0 0 18px;font-size:14px}.ai-steps li{margin-bottom:6px}.concept-backdrop{z-index:160;background:#061a3066;position:fixed;inset:0}.concept-panel{background:var(--white);z-index:170;flex-direction:column;width:min(460px,100vw);animation:.22s ease-out panel-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-12px 0 40px #061a3033}@keyframes panel-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.concept-panel{animation:none}}.concept-panel-head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 18px 12px;display:flex}.concept-panel-head h2{color:var(--navy-dark);font-size:19px;font-weight:900}.concept-panel-body{flex:1;padding:16px 18px;overflow-y:auto}.concept-panel-body p{color:#33465e;margin-bottom:12px;font-size:14px;line-height:21px}.concept-lead{color:var(--navy-dark);font-size:15px;font-weight:600}.concept-source{color:#1d6b3d;background:#2e9e5b14;border:1px solid #2e9e5b40;border-radius:10px;align-items:flex-start;gap:9px;margin-bottom:14px;padding:10px 12px;font-size:12.5px;display:flex}.concept-source svg{flex-shrink:0;margin-top:2px}.concept-source em{color:var(--text-muted);margin-top:3px;font-size:12px;display:block}.concept-source-ai{color:var(--navy-light);background:#123b6b12;border-color:#123b6b33}.concept-visual{margin:0 0 16px}.concept-visual img{border:1px solid var(--border);border-radius:10px;width:100%;display:block}.concept-visual figcaption{text-align:center;margin-top:6px}.concept-visual-missing{background:var(--off-white);border:1px dashed var(--border);color:var(--text-muted);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:12px;display:flex}.concept-block{margin-bottom:16px}.concept-block h3{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);align-items:center;gap:7px;margin-bottom:7px;font-size:13px;display:flex}.concept-examples{color:#33465e;margin-left:18px;font-size:14px}.concept-examples li{margin-bottom:5px}.concept-chips{flex-wrap:wrap;gap:7px;display:flex}.concept-chip{background:var(--off-white);border:1px solid var(--border);color:var(--navy-dark);cursor:pointer;border-radius:999px;padding:6px 12px;font-family:inherit;font-size:12.5px;font-weight:600}.concept-chip:hover{border-color:var(--gold);background:#fff7e0}.concept-extra{border:1px solid var(--border);border-left:3px solid var(--gold);background:#fbfcfe;border-radius:10px;margin-top:14px;padding:13px 14px}.concept-extra-tag{text-transform:uppercase;letter-spacing:.5px;color:var(--gold-dark);align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:800;display:inline-flex}.concept-panel-actions{border-top:1px solid var(--border);background:var(--off-white);flex-wrap:wrap;flex-shrink:0;gap:8px;padding:12px 18px;display:flex}@media (width<=600px){.concept-panel{border-radius:16px 16px 0 0;width:100vw;height:88vh;top:auto}.ai-doc-row{flex-wrap:wrap}.ai-doc-body{flex:60%}.ai-doc-actions{justify-content:flex-end;width:100%}.concept-panel-actions .btn{flex:1}}.pending-payments{margin-bottom:20px}.pending-payments-intro{margin-bottom:10px}.pending-payment{border:1px solid var(--gold);border-left:4px solid var(--gold);background:#fffbf0;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:10px;padding:14px 16px;display:flex}.pending-payment-body{flex:1;min-width:200px}.pending-payment-body strong{color:var(--navy-dark);font-size:14px}.pending-payment-body p{margin-top:4px}.pending-payment .mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.pending-payment-outcome{margin-top:6px;font-size:13px;font-weight:600;line-height:1.45}.pending-payment-good{color:var(--success)}.pending-payment-bad{color:var(--danger)}.pending-payment-wait{color:var(--navy)}@media (width<=600px){.pending-payment{flex-direction:column;align-items:stretch}.pending-payment .btn{width:100%}}.sim-briefing .card{max-width:720px}.sim-brief-block{margin-top:1.5rem}.sim-brief-block h2{text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted);margin-bottom:.4rem;font-size:.85rem}.sim-criteria{margin:0;padding-left:1.1rem}.sim-criteria li{margin-bottom:.35rem}.sim-notice{border-left:3px solid var(--gold);background:#d4af3714;border-radius:0 8px 8px 0;margin-top:1.5rem;padding:1rem}.sim-notice p{margin:0 0 .5rem}.sim-notice p:last-child{margin-bottom:0}.sim-brief-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.sim-room{background:var(--navy-dark);height:calc(100dvh - 64px);color:var(--white);grid-template-rows:auto 1fr auto auto;display:grid}.sim-room-header,.sim-room-footer{background:#00000040;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.sim-room-header-right{align-items:center;gap:.75rem;display:flex}.sim-clock{font-variant-numeric:tabular-nums;font-weight:700}.sim-clock-low{color:var(--gold-light)}.sim-stage{justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.sim-scene{object-fit:cover;width:100%;height:100%;animation:.7s sim-fade}@keyframes sim-fade{0%{opacity:0}to{opacity:1}}.sim-scene-empty{text-align:center;background:linear-gradient(160deg, var(--navy) 0%, var(--navy-dark) 100%);justify-content:center;align-items:center;padding:2rem;display:flex}.sim-scene-loading{background:#00000080;border-radius:999px;padding:.35rem .7rem;font-size:.75rem;position:absolute;top:1rem;left:1rem}.sim-orb{text-transform:uppercase;letter-spacing:.6px;flex-direction:column;align-items:center;gap:.4rem;font-size:.7rem;display:flex;position:absolute;bottom:1rem;right:1rem}.sim-orb-ring{border:2px solid var(--gold);background:#d4af3726;border-radius:50%;width:44px;height:44px;transition:transform .12s ease-out}.sim-orb-speaking .sim-orb-ring{border-color:var(--white);background:#fff3}.sim-rail{background:#00000026;max-height:34vh;padding:.75rem 1rem;overflow-y:auto}.sim-turn{max-width:46rem;margin-bottom:.75rem}.sim-turn p{margin:.15rem 0 0;line-height:1.45}.sim-turn-who{text-transform:uppercase;letter-spacing:.6px;opacity:.6;font-size:.68rem}.sim-turn-student{text-align:right;margin-left:auto}.sim-turn-partial p{opacity:.5;font-style:italic}.sim-typed{flex:1;gap:.5rem;display:flex}.sim-typed .plan-input{flex:1}.sim-score{margin:.25rem 0 0;font-size:1.5rem}.sim-score strong{color:var(--navy)}.sim-criterion{border-top:1px solid var(--border);padding:1rem 0}.sim-criterion:first-of-type{border-top:none}.sim-criterion-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.sim-evidence{border-left:2px solid var(--border);margin-top:.6rem;padding-left:.75rem}.sim-evidence-line{margin:.25rem 0;font-size:.9rem}.sim-transcript .sim-turn{color:inherit;max-width:none}.sim-transcript-image{border-radius:8px;width:100%;max-width:320px;margin-top:.5rem;display:block}@media (width<=640px){.sim-rail{max-height:30vh}.sim-orb{bottom:.5rem;right:.5rem}}@font-face{font-family:CoFo Brilliant;src:url(/fonts/cofo_brilliant_regular-s.p.0x-1wd4a7iit8.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:CoFo Brilliant;src:url(/fonts/cofo_brilliant_medium-s.p.1vop2d5y_jpw2.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:CoFo Brilliant;src:url(/fonts/cofo_brilliant_bold-s.p.00peqb48xfqwb.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:CoFo Robert;src:url(/fonts/cofo_robert_medium-s.p.3krozkcg6qt-u.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}.landing{--bg:#061a30;--bg-soft:#0a2540;--card:#123b6b;--text:#fff;--text-dim:#aebfd8;--border:#ffffff24;--blue:#f2c94c;--pink:#d4af37;--yellow:#a8862a;--koji:#2e9e5b;--iridescent:linear-gradient(90deg, #f2c94c 0%, #d4af37 55%, #a8862a 100%);--radius:18px;background:var(--bg);min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;font-family:CoFo Brilliant,Helvetica Neue,Arial,sans-serif;line-height:1.5}.landing a{color:inherit;text-decoration:none}.landing img{max-width:100%;display:block}.landing .container{width:100%;max-width:1180px;margin:0 auto;padding:0 24px}.landing .iridescent-text{background:var(--iridescent);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.landing .section-title{letter-spacing:-.02em;margin-bottom:1.2rem;font-size:clamp(1.8rem,4vw,2.9rem);font-weight:700;line-height:1.08}.landing .btn{cursor:pointer;white-space:nowrap;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:13px 24px;font-family:inherit;font-size:1rem;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.landing .btn:hover{transform:translateY(-1px)}.landing .btn--primary{color:#061a30;background:linear-gradient(135deg,#f2c94c 0%,#d4af37 55%,#a8862a 100%)}.landing .btn--primary:hover{box-shadow:0 8px 24px #d4af3766}.landing .btn--ghost{color:var(--text);border:1.5px solid var(--border);background:0 0}.landing .btn--ghost:hover{border-color:#fff6}.landing .btn--lg{padding:16px 32px;font-size:1.05rem}.landing .nav{z-index:50;-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);background:#061a30d1;position:sticky;top:0}.landing .nav__inner{justify-content:space-between;align-items:center;height:72px;display:flex}.landing .nav__logo{align-items:center;gap:10px;display:flex}.landing .nav__logo-img{border-radius:9px;width:34px;height:34px}.landing .nav__logo-text{color:var(--text);font-size:1.15rem;font-weight:700}.landing .nav__links{gap:28px;display:flex}.landing .nav__links a{color:var(--text-dim);font-size:.95rem;transition:color .15s}.landing .nav__links a:hover{color:var(--text)}.landing .nav__actions{align-items:center;gap:16px;display:flex}.landing .nav__signin{color:var(--text);font-weight:600}.landing .nav__signin:hover{color:var(--blue)}.landing .nav__cta{padding:10px 22px;font-size:.95rem}.landing .nav__burger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:8px;display:none}.landing .nav__burger span{background:var(--text);border-radius:2px;width:24px;height:2px;transition:transform .2s,opacity .2s}.landing .nav__burger[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.landing .nav__burger[aria-expanded=true] span:nth-child(2){opacity:0}.landing .nav__burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.landing .nav__mobile{background:var(--bg);border-top:1px solid var(--border);flex-direction:column;gap:8px;padding:16px 24px 24px;display:flex}.landing .nav__mobile a{color:var(--text-dim);padding:12px 0;font-size:1.05rem}.landing .nav__mobile .btn{margin-top:8px}.landing .hero{padding:clamp(48px,8vw,96px) 0 clamp(40px,6vw,72px);position:relative;overflow:hidden}.landing .hero:before{content:"";pointer-events:none;background:radial-gradient(600px 300px at 85% 0,#f2c94c1f,#0000 60%),radial-gradient(600px 300px at 10% 20%,#a8862a1f,#0000 60%);position:absolute;inset:0}.landing .hero__grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:48px;display:grid;position:relative}.landing .hero__title{letter-spacing:-.03em;margin-bottom:24px;font-size:clamp(2.4rem,6vw,4.2rem);font-weight:700;line-height:1.02}.landing .hero__subtitle{color:var(--text-dim);max-width:34ch;margin-bottom:36px;font-size:clamp(1.05rem,2vw,1.3rem)}.landing .hero__ctas{flex-wrap:wrap;gap:14px;display:flex}.landing .hero__media{position:relative}.landing .hero__poster img{border-radius:24px;width:100%;box-shadow:0 30px 80px #00000080}.landing .hero__badge{border-radius:22px;width:110px;height:110px;animation:4s ease-in-out infinite float;position:absolute;top:-18px;right:-8px;box-shadow:0 20px 50px #00000080}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.landing .stats{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:48px 0}.landing .stats__inner{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.landing .stats__item{text-align:center;padding:8px 16px}.landing .stats__label,.landing .stats__number{margin-bottom:8px;font-size:clamp(1.3rem,3vw,1.9rem);font-weight:700;display:block}.landing .stats__item p{color:var(--text-dim);font-size:.98rem}.landing .features{padding:clamp(64px,10vw,120px) 0}.landing .features .section-title{margin-bottom:48px}.landing .features__grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.landing .features__item{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:36px 32px;transition:transform .2s,border-color .2s}.landing .features__item:hover{border-color:#ffffff40;transform:translateY(-4px)}.landing .features__icon{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:18px;font-size:20px;display:flex}.landing .features__icon-doc{color:var(--blue);background:#f2c94c29}.landing .features__icon-video{color:var(--pink);background:#d4af372e}.landing .features__icon-target{color:var(--yellow);background:#a8862a33}.landing .features__icon-teacher{color:var(--koji,#2e9e5b);background:#2e9e5b2e}.landing .features__item h3{letter-spacing:-.01em;margin-bottom:12px;font-size:1.35rem;font-weight:700}.landing .features__item p{color:var(--text-dim);font-size:1.02rem}.landing .subjects{background:var(--bg-soft);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:clamp(48px,8vw,96px) 0}.landing .subjects .section-title{margin-bottom:36px}.landing .tabs{flex-wrap:wrap;gap:10px;margin-bottom:32px;display:flex}.landing .tab{color:var(--text-dim);border:1.5px solid var(--border);cursor:pointer;background:0 0;border-radius:999px;padding:10px 20px;font-family:inherit;font-size:.95rem;font-weight:600;transition:all .15s}.landing .tab:hover{color:var(--text);border-color:#ffffff59}.landing .tab.is-active{background:var(--iridescent);color:#061a30;border-color:#0000}.landing .tabpanel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:40px;animation:.3s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.landing .tabpanel h3{margin-bottom:20px;font-size:1.4rem}.landing .tabpanel ul{grid-template-columns:repeat(2,1fr);gap:12px 24px;margin-bottom:28px;list-style:none;display:grid}.landing .tabpanel li{color:var(--text-dim);padding-left:22px;font-size:1.05rem;position:relative}.landing .tabpanel li:before{content:"";background:var(--iridescent);border-radius:50%;width:8px;height:8px;position:absolute;top:.55em;left:0}.landing .split{padding:clamp(64px,10vw,120px) 0}.landing .split--reverse{background:var(--bg-soft);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.landing .split__grid{grid-template-columns:1fr 1fr;align-items:center;gap:56px;display:grid}.landing .split__media img{border-radius:24px;width:100%}.landing .split__img-desktop{display:block}.landing .split__img-mobile{display:none}.landing .split__copy p{color:var(--text-dim);max-width:46ch;font-size:1.15rem}.landing .schools{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.landing .school{color:var(--text-dim);border:1px solid var(--border);border-radius:999px;padding:8px 18px;font-family:CoFo Robert,Georgia,serif;font-size:.95rem}.landing .testimonials{padding:clamp(64px,10vw,120px) 0}.landing .testimonials .section-title{text-align:center;margin-bottom:40px}.landing .carousel{max-width:720px;margin:0 auto}.landing .carousel__viewport{min-height:300px}.landing .testimonial{text-align:center;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:40px 32px;animation:.35s fadeIn}.landing .testimonial blockquote{margin-bottom:28px;font-family:CoFo Robert,Georgia,serif;font-size:clamp(1.15rem,2.4vw,1.5rem);line-height:1.35}.landing .testimonial figcaption{justify-content:center;align-items:center;gap:14px;display:flex}.landing .testimonial-avatar{background:var(--iridescent);color:#061a30;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.3rem;font-weight:700;display:flex}.landing .testimonial figcaption strong{font-size:1.05rem;display:block}.landing .testimonial figcaption span{color:var(--text-dim);font-size:.9rem}.landing .carousel__controls{justify-content:center;align-items:center;gap:20px;margin-top:24px;display:flex}.landing .carousel__btn{border:1.5px solid var(--border);width:44px;height:44px;color:var(--text);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;transition:border-color .15s,background .15s;display:flex}.landing .carousel__btn:hover{background:#ffffff0f;border-color:#fff6}.landing .carousel__count{color:var(--text-dim);font-size:.95rem;font-weight:600}.landing .cta{background:var(--bg-soft);border-top:1px solid var(--border);padding:clamp(64px,10vw,120px) 0}.landing .cta__inner{grid-template-columns:1fr 1fr;align-items:center;gap:56px;display:grid}.landing .cta__media img{border-radius:24px;width:100%}.landing .cta__copy .section-title{font-size:clamp(1.9rem,4.5vw,3rem)}.landing .cta__text{color:var(--text-dim);max-width:40ch;margin-bottom:28px;font-size:1.1rem}.landing .footer{border-top:1px solid var(--border);background:#04101f;padding:32px 0}.landing .footer__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.landing .footer__brand{align-items:center;gap:10px;display:flex}.landing .footer__logo-img{border-radius:9px;width:34px;height:34px}.landing .footer__logo-text{color:var(--text);font-size:1.05rem;font-weight:700}.landing .footer__tagline{color:var(--text-dim);border-left:1px solid var(--border);margin-left:6px;padding-left:14px;font-size:.9rem}.landing .footer__links{flex-wrap:wrap;gap:20px;display:flex}.landing .footer__links a{color:var(--text-dim);font-size:.92rem;transition:color .15s}.landing .footer__links a:hover{color:var(--text)}.landing .footer__legal{color:var(--text-dim);text-align:center;border-top:1px solid var(--border);width:100%;margin-top:20px;padding-top:16px;font-size:.85rem}@media (width<=768px){.landing .footer__inner{flex-direction:column;align-items:flex-start}.landing .footer__tagline{display:none}.landing .footer__legal{margin-top:0}}@media (width<=992px){.landing .nav__links,.landing .nav__cta{display:none}.landing .nav__burger{display:flex}.landing .hero__grid{grid-template-columns:1fr}.landing .hero__media{order:-1;max-width:560px;margin:0 auto}.landing .hero__copy{text-align:center}.landing .hero__subtitle{margin-left:auto;margin-right:auto}.landing .hero__ctas{justify-content:center}.landing .split__grid,.landing .cta__inner{grid-template-columns:1fr}.landing .split__copy{text-align:center}.landing .split__copy p{margin:0 auto}.landing .schools{justify-content:center}.landing .footer__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.landing .stats__inner{grid-template-columns:1fr;gap:32px}.landing .features__grid,.landing .tabpanel ul{grid-template-columns:1fr}.landing .split__img-desktop{display:none}.landing .split__img-mobile{display:block}.landing .footer__grid{grid-template-columns:1fr}}
