:root{color-scheme:dark;--bg:#05070b;--bg-soft:#0a111c;--surface:rgba(14,23,36,.92);--surface-strong:#121e2d;--surface-muted:rgba(177,226,255,.08);--text:#f3f8ff;--muted:#a7b6c9;--line:rgba(177,226,255,.18);--line-strong:rgba(45,230,202,.45);--teal:#2de6ca;--blue:#1477ff;--green:#27d17f;--amber:#e4c86b;--danger:#ff6f87;--shadow:0 20px 52px rgba(0,0,0,.32)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(rgba(177,226,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(177,226,255,.035) 1px,transparent 1px),var(--bg);background-size:44px 44px,44px 44px,auto;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%}.loginPage{align-items:stretch;display:grid;grid-gap:32px;gap:32px;grid-template-columns:minmax(0,1fr) minmax(360px,440px);min-height:100vh;padding:40px}.loginIntro{align-content:center;display:grid;grid-gap:34px;gap:34px;max-width:800px}.brand,.loginBrand{align-items:center;display:inline-flex;gap:12px}.brand span,.loginBrand span{display:grid;grid-gap:2px;gap:2px}.brand strong,.loginBrand strong{font-size:24px;line-height:1}.brand small,.loginBrand small{color:var(--muted);font-size:13px}.loginIntro h1{font-size:52px;letter-spacing:0;line-height:1.02;margin:12px 0 18px;max-width:820px}.loginIntro p{color:var(--muted);font-size:18px;line-height:1.6;margin:0;max-width:660px}.loginBadges{display:flex;flex-wrap:wrap;gap:10px}.eyebrow,.loginBadges span,.statusPill{align-items:center;border:1px solid var(--line);border-radius:999px;display:inline-flex;gap:8px;min-height:30px}.loginBadges span{background:rgba(45,230,202,.08);color:var(--text);font-weight:700;padding:6px 12px}.loginPanel{align-self:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:24px;gap:24px;justify-self:end;padding:32px;width:100%}.actionItem h3,.courseTop h2,.loginPanel h2,.pageHeader h1,.panel h2{letter-spacing:0;margin:0}.actionItem p,.courseBody p,.listStack p,.loginPanel p,.pageHeader p,.panel p{color:var(--muted);line-height:1.55;margin:0}.loginPanel h2{font-size:32px;line-height:1.08;margin-top:10px}.loginForm{display:grid;grid-gap:16px;gap:16px}.field{display:grid;grid-gap:8px;gap:8px}.field label{color:var(--text);font-size:14px;font-weight:650}.field input,.field select,.field textarea{background:rgba(5,7,11,.55);border:1px solid var(--line);border-radius:8px;color:var(--text);min-height:44px;padding:0 12px;width:100%}.field textarea{min-height:92px;padding:12px;resize:vertical}.field select{cursor:pointer}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(45,230,202,.16);outline:0}.iconButton,.primaryButton,.secondaryButton,.textButton{align-items:center;border-radius:8px;display:inline-flex;font-weight:700;gap:8px;justify-content:center}.primaryButton{background:var(--teal);border:1px solid transparent;color:#031313;cursor:pointer;min-height:44px;padding:0 16px}.primaryButton:disabled{cursor:wait;opacity:.7}.secondaryButton{background:rgba(177,226,255,.08);border:1px solid var(--line);color:var(--text);cursor:pointer;min-height:44px;padding:0 14px}.iconButton:disabled,.secondaryButton:disabled{cursor:not-allowed;opacity:.45}.logoutButton{align-items:center;background:rgba(255,111,135,.1);border:1px solid rgba(255,111,135,.35);border-radius:8px;color:var(--text);cursor:pointer;display:inline-flex;font-weight:800;gap:8px;justify-content:center;min-height:42px;padding:0 12px;width:100%}.logoutButton svg{color:var(--danger);height:17px;width:17px}.textButton{color:var(--teal);justify-content:flex-start}.iconButton{background:rgba(177,226,255,.08);border:1px solid var(--line);color:var(--text);cursor:pointer;height:36px;padding:0;width:36px}.iconButton svg{height:16px;width:16px}.formError{background:rgba(255,111,135,.1);border:1px solid rgba(255,111,135,.42);border-radius:8px;color:var(--danger)}.formError,.formSuccess{font-size:14px;margin:0;padding:10px 12px}.formSuccess{background:rgba(39,209,127,.1);border:1px solid rgba(39,209,127,.35);border-radius:8px;color:var(--green)}.shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{background:rgba(5,7,11,.78);border-right:1px solid var(--line);color:var(--text);display:flex;flex-direction:column;gap:28px;padding:24px;position:-webkit-sticky;position:sticky;top:0;height:100vh}.brand{font-weight:800}.brandLogo,.loginBrand img{border-radius:8px;object-fit:contain}.sidebar nav{display:grid;grid-gap:8px;gap:8px}.sidebar nav a{border-radius:8px;color:#c9d5e2;font-weight:700;padding:10px 12px;overflow-wrap:anywhere}.sidebar nav a:hover{background:rgba(45,230,202,.1);color:#fff}.sidebarMeta{border:1px solid var(--line);border-radius:8px;margin-top:auto;padding:16px}.sidebarMeta span{color:var(--teal);display:block;font-size:13px;font-weight:800;margin-bottom:8px}.sidebarMeta p{color:var(--muted);line-height:1.5;margin:0}.sidebarProfile{align-items:center;background:rgba(177,226,255,.07);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:10px;gap:10px;grid-template-columns:38px minmax(0,1fr);padding:10px}.sidebarProfile small,.sidebarProfile strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebarProfile strong{font-size:13px}.sidebarProfile small{color:var(--muted);font-size:12px;margin-top:2px}.profileAvatar{align-items:center;background:rgba(45,230,202,.12);border:1px solid rgba(45,230,202,.34);border-radius:8px;color:var(--teal);display:flex;height:38px;justify-content:center;width:38px}.profileAvatar svg{height:18px;width:18px}.workspace{display:grid;grid-gap:24px;gap:24px;padding:34px;width:100%}.pageHeader{align-items:center;display:flex;justify-content:space-between}.pageHeader h1{font-size:40px;line-height:1.08;margin-top:12px}.eyebrow{background:rgba(20,119,255,.12);color:var(--teal);font-size:12px;font-weight:800;padding:5px 10px;text-transform:uppercase}.eyebrow svg{height:15px;width:15px}.statsGrid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}.courseCard,.panel,.statCard{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 1px 3px rgba(23,32,42,.04)}.statCard{align-items:center;display:flex;justify-content:space-between;min-height:116px;padding:20px;gap:16px}.statCard p{color:var(--muted);margin:0 0 8px}.statCard strong{display:block;font-size:32px;line-height:1.05}.statCard svg{height:28px;width:28px}.statCard.teal svg{color:var(--teal)}.statCard.blue svg{color:var(--blue)}.statCard.green svg{color:var(--green)}.statCard.amber svg{color:var(--amber)}.panel{display:grid;grid-gap:20px;gap:20px;padding:24px}.panelHeader{align-items:center;display:flex;justify-content:space-between;gap:16px}.panelHeader svg{color:var(--teal)}.emptyState{align-items:center;background:var(--surface-muted);border:1px dashed #b6c4d2;border-radius:8px;color:var(--muted);display:flex;min-height:132px;padding:20px}.actionGrid,.courseGrid{display:grid;grid-gap:16px;gap:16px}.courseGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.courseCard{display:grid;grid-gap:16px;gap:16px;grid-template-columns:48px minmax(0,1fr);padding:20px}.courseIcon{align-items:center;background:rgba(20,119,255,.14);border-radius:8px;color:var(--blue);display:flex;height:48px;justify-content:center;width:48px}.courseBody{display:grid;grid-gap:14px;gap:14px}.courseTop{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.courseTop h2{font-size:20px;line-height:1.2}.courseTop span{background:rgba(39,209,127,.12);border:1px solid rgba(39,209,127,.34);border-radius:999px;color:var(--green);font-size:12px;font-weight:700;padding:4px 10px;white-space:nowrap}.progressTrack{background:rgba(177,226,255,.12);border-radius:999px;height:8px;overflow:hidden}.progressTrack span{background:var(--teal);display:block;height:100%}.actionGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.actionItem{align-items:flex-start;border:1px solid var(--line);border-radius:8px;display:flex;gap:14px;padding:16px}.actionItem svg{color:var(--blue);flex:0 0 auto}.listStack{display:grid;grid-gap:12px;gap:12px}.listStack article{align-items:flex-start;background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:14px;gap:14px;grid-template-columns:auto minmax(0,1fr);padding:16px}.listStack strong{display:block;margin-bottom:4px}.statusPill{font-size:12px;font-weight:800;justify-content:center;padding:4px 9px;white-space:nowrap}.statusPill.green{background:rgba(39,209,127,.12);border-color:rgba(39,209,127,.38);color:var(--green)}.statusPill.blue{background:rgba(20,119,255,.14);border-color:rgba(20,119,255,.38);color:#82b7ff}.statusPill.amber{background:hsla(46,69%,66%,.12);border-color:hsla(46,69%,66%,.38);color:var(--amber)}.dataTable{border:1px solid var(--line);border-radius:8px;overflow-x:auto}.dataTable table{border-collapse:collapse;min-width:680px;width:100%}.dataTable td,.dataTable th{border-bottom:1px solid var(--line);padding:14px 16px;text-align:left}.dataTable th{color:var(--muted);font-size:13px;font-weight:800}.dataTable tr:last-child td{border-bottom:0}.profileGrid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.profileItem{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;padding:16px}.profileItem span{color:var(--muted);display:block;font-size:13px;margin-bottom:8px}.profileItem strong{overflow-wrap:anywhere}.courseEditor{display:grid;grid-gap:16px;gap:16px}.editorToolbar{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;display:flex;gap:16px;justify-content:space-between;padding:18px}.editorToolbar p{color:var(--muted);line-height:1.5;margin:4px 0 0}.editorSteps{background:var(--surface);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));padding:8px}.editorSteps button{background:transparent;border:1px solid transparent;border-radius:8px;color:var(--muted);cursor:pointer;font-weight:800;min-height:40px;padding:0 12px}.editorSteps button.active,.editorSteps button:hover{background:rgba(45,230,202,.1);border-color:rgba(45,230,202,.34);color:var(--text)}.editorGrid{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(280px,340px) minmax(0,1fr)}.editorAside,.editorMain{min-width:0}.editorMain{display:grid;grid-gap:16px;gap:16px}.editorForm{display:grid;grid-gap:12px;gap:12px}.editorForm.twoColumns,.lessonForm{grid-template-columns:repeat(2,minmax(0,1fr))}.editorForm .wide{grid-column:1/-1}.courseList{display:grid;grid-gap:10px;gap:10px}.courseListItem{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;color:var(--text);cursor:pointer;display:grid;grid-gap:6px;gap:6px;padding:14px;text-align:left;width:100%}.courseListItem.active,.courseListItem:hover{border-color:var(--line-strong)}.courseListItem small,.courseListItem span,.lessonRow span{color:var(--muted)}.createCourseInline,.testEditForm{background:rgba(177,226,255,.05);border:1px solid var(--line);border-radius:8px;padding:12px}.structureList{display:grid;grid-gap:14px;gap:14px}.structureItem{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:16px;gap:16px;padding:16px}.lessonRow,.structureHeader{align-items:flex-start;display:flex;gap:14px;justify-content:space-between}.structureHeader h3{font-size:20px;letter-spacing:0;margin:10px 0 4px}.structureHeader p{color:var(--muted);line-height:1.5;margin:0}.iconButtons{display:inline-flex;gap:8px}.lessonList{display:grid;grid-gap:8px;gap:8px}.lessonRow{background:rgba(5,7,11,.34);border:1px solid var(--line);border-radius:8px;padding:12px}.lessonRow span,.lessonRow strong{display:block}.lessonRow strong{margin-bottom:4px}.lessonBlock{background:rgba(5,7,11,.2);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;padding:12px}.lessonBlock .lessonRow{background:transparent;border:0;padding:0}.lessonMaterials{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.materialColumn{background:rgba(177,226,255,.05);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;padding:14px}.materialColumn h4{align-items:center;display:inline-flex;gap:8px;letter-spacing:0;margin:0}.materialColumn h4 svg{color:var(--teal);height:18px;width:18px}.materialColumn p{color:var(--muted);line-height:1.5;margin:0}.compactForm{gap:10px}.accessForm{grid-template-columns:repeat(3,minmax(0,1fr))}.tableMuted{color:var(--muted);font-size:13px}.miniList{display:flex;flex-wrap:wrap;gap:8px}.miniList span{align-items:center;background:rgba(177,226,255,.07);border:1px solid var(--line);border-radius:999px;color:var(--muted);display:inline-flex;gap:6px;padding:5px 9px}.miniList svg{height:15px;width:15px}.lessonViewer,.studentCourses{display:grid;grid-gap:16px;gap:16px}.studentCourseCard{align-content:start}.studentModule{background:rgba(177,226,255,.05);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;padding:12px}.lessonLink{align-items:center;border-top:1px solid var(--line);color:var(--teal);display:flex;gap:8px;justify-content:space-between;padding-top:8px}.lessonLink svg{height:16px;width:16px}.videoFrame{background:#000;border:1px solid var(--line);border-radius:8px;overflow:hidden}.videoFrame video{aspect-ratio:16/9;display:block;width:100%}.lessonText{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;grid-template-columns:auto minmax(0,1fr);padding:18px}.lessonText svg{color:var(--teal);height:22px;width:22px}.assignmentBox p,.lessonText p{color:var(--muted);line-height:1.65;margin:0;white-space:pre-wrap}.assignmentBox{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;padding:16px}.questionList,.testQuestionEditor,.testStack{display:grid;grid-gap:14px;gap:14px}.testQuestionEditor{background:rgba(177,226,255,.05);border:1px solid var(--line);border-radius:8px;padding:16px}.testQuestionEditor h3{letter-spacing:0;margin:0}.questionList article,.testCard{background:rgba(5,7,11,.28);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;padding:14px}.questionHeader{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.correctOption{border-color:rgba(39,209,127,.45)!important;color:var(--green)!important}.testCard header{align-items:flex-start;display:flex;gap:14px;justify-content:space-between}.testCard p{color:var(--muted);line-height:1.5;margin:4px 0 0}.studentTestForm{display:grid;grid-gap:14px;gap:14px}.studentTestForm fieldset{border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;margin:0;padding:14px}.studentTestForm legend{font-weight:800;padding:0 6px}.studentTestForm label{align-items:center;color:var(--muted);display:flex;gap:8px}.studentTestForm input{accent-color:var(--teal)}.adminUsersLayout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(280px,360px) minmax(0,1fr)}.adminUserDetail,.userRegistryPanel{min-width:0}.adminUserDetail{display:grid;grid-gap:16px;gap:16px}.userList{display:grid;grid-gap:8px;gap:8px;max-height:560px;overflow:auto;padding-right:2px}.userListItem{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;color:var(--text);cursor:pointer;display:grid;grid-gap:5px;gap:5px;padding:12px;text-align:left;width:100%}.userListItem.active,.userListItem:hover{border-color:var(--line-strong)}.userListItem small,.userListItem span{color:var(--muted);overflow-wrap:anywhere}.scoreInput{background:rgba(5,7,11,.55);border:1px solid var(--line);border-radius:8px;color:var(--text);min-height:38px;padding:0 10px;width:82px}.eorManager{display:grid;grid-gap:16px;gap:16px}.eorSteps{grid-template-columns:repeat(5,minmax(0,1fr))}.eorSubForm{padding:14px}.checkField,.eorSubForm{background:rgba(177,226,255,.05);border:1px solid var(--line);border-radius:8px}.checkField{align-items:center;color:var(--muted);display:flex;gap:10px;min-height:44px;padding:10px 12px}.checkField input{accent-color:var(--teal);height:17px;width:17px}.checklistStack{display:grid;grid-gap:10px;gap:10px}.checklistItem{align-items:start;background:rgba(177,226,255,.05);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(0,1.5fr) 180px minmax(220px,.9fr) auto;padding:14px}.checklistItem span,.checklistItem strong{display:block}.checklistItem span{color:var(--muted);font-size:13px;margin-top:6px}.checklistItem select,.checklistItem textarea{background:rgba(5,7,11,.55);border:1px solid var(--line);border-radius:8px;color:var(--text);min-height:42px;padding:10px;width:100%}.actionRow{display:flex;flex-wrap:wrap;gap:10px}@media (max-width:980px){.shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.sidebar nav{display:flex;overflow-x:auto;padding-bottom:4px}.sidebar nav a{flex:0 0 auto;white-space:nowrap}.courseGrid,.statsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.adminUsersLayout,.checklistItem,.editorGrid{grid-template-columns:1fr}.accessForm{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.loginPage{grid-template-columns:1fr;padding:18px}.loginIntro{gap:22px}.loginIntro h1{font-size:32px}.loginIntro p{font-size:16px}.loginPanel{padding:22px}.sidebar,.workspace{padding:18px}.accessForm,.actionGrid,.courseGrid,.editorForm.twoColumns,.editorSteps,.eorSteps,.lessonForm,.lessonMaterials,.profileGrid,.statsGrid{grid-template-columns:1fr}.editorToolbar,.lessonRow,.questionHeader,.structureHeader,.testCard header{align-items:stretch;flex-direction:column}.pageHeader{align-items:flex-start;flex-direction:column}.pageHeader h1{font-size:30px}.courseCard{grid-template-columns:1fr}.courseTop{align-items:flex-start;flex-direction:column}.lessonText,.listStack article{grid-template-columns:1fr}}