.app-shell{--sidebar-width:clamp(244px,21.3vw,320px);--topbar-height:76px;grid-template-columns:var(--sidebar-width) minmax(0,1fr);grid-template-rows:var(--topbar-height) minmax(0,1fr);height:100svh;transition:grid-template-columns .28s cubic-bezier(.2,.8,.2,1);display:grid}.topbar{border-bottom:1px solid var(--line);z-index:30;background:#050b15e6;grid-column:1/-1;align-items:center;min-width:0;display:flex}.topbar-brand{width:var(--sidebar-width);min-width:var(--sidebar-width);height:100%;color:var(--gold);white-space:nowrap;justify-content:center;align-items:center;gap:13px;padding:0 21px;transition:width .28s,min-width .28s;display:flex}.topbar-brand .brand-mark{flex-shrink:0;width:37px;height:37px}.brand-name{font-family:var(--font-display);white-space:nowrap;font-size:25px;overflow:hidden}.brand-name small{letter-spacing:.12em;color:#b9b19f;margin-left:8px;font-family:Georgia,serif;font-size:12px}.is-collapsed .brand-name{display:none}.motion-toggle.icon-button{color:#cfbf9f;border:1px solid #b2a48142;border-radius:50%;width:38px;height:38px;margin:0 25px}.motion-toggle.is-muted{color:#6c7b8f}.topbar .mobile-menu,.sidebar-scrim{display:none}.sidebar{border-right:1px solid var(--line);z-index:10;background:linear-gradient(130deg,#070f1cf0,#050c17cf);flex-direction:column;min-width:0;display:flex;overflow:hidden}.sidebar-tools{justify-content:flex-end;height:43px;padding:7px 16px 0;display:flex}.collapse-button{opacity:.65;width:29px;height:29px}.collapse-button .icon{width:16px;height:16px}.is-collapsed .collapse-button .icon{transform:rotate(180deg)}.is-collapsed .sidebar-tools{justify-content:center;padding-inline:0}.side-navigation{flex-direction:column;gap:10px;padding:4px 14px;display:flex}.side-link{color:#aab5c6;white-space:nowrap;border:1px solid #0000;border-radius:9px;align-items:center;gap:19px;height:61px;padding:0 22px;font-size:17px;font-weight:400;display:flex;position:relative}.side-link>.icon{color:#9dacbe;width:22px;height:22px}.side-link:hover{color:#ecf2f6;background:#7397b40f}.side-link.is-active{color:#e1dbc9;background:linear-gradient(95deg,#34678038,#1c33481f);border-color:#7c9ebb33}.side-link.is-active>.icon{color:#87d5df}.nav-glint{display:none}.side-link.is-active .nav-glint{background:#8bdbe7;border-radius:2px;width:2px;display:block;position:absolute;top:17px;bottom:17px;left:-7px;box-shadow:0 0 11px #7ccada}.is-collapsed .side-navigation{padding-inline:10px}.is-collapsed .side-link{justify-content:center;padding-inline:0}.is-collapsed .side-link>span{display:none}.sidebar-account{border-top:1px solid var(--line);white-space:nowrap;align-items:center;gap:14px;min-height:99px;margin-top:auto;padding:24px 24px 28px;display:flex}.avatar{color:#d2ceb9;width:39px;height:39px;font-family:var(--font-display);background:radial-gradient(at 30% 20%,#264151,#0a1626);border:1px solid #adbbca66;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.account-label{flex-direction:column;gap:6px;display:flex;overflow:hidden}.account-label strong{font-size:14px;font-weight:400}.account-label small{color:var(--muted);text-overflow:ellipsis;font-size:11px;overflow:hidden}.sidebar-account>.icon{color:#8d9baa;width:15px;height:15px;margin-left:auto}.sidebar-account:hover,.sidebar-account.is-active{background:#6d98b00d}.is-collapsed .sidebar-account{justify-content:center;padding:23px 0}.is-collapsed .sidebar-account>.icon,.is-collapsed .account-label{display:none}.workspace{scrollbar-width:thin;scrollbar-color:#284257 transparent;min-width:0;min-height:0;padding:33px clamp(24px,2.6vw,44px) 32px;overflow:auto}.workspace:focus{outline:none}.view-heading{justify-content:space-between;align-items:center;gap:18px;margin:0 0 29px;display:flex}.view-heading h1{font-family:var(--font-display);letter-spacing:.07em;color:#e6dcc7;font-size:34px;font-weight:400;line-height:1.4}.view-heading p{color:#96a4b9;margin-top:10px;font-size:12px;line-height:1.7}.view-heading time{color:#8190a6;font-size:11px}.heading-separator{vertical-align:middle;background:#a1b5c940;width:1px;height:11px;margin:0 15px;display:inline-block}.heading-ornament{color:#d2c0a0;opacity:.6;margin-right:7px}.heading-ornament .icon{width:25px;height:25px}.panel{background:linear-gradient(125deg,#0d1b2ed6,#07101fe3);border:1px solid #a0b0c642;border-radius:13px;min-width:0;box-shadow:0 12px 35px #00000014}.panel-header{justify-content:space-between;align-items:center;gap:12px;padding:20px 22px 16px;display:flex}.panel-header h2{font-family:var(--font-display);color:#dfd7c7;white-space:nowrap;align-items:center;gap:11px;font-size:21px;font-weight:400;display:flex}.panel-header h2 .icon{color:#bdc4cc;width:20px;height:20px}.panel-meta{color:#7f91a8;font-size:11px}.task-list{padding:0 17px 16px}.task-row{background:linear-gradient(100deg,#1e354a2e,#172a3e12);border:1px solid #8da9c31f;grid-template-columns:minmax(130px,.75fr) minmax(180px,1.6fr) auto auto;align-items:center;gap:15px;min-height:59px;margin-top:-1px;padding:10px 14px;display:grid}.task-row:first-child{border-radius:7px 7px 0 0}.task-row:last-child{border-radius:0 0 7px 7px}.task-subject{color:var(--course-color);align-items:center;gap:10px;font-size:13px;display:flex}.subject-symbol{background:color-mix(in srgb,var(--course-color) 9%,transparent);border-radius:5px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.subject-symbol .icon{width:19px;height:19px}.task-row h3{color:#c2cbd8;font-size:14px;font-weight:400;line-height:1.6}.task-deadline{color:#9eacc0;white-space:nowrap;align-items:center;gap:7px;font-size:12px;display:flex}.task-deadline .icon{color:#acac9f;width:14px;height:14px}.task-button{min-height:30px;padding:6px 10px;font-size:11px}.task-row.is-completed h3{color:#7d9c9c}.task-row.is-completed .task-button{color:#7cbba8;background:0 0;border-color:#0000}.overview-bottom{grid-template-columns:1.12fr 1fr;gap:18px;margin-top:18px;display:grid}.panel-actions{gap:2px;display:flex}.panel-actions .icon-button{width:25px;height:25px}.week-range{color:#9aabc0;padding:0 21px 14px;font-size:11px}.week-range>span{float:right;color:#738a9e}.timetable-scroll{scrollbar-width:thin;border:1px solid #8eaac22b;border-radius:6px;margin:0 17px;overflow-x:auto}.timetable{table-layout:fixed;border-collapse:collapse;width:100%;min-width:395px}.timetable th,.timetable td{text-align:center;border-bottom:1px solid #8eaac221;border-right:1px solid #8eaac221}.timetable th{color:#a7b7c9;font-size:12px;font-weight:400}.timetable th small{color:#71869e;margin-top:4px;font-size:10px;display:block}.timetable thead th{background:#0c192c5c;height:45px}.timetable thead th:first-child{width:51px}.timetable tbody th{padding:9px 2px}.timetable tbody td{height:71px;padding:5px}.timetable tr>:last-child{border-right:0}.timetable tbody tr:last-child>*{border-bottom:0}.schedule-course{border:1px solid color-mix(in srgb,var(--course-color) 36%,transparent);background:linear-gradient(130deg,color-mix(in srgb,var(--course-color) 18%,transparent),color-mix(in srgb,var(--course-color) 8%,transparent));border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:100%;min-height:59px;padding:7px 2px;transition:filter .2s;display:flex}.schedule-course:hover{filter:brightness(1.4)}.schedule-course strong{color:color-mix(in srgb,var(--course-color) 60%,white);font-size:12px;font-weight:400;line-height:1.4}.schedule-course span{color:#9db1c8;font-size:10px}.panel-footnote{color:#72889e;align-items:center;gap:6px;margin:17px 21px 20px;font-size:10px;display:flex}.panel-footnote .icon{width:12px;height:12px}.month-navigation{justify-content:center;align-items:center;gap:18px;margin:-5px 0 8px;display:flex}.month-navigation strong{color:#cbd6e2;text-align:center;min-width:105px;font-size:14px;font-weight:400}.month-navigation .icon-button{width:27px;height:27px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));margin:0 19px;display:grid}.calendar-weekdays{border-bottom:1px solid #8ea9c32b;padding-bottom:8px}.calendar-weekdays span{color:#a9b5c5;text-align:center;font-size:11px}.calendar-day{color:#c5cfdf;height:37px;font-family:var(--font-ui);border-radius:5px;justify-content:center;align-items:center;padding:0;font-size:14px;display:flex;position:relative}.calendar-day span{border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.calendar-day:hover{background:#70a4c217}.calendar-day.is-outside{color:#465970}.calendar-day.is-today span{border-color:#64c4dc7a}.calendar-day.is-selected span{color:#e6f4ff;background:#4d8ea82e;border-color:#7bcbdc;box-shadow:0 0 14px #54a8c81a}.calendar-day i{opacity:.8;border-radius:50%;width:3px;height:3px;position:absolute;bottom:1px}.calendar-agenda{border-top:1px solid #8ea9c321;min-height:64px;margin:9px 20px 17px;padding-top:12px}.calendar-agenda>span{color:#8395ab;font-size:10px}.calendar-agenda p{color:#a0b0c3;margin-top:10px;font-size:11px}.calendar-agenda button{align-items:center;gap:8px;width:100%;min-height:20px;margin-top:8px;padding:0;display:flex}.calendar-agenda button>i{border-radius:50%;width:4px;height:4px}.calendar-agenda strong{color:#b6c5d5;font-size:11px;font-weight:400}.calendar-agenda small{color:#90a0b4;margin-left:auto;font-size:10px}.calendar-agenda .icon{width:13px;height:13px}.workspace--courses{padding-bottom:20px}.courses-view{min-height:100%}.courses-view .view-heading{margin-bottom:10px}.course-count{color:#7d92a9;font-size:12px}.course-universe{height:calc(100svh - 213px);min-height:590px;position:relative}.orbit-stage{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;outline-offset:-4px;border-radius:12px;position:absolute;inset:0 0 52px}.orbit-stage.is-dragging{cursor:grabbing!important}.course-inspector{z-index:3;background:linear-gradient(140deg,#0b1828f5,#050d19f2);width:clamp(249px,24vw,288px);padding:18px;position:absolute;top:19px;left:0;box-shadow:0 20px 60px #0000002b}.course-cover{background:#061221;border:1px solid #95b5cb40;border-radius:7px;height:136px;position:relative;overflow:hidden}.course-art{width:100%;height:100%;display:block}.course-cover>span{letter-spacing:.12em;color:var(--course-color);font-size:10px;position:absolute;top:10px;left:11px}.course-inspector-heading{justify-content:space-between;align-items:center;gap:10px;margin-top:18px;display:flex}.course-inspector-heading h2{font-family:var(--font-display);color:#e1d8c5;font-size:25px;font-weight:400}.course-inspector-heading .icon{color:#d6be8e;width:17px;height:17px}.course-description{color:#92a6bd;min-height:39px;margin-top:11px;font-size:11px;line-height:1.8}.course-facts{margin:12px 0 0}.course-facts>div{border-bottom:1px solid #95b1c429;padding:11px 0}.course-facts dt{color:#869aae;align-items:center;gap:6px;font-size:10px;display:flex}.course-facts dt .icon{width:12px;height:12px}.course-facts dd{color:#c9c8bd;margin:6px 0 0;font-size:12px}.course-progress-label{justify-content:space-between;align-items:center;padding-top:17px;display:flex}.course-progress-label>span{color:#a2b0bd;font-size:11px}.course-progress-label strong{color:#d9dfdb;font-family:Georgia,serif;font-size:21px;font-weight:400}.course-progress-label small{color:#8d9daf;font-size:13px}.progress-track{background:#95aec230;width:100%;height:2px;margin-top:10px}.progress-track>span{background:var(--course-color);height:100%;box-shadow:0 0 9px color-mix(in srgb,var(--course-color) 35%,transparent);transition:width .3s;display:block}.course-inspector .primary-button{width:100%;min-height:44px;font-family:var(--font-display);margin-top:23px;font-size:17px}.orbit-controls{z-index:4;align-items:center;gap:12px;display:flex;position:absolute;bottom:0;right:0}.orbit-controls>span{color:#a4abaf;font-family:var(--font-display);letter-spacing:.05em;align-items:center;gap:9px;margin-right:10px;font-size:13px;display:flex}.orbit-controls>span .icon{width:18px;height:18px}.orbit-arrow.icon-button{color:#c4d2d8;background:linear-gradient(120deg,#2642534d,#06111c33);border:1px solid #99b9cb4f;border-radius:8px;width:51px;height:45px}.orbit-arrow:hover{color:#dffaff;border-color:#82c7d6;box-shadow:0 0 20px #4698b61f}.secondary-view{max-width:1120px;margin:0 auto}.class-panel{align-items:center;gap:25px;padding:31px;display:flex}.class-emblem{color:#a2c2d5;background:radial-gradient(circle,#20394b70,#0a192b);border:1px solid #7cadc840;border-radius:50%;justify-content:center;align-items:center;width:85px;height:85px;display:flex}.class-emblem .icon{width:34px;height:34px}.class-panel h2{font-family:var(--font-display);color:#ded7c7;margin:9px 0 12px;font-size:26px;font-weight:400}.class-panel p,.muted{color:#8da1b8;font-size:12px}.class-panel .quiet-button{margin-left:auto}.section-hint{color:#8195aa;margin-top:21px;font-size:12px}.notes-layout{grid-template-columns:235px minmax(0,1fr);min-height:470px;display:grid;overflow:hidden}.note-list{border-right:1px solid var(--line);padding:12px}.note-preview{text-align:left;border:1px solid #0000;border-radius:7px;flex-direction:column;gap:11px;width:100%;padding:18px 13px;display:flex}.note-preview.is-active{background:#243e543b;border-color:#54748c47}.note-preview strong{color:#c7d2db;font-size:13px;font-weight:500;line-height:1.6}.note-preview span{color:#8fa2b8;font-size:11px;line-height:1.8}.note-preview small{color:#677e95;font-size:10px}.note-editor{flex-direction:column;min-width:0;padding:27px;display:flex}.note-editor>input{font-family:var(--font-display);color:#ddd7c9;background:0 0;border:0;width:100%;padding:8px 0;font-size:25px}.note-editor-rule{background:var(--line);height:1px;margin:15px 0}.note-editor textarea{resize:vertical;color:#b4c2d1;background:0 0;border:0;flex:1;width:100%;min-height:280px;padding:6px 0;font-size:14px;line-height:2}.note-editor textarea:focus-visible,.note-editor>input:focus-visible{outline-offset:6px}.note-editor-footer{justify-content:space-between;align-items:center;gap:15px;padding-top:15px;display:flex}.note-editor-footer>span{color:#7f94a9;font-size:10px}.profile-panel{max-width:730px;padding:32px}.profile-identity{align-items:center;gap:22px;margin-bottom:29px;display:flex}.avatar-large{width:70px;height:70px;font-size:31px}.profile-identity h2{font-family:var(--font-display);color:#e2dac8;font-size:25px;font-weight:400}.profile-identity p{color:#8aa0b5;margin-top:10px;font-size:12px}.profile-name-row{gap:12px;margin-bottom:27px;display:flex}.plain-input{background:#071321;border:1px solid #47607869;border-radius:6px;flex:1;min-width:0;height:42px;padding:0 13px}.settings-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:22px 0;display:flex}.settings-row strong{font-size:14px;font-weight:400}.settings-row p{color:#8399af;margin-top:9px;font-size:11px}.switch{background:#213348;border:1px solid #49617a;border-radius:20px;flex:none;width:44px;height:25px;padding:3px;transition:background .2s}.switch span{background:#a6b4c4;border-radius:50%;width:17px;height:17px;transition:transform .2s;display:block}.switch.is-on{background:#255261;border-color:#6da7b8}.switch.is-on span{background:#b4e3e6;transform:translate(17px)}.profile-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding-top:23px;display:flex}.profile-footer>span{color:#8194aa;font-size:10px;line-height:1.7}.profile-footer .text-button{color:#c29f9c;flex-shrink:0}.profile-footer .icon{width:15px;height:15px}.destination-view{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:min(620px,100svh - 180px);display:flex}.destination-orbit{width:155px;height:155px;color:var(--destination-color);background:radial-gradient(circle,color-mix(in srgb,var(--destination-color) 9%,transparent),transparent 66%);justify-content:center;align-items:center;margin-bottom:38px;display:flex;position:relative}.destination-orbit>.icon{width:51px;height:51px}.destination-orbit>i{border:1px solid color-mix(in srgb,var(--destination-color) 25%,transparent);border-radius:50%;position:absolute;inset:0}.destination-orbit>i:nth-of-type(2){inset:23px -22px;transform:rotate(-32deg)}.destination-orbit>.brand-mark{width:12px;height:12px;color:var(--destination-color);position:absolute;top:12px;right:-3px}.destination-view h1{font-family:var(--font-display);letter-spacing:.13em;color:#e1d8c4;font-size:39px;font-weight:400}.destination-view>p{color:#9dacc1;margin-top:21px;font-size:14px;line-height:1.8}.destination-status{color:#71859d;margin:39px 0 23px;font-size:12px;line-height:1.9}@media (width>=1700px){.overview-view{max-width:1320px;margin:0 auto}.task-row{min-height:67px}.calendar-day{height:44px}.timetable tbody td{height:84px}.schedule-course{min-height:70px}}@media (width<=1150px) and (width>=901px){.app-shell{--sidebar-width:230px}.brand-name{font-size:22px}.brand-name small{display:none}.motion-toggle{margin-inline:14px}.workspace{padding:25px 23px}.task-row{grid-template-columns:130px 1fr auto}.task-deadline{grid-column:2;font-size:10px}.task-button{grid-area:1/3/3}.task-row{row-gap:4px}.task-subject{grid-row:1/3}.overview-bottom{grid-template-columns:1fr}.calendar-day{height:44px}.course-inspector{width:245px;padding:15px}.course-cover{height:118px}}@media (width<=900px){.app-shell,.app-shell.is-collapsed{--sidebar-width:270px;--topbar-height:111px;grid-template-columns:minmax(0,1fr)}.topbar{flex-wrap:wrap;align-content:flex-start}.topbar-brand{flex:1;justify-content:flex-start;gap:11px;width:auto;min-width:0;height:62px;padding:0 9px}.topbar-brand .brand-mark{width:29px;height:29px}.brand-name,.is-collapsed .brand-name{font-size:22px;display:inline}.brand-name small{margin-left:6px;font-size:10px}.topbar .mobile-menu{order:-1;margin-left:10px;display:inline-flex}.motion-toggle.icon-button{align-self:center;width:33px;min-width:33px;height:33px;min-height:33px;margin:0 18px 0 9px}.sidebar{top:var(--topbar-height);width:var(--sidebar-width);z-index:25;background:#081422;transition:transform .25s;position:fixed;bottom:0;left:0;transform:translate(0);box-shadow:30px 0 80px #0005}.is-collapsed .sidebar{transform:translate(-101%)}.sidebar-scrim{inset:var(--topbar-height) 0 0;opacity:1;z-index:20;background:#0007;transition:opacity .25s;display:block;position:fixed}.is-collapsed .sidebar-scrim{opacity:0;pointer-events:none}.sidebar-tools{height:44px}.side-link{height:61px}.workspace{grid-area:2/1;padding:24px}.overview-bottom{grid-template-columns:1.05fr 1fr}.task-row{grid-template-columns:138px 1fr auto;row-gap:4px}.task-subject{grid-row:1/3}.task-deadline{grid-column:2;font-size:10px}.task-button{grid-area:1/3/3}.view-heading h1{font-size:30px}.course-universe{flex-direction:column;height:auto;min-height:0;display:flex}.orbit-stage{flex-shrink:0;width:100%;height:430px;position:relative;inset:auto}.course-inspector{order:3;width:100%;margin-top:18px;padding:20px;position:relative;top:auto;left:auto}.course-inspector-inner{grid-template-columns:190px 1fr;column-gap:22px;display:grid}.course-cover{grid-row:1/4;height:160px}.course-inspector-heading{margin-top:0}.course-facts{grid-column:2;grid-template-columns:1fr 1fr;gap:0 16px;margin:0;display:grid}.course-facts>div{padding:7px 0}.course-facts>div:last-child{grid-column:1/-1}.course-progress-label{grid-column:1;padding-top:17px}.progress-track{grid-column:1;margin-top:5px}.course-inspector .primary-button{grid-area:4/2/6;align-self:center;margin-top:18px}.orbit-controls{order:2;justify-content:flex-end;margin-top:4px;position:relative}.orbit-controls>span{margin-right:auto}}@media (width<=700px){.workspace{padding:23px 18px}.view-heading{margin-bottom:23px}.view-heading h1{font-size:28px}.view-heading p{font-size:11px}.view-heading time{margin-top:3px;display:block}.heading-separator{display:none}.panel-header{padding:18px 16px 15px}.panel-header h2{gap:8px;font-size:17px}.panel-meta{font-size:10px}.task-list{padding:0 12px 13px}.task-row{grid-template-columns:1fr auto;gap:7px 8px;padding:13px 11px}.task-subject{grid-area:1/1;gap:8px;font-size:11px}.subject-symbol{width:24px;height:24px}.subject-symbol .icon{width:15px;height:15px}.task-row h3{grid-area:2/1;font-size:12px}.task-deadline{grid-area:3/1}.task-button{grid-area:1/2/4;min-width:59px;padding-inline:8px;font-size:10px}.overview-bottom{grid-template-columns:1fr;gap:16px;margin-top:16px}.timetable{min-width:310px}.timetable-scroll{margin-inline:10px}.timetable thead th:first-child{width:44px}.timetable tbody td{height:79px;padding:3px}.schedule-course{min-height:67px}.schedule-course strong,.schedule-course span{font-size:9px}.calendar-weekdays,.calendar-grid{margin-inline:8px}.calendar-day{height:44px}.calendar-day span{width:32px;height:32px}.calendar-agenda{margin-inline:17px}.course-count{font-size:10px}.courses-view .view-heading{margin-bottom:0}.orbit-stage{height:367px}.course-inspector{padding:17px}.course-inspector-inner{grid-template-columns:1fr}.course-cover{grid-row:auto;height:127px}.course-inspector-heading{margin-top:17px}.course-description{min-height:auto}.course-facts{grid-column:1;margin-top:12px}.course-inspector .primary-button{grid-area:auto/1;margin-top:20px}.orbit-controls{gap:9px}.orbit-controls>span{font-family:var(--font-ui);letter-spacing:0;gap:6px;font-size:11px}.orbit-controls>span .icon{width:15px;height:15px}.orbit-arrow.icon-button{width:44px;height:42px}.class-panel{flex-wrap:wrap;gap:18px;padding:24px}.class-emblem{width:60px;height:60px}.class-emblem .icon{width:26px;height:26px}.class-panel h2{font-size:22px}.class-panel .quiet-button{width:100%;margin:7px 0 0}.notes-layout{grid-template-columns:1fr}.note-list{border-right:0;border-bottom:1px solid var(--line);display:flex;overflow-x:auto}.note-preview{min-width:165px;max-width:215px;padding:13px}.note-preview span{display:none}.note-editor{padding:21px}.note-editor>input{font-size:23px}.note-editor-footer{align-items:flex-end}.note-editor-footer>span{max-width:155px;line-height:1.8}.profile-panel{padding:23px}.profile-footer{flex-wrap:wrap}.destination-view h1{font-size:31px}.destination-view>p{font-size:12px}.destination-status{padding:0 20px;font-size:11px}}.app-shell{--sidebar-width:clamp(185px,17.3vw,245px);--topbar-height:76px}.app-shell .topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0308117a;border-color:#abc2da29;gap:0;padding:0 30px}.brand-switcher{align-items:center;height:100%;display:flex;position:relative}.app-shell .topbar-brand{color:#e1e8ed;gap:14px;width:auto;min-width:0;padding:0 26px 0 0}.app-shell .topbar-brand .brand-mark{color:#dcebf3;width:37px;height:37px}.app-shell .brand-name{font-family:var(--font-ui);letter-spacing:.13em;font-size:22px;font-weight:300;display:block}.current-page{letter-spacing:.08em;color:#e2e9f0;white-space:nowrap;border-left:1px solid #8aa6bd55;padding-left:25px;font-size:16px}.topbar-actions{align-items:center;gap:36px;margin-left:auto;display:flex}#course-search{border-bottom:1px solid #b3c7df40;align-items:center;gap:10px;width:clamp(180px,23vw,320px);height:38px;display:flex}#course-search>.icon{color:#a2b5c7;width:17px;height:17px}#course-search input{background:0 0;border:0;outline:none;width:100%;min-width:0;height:100%;font-size:13px}#course-search:focus-within{border-color:#84deee}.search-submit{color:#a1bfcb;align-items:center;padding:6px 2px;display:flex}.search-submit .icon{width:17px;height:17px}.invite-button{white-space:nowrap;letter-spacing:.07em;color:#d5e2eb;align-items:center;gap:13px;padding:12px 0 12px 8px;font-size:13px;display:flex}.invite-button .icon{width:15px;height:15px}.invite-button:hover{color:#9ceaf3}.space-menu{background:#060e1cf5;border:1px solid #8caac43b;width:200px;padding:13px 0;position:absolute;top:calc(100% - 2px);left:-10px;box-shadow:0 20px 45px #0007}.space-menu[hidden]{display:none}.space-menu a,.space-menu button{text-align:left;color:#bccddd;width:100%;padding:13px 24px;font-size:13px;display:block}.space-menu a:hover,.space-menu button:hover{color:#adf2ff;background:#82d0e60b}.space-menu button{border-top:1px solid #9abbd629;margin-top:9px}.app-shell .sidebar{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(90deg,#03091548,#0000);border-right:1px solid #aac5de26}.app-shell .sidebar-tools{height:58px;padding-top:13px}.app-shell .side-navigation{gap:18px;padding:0 27px}.app-shell .side-link{letter-spacing:.06em;color:#91a4bb;background:0 0;border:0;border-radius:0;gap:13px;height:61px;padding:0 0 0 9px;font-size:14px}.app-shell .side-link>.icon{color:#8194ae;opacity:.8;width:17px;height:17px}.app-shell .side-link:hover{color:#d5ebf6;background:0 0}.app-shell .side-link.is-active{color:#f0f8ff;background:0 0}.app-shell .side-link.is-active>.icon{color:#a0eaf2;opacity:1}.app-shell .side-link.is-active .nav-glint{background:#7ee3f2;border-radius:0;width:14px;height:2px;top:29px;bottom:auto;left:-23px;box-shadow:0 0 8px #7ccada66}.app-shell .sidebar-account{border-top:0;gap:11px;min-height:87px;padding:22px 27px}.app-shell .sidebar-account .avatar{width:30px;height:30px;font:13px var(--font-ui);color:#b4d4e3;background:0 0;border:1px solid #9cb3c644}.app-shell .account-label strong{color:#a9bbcd;font-size:12px}.app-shell .account-label small{color:#6d8299;font-size:10px}.app-shell .sidebar-account>.icon{display:none}.app-shell.is-collapsed{--sidebar-width:70px}.app-shell.is-collapsed .side-navigation{padding:0 13px}.app-shell.is-collapsed .side-link{padding:0}.app-shell.is-collapsed .side-link .nav-glint{width:9px;left:-13px}.app-shell.is-collapsed .sidebar-account{padding-inline:0}.app-shell .workspace{padding-top:32px}.app-shell .view-heading h1{font-family:var(--font-ui);color:#e5edf4;letter-spacing:.025em;font-size:30px;font-weight:300}.app-shell .panel{box-shadow:none;background:linear-gradient(125deg,#0b172766,#07101c80);border-color:#a9c7df29;border-radius:2px}.app-shell .workspace--courses{padding:35px 0 0 38px;overflow:hidden}.app-shell .courses-view{height:100%;min-height:0;position:relative}.app-shell .courses-view.view-enter{animation:.4s ease-out both course-fade}@keyframes course-fade{0%{opacity:0}to{opacity:1}}.app-shell .courses-view .view-heading{z-index:4;pointer-events:none;margin:0;position:relative}.app-shell .course-universe{height:auto;min-height:0;position:absolute;inset:58px 0 0}.app-shell .orbit-stage{border-radius:0;position:absolute;inset:0;overflow:hidden}.galaxy-labels{pointer-events:none;position:absolute;inset:0}.galaxy-label{pointer-events:auto;text-align:left;white-space:nowrap;letter-spacing:.025em;color:#cad9e9;text-shadow:0 2px 12px #02050b,0 0 20px #02050b;width:232px;height:60px;padding:0;font-size:19px;font-weight:300;transition:color .2s;display:block;position:absolute;top:-40px;left:0}.galaxy-label[hidden]{display:none}.galaxy-leader{fill:none;stroke:currentColor;stroke-width:.7px;opacity:.7;width:56px;height:30px;position:absolute;top:11px;left:0;overflow:visible}.galaxy-leader circle{fill:currentColor;stroke:none}.galaxy-label-title{line-height:30px;position:absolute;top:9px;left:64px}.galaxy-label-meta{display:none}.galaxy-label:hover{color:#e9faff}.galaxy-label.is-selected{color:#e9fbff;font-size:22px}.galaxy-label.is-distant{font-size:16px}.galaxy-label.is-right{text-align:right;width:218px;margin-left:-218px}.galaxy-label.is-right .galaxy-leader{left:auto;right:0;transform:scaleX(-1)}.galaxy-label.is-right .galaxy-label-title{left:auto;right:64px}.orbit-fallback-curves{pointer-events:none;fill:none;stroke-width:1px;width:100%;height:100%;position:absolute;inset:0}.empty-course-message{color:#92a9be;margin-top:65px}.app-shell .course-inspector{width:clamp(214px,20vw,285px);box-shadow:none;pointer-events:none;background:0 0;border:0;padding:0 12px 0 0;top:40px;left:0}.course-inspector button{pointer-events:auto}.app-shell .course-cover{opacity:.75;background:0 0;border:0;border-radius:0;width:90%;height:106px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 65%,#0000);mask-image:linear-gradient(90deg,#000 65%,#0000)}.course-subject{color:var(--course-color);letter-spacing:.1em;margin-top:22px;font-size:11px;display:block}.app-shell .course-inspector-heading{margin-top:12px}.app-shell .course-inspector-heading h2{font-family:var(--font-ui);color:#e1ecf4;font-size:clamp(24px,2.1vw,32px);font-weight:300}.app-shell .course-description{color:#8c9eb5;max-width:245px;margin-top:14px;font-size:12px;line-height:1.9}.app-shell .course-facts{margin:20px 0 0}.app-shell .course-facts>div{border:0;align-items:center;gap:10px;padding:7px 0;display:flex}.app-shell .course-facts dt .icon{width:14px;height:14px}.app-shell .course-facts dd{color:#a9b8c8;margin:0;font-size:12px}.app-shell .course-progress-label{max-width:200px;padding-top:23px}.app-shell .course-progress-label>span{color:#738ba3;font-size:10px}.app-shell .course-progress-label strong{font:17px var(--font-ui);color:var(--course-color)}.app-shell .course-progress-label small{font-size:12px}.app-shell .progress-track{width:200px;max-width:90%;height:1px;margin-top:12px}.course-enter{min-height:48px;color:var(--course-color);letter-spacing:.1em;align-items:center;gap:27px;margin-top:13px;padding:8px 0;font-size:15px;display:flex}.course-enter:hover{color:#e2faff}.course-enter .icon{width:26px;transition:transform .25s}.course-enter:hover .icon{transform:translate(5px)}.app-shell .orbit-controls{justify-content:space-between;gap:22px;bottom:26px;left:24%;right:14%}.app-shell .orbit-controls>span{font:12px var(--font-ui);letter-spacing:.1em;color:#9faec2;border-inline:1px solid #a7c4df2b;margin:0;padding:8px 20px}.app-shell .orbit-arrow{color:#b1c2d3;letter-spacing:.08em;text-shadow:0 1px 8px #02050d,0 0 18px #02050d;background:0 0;border:0;align-items:center;gap:13px;min-width:122px;min-height:46px;padding:8px 0;font-size:13px;display:inline-flex}.app-shell .orbit-arrow .icon{width:29px}.app-shell .orbit-arrow:first-child .icon{transform:rotate(180deg)}.app-shell .orbit-arrow:disabled{opacity:.3}.app-shell .orbit-arrow:hover{box-shadow:none;color:#97efff}.search-results{display:grid}.search-results button{text-align:left;border-bottom:1px solid #a3c2df29;justify-content:space-between;align-items:center;padding:18px 0;display:flex}.search-results strong{color:#d8edf6;font-size:15px;font-weight:400}.search-results small{color:#8ba6bb;margin-top:10px;font-size:12px;display:block}.search-results button:hover{color:#83dfec}.invite-input{border-radius:0;width:100%;margin-top:3px}.no-webgl .orbit-stage{background:radial-gradient(at 100% 100%,#24475a88,#0000 64%)}@media (width<=900px){.app-shell .topbar{padding-inline:15px}.app-shell .topbar-brand{padding-right:15px}.current-page{padding-left:15px;font-size:13px}.topbar-actions{gap:15px}#course-search{width:160px}.app-shell .sidebar{background:#050e1af5}.app-shell .workspace--courses{padding-left:24px}}@media (height<=760px) and (width>=901px){.app-shell .course-inspector{top:24px}.app-shell .course-cover{height:60px}.course-subject,.app-shell .course-facts{margin-top:12px}}@media (width<=600px){.app-shell .brand-name,.current-page,#course-search{display:none}.app-shell .topbar{height:65px}.app-shell{--topbar-height:65px}.app-shell .course-inspector{width:180px;top:15px}.app-shell .course-cover{height:75px}.app-shell .course-description{max-width:150px}.galaxy-label{gap:6px;font-size:11px}.galaxy-label.is-selected{font-size:12px}.app-shell .orbit-controls{gap:10px;bottom:14px;left:5%}.app-shell .course-inspector-heading h2{font-size:22px}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e7eaf0;--soft:#a4b0c2;--muted:#7e8da4;--gold:#dac9a6;--cyan:#78ccdb;--line:#9eb4cf2e;--surface:#0a1424;--font-ui:"Inter","Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;--font-display:"Noto Serif SC","Source Han Serif SC","Songti SC","STSong","SimSun",serif;--pointer-x:0px;--pointer-y:0px;font-family:var(--font-ui);font-synthesis:none;color:var(--ink);background:#060b16;font-size:14px}*{box-sizing:border-box}html,body{min-width:320px;min-height:100%;margin:0}body{overflow:hidden}button,input,textarea,select{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:default}button{background:0 0;border:0}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}input,textarea{color:var(--ink)}input::placeholder,textarea::placeholder{color:#74859b;opacity:1}::selection{background:#64bcd54d}.icon{flex:none;width:21px;height:21px}.brand-mark{width:46px;height:46px;color:var(--gold);overflow:visible}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#universe{z-index:0;width:100%;height:100%;display:block;position:fixed;inset:0}#app{z-index:1;min-height:100svh;position:relative}.no-webgl body{background:radial-gradient(at 78% 58%,#17304a 0%,#0a172a 26%,#060b16 66%)}.no-webgl #universe{visibility:hidden}.no-webgl #app:before{content:"";pointer-events:none;opacity:.45;background-image:radial-gradient(circle,#a1cdf1cc 0 1px,#0000 1.3px),radial-gradient(circle,#f0ddb3a6 0 1px,#0000 1.3px);background-position:22px 48px,70px 19px;background-size:113px 137px,197px 173px;position:fixed;inset:0}.welcome{touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;min-height:100svh;display:flex;position:relative;overflow:hidden}.welcome-mist{pointer-events:none;background:linear-gradient(90deg,#02050e57,#02050e0a 45%,#0000 70%);position:absolute;inset:0}.welcome-copy{text-align:center;width:min(430px,39vw);transform:translate(var(--pointer-x),var(--pointer-y));margin-top:3vh;margin-left:10.1vw;position:relative}.welcome-brand{color:#e4d8be}.welcome h1{font-family:var(--font-display);letter-spacing:.26em;text-indent:.26em;white-space:nowrap;text-shadow:0 0 34px #eed3a61a,0 3px 20px #00000073;font-size:clamp(84px,8.6vw,142px);font-weight:400;line-height:1.25}.welcome-latin{letter-spacing:.97em;text-indent:.97em;color:#cbbd9f;margin-top:19px;font-family:Georgia,Times New Roman,serif;font-size:clamp(17px,1.85vw,27px);font-weight:400}.explore-button{color:#d6ccb8;width:min(360px,100%);font-family:var(--font-display);letter-spacing:.22em;margin:67px auto 0;padding:17px 0 0;font-size:17px;transition:color .3s,filter .3s,transform .3s;display:block;position:relative}.explore-button:before{content:"";background:linear-gradient(90deg,#0000,#dccca861,#0000);height:1px;position:absolute;top:0;left:4%;right:4%}.explore-button:hover{color:#fff2d3;filter:drop-shadow(0 0 12px #a8ceef38)}.explore-button:active{transform:translateY(2px)}.explore-rule{justify-content:center;align-items:center;gap:17px;margin-top:20px;display:flex}.explore-rule i{background:linear-gradient(90deg,#0000,#c7d4e68a);width:38%;height:1px}.explore-rule i:last-child{transform:rotate(180deg)}.explore-rule .icon{color:#b7deff;fill:#cce7ff;filter:drop-shadow(0 0 7px #71a9e0);width:13px;height:13px;animation:3.8s ease-in-out infinite star-breathe}.nebula-controls{z-index:5;gap:9px;display:flex;position:absolute;bottom:31px;right:40px}.nebula-controls button{align-items:center;width:36px;height:28px;padding:8px 0;display:grid}.nebula-controls button span{background:#b4d8ea66;height:1px;transition:background .4s,box-shadow .4s}.nebula-controls button[aria-pressed=true] span{background:#dcf4ff;box-shadow:0 0 8px #b7e6ff77}.nebula-controls button:hover span{background:#fff}.login-scene .nebula-controls{left:50%;right:auto;transform:translate(-50%)}.is-assembling .welcome-brand{animation:1.6s cubic-bezier(.16,1,.3,1) 1.4s both brand-arrive}.is-assembling .explore-button{opacity:0;pointer-events:none}.welcome:not(.is-assembling) .explore-button{animation:1.1s ease-out both entry-reveal}@keyframes brand-arrive{0%{opacity:0;filter:blur(9px);letter-spacing:.4em;transform:translateY(16px)}to{opacity:1;filter:blur();transform:none}}@keyframes entry-reveal{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes star-breathe{0%,to{opacity:.6;transform:scale(.78)}50%{opacity:1;transform:scale(1)}}.login-screen{grid-template-columns:53% 47%;min-height:100svh;display:grid}.login-scene{-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;min-width:0;display:flex;position:relative}.login-brand{text-align:center;text-shadow:0 2px 25px #030712;transform:translate(var(--pointer-x),var(--pointer-y));margin-top:1vh}.login-brand .brand-mark{color:#b5d2e2;width:64px;height:64px;margin-bottom:27px}.login-brand h1{font-family:var(--font-display);color:#e6d9bf;letter-spacing:.25em;text-indent:.25em;font-size:76px;font-weight:400}.login-brand p{letter-spacing:.75em;text-indent:.75em;color:var(--gold);margin-top:22px;font-family:Georgia,serif;font-size:17px}.login-back{z-index:3;position:absolute;top:30px;left:36px}.back-link{color:var(--soft);align-items:center;gap:6px;font-size:13px;transition:color .2s;display:inline-flex}.back-link:hover{color:var(--ink)}.login-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(115deg,#050c1780,#070e19db);border-left:1px solid #9fb8cf21;justify-content:center;align-items:center;min-height:100svh;display:flex}.login-form-wrap{width:min(386px,100% - 72px);padding:55px 0}.small-orbit{margin-bottom:35px;display:block}.small-orbit .brand-mark{color:#a8c5d7;width:32px;height:32px}.login-form-wrap h2{font-family:var(--font-display);letter-spacing:.035em;font-size:34px;font-weight:400}.login-intro{color:var(--muted);margin:16px 0 44px;font-size:14px}.field-label{color:#aab7c8;margin:22px 0 10px;font-size:13px;display:block}.input-wrap{background:#0c1829c2;border:1px solid #8fa7c23d;border-radius:8px;align-items:center;gap:12px;height:54px;padding:0 16px;transition:border-color .2s,box-shadow .2s;display:flex}.input-wrap:focus-within{border-color:#6eb3c6;box-shadow:0 0 0 3px #67bcce12}.input-wrap>.icon{color:#7d93ac;width:18px;height:18px}.input-wrap input{background:0 0;border:0;outline:none;width:100%;min-width:0;height:100%;padding:0;font-size:14px}.input-wrap input:focus-visible{outline:none}.password-toggle{color:#8097af;margin-right:-8px}.form-error{color:#dfa2a2;min-height:33px;padding-top:9px;font-size:12px;line-height:1.5}.primary-button{color:#e1f4f8;background:linear-gradient(125deg,#1f576b9e,#0d2434cc);border:1px solid #84cedc9e;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;min-height:47px;padding:12px 20px;font-size:15px;transition:background .2s,box-shadow .2s,transform .2s;display:inline-flex;box-shadow:inset 0 1px #b1e3f117}.primary-button:hover{background:linear-gradient(125deg,#297183bf,#11394ce6);box-shadow:0 0 25px #55a3b81f}.primary-button:active{transform:translateY(1px)}.login-submit{width:100%}.is-loading{opacity:.65}.guest-button{color:#a8bfce;justify-content:center;align-items:center;gap:6px;width:100%;min-height:44px;margin-top:19px;font-size:13px;display:flex}.guest-button:hover{color:#dbf2ff}.guest-button .icon{width:16px;height:16px}.demo-note{color:#708199;text-align:center;margin-top:29px;font-size:11px;line-height:1.9}.icon-button{width:36px;height:36px;color:var(--soft);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;padding:7px;transition:background .2s,color .2s;display:inline-flex}.icon-button:hover{color:var(--ink);background:#95b3ce14}.quiet-button{color:#b4cddb;background:#2553681a;border:1px solid #7faec845;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:7px 13px;font-size:12px;transition:border-color .2s,background .2s,color .2s;display:inline-flex}.quiet-button:hover{color:#e1f4f8;background:#4a829a29;border-color:#80d5e58a}.quiet-button .icon{width:16px;height:16px}.text-button{color:#9ac4d2;justify-content:center;align-items:center;gap:7px;min-height:32px;font-size:12px;display:inline-flex}.text-button:hover{color:#d6f6ff}.view-enter{animation:.48s cubic-bezier(.2,.8,.2,1) both view-arrive}@keyframes view-arrive{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.startup-error{text-align:center;place-content:center;gap:25px;min-height:100svh;display:grid}.startup-error h1{font-family:var(--font-display);font-size:60px}.render-diagnostics{z-index:100;color:#a9dcca;pointer-events:none;background:#040c18e6;border:1px solid #436456;border-radius:4px;padding:7px 10px;font:11px/1.3 monospace;position:fixed;bottom:8px;left:8px}#toast{z-index:100;opacity:0;pointer-events:none;color:#d4e5ec;background:#0e2131;border:1px solid #86b9c84d;border-radius:8px;max-width:calc(100vw - 32px);padding:13px 20px;font-size:13px;transition:opacity .2s,transform .2s;position:fixed;bottom:27px;left:50%;transform:translate(-50%,15px);box-shadow:0 10px 50px #0008}#toast.is-visible{opacity:1;transform:translate(-50%)}.detail-dialog{width:min(540px,100vw - 32px);max-height:calc(100svh - 48px);color:var(--ink);background:linear-gradient(140deg,#102135,#09131f);border:1px solid #34495f;border-radius:2px;padding:31px;box-shadow:0 30px 120px #0009}.detail-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#02070eb8}.dialog-close{z-index:1;background:#07111fbb;position:absolute;top:14px;right:14px}.detail-dialog h2{font-family:var(--font-display);padding-right:24px;font-size:29px;font-weight:400;line-height:1.5}.dialog-course-cover{border-bottom:1px solid var(--line);height:170px;margin:-31px -31px 25px;overflow:hidden}.dialog-course-cover .course-art{width:100%;height:100%}.dialog-subject{letter-spacing:.08em;margin:9px 0 12px;font-size:12px;display:block}.dialog-description{color:var(--soft);margin-top:14px;font-size:14px;line-height:1.9}.dialog-facts{border-bottom:1px solid var(--line);color:#adbdcf;flex-wrap:wrap;gap:15px;padding:21px 0;font-size:12px;display:flex}.dialog-facts span{align-items:center;gap:7px;display:flex}.dialog-facts .icon{width:16px;height:16px}.dialog-section-title{margin-top:23px;font-size:14px;font-weight:500}.chapter-list{margin:12px 0 22px;padding:0;list-style:none}.chapter-list li{border-bottom:1px solid #8fa8bf1a;align-items:center;gap:13px;padding:15px 0;display:flex}.chapter-list span{color:#718ba3;font:11px Georgia,serif}.chapter-list strong{font-size:13px;font-weight:400}.chapter-list small{color:#7ca4b5;margin-left:auto;font-size:10px}.dialog-note{color:#8d9fb3;margin:22px 0;font-size:12px;line-height:1.8}.detail-dialog>.primary-button{width:100%}.task-detail-hint{border:1px solid var(--line);color:#c0d7df;background:#ffffff03;border-radius:8px;align-items:center;gap:13px;margin-top:24px;padding:22px 16px;font-size:13px;display:flex}.reduced-motion *,.reduced-motion :before,.reduced-motion :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-delay:0s!important}}@media (width<=900px){.welcome-copy{width:47vw;margin-left:6vw}.welcome h1{letter-spacing:.18em;text-indent:.18em;font-size:100px}.welcome-latin{letter-spacing:.8em;text-indent:.8em;font-size:19px}.explore-button{letter-spacing:.14em;margin-top:50px;font-size:14px}.login-screen{grid-template-columns:42% 58%}.login-brand h1{font-size:54px}.login-form-wrap{width:calc(100% - 60px)}}@media (width<=600px){.welcome{justify-content:center;align-items:center}.welcome-mist{background:linear-gradient(#0000,#0206103d 40%,#020610bd)}.welcome-copy{width:min(310px,80vw);margin:15vh 0 0}.welcome h1{letter-spacing:.23em;text-indent:.23em;font-size:100px}.welcome-latin{font-size:18px}.explore-button{min-height:64px;margin-top:55px}.login-screen{padding-top:110px;display:block}.login-back{top:20px;left:18px}.login-scene{display:none}.login-panel{background:linear-gradient(#050c17bf,#050c17fa);border:0;align-items:flex-start;min-height:calc(100svh - 110px)}.login-form-wrap{width:min(385px,100% - 48px);padding:32px 0 28px}.small-orbit{margin-bottom:24px}.login-form-wrap h2{font-size:29px}.login-intro{margin-bottom:31px}.demo-note{margin-top:18px}.detail-dialog{padding:24px}.dialog-course-cover{margin:-24px -24px 22px}.icon-button{min-width:40px;min-height:40px}.quiet-button{min-height:40px}}.portal-view{max-width:1440px;margin:0 auto;padding:8px 4px 40px}.portal-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:32px;display:flex}.portal-heading h1{letter-spacing:.035em;font-size:29px;font-weight:400;line-height:1.45}.portal-heading p{color:var(--muted);margin-top:10px;font-size:13px;line-height:1.7}.portal-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.portal-surface{background:linear-gradient(120deg,#0e1c2da8,#08111da6);border-top:1px solid #9bb7cc29;min-width:0;margin-bottom:26px;padding:27px 28px}.portal-view h2{margin-bottom:22px;font-size:19px;font-weight:500;line-height:1.6}.portal-view h3{margin:18px 0 12px;font-size:15px;font-weight:500}.portal-view p{line-height:1.85}.portal-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;display:grid}.portal-metrics{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0 32px;display:grid}.portal-metrics>div{border-right:1px solid var(--line);align-items:baseline;gap:19px;padding:26px 28px;display:flex}.portal-metrics>div:last-child{border:0}.portal-metrics strong{color:#c4edfa;font-variant-numeric:tabular-nums;font-size:36px;font-weight:300}.portal-metrics span,.portal-note,.portal-view small{color:var(--muted);font-size:12px}.portal-note{margin:14px 0;line-height:1.8}.portal-table-wrap{overflow-x:auto}.portal-table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.portal-table th{color:var(--muted);white-space:nowrap;padding:0 18px 17px 0;font-weight:400}.portal-table td{border-top:1px solid var(--line);padding:20px 18px 20px 0;line-height:1.6}.portal-table td:last-child{text-align:right;padding-right:0}.portal-table strong{font-weight:500}.portal-table .quiet-button{color:var(--cyan);white-space:nowrap;padding:4px 0}.portal-list-row{text-align:left;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;width:100%;padding:19px 0;font-size:14px;display:flex}.portal-list-row strong{font-weight:400;display:block}.portal-list-row small{margin-top:7px;line-height:1.7;display:block}button.portal-list-row:hover{color:var(--cyan)}.portal-list-row>.icon{width:17px;color:var(--cyan)}.portal-tabs{border-bottom:1px solid var(--line);align-items:center;gap:32px;margin:0 0 29px;display:flex;overflow-x:auto}.portal-tabs button{color:var(--muted);white-space:nowrap;padding:0 0 17px;position:relative}.portal-tabs button.active{color:#c3edf6}.portal-tabs button.active:after{content:"";background:var(--cyan);height:2px;position:absolute;bottom:0;left:0;right:0}.portal-field{flex-direction:column;gap:10px;min-width:0;margin-bottom:23px;display:flex}.portal-field>span{color:#a3b7cc;font-size:12px;line-height:1.65}.portal-field input,.portal-field textarea,.portal-field select{color:var(--ink);background:#050d18a6;border:1px solid #819bb32b;border-radius:0;width:100%;min-width:0;padding:12px 14px;font-size:13px;line-height:1.6}.portal-field textarea{resize:vertical;min-height:108px}.portal-field input:focus,.portal-field textarea:focus,.portal-field select:focus{outline:1px solid var(--cyan);outline-offset:0}.portal-field input:disabled,.portal-field textarea:disabled,.portal-field select:disabled{opacity:.65}.portal-field textarea[readonly]{background:0 0;border-color:#0000}.portal-form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 24px;display:grid}.portal-view fieldset{border:0;min-width:0;margin:0;padding:0}.portal-view fieldset:disabled{opacity:.6}.portal-view .primary-button,.portal-view .quiet-button,.demo-role-options .quiet-button,.note-editor-footer .primary-button{box-shadow:none;border-radius:0;font-size:13px}.portal-view .primary-button{background:#153342a8;min-height:42px;padding:10px 20px}.portal-view button:disabled{opacity:.42}.portal-view .quiet-button{background:0 0;border:0}.portal-editor{grid-template-columns:minmax(160px,24%) minmax(0,1fr);gap:32px;display:grid}.portal-unit-list{border-right:1px solid var(--line);min-width:0;padding-right:20px}.portal-unit-list>button{text-align:left;width:100%;color:var(--soft);border-left:2px solid #0000;align-items:flex-start;gap:12px;padding:19px 12px;line-height:1.8;display:flex}.portal-unit-list>button.active{color:var(--cyan);border-left-color:var(--cyan);background:linear-gradient(90deg,#2b67852b,#0000)}.portal-unit-list small{padding-top:2px}.portal-inline-actions{gap:20px;display:flex}.portal-rule{background:var(--line);height:1px;margin:28px 0}.portal-checkbox,.portal-checks label{color:var(--soft);align-items:center;gap:9px;margin:0 18px 20px 0;font-size:13px;display:inline-flex}.portal-view input[type=checkbox],.portal-view input[type=radio]{accent-color:#76cfe3}.portal-request{border-bottom:1px solid var(--line);padding:6px 0 20px}.portal-request p{color:var(--soft);margin:8px 0;font-size:13px}.portal-request>div{gap:16px;margin-top:14px;display:flex}.portal-pagination{justify-content:space-between;margin-top:18px;display:flex}.portal-empty,.portal-loading{color:var(--muted);padding:35px 12px;font-size:13px;line-height:1.9}.portal-error{color:#e1b4ad;background:#7c34232b;border-left:2px solid #d4978e;margin-bottom:20px;padding:16px;line-height:1.8}.portal-error span{font-size:12px;display:block}.status-text{color:#acbacb;white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:inline-flex}.status-text:before{content:"";background:currentColor;border-radius:50%;width:4px;height:4px}.status-published,.status-approved,.status-graded,.status-active{color:#92cbbc}.status-pending,.status-draft,.status-submitted{color:#c5b798}.status-returned,.status-rejected,.status-disabled{color:#d89f93}.portal-assignment-layout{grid-template-columns:minmax(230px,33%) minmax(0,1fr);gap:38px;display:grid}.portal-assignment-list{border-right:1px solid var(--line);padding-right:24px}.portal-assignment-list>button{text-align:left;border-bottom:1px solid var(--line);border-left:2px solid #0000;flex-direction:column;gap:13px;width:100%;padding:23px 17px;display:flex}.portal-assignment-list>button.active{border-left-color:var(--cyan);background:linear-gradient(90deg,#1d405464,#0000)}.portal-assignment-list strong{font-size:14px;font-weight:500;line-height:1.7}.portal-assignment-list span{color:var(--muted);flex-wrap:wrap;gap:16px;font-size:11px;display:flex}.portal-assignment-detail{padding:12px 8px 30px 0}.assignment-instructions,.submission-answer{white-space:pre-wrap;overflow-wrap:anywhere;color:#b6c7d9;margin:20px 0 24px;font-size:14px;line-height:1.95}.portal-assignment-detail>form{margin-top:27px}.portal-assignment-detail textarea{min-height:190px}.portal-feedback{border-top:1px solid var(--line);margin-top:35px;padding-top:15px}.portal-feedback p{color:var(--soft);white-space:pre-wrap;font-size:13px}.grade-score{color:var(--cyan);margin:20px 0;font-size:36px;font-weight:300;display:block}.portal-section-heading{justify-content:space-between;align-items:center;display:flex}.portal-grading{max-width:850px}.portal-lesson{min-width:0;padding:12px 14px 20px}.lesson-block{border-bottom:1px solid var(--line);margin-bottom:19px;padding:10px 0 27px}.lesson-block p,.lesson-block li{white-space:pre-wrap;overflow-wrap:anywhere;color:#b5c4d5;font-size:14px;line-height:1.95}.lesson-block a{color:var(--cyan)}.lesson-block img,.lesson-block video{max-width:100%}.checkpoint-choice{cursor:pointer;background:#142a3a66;align-items:flex-start;gap:12px;margin:14px 0;padding:17px 14px;display:flex}.checkpoint-choice input{margin-top:3px}.checkpoint-result{color:var(--cyan);margin-top:18px;display:block}.portal-experiment-frame{border:1px solid var(--line);background:#060c16;width:100%;height:calc(100svh - 185px);min-height:450px}.laboratory-view{height:100%}.demo-indicator{color:#98bbc7;border-left:1px solid var(--line);white-space:nowrap;padding-left:18px;font-size:11px}.demo-role-options{flex-direction:column;gap:15px;width:100%;display:flex}.demo-role-options .quiet-button{background:#0c1b2a55;border:1px solid #829eb030;justify-content:space-between;padding:17px 20px}.demo-role-options .quiet-button:hover{border-color:var(--cyan);color:var(--cyan)}.account-view .demo-role-options{flex-flow:wrap;margin-top:20px}.teacher-application{border-top:1px solid var(--line);margin-top:25px;padding-top:20px}.teacher-application h3{margin-bottom:18px;font-size:16px}.portal-inline-form{align-items:end;gap:24px;display:flex}.portal-inline-form>.portal-field{flex:1;margin-bottom:0}.portal-table .portal-field{margin:0}.portal-table .portal-field>span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.portal-table .portal-field input,.portal-table .portal-field select{min-width:125px}.note-editor-footer{flex-wrap:wrap;gap:12px}@media (width<=1100px){.portal-surface{padding:22px 19px}.portal-heading{flex-wrap:wrap}.portal-editor{grid-template-columns:160px minmax(0,1fr);gap:22px}.portal-metrics>div{gap:12px;padding:20px 17px}.portal-tabs{gap:22px}}@media (width<=700px){.portal-columns,.portal-form-grid,.portal-editor,.portal-assignment-layout{grid-template-columns:1fr}.portal-unit-list,.portal-assignment-list{border-right:0;padding:0}.portal-metrics strong{font-size:25px}.portal-metrics>div{flex-direction:column}.demo-indicator{display:none}}
